简体   繁体   English

带有动态匹配码的选择屏幕参数

[英]Selection screen parameter with a dynamic matchcode

I have a serie of entry parameters where there a match code, I need that this field (matchcode) will be dependent of a text parameter.我有一系列输入参数,其中有匹配代码,我需要此字段(匹配代码)将依赖于文本参数。 For example, something like that :例如,这样的事情:

SELECTION-SCREEN BEGIN OF BLOCK block02 WITH FRAME TITLE text-002.
  PARAMETERS:
    p_mona   TYPE ZTIPOSOL GROUP rad1 MATCHCODE OBJECT ZFIMC002, 
    p_fcomp  TYPE SY-DATUM MODIF ID A OBLIGATORY.
SELECTION-SCREEN END OF BLOCK block02
ABAP Development

No, you cannot.不,你不能。 However, you can populate search help values dynamically in AT SELECTION-SCREEN ON VALUE-REQUEST event:但是,您可以在AT SELECTION-SCREEN ON VALUE-REQUEST事件中动态填充搜索帮助值:

DATA: LT_VBAK TYPE STANDARD TABLE OF VBAK.

PARAMETER P_VBELN TYPE VBELN.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_VBELN.

  CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
      EXPORTING
       RETFIELD       = 'VBELN'
       DYNPPROG       = SY-REPID
       DYNPNR         = SY-DYNNR
       DYNPROFIELD    = 'P_VBELN'
       VALUE_ORG      = 'S'
      TABLES
       VALUE_TAB      = LT_VBAK
      EXCEPTIONS
       PARAMETER_ERROR        = 1
       NO_VALUES_FOUND        = 2
       OTHERS                 = 3.

  IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.

where LT_VBAK is a internal table you need to populate with values.其中LT_VBAK是您需要用值填充的内部表。 If your values are dependent on another selection screen parameter, use DYNP_VALUES_READ FM to read them from screen.如果您的值依赖于另一个选择屏幕参数,请使用DYNP_VALUES_READ FM 从屏幕读取它们。

Another approach is not to dynamically fill values but to create a single Search Help in DDIC and create Search Help exit which will control SHELP behavior depending on some conditions.另一种方法不是动态填充值,而是在 DDIC 中创建单个搜索帮助并创建搜索帮助出口,它将根据某些条件控制 SHELP 行为。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM