弹出输入框POPUP_GET_VALUES_USER_HELP

遇到一个这样的需求,点击按钮弹出一个输入框输入三个字段。
于是找到了这个FUNCTION
使用方法:

 GT_SVAL-TABNAME = 'MATDOC'.
  GT_SVAL-FIELDNAME = 'BUDAT'.
  GT_SVAL-FIELDTEXT = '过账日期'.
  GT_SVAL-VALUE = SY-DATUM.
  GT_SVAL-FIELD_ATTR = ''.
  APPEND  GT_SVAL.
  CLEAR GT_SVAL.

  GT_SVAL-TABNAME = 'MATDOC'.
  GT_SVAL-FIELDNAME = 'DMBTR'.
  IF R_RB1 = 'X'.
    GT_SVAL-FIELDTEXT = '应付账款'.
  ELSE.
    GT_SVAL-FIELDTEXT = '应收账款'.
  ENDIF.
  GT_SVAL-FIELD_ATTR = ''.
  APPEND   GT_SVAL.
  CLEAR GT_SVAL.

  GT_SVAL-TABNAME = 'MATDOC'.
  GT_SVAL-FIELDNAME = 'BUALT'.
  GT_SVAL-FIELDTEXT = '税金'.
  GT_SVAL-FIELD_ATTR = ''.
  APPEND  GT_SVAL.
  CLEAR GT_SVAL.

“当要输入的字段是金额类型的字段需要再append以下一行货币,否则金额字段无法输入

  GT_SVAL-TABNAME = 'MATDOC'.
  GT_SVAL-FIELDNAME = 'WAERS'.
  GT_SVAL-FIELDTEXT = '货币'.
  GT_SVAL-FIELD_ATTR = '04'.
  APPEND  GT_SVAL.
  CLEAR GT_SVAL. 
CALL FUNCTION 'POPUP_GET_VALUES_USER_HELP'
    EXPORTING
*     F1_FORMNAME = ' '
*     F1_PROGRAMNAME                  = ' '
*     F4_FORMNAME = ' '
*     F4_PROGRAMNAME                  = ' '
*     FORMNAME    = ' '
      POPUP_TITLE = '生成会计凭证'    "弹出框标题
      PROGRAMNAME = 'ZFICOR034'  "当前程序
*     START_COLUMN                    = '5'
*     START_ROW   = '5'
*     NO_CHECK_FOR_FIXED_VALUES       = ' '
    IMPORTING
      RETURNCODE  = L_CODE
    TABLES
      FIELDS      = GT_SVAL   "这个表里就是需要加上去的字段
*   EXCEPTIONS
*     ERROR_IN_FIELDS                 = 1
*     OTHERS      = 2
    . 

你可能感兴趣的:(ABAP开发,abap)