ABAP读取工单状态函数优化STATUS_READ

ZSTATUS_READ
1.如下是获取工单状态类,可以自行转换RFC或者代码
METHOD GET_PO_STATUS_LINES BY DATABASE PROCEDURE FOR HDB LANGUAGE SQLSCRIPT OPTIONS READ-ONLY USING JEST TJ02 TJ04 TJ02T AUFK.
–完成生产订单抬头状态的转换
ET_PO_STATUS =
SELECT AUFNR,STRING_AGG(TXT04,‘-’ ORDER BY LINEP,STATP,TXT04) AS PO_STATUS FROM (
SELECT AUFNR,OBJNR,STAT,LINEP,STATP,TXT04,TXT30
FROM (
SELECT DISTINCT T1.AUFNR,T2.OBJNR,T2.STAT,T5.TXT04,T5.TXT30,T3.NODIS,IFNULL(T4.LINEP,99) AS LINEP ,IFNULL(T4.STATP,99) AS STATP FROM AUFK T1
INNER JOIN :IT_RESULT_PO T0
ON T1.AUFNR = T0.AUFNR
LEFT JOIN JEST T2
ON T1.OBJNR = T2.OBJNR AND T2.INACT = ‘’
LEFT JOIN TJ02 T3
ON T2.STAT = T3.ISTAT AND T3.NODIS = ‘’
LEFT JOIN TJ04 T4
ON T2.STAT = T4.ISTAT AND T4.OBTYP = ‘ORH’
LEFT JOIN TJ02T T5
ON T2.STAT = T5.ISTAT AND T5.SPRAS = ‘1’
WHERE
–T1.OBJNR = ‘OR000001000040’ AND
T1.MANDT = :LV_CLIENT AND T2.MANDT = :LV_CLIENT
AND T3.NODIS IS NOT NULL
ORDER BY T2.STAT
)
)
GROUP BY AUFNR;

ENDMETHOD.

METHOD GET_RESB_OBJNR BY DATABASE PROCEDURE FOR HDB LANGUAGE SQLSCRIPT OPTIONS READ-ONLY USING AFKO TJ02 TJ04 TJ02T RESB JEST.
–完成生产订单组件明细状态的转换
ET_RESB_OBJNR =
SELECT AUFNR,MATNR,CASE WHEN LOCATE(STRING_AGG(TXT04,‘-’ ORDER BY LINEP,STATP,TXT04),‘-’) > 0 THEN SUBSTR_BEFORE(STRING_AGG(TXT04,‘-’ ORDER BY LINEP,STATP,TXT04),‘-’)
ELSE STRING_AGG(TXT04,‘-’ ORDER BY LINEP,STATP,TXT04) END AS PO_STATUS FROM (
SELECT AUFNR,MATNR,OBJNR,STAT,LINEP,STATP,TXT04,TXT30
FROM (
SELECT DISTINCT T1.AUFNR,T6.MATNR,T2.OBJNR,T2.STAT,T5.TXT04,T5.TXT30,T3.NODIS,IFNULL(T4.LINEP,99) AS LINEP ,IFNULL(T4.STATP,99) AS STATP FROM AFKO T1
INNER JOIN RESB T6
ON T1.RSNUM = T6.RSNUM
INNER JOIN :IT_RESULT_RESB T0
ON T0.AUFNR = T1.AUFNR AND T0.MATNR = T6.MATNR
LEFT JOIN JEST T2
ON T6.OBJNR = T2.OBJNR AND T2.INACT = ‘’
LEFT JOIN TJ02 T3
ON T2.STAT = T3.ISTAT AND T3.NODIS = ‘’
LEFT JOIN TJ04 T4
ON T2.STAT = T4.ISTAT AND T4.OBTYP = ‘OKP’
LEFT JOIN TJ02T T5
ON T2.STAT = T5.ISTAT AND T5.SPRAS = ‘1’
WHERE
–T1.AUFNR = ‘000000800000’ AND
T1.MANDT = :LV_CLIENT AND T2.MANDT = :LV_CLIENT AND T6.“MANDT” = :LV_CLIENT
AND T3.NODIS IS NOT NULL
ORDER BY T2.STAT
)
)
GROUP BY AUFNR,MATNR
;

ENDMETHOD.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

放弃幻想_

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

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

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

打赏作者

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

抵扣说明:

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

余额充值