--- API to upload data into FND_LOOKUP_VALUES in R12
DECLARE
v_error VARCHAR2(4000);
CURSOR get_lookuptype_details IS
SELECT
ltype.application_id,
ltype.customization_level,
ltype.creation_date,
ltype.created_by,
ltype.last_update_date,
ltype.last_updated_by,
ltype.last_update_login,
tl.lookup_type,
tl.security_group_id,
tl.view_application_id,
tl.description,
tl.meaning
FROM
fnd_lookup_types_tl tl,
fnd_lookup_types ltype
WHERE
ltype.lookup_type = 'XX_LOOKUP_TYPE'
AND ltype.lookup_type = tl.lookup_type
AND language = 'US';
CURSOR get_lookcode_details IS
SELECT DISTINCT
lookup_code,
meaning,
description
FROM
xx_lookup_values
--WHERE LOOKUP_CODE = '1'
-- WHERE upload_status <> 'DONE'
;
l_rowid VARCHAR2(100) := 0;
BEGIN
FOR i IN get_lookuptype_details LOOP
FOR j IN get_lookcode_details LOOP
l_rowid := NULL;
BEGIN
fnd_lookup_values_pkg.insert_row(x_rowid => l_rowid, x_lookup_type => i.lookup_type, x_security_group_id => i.security_group_id
, x_view_application_id => i.view_application_id, x_lookup_code => j.lookup_code,
x_tag => '', x_attribute_category => NULL, x_attribute1 => NULL, x_attribute2 =>
NULL, x_attribute3 => NULL,
x_attribute4 => NULL, x_enabled_flag => 'Y', x_start_date_active => NULL, x_end_date_active
=> NULL, x_territory_code => NULL,
x_attribute5 => NULL, x_attribute6 => NULL, x_attribute7 => NULL, x_attribute8 =
> NULL, x_attribute9 => NULL,
x_attribute10 => NULL, x_attribute11 => NULL, x_attribute12 => NULL, x_attribute13
=> NULL, x_attribute14 => NULL,
x_attribute15 => NULL, x_meaning => j.meaning, x_description => j.description, x_creation_date
=> sysdate, x_created_by => i.created_by,
x_last_update_date => i.last_update_date, x_last_updated_by => i.last_updated_by
, x_last_update_login => i.last_update_login);
COMMIT;
UPDATE xx_lookup_values
SET
upload_status = 'DONE'
WHERE
lookup_code = j.lookup_code;
EXCEPTION
WHEN OTHERS THEN
v_error := ( sqlerrm );
UPDATE xx_lookup_values
SET
upload_status = 'Inner Exception: ' || v_error
WHERE
lookup_code = j.lookup_code;
END;
END LOOP;
END LOOP;
--EXCEPTION
-- WHEN OTHERS
-- THEN
-- update XX_COUNTRY set upload_status='Main Exception: ' || V_ERROR WHERE LOOKUP_CODE=J.LOOKUP_CODE;
END;
SELECT
COUNT(*)
FROM
fnd_lookup_values
WHERE
lookup_type = 'XX_LOOKUP_TYPE'
AND language = 'US'
-------------------------------custom table create------------------------------
--drop table XX_LOOKUP_VALUES
CREATE TABLE xx_lookup_values (
lookup_code VARCHAR2(50 BYTE),
meaning VARCHAR2(200 BYTE),
description VARCHAR2(200 BYTE),
upload_status VARCHAR2(2000 BYTE)
)
No comments:
Post a Comment