abap selection screen

可以通过三种方式来产生selection screen

l         Logical database 语句:nodes

l         通过parametersselect-options产生一个default selection screen

l         通过SELECTION-SCREEN BEGIN OF CALL SELECTION-SCREEN创建额外的SELECTION SCREENSCREEN NUMBER 10001010sap保留的,在HR中你只能定义9000以上的屏幕号。

如果selection screen程序是后台运行的,那么必须创建相应的variant

PARAMETER fields的名字最长为8个字符,可以通过MEMORY ID实现在SAP MEMORYZ中交换数据。

如果parameter fields参考dictionary object,并且dictionary object是有外键的,缺省情况下value check是关闭的,可以通过VALUE CHECK来打开这个选项。可以通过AS CHECKBOX来定义复选框,通过AS RADIBUTTON GROUP <grp>,来定义单选按钮。<grp>由四个字符组成。

Select-options的名字最多也只有8个字符。Select-options产生的是一个internal table,它有四个字段:sign option low highSign option的值列表:

SIGN: I (Include), E (Exclude)
OPTION: EQ, NE, LE, LT, GE, GT, BT(Between), NB (Not Between),
CP (Contains Pattern), NP (Contains Pattern not)

Select-options addition

l         DEFAULT:你可以通过INITIALIZATIONLOAD-OF-PROGRAM其中之一来设置缺省值。

l         MEMORY ID:可以实现与SAP MEMORY的交互。

l         LOWER CASE:确定是否进行大写转换,但是对于dictionary object无效。

l         OBLIGATORY

l         NO-EXTESIONSmultiple selection失效

l         NO-INTERVALS:不能直接输入间隔值

如果有logical databaseparameterselect-options将会放到最下面。

可以通过SELECTION-SCREEN来设计selection screen的布局,通过BEGIN OF BLOCK <BLK>selection screen元素进行逻辑分组,可以通过WITH FRAME来添加一个框架。如果selection-screen有框架,可以为block设置title,有两种方式text-xxx和三个字符的标识,后者可以在initialization中设置。事务代码BIBS中有各种selection screen的向导。通过SELECTION-SCREEN BEGIN OF LINE可以实现在一行中放置多个parameterscommentsComment必须有一个formatpositionoutput length),position可以通过变量来设置也可以是pos_lowpos_high。后者是select-optionslowhigh。可以通过COMMENT ... FOR FIELDcommentfield绑定在一起。通过语句POSITION <pos>来设置下个元素的位置。可以通过事件INTITIALIZATIONLOAD-OF-PROGRAM来为selection-screen字段设置缺省值,也可以 AT SELECTION-SCREEN OUTPUT中设置值与前者不同的时前者在一次运行时只能执行一次。而后者则是只要该屏幕重新显示就能触发一次。所有的屏幕输入都可以通过AT SELECTION-SCREEN EVENT事件检查,当在这个事件中触发errorwarning消息时所有的字段又处于输入状态。这个事件可以加上参数ON <f>ON <seltab>这种情况下触发error消息时只有这个字段处于输入状态。可以通过AT SELECTION-SCREEN ON BLOCK <block>.把一组字段组合到一块,这样在触发error信息时,block中所有字段都处于输入状态。AT SELECTION-SCREEN ON END OF <field>selection screen PAI事件。可以通过事件AT SELECTION-SCREEN ON HELP-REQUEST and AT SELECTION-SCREEN ON VALUE-REQUEST来实现F1F4 helpON VALUE-REQUEST的值选择是通过interactive event来控制的。当用户点击execute或按F8时,SY-SUBRC返回0,如果用户点击cancelexit sy-subrc返回4。你可以在INITIALIZATION中决定selection screen的缺省值,通过SY-DYNNR在事件中确定目前正在处理的屏幕。用户可以为program创建任意数量的变式,变式只能应用于唯一的程序。当你激活program attribute中的starting with variant标识时,你只能通过变式启动程序。Variant的命名规则,SAP&XXX是由SAP系统提供的,CUS&XXX是由用户自开发的,符合上面的命名规则的变式自动同程序一块传输,否则的话需要手工把变式插入到change requestobject list中。Transport object LIMU VAR,或者通过下面的menu pathVariants -> Transport request from the variant maintenance screen。变式可以被设置成仅在后台使用,通过only display in catalog可以使变式在前台不被选择。可以保护变式本身是选择条件不能被没有权限的人修改。Type of select是由select-optionsparameter决定,selection protected可以保护选择条件被修改。Hide可以隐藏选择条件。可以通过三种方式来提供selection variables

l         通过表tvarv(c)(TYPE T)

l         Type D,通过动态设定日期,比如当天

l         用户自定义的变量(TYPE B),通过memory id

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值