FIELD SYMBOL动态分配的使用

在glt0,glpct这样的期间余额表中,每个期间的余额是通过字段名来存储的。很多报表都需要通过屏幕输入的期间来取该期间的余额,通过FIELD SYMBOL的动态调用可以使这样逻辑的代码变得简洁易读,例子如下:

  FIELD-SYMBOLS: <FS_FIELD_01>,
                 <FS_FIELD_02>.
  DATA: V_FIELDNAME_01(16) TYPE C,
        V_FIELDNAME_02(16) TYPE C.
  DATA: WA_GLT0_01 TYPE GLT0,
        WA_GLT0_02 TYPE GLT0.
  SELECT SINGLE * INTO WA_GLT0_01
                  FROM GLT0
                 WHERE RACCT = '1408810000' AND
                       RYEAR = P_GJAHR.
  SELECT SINGLE * INTO WA_GLT0_02
                  FROM GLT0
                 WHERE RACCT = '1408820000' AND
                       RYEAR = P_GJAHR.
  CONCATENATE 'WA_GLT0_01-HSL' P_MONAT INTO V_FIELDNAME_01.
  CONCATENATE 'WA_GLT0_02-HSL' P_MONAT INTO V_FIELDNAME_02.

  ASSIGN: (V_FIELDNAME_01) TO <FS_FIELD_01>,
          (V_FIELDNAME_02) TO <FS_FIELD_02>.

  IF <FS_FIELD_01> NE 0 OR <FS_FIELD_01> NE 0.
    MESSAGE ID 'MM' TYPE 'W' NUMBER '899' WITH
               '请将委外加工物资差异余额转到原材料差异科目中!'.
  ENDIF.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值