WHEN 'H'.
*Ariel add 100424.sn
CLEAR:RESBTAB_THI,RESBTAB_SEC.
REFRESH:RESBTAB_THI,RESBTAB_SEC.
*Ariel add 100424.en
SELECT SINGLE * FROM AUFK
WHERE AUFNR = ZCM03-AUFNR.
SELECT SINGLE CVALUE1 INTO L_CVALUE1 FROM ZPCECONTROLVALUE
WHERE WERKS EQ AUFK-WERKS
AND CTYPE EQ 'B9AWOTYPE'
AND CVALUE EQ AUFK-AUART
AND INDICATOR1 EQ 'ACT'.
IF SY-SUBRC = 0.
SELECT SINGLE INDICATOR1_MEMO INTO L_LGORT
FROM ZPCECONTROLVALUE
WHERE WERKS EQ AUFK-WERKS
AND CTYPE EQ 'B9ASL'
AND CVALUE EQ L_CVALUE1
AND CVALUE1 EQ AFKO-FEVOR
AND INDICATOR1 EQ 'ACT'.
IF SY-SUBRC <> 0.
MESSAGE E000 WITH AUFK-AUART ',This order type is disagree'
'with type H!'.
ENDIF.
ELSE.
SELECT SINGLE CVALUE1 INTO L_CVALUE1 FROM ZPCECONTROLVALUE
WHERE WERKS EQ AUFK-WERKS
AND CTYPE EQ 'B9AWOTYPE'
AND CVALUE EQ AUFK-AUART
AND INDICATOR1 EQ ''.
IF SY-SUBRC = 0.
SELECT SINGLE INDICATOR1_MEMO INTO L_LGORT
FROM ZPCECONTROLVALUE
WHERE WERKS EQ AUFK-WERKS
AND CTYPE EQ 'B9ASL'
AND CVALUE EQ L_CVALUE1
AND INDICATOR1 EQ 'ACT'.
IF SY-SUBRC <> 0.
MESSAGE E000 WITH AUFK-AUART ',This order type is disagree'
'with type H!'.
ENDIF.
ELSE.
MESSAGE E000 WITH AUFK-AUART ',This order type is disagree'
'with type H!'.
ENDIF.
ENDIF.
LOOP AT RESBTAB WHERE SHKZG = 'H'.
MOVE-CORRESPONDING RESBTAB TO RESBTAB_SEC.
IF RESBTAB-ALPGR = '000000'.
APPEND RESBTAB_SEC.
ELSE.
COLLECT RESBTAB_SEC.
ENDIF.
MOVE-CORRESPONDING RESBTAB TO RESBTAB_THI.
COLLECT RESBTAB_THI.
ENDLOOP.
SORT RESBTAB_THI BY MATNR.
SORT RESBTAB_SEC BY ALPGR.
LOOP AT RESBTAB_SEC WHERE ALPGR <> '000000'.
L_DIFF = RESBTAB_SEC-ENMNG - RESBTAB_SEC-ERFMG.
IF L_DIFF > 0.
PERFORM. GET_MASTER_PART USING L_DIFF RESBTAB_SEC-ALPGR.
CLEAR: L_DIFF.
ENDIF.
ENDLOOP.
*"Ariel add 100424 where condition "where alpgr = '000000'
LOOP AT RESBTAB_THI WHERE ALPGR = '000000'.
READ TABLE ZCM04TAB WITH KEY MATNR = RESBTAB_THI-MATNR
ALPGR = '000000'."Ariel add 100424
IF SY-SUBRC = 0.
CONTINUE.
ENDIF.
L_DIFF = RESBTAB_THI-ENMNG - RESBTAB_THI-ERFMG.
IF L_DIFF > 0.
LOOP AT RESBTAB WHERE MATNR = RESBTAB_THI-MATNR
AND ALPGR = '000000'."Ariel add 100424
R_CHARG-SIGN = 'I'.
R_CHARG-OPTION = 'EQ'.
R_CHARG-LOW = RESBTAB-CHARG.
APPEND R_CHARG.
CLEAR R_CHARG.
ENDLOOP.
PERFORM. GET_MAX_REVISION USING RESBTAB_THI-MATNR L_DIFF.
CLEAR: L_DIFF.
ENDIF.
ENDLOOP.
* echo.en
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14397246/viewspace-666177/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/14397246/viewspace-666177/