abap之ranges使用
创建选择屏幕时,由于使用到了listbox,
并且为了实现当用户不输入数据时,默认搜索全部。所以此处选择使用 select-options.
但是select-options不具备listbox的使用方法。
所以此处用到了rangs来参照表中的栏位,定义一个内表,此内表中的结构默认与select-options相同。
使用时如下:
首先在sel中定义:RANGES r_type FOR zmmecp2_wlgfdy-type occurs 0.
PARAMETERS p1 TYPE zmmecp2_wlgfdy-type AS LISTBOX VISIBLE LENGTH 20 DEFAULT '1'.
其次需要给相应栏位赋值,如下:
r_type-SIGN = 'I'.
r_type-OPTION = 'EQ'.
r_type-low = p1.
append r_type.
但是特别注意,此处给r_type赋值的语句必须写在 START-OF-SELECTION.下面
如此,就实现了即使用parameter 中的 listbox ,又使用了select-options 不输入数据时,默认搜索全部内容。