二维码

SAP对话编程中CHAIN ENDCHAIN语句字段校验

Twilight发表于 2014-03-30 14:28zhongguomao 最后回复于 2017-08-22 10:25 [复制链接] 2381 15

Dialog编程的PAI事件中,进行字段的校验,一般分为两种校验:
1、单个字段检查
  1. FIELD <FLD1> MODULE <MDL1>.
复制代码

2、检查多个字段
  1. CHAIN.
  2. FIELD <FLD1>.
  3. FIELD <FLD2>,<FLD3>,<FLD4>.
  4. MODULE <MDL1>.
  5. MODULE <MDL2>.
  6. ENDCHAIN.
复制代码

以上两种没有条件限制,都会走MODULE里面的逻辑校验,Dialog中PAI、PBO是循环执行的,从性能角度来说我们一般都需要添加触发条件的,有两种:ON INPUT、ON REQUEST,如果用在CHAIN连块中可以添加CHAIN关键字,如ON CHAIN-REQUEST、ON CHAIN-INPUT。

下面举例说明:
  1. CHAIN.
  2.   FIELD: A, B, C.
  3.   FIELD: D, E, F.
  4.   MODULE X ON CHAIN-INPUT.
  5.   MODULE Y.
  6. ENDCHAIN.
复制代码

如果字段A、B、C、D、E和F中任何一个具有不同于初始值(空或者0),则调用模块X。而始终调用模块Y。 如果Y发现错误, 则在错误对话期间,重新打开这六 个字段并等待输入。
  1. CHAIN.
  2.   FIELD: A, B, C  MODULE X ON INPUT.
  3. ENDCHAIN.
复制代码

只有当列表中的最后字段(C)包含非初始值时,才调用模块X。如果X发现错误,则在错误对话框中重新打这开三个字段(A, B,C)并等待输入。
  1. CHAIN.
  2.   FIELD: A, B, C  MODULE X ON CHAIN-REQUEST.
  3. ENDCHAIN.
复制代码

只有当列表中的最后字段(C)的值发生改变时,才调用模块X。如果X发现错误,则在错误对话框中重新打这开三个字段(A, B,C)并等待输入。

除了上面的常见的检验,还有一些特殊的校验,如“*“校验
  1. FIELD <FLD1> MODULE <MDL1> ON *-INPUT.
复制代码

表示用户输入字段首字输入“*“,并切输入字段属性设置了“*“的属性,MODULE有效。
总结:
游客,如果您要查看本帖隐藏内容请回复

大家可以Debug跟踪验证一下。
回复

使用道具 举报

teyun2222
學習了,感謝無私分享
回复 支持 反对

使用道具 举报

tougegelol
为了写出更风骚的dialogue~赶紧mark
回复 支持 反对

使用道具 举报

xacwc
真是难得给力的好资源啊,SAP顾问圈真是给力。
回复 支持 反对

使用道具 举报

qshiou
学习了,楼主棒棒哒
回复 支持 反对

使用道具 举报

mckz8888
谢谢分享 学习 学习 支持顾问圈
回复 支持 反对

使用道具 举报

Jacky
学习了,楼主棒棒哒
回复 支持 反对

使用道具 举报

bobo520
这个在屏幕里检查很重要  
回复 支持 反对

使用道具 举报

dingdangsh

RE: SAP对话编程中CHAIN ENDCHAIN语句字段校验

let me have a look
回复 支持 反对

使用道具 举报

zzxbat007
回复看  楼主棒棒哒
SAP Business One 凭借单一系统 优化你的整个业务  www.iwilley.com
回复 支持 反对

使用道具 举报

yigerendelu

RE: SAP对话编程中CHAIN ENDCHAIN语句字段校验

谢谢大神分享!
回复

使用道具 举报

h_ronin

RE: SAP对话编程中CHAIN ENDCHAIN语句字段校验

谢谢分享 学习 学习 支持顾问圈
回复 支持 反对

使用道具 举报

xwq
学习。。。。。。
回复

使用道具 举报

zhwddd1112

RE: SAP对话编程中CHAIN ENDCHAIN语句字段校验

不错,借鉴一下
回复

使用道具 举报

emeim

RE: SAP对话编程中CHAIN ENDCHAIN语句字段校验

谢谢楼主分享
回复

使用道具 举报

zhongguomao

RE: SAP对话编程中CHAIN ENDCHAIN语句字段校验

入门的,经常当成参考书看看。
回复 支持 反对

使用道具 举报

快速回帖

本版积分规则
您需要登录后才可以回帖 登录 | 注册有礼

快速回复 返回顶部 返回列表