Cancel PO Line API
Cancel PO Line API
FND_FILE.PUT_LINE (FND_FILE.LOG,
'TOTAL FAIL RECORD COUNT' || V_FAILURE_COUNT
);
FOR ERR_CODE IN 1 .. FND_MSG_PUB.COUNT_MSG
LOOP
L_MSG_DATA :=
SUBSTR (FND_MSG_PUB.GET (P_MSG_INDEX => 1,
P_ENCODED => 'F'),
1,
200
);
FND_FILE.PUT_LINE
(FND_FILE.LOG,
'CANCEL PO PROCESS API FAILED FOR REASON-'
|| L_MSG_DATA
);
END LOOP;
END IF;
IF L_RETURN_STATUS = 'S'
THEN --- ( FND_API.G_RET_STS_SUCESS)
FND_FILE.PUT_LINE (FND_FILE.LOG, 'CANCEL PO PROCESS API PASSED');
V_SUCCESS_COUNT := V_SUCCESS_COUNT + 1;
FND_FILE.PUT_LINE (FND_FILE.LOG,
'TOTAL SUCCESS RECORD COUNT-'
|| V_SUCCESS_COUNT
);
-- RENAME PO NUMBER AFTER CANCELLATION
UPDATE XX_PO_CLO
SET FLAG = 'P',
ATTRIBUTE1 = 'CANCELED'
WHERE SEQ_ID = FETCH_PO_REC.SEQ_ID;
END IF;
ELSE
UPDATE XX_PO_CLO
SET FLAG = 'P'
WHERE SEQ_ID = FETCH_PO_REC.SEQ_ID;
END IF;
END LOOP;
EXCEPTION
WHEN OTHERS
THEN
FND_FILE.PUT_LINE (FND_FILE.LOG,
'ERROR CODE IN THE EXECUTION OF CANCEL API IS :'
|| TO_NUMBER (SQLCODE)
|| SUBSTR (SQLERRM, 1, 50)
);
END XXPO_CANCEL_PO;