FB03 界面新增自定义字段(在业务范围gsber之后)

59 篇文章 6 订阅

两个界面都是 

一个screen 是1002 一个是1007 两个都要改

代码控制显示 输入 

MODULE FRM_MDF_SCREEN OUTPUT.
  DATA:lmblnr TYPE matdoc-MBLNR.
  DATA:lmjahr TYPE matdoc-MJAHR.
  FIELD-SYMBOLS:<FS_MBLNR> TYPE matdoc-MBLNR,
        <FS_MJAHR> TYPE ANY,
        <FS_action> TYPE any,
        <FS_ZZPLUSL> TYPE ANY.
  IF cobl-AWKEY is not INITIAL.
    lmblnr = cobl-AWKEY+0(10).
    lmblnr = cobl-AWKEY+10(4).
  SELECT SINGLE zzplusl  from matdoc
    where mblnr = @lmblnr and mjahr = @lmjahr and zzplusl is not INITIAL
    INTO @cobl-ZZPLUSL .

     ASSIGN ('(SAPLKACB)COBL-ZZPLUSL') TO <FS_ZZPLUSL>.
     if <FS_zzplusl> is ASSIGNED.
       <FS_zzplusl> = cobl-ZZPLUSL.
     endif.
  endif.
  IF sy-tcode = 'FB01' OR sy-tcode = 'FB02'.
    LOOP AT SCREEN.
      IF SCREEN-NAME+0(7) = 'COBL-ZZ'.
        SCREEN-INPUT = 1.
        SCREEN-OUTPUT = 1.
        SCREEN-ACTIVE = 1.
        SCREEN-INVISIBLE = 0.
        MODIFY SCREEN.
      ENDIF.
    ENDLOOP.
  elseIF sy-tcode = 'FB03'.
    LOOP AT SCREEN.
      IF SCREEN-NAME+0(7) = 'COBL-ZZ'.
        SCREEN-OUTPUT = 1.
        SCREEN-ACTIVE = 1.
        SCREEN-INVISIBLE = 0.
        MODIFY SCREEN.
      ENDIF.
    ENDLOOP.
  elseif sy-tcode = 'MIGO' OR sy-tcode = 'ZMB1A'.
      ASSIGN ('(SAPLMIGO)GODYNPRO-ACTION') TO <FS_ACTION>.
      ASSIGN ('(SAPLMIGO)GODYNPRO-MAT_DOC') TO <FS_mblnr>.
      ASSIGN ('(SAPLMIGO)GODYNPRO-DOC_YEAR') TO <FS_mjahr>.
*      ASSIGN ('(SAPLMIGO)COBL-ZZPLUSL') TO <FS_ZZPLUSL>.
      if <FS_ACTION> is  ASSIGNED AND <FS_mblnr> is ASSIGNED AND  <FS_mjahr> is ASSIGNED .
      SELECT SINGLE zzplusl  FROM matdoc
      WHERE mblnr = @<FS_mblnr> AND mjahr = @<FS_mjahr> AND zzplusl IS NOT INITIAL
      INTO @COBL-ZZPLUSL .
    LOOP AT SCREEN.
      IF SCREEN-NAME+0(7) = 'COBL-ZZ'.
         if <FS_ACTION> = 'A04' .
          SCREEN-OUTPUT = 1.
          SCREEN-ACTIVE = 1.
          SCREEN-INVISIBLE = 0.
          MODIFY SCREEN.
        else.
          SCREEN-INPUT = 1.
          SCREEN-OUTPUT = 1.
          SCREEN-ACTIVE = 1.
          SCREEN-INVISIBLE = 0.
          MODIFY SCREEN.
        ENDIF.
      endif.
    ENDLOOP.
   ENDIF.
  endif.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
以下是一个简单的 ABAP 代码示例,用于在 ECC 6.0 中生成会计凭证: ``` REPORT z_generate_accounting_document. DATA: ls_bkpf TYPE bkpf, ls_bseg TYPE bseg. * Fill the header data of the accounting document ls_bkpf-bukrs = '1000'. " Company code ls_bkpf-blart = 'SA'. " Document type ls_bkpf-budat = sy-datum. " Posting date ls_bkpf-monat = sy-datum(4). " Posting period ls_bkpf-waers = 'USD'. " Currency code ls_bkpf-kursf = 1. " Exchange rate ls_bkpf-xblnr = '12345'. " Reference ls_bkpf-bktxt = 'Test document'. " Document header text * Fill the line item data of the accounting document ls_bseg-bukrs = ls_bkpf-bukrs. " Company code ls_bseg-gsber = '001'. " Business area ls_bseg-hkont = '100000'. " GL account ls_bseg-shkzg = 'S'. " Debit/Credit indicator ls_bseg-dmbtr = '100.00'. " Amount ls_bseg-wrbtr = '100.00'. " Amount in document currency ls_bseg-mwskz = 'V0'. " Tax code ls_bseg-sgtxt = 'Test line item'. " Line item text * Call the accounting document creation function module CALL FUNCTION 'AC_DOCUMENT_CREATE' EXPORTING headerdata = ls_bkpf TABLES itemdata = lt_bseg. * Check for errors IF sy-subrc = 0. WRITE: 'Accounting document created successfully!'. ELSE. WRITE: 'Error creating accounting document:', sy-subrc. ENDIF. ``` 这个示例代码创建了一个会计凭证,其中包括了一个头部和一行项目。在实际应用中,如果需要创建多个行项目,需要在 `itemdata` 表中添加多个条目。代码中使用了 `AC_DOCUMENT_CREATE` 函数模块来创建会计凭证,并且在创建过程中进行了错误检查。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gavin_gxh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值