BW项目随手记:处理链中写程序自定义条件删除ADSO数据

22 篇文章 8 订阅
22 篇文章 2 订阅

需求:

BW处理链中,根据日期字段删除ADSO近两个月数据

步骤:

创建变式

创建程序

创建程序变式(程序变式为模型技术名称,PC_CHAIN的值为模型技术名称)

一个变式对应一个程序变式,不能共用,程序可共用

程序代码如下:

REPORT ZBW_DELETE_DSO_2M.
PARAMETERS PC_CHAIN TYPE RSPC_CHAIN .  "变量:处理链名称
DATA:PC_ADSO TYPE RSDDATATARGET.


DATA:LT_SEL TYPE RSDRD_THX_SEL.
DATA:H_SEL TYPE RSDRD_SX_SEL.
DATA:LT_RG TYPE RSDRD_T_RANGE.
DATA:H_RG TYPE RSDRD_S_RANGE.

DATA:LT_MSG TYPE RS_T_MSG.
DATA:H_DATE TYPE RRRANGE.

data:ls_MONTH(6).
DATA:LS_DATE_F LIKE SY-DATUM,
     LS_DATE_T LIKE SY-DATUM.

  LS_DATE_F = SY-DATUM .
  CONCATENATE LS_DATE_F+0(6) '01' INTO LS_DATE_F."取月初
  LS_DATE_F = LS_DATE_F - 1.
  LS_DATE_T = SY-DATUM .
  PC_ADSO = PC_CHAIN.

"填充选择条件期间
  CLEAR:H_SEL,LT_RG[].
    H_SEL-IOBJNM = 'GJAHR'.
    H_RG-KEYFL = 'X'.
    H_RG-SIGN = 'I'.
    H_RG-OPTION = 'BT'.
    H_RG-LOW = LS_DATE_F+0(4).
    H_RG-HIGH = LS_DATE_T+0(4).
    H_RG-KEYFL = 'X'.
    APPEND H_RG TO LT_RG.
    H_SEL-T_RANGE = LT_RG.
    INSERT H_SEL INTO TABLE LT_SEL.

"填充选择条件期间
  CLEAR:H_SEL,LT_RG[].
    H_SEL-IOBJNM = 'MONAT'.
    H_RG-KEYFL = 'X'.
    H_RG-SIGN = 'I'.
    H_RG-OPTION = 'BT'.
    H_RG-LOW = LS_DATE_F+4(2).
    H_RG-HIGH = LS_DATE_T+4(2).
    H_RG-KEYFL = 'X'.
    APPEND H_RG TO LT_RG.
    H_SEL-T_RANGE = LT_RG.
    INSERT H_SEL INTO TABLE LT_SEL.

  CALL FUNCTION 'RSDRD_SEL_DELETION'
       EXPORTING
            I_DATATARGET      = PC_ADSO "变式中的ADSO
            I_THX_SEL         =  LT_SEL
            I_AUTHORITY_CHECK = 'X'
            I_THRESHOLD            = '1.0000E-01'
            I_MODE                 = 'C'
            I_NO_LOGGING           = ''
            I_PARALLEL_DEGREE      = 1
            I_NO_COMMIT            = ''
            I_WORK_ON_PARTITIONS   = ''
            I_REBUILD_BIA           = ''
            I_WRITE_APPLICATION_LOG = 'X'
       CHANGING
            C_T_MSG                     = LT_MSG.

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Idan Lian

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

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

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

打赏作者

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

抵扣说明:

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

余额充值