设为首页 收藏本站
查看: 990|回复: 0

[经验分享] 介绍SAP预留函数创建搜索帮助

[复制链接]

尚未签到

发表于 2015-9-21 10:08:37 | 显示全部楼层 |阅读模式
  紧接上一节介绍的SAP预定义的出口函数F4IF_SHLP_EXIT_EXAMPLE创建搜索帮助,
  该函数主要有两个部分:
  Changing接口的参数属性如下:
  SHLP:搜索帮助的基础描述,包括搜索帮助的名称、类型以及内部信息等。
  以下:1)INTERFACE:会列出该搜索帮助中包含哪些字段及当前使用的是哪个字段。
  2)FIELDDESCR:会列出包含字段的具体属性,如字段名称、类型、长度等
  3)FIELDPROP:搜索帮助所定义字段的参数设置,如:EXP/IMP/SPos等
  4)SELOPT:当搜索帮助中有输入值时会在该表中显示
  CALLCONTORL:包含当前帮助的结构信息,搜索帮助的时间点都由该结构中的字段CALLCONTORL-STEP来控制。在输入帮助处理期间,定义了许多时间点,每一个定义了一个重要的输入帮助处理操作的起始时间。所包含控制时间点具体参数如下:
  1)SELONE:可在集合搜索帮助中使用在时间点。一个集合搜索往往包含多个基本搜索,改时间点发生在选择一个基本搜索帮助之前,此时的搜索帮助信息已经被存放在内表SHLP_TAB中,通过对内标SHLP_TAB数据的控制来限制该集合搜索中是否能使用其他的基本搜索帮助。
  2)PRESEL1:选择一个基本搜索帮助后,在该时间上、该搜索帮助(类型SHLP_DESR_T)的定义内就不再将表INTERFACE复制到表SELOPT中了,这意味着在这里仍然可以影响搜索帮助到屏幕的附件(表INTERFACE包含关于如何将屏幕字段和搜索帮助变量关联上的信息)
  3)PRESEL:该时间点可以用于实现搜索帮助输入条件中某些字段预定义的控制
  4)SELECT:选值之前,如果不想使用默认选择,那么就应该用搜索帮助推出该时间点,将DISP设置成下一个时间点
  5)DISP:该时间点用于控制搜索帮助的输出结果。例如,在输出搜索结果时对用户检查权限,删除搜索结果中未能授权的数据
  6)RETURN:(一般作为下一个时间点的返回值)如果在一个搜索帮助退出中选择一个单独命中,那么就将RETURN时间点作为下一步返回。如果对事物处理序列的控制取决于以选中的值(典型例子:设置SET/GET参量),那么在该时间点上改变F4的流程就是有意义的。然后,应该注意到,该处理将取决于一个值是手工输入的还是用输入帮助的。
  7)RETTOP:只有当输入帮助由集合搜索帮助控制时,才转到该时间点。它直接跟着时间点RETURN。然而,集合搜索帮助的搜索帮助推出是在时间点RETTOP上调用的。
  8)EXIT(仅为了下一个时间点返回)
  如果用户有机会在一个搜索帮助退出中终止对话,那么EXIT时间点应作为下一步返回
  9)CREATE:仅当用户选择函数”创建新值“时候,才访问create时间点,且当赋予控制参数CALLCONTORL所对应的结构体的字段CUSTTAB为非空值时,该时间点才是有效的。正常情况下,在那里输入将要维护的表(定制)的名字,CREATE之后,返回的下一步应该是SELECT,这样才能选择新输入的值,并且随后显示。
  10)APP1,APP2,APP3:如果带有函数模块F4UT_LIST_EXIT的命中列表包含了更深一层的按钮,那么也会介入这些时间点。当用户单击相应的按钮时候就能访问这些时间点。
  注意:如果F4帮助是一个集合搜索帮助,那么就在时间点SELONE和RETTOP上调用集合搜索帮助的出口。(RETTOP仅当用户选择一个值)。在所有的其他时间点上,调用以选择的元素搜索帮助的出口。
  如果F4帮助是一个基本搜索帮助,不执行RETTOP时间点,在时间点SELONE(当时)调用元素搜索帮助的出口,其他准备工作都在时间点PRESEL1上执行。
  TABLES接口中的参数如下:
  SHLP_TAB:替代基本搜索帮助的清单,与Changing接口中的SHLP_DESCR参数基本类似。
  RECORD_TAB:列出搜索帮助的结果数据,结果会回执在操作搜索帮助的字段上。
  参照F4IF_SHLP_EXIT_EXAMPLE的接口创建自定义函数。RFC中首先需要创建一个内表用于存储抓取的自定义数据,所定义的内标必须包含搜索帮助参数中EXP所定义的字段,最后通过函数F4UT_RESULTS_MAP回执查询结果,最后调用DISP时间点将查询的参数显示在列表中。
  上节例中:仅需要调用SELECT这个时间点来进行数学的查询输出。具体代码见上小节
  
  
  
  
  
  
  
  
  
  
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-116619-1-1.html 上篇帖子: sap学习笔记二 下篇帖子: SAP HANA 存储过程中的IF While使用案例
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

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