* LOOP AT IT_STLNR.
* LOOP AT IT_SKDRULE
* WHERE WERKS = IT_STLNR-WERKS AND
* MTART = IT_STLNR-MTART.
* IF IT_STLNR-MATNR CP IT_SKDRULE-MATNR.
*
* DELETE IT_STLNR.
* CONTINUE.
* ENDIF.
* ENDLOOP.
* ENDLOOP.
**---符合SKD机种不走规则表,故删除BY EASY IN 20090909---------------**
LOOP AT IT_SKDRULE.
DELETE IT_STLNR WHERE WERKS = IT_SKDRULE-WERKS
AND MTART = IT_SKDRULE-MTART
AND MATNR CP IT_SKDRULE-MATNR.
ENDLOOP.
**----------------------------------------------------------------**
* LOOP AT IT_RULE.
* LOOP AT IT_STLNR WHERE WERKS = IT_RULE-WERKS
* AND MTART = IT_RULE-MTART
* AND MATNR CP IT_RULE-MATNR
* AND CFLAG <> 'X'.
* LV_TABIX = SY-TABIX.
* IF IT_STLNR-IDNRK+1(2) = '26' OR IT_STLNR-IDNRK+1(2) = '40'.
* READ TABLE IT_ERULE WITH KEY WERKS = IT_STLNR-WERKS
* MATNR = IT_STLNR-IDNRK.
* IF SY-SUBRC = 0.
* IT_STLNR-NPOSN = IT_ERULE-POSNR.
* ELSE.
* IT_STLNR-NPOSN = IT_RULE-POSNR.
* ENDIF.
* ELSE.
* IT_STLNR-NPOSN = IT_RULE-POSNR.
* ENDIF.
* IT_STLNR-CFLAG = 'X'.
* MODIFY IT_STLNR INDEX LV_TABIX TRANSPORTING NPOSN CFLAG.
* ENDLOOP.
* ENDLOOP.
LOOP AT IT_RULE.
LOOP AT IT_STLNR WHERE WERKS = IT_RULE-WERKS
AND MTART = IT_RULE-MTART
AND MATNR CP IT_RULE-MATNR
AND CFLAG <> 'X'.
IT_STLNR-CFLAG = 'X'.
IT_STLNR-NPOSN = IT_RULE-POSNR.
MODIFY IT_STLNR TRANSPORTING NPOSN CFLAG
WHERE WERKS = IT_RULE-WERKS
AND MTART = IT_RULE-MTART
AND MATNR CP IT_RULE-MATNR.
EXIT.
ENDLOOP.
ENDLOOP.
LOOP AT IT_ERULE.
IT_STLNR-NPOSN = IT_ERULE-POSNR.
MODIFY IT_STLNR TRANSPORTING NPOSN
WHERE WERKS = IT_ERULE-WERKS
AND IDNRK = IT_ERULE-MATNR
AND CFLAG = 'X'.
ENDLOOP.