Monday, October 31, 2011

Reset password from backend in Oracle APPS

declare
v_user_name varchar2(30):=upper('USER');
v_new_password varchar2(30):='PASSWD';
v_status boolean;
begin
v_status:= fnd_user_pkg.ChangePassword (
username => v_user_name,
newpassword => v_new_password
);
if v_status =true then
dbms_output.put_line ('The password reset successfully for the User:'||v_user_name);
commit;
else
DBMS_OUTPUT.put_line ('Unable to reset password due to'||SQLCODE||' '||SUBSTR(SQLERRM, 1, 100));
rollback;
END if;
end;

convert columns to rows in 11g

I found an interesting feature of 11g today while trying to convert columns to rows:


There is a SELECT ... UNPIVOT in 11i that we can use like this



SELECT ATTRIBUTE6 , ATTRIBUTE7 , ATTRIBUTE8 , ATTRIBUTE9 , ATTRIBUTE10
FROM CZ_CONFIG_ATTRIBUTES
WHERE CONFIG_HDR_ID = 1048 AND ATTRIBUTE_CATEGORY = 'ST_KEYS'

ATTRIBUTE6 ATTRIBUTE7 ATTRIBUTE8 ATTRIBUTE9 ATTRIBUTE10
KAQTY          0                      No                   No                   No


Now using UNPIVOT


SELECT ATTR, ATTR_VAL
FROM CZ_CONFIG_ATTRIBUTES
UNPIVOT INCLUDE NULLS
(attr_val FOR attr
IN ( ATTRIBUTE6 , ATTRIBUTE7 , ATTRIBUTE8 , ATTRIBUTE9 , ATTRIBUTE10
)
)
WHERE CONFIG_HDR_ID = 1048 AND ATTRIBUTE_CATEGORY = 'ST_KEYS'
ORDER BY attr;



ATTR                       ATTR_VAL
ATTRIBUTE10        No
ATTRIBUTE6          KAQTY
ATTRIBUTE7          0
ATTRIBUTE8          No
ATTRIBUTE9          No