关于BDC录屏

      PERFORM frm_set_default_value USING   'CK11N' .
      PERFORM frm_dynpro            USING   'SAPLCKDI' '4610'        'X'.
      PERFORM frm_dynpro            USING   ''         'BDC_OKCODE'  '/00'.
      PERFORM frm_dynpro            USING   ''          'CKI64A-WERKS' p_werks .
      PERFORM frm_dynpro            USING   ''          'CKI64A-MATNR' s_matnr-low .
      PERFORM frm_dynpro            USING   ''          'CKI64A-TVERS' '1' .
      PERFORM frm_dynpro            USING   ''          'CKI64A-KLVAR' 'ZPC1' .
      PERFORM frm_dynpro            USING   'SAPLCKDI' '4610'        'X'.
      PERFORM frm_dynpro            USING   ''         'BDC_OKCODE'  '=SAVE'.
      PERFORM frm_bdc CHANGING gw_mes-ztype gw_mes-msg .

FORM frm_set_default_value USING i_tcode TYPE any .
FREE : lt_bdcdata, lt_bdcmsg,ls_bdcparams ,ls_tcode.
MOVE i_tcode TO ls_tcode .
MOVE ‘N’ TO ls_bdcparams-dismode .
MOVE ‘S’ TO ls_bdcparams-updmode .

  • L_BDCPARAMS-DISMODE = ‘N’. " 处理方式(A:显示所有屏幕 E:显示错误 N:后台的处理 P:Background processing; debugging possible)
  • L_BDCPARAMS-UPDMODE = ‘L’. " 更新模式(L:本地的 S:同步 A:异步的)
  • L_BDCPARAMS-CATTMODE = ’ '. " CATT session(空:No CATT N:CATT without individual screen control A:CATT with individual screen control)
  • L_BDCPARAMS-DEFSIZE = ‘X’. " 缺省屏幕大小(空:NO X:YES)
  • L_BDCPARAMS-RACOMMIT = ‘X’. " COMMIT 是不完全的(空:NO X:YES)
  • L_BDCPARAMS-NOBINPT = ‘X’. " 非批输入(空:NO X:YES)

ENDFORM. " FRM_SET_DEFAULT_VALUE

FORM frm_dynpro USING parameters1 TYPE any
parameters2 TYPE any
parameters3 .
DATA ls_bdcdata TYPE bdcdata .

IF parameters1 IS NOT INITIAL .
MOVE : parameters1 TO ls_bdcdata-program ,
parameters2 TO ls_bdcdata-dynpro ,
parameters3 TO ls_bdcdata-dynbegin .
ELSE .
MOVE : parameters2 TO ls_bdcdata-fnam ,
parameters3 TO ls_bdcdata-fval .
CONDENSE ls_bdcdata-fnam NO-GAPS.
CONDENSE ls_bdcdata-fval NO-GAPS.
ENDIF .
APPEND ls_bdcdata TO lt_bdcdata .
CLEAR ls_bdcdata .
ENDFORM. " FRM_DYNPRO

FORM frm_bdc CHANGING i_type TYPE clike
i_message TYPE any .
DATA ls_bdcmsg TYPE bdcmsgcoll .
CALL TRANSACTION ls_tcode USING lt_bdcdata
OPTIONS FROM ls_bdcparams
MESSAGES INTO lt_bdcmsg .
DELETE lt_bdcmsg WHERE msgid EQ ‘00’ AND msgnr EQ ‘001’ .
LOOP AT lt_bdcmsg INTO ls_bdcmsg WHERE msgtyp CA ‘EA’.
MOVE ‘E’ TO i_type .
PERFORM frm_bdcmsg USING ls_bdcmsg CHANGING i_message .
ENDLOOP .
IF i_type IS INITIAL .
LOOP AT lt_bdcmsg INTO ls_bdcmsg WHERE msgtyp EQ ‘S’.
MOVE ‘S’ TO i_type .
PERFORM frm_bdcmsg USING ls_bdcmsg CHANGING i_message .
ENDLOOP .
ENDIF .
ENDFORM. " FRM_BDC

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值