Function MEMBERS.FN_UPDATE_BADGES
( M_USER_ID INTEGER,
M_BADGE_TYPE_ID INTEGER,
M_RAMP_CODE VARCHAR2,
M_D_CODE VARCHAR2
)
RETURN VARCHAR2 IS
-- MODIFICATION HISTORY
-- THOWFEEK M. KHAN 10-04-2009
-- --------- ------ -------------------------------------------
M_STATUS VARCHAR2(50);
M_COUNTS INTEGER;
PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN
SELECT COUNT(*) INTO M_COUNTS FROM MEMBERS.TBL_USER_BADGES WHERE USER_ID=M_USER_ID AND BADGE_TYPE=M_BADGE_TYPE_ID;
IF(M_COUNTS>0) THEN
UPDATE MEMBERS.TBL_USER_BADGES SET BADGE_TYPE=M_BADGE_TYPE_ID, RAMP_CODE=M_RAMP_CODE, D_CODE=M_D_CODE, AWARD_DATE=sysdate
WHERE USER_ID=M_USER_ID;
COMMIT;
M_STATUS := 'UPDATED';
ELSE
INSERT INTO MEMBERS.TBL_USER_BADGES VALUES(M_USER_ID,M_BADGE_TYPE_ID,M_RAMP_CODE,M_D_CODE,sysdate);
COMMIT;
M_STATUS := 'INSERTED';
END IF;
RETURN M_STATUS;
EXCEPTION
WHEN NO_DATA_FOUND THEN
RETURN 'FAILED';
END; -- Function FN_UPDATE_BADGES
Sign up here with your email