取SAP 与DRP 库存差异

56 篇文章 0 订阅

1.  开始例程 ODSO ZCMMD050 -> ODSO ZCELT078

BREAK-POINT.
DATACUSTOMER2 TYPE /BI0/OICUSTOMER.

LOOP AT SOURCE_PACKAGE ASSIGNING <SOURCE_FIELDS>.
IF <SOURCE_FIELDS>-CUSTOMER ''.
  DELETE SOURCE_PACKAGE.

  ELSE.
 call function 'CONVERSION_EXIT_ALPHA_OUTPUT'
exporting
input <SOURCE_FIELDS>-CUSTOMER
importing
output CUSTOMER2.
IF CUSTOMER2+0(1<> '9'.
  DELETE SOURCE_PACKAGE.
  ENDIF.
ENDIF.
ENDLOOP.

2.  开始例程 ODSO ZCELT058 -> ODSO ZCELT078

BREAK-POINT.
DATACUSTOMER2 TYPE /BI0/OICUSTOMER.

LOOP AT SOURCE_PACKAGE ASSIGNING <SOURCE_FIELDS>.
IF <SOURCE_FIELDS>-CUSTOMER ''.
  DELETE SOURCE_PACKAGE.
ELSE.
call function 'CONVERSION_EXIT_ALPHA_OUTPUT'
exporting
input <SOURCE_FIELDS>-CUSTOMER
importing
output CUSTOMER2.
IF CUSTOMER2+0(1<> '9'.
  DELETE SOURCE_PACKAGE.
  ENDIF.
ENDIF.
ENDLOOP.


3 .  结束例程  ODSO ZCELT058 -> ODSO ZCELT078


TYPESBEGIN OF TY_ZCMMD050,
         CALDAY           TYPE /BI0/OICALDAY,
        /BIC/ZMATERIAL    TYPE /BIC/OIZMATERIAL,
        CUSTOMER          TYPE /BI0/OICUSTOMER,
        /BIC/ZGRID        TYPE /BIC/OIZGRID,
        /BIC/ZCLABS       TYPE /BIC/OIZCLABS,
        /BIC/ZJXAMOUNT    TYPE /BIC/OIZJXAMOUNT,
        /BIC/ZNTJAMT      TYPE /BIC/OIZNTJAMT,
  END OF TY_ZCMMD050.

DATALT_ZCMMD050 TYPE STANDARD TABLE OF TY_ZCMMD050,
LS_ZCMMD050 TYPE TY_ZCMMD050,
LT_RESULT TYPE _ty_t_TG_1,
LS_RESULT TYPE _ty_s_TG_1.

LT_RESULT[] RESULT_PACKAGE[].
CLEAR RESULT_PACKAGE.

LOOP AT LT_RESULT INTO LS_RESULT.
SELECT  CALDAY /BIC/ZMATERIAL  CUSTOMER /BIC/ZGRID /BIC/ZCLABS
/BIC/ZJXAMOUNT /BIC/ZNTJAMT
       INTO  CORRESPONDING FIELDS OF TABLE LT_ZCMMD050
      FROM /BIC/AZCMMD05000
  WHERE CALDAY LS_RESULT-CALDAY
  AND /BIC/ZMATERIAL LS_RESULT-/BIC/ZMATERIAL
  AND CUSTOMER LS_RESULT-CUSTOMER
  AND /BIC/ZGRID =  LS_RESULT-/BIC/ZGRID.

  IF SY-SUBRC 0.
   LOOP AT LT_ZCMMD050 INTO LS_ZCMMD050.
    IF LS_RESULT-/BIC/ZESTNOW <> LS_ZCMMD050-/BIC/ZCLABS.
   LS_RESULT-/BIC/ZCLABS LS_ZCMMD050-/BIC/ZCLABS.
   LS_RESULT-/BIC/ZJXAMOUNT LS_ZCMMD050-/BIC/ZJXAMOUNT.
   LS_RESULT-/BIC/ZNTJ_SUM LS_ZCMMD050-/BIC/ZNTJAMT.

    ENDIF.
    ENDLOOP.
    ELSE.
    LS_RESULT-/BIC/ZCLABS 0.
    LS_RESULT-/BIC/ZJXAMOUNT 0.
    LS_RESULT-/BIC/ZNTJ_SUM 0.
    ENDIF.
 APPEND LS_RESULT TO RESULT_PACKAGE.
   ENDLOOP.


结束例程

BREAK-POINT.
TYPESBEGIN OF TY_ZCELT058,
         CALDAY           TYPE /BI0/OICALDAY,
        /BIC/ZMATERIAL    TYPE /BIC/OIZMATERIAL,
        CUSTOMER          TYPE /BI0/OICUSTOMER,
        /BIC/ZGRID        TYPE /BIC/OIZGRID,
        /BIC/ZESTNOW       TYPE /BIC/OIZESTNOW,
        /BIC/ZJXAMOUNT    TYPE /BIC/OIZJXAMOUNT,
        /BIC/ZNTJAMT      TYPE /BIC/OIZNTJAMT,
  END OF TY_ZCELT058.
*
DATALT_ZCELT058 TYPE STANDARD TABLE OF TY_ZCELT058,
LS_ZCELT058 TYPE TY_ZCELT058,
LT_RESULT TYPE _ty_t_TG_1,
LS_RESULT TYPE _ty_s_TG_1.
*
LT_RESULT[] RESULT_PACKAGE[].
CLEAR RESULT_PACKAGE.
*
LOOP AT LT_RESULT INTO LS_RESULT.
SELECT  CALDAY /BIC/ZMATERIAL  CUSTOMER /BIC/ZGRID /BIC/ZESTNOW
/BIC/ZJXAMOUNT /BIC/ZNTJAMT
       INTO  CORRESPONDING FIELDS OF TABLE LT_ZCELT058
      FROM /BIC/AZCELT05800
  WHERE CALDAY LS_RESULT-CALDAY
  AND /BIC/ZMATERIAL LS_RESULT-/BIC/ZMATERIAL
  AND CUSTOMER LS_RESULT-CUSTOMER
  AND /BIC/ZGRID =  LS_RESULT-/BIC/ZGRID.

  IF SY-SUBRC 0.
*   LOOP AT LT_ZCELT058 INTO LS_ZCELT058.
*    IF LS_RESULT-/BIC/ZCLABS <> LS_ZCELT058-/BIC/ZESTNOW.
*   LS_RESULT-/BIC/ZESTNOW = LS_ZCELT058-/BIC/ZESTNOW.
*   LS_RESULT-/BIC/ZELTJXJ = LS_ZCELT058-/BIC/ZJXAMOUNT.
*   LS_RESULT-/BIC/ZELTNTJ = LS_ZCELT058-/BIC/ZNTJAMT.
   ELSE.
     LS_RESULT-/BIC/ZESTNOW 0.
     LS_RESULT-/BIC/ZELTJXJ 0.
     LS_RESULT-/BIC/ZELTNTJ 0.
APPEND LS_RESULT TO RESULT_PACKAGE.
    ENDIF.
*    ENDLOOP.
*    ENDIF.

   ENDLOOP.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值