ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Table Control里面SEARCH-HELP的实现

Table Control里面SEARCH-HELP的实现

原创 Linux操作系统 作者:gaohangzzu 时间:2010-05-20 14:59:48 0 删除 编辑

最近做了一些ABAP的TABLE-CONTROL的开发,在实现SEARCH HELP时花费了一些精力。

特根据自己的经验和从网上找了一些资料总结如下。

情况一:使用标准的字段的搜索帮助

情况二:只需要一个或者几个固定值

在process after input处理里面用values实现

代码如下

  PROCESS AFTER INPUT.
 field p_user values ('用户一','用户二','用户三').

实现效果如下

上面的用法还可以和NOT,BETWEEN...AND连用,比如公司代码在'AR01''AU01'之间的公司代码

代码:

PROCESS AFTER INPUT.
 field p_user values ('用户一','用户二','用户三').
FIELD P_BUKRS values VALUES ('1000', NOT '2000', BETWEEN 'AR01' AND
'AU01').

实现效果:

情况三 如果该字段可以从数据库中唯一确定,可以用select方法实现

代码:

  PROCESS AFTER INPUT.
FIELD P_BUKRS select * from t001 where bukrs = 'AR01'.

实现效果

该方法对TC里面的字段同样有效。

示例:

 PROCESS AFTER INPUT.
FIELD P_BUKRS select * from t001 where bukrs = 'AR01'.
  LOOP AT G_TC_TEST_ITAB.
    CHAIN.
      FIELD T001-BUKRS select * from t001 where bukrs = 'AR01'.
    ENDCHAIN.
  ENDLOOP.

二使用函数'F4IF_INT_TABLE_VALUE_REQUEST' 实现

代码示例:

 CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
    EXPORTING
      retfield        = 'BUKRS'
      dynpprog        = lv_repid
      dynpnr          = lv_dynnr
      dynprofield     = 'I_ITEM-BUKRS'
      value_org       = 'S'
    TABLES
      value_tab       = it_tbukrs       
    EXCEPTIONS
      parameter_error = 1
      no_values_found = 2
      OTHERS          = 3.

注意:上面的内表使用时必须用用已经存在的数据元素进行定义。否则系统找不到该字段的文本描述,在F4界面将不会显示。

三对于日期型的字段的搜索帮助的实现

并且把下面的可能条目选择"1"

20100520151902190.jpg

20100520153201384.jpg

20100520154733986.jpg

20100520155817440.jpg

20100608102705266.jpg

20100608102857654.jpg

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/10350860/viewspace-663220/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2010-05-20

  • 博文量
    43
  • 访问量
    91197