[Home] [Help]
PACKAGE BODY: APPS.MSD_TEMPLATE_ATTRIBUTE_PKG
Source
1 PACKAGE BODY msd_template_attribute_pkg AS
2 /* $Header: msddptab.pls 120.0 2005/05/25 19:49:34 appldev noship $ */
3
4 /* Public Procedures */
5
6 PROCEDURE LOAD_ROW(P_DEMAND_PLAN_NAME in varchar2
7 ,P_ATTRIBUTE_NAME in varchar2
8 ,P_ATTRIBUTE_TYPE in varchar2
9 ,P_OWNER in varchar2
10 ,P_ENABLED_FLAG in varchar2
11 ,P_DISPLAYED_FLAG in varchar2
12 ,P_ATTRIBUTE_PROMPT in varchar2
13 ,P_LOV_NAME in varchar2
14 ,P_INSERT_ALLOWED_FLAG in varchar2
15 ,P_LAST_UPDATE_DATE in varchar2
16 ,P_ENABLE_NONSEED_FLAG in VARCHAR2
17 ,P_CUSTOM_MODE in varchar2
18 )
19 is
20
21 l_demand_plan_id number;
22 l_scenario_id number;
23 l_event_id number;
24 f_luby number; -- entity owner in file
25 f_ludate date; -- entity update date in file
26 db_luby number; -- entity owner in db
27 db_ludate date; -- entity update date in db
28
29 BEGIN
30
31 -- translate values to IDs
32 select DEMAND_PLAN_ID
33 into l_demand_plan_id
34 from MSD_DEMAND_PLANS
35 where DEMAND_PLAN_NAME = P_DEMAND_PLAN_NAME;
36
37
38
39 -- Translate owner to file_last_updated_by
40 f_luby := fnd_load_util.owner_id(P_OWNER);
41
42 -- Translate char last_update_date to date
43 f_ludate := nvl(to_date(P_LAST_UPDATE_DATE, 'YYYY/MM/DD'), sysdate);
44 begin
45 select LAST_UPDATED_BY, LAST_UPDATE_DATE
46 into db_luby, db_ludate
47 from msd_template_attributes
48 where TEMPLATE_ID = l_demand_plan_id
49 and ATTRIBUTE_TYPE = P_ATTRIBUTE_TYPE
50 and ATTRIBUTE_NAME = P_ATTRIBUTE_NAME;
51
52 -- Test for customization and version
53 if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
54 db_ludate, P_CUSTOM_MODE)) then
55 -- Update existing row
56 update msd_template_attributes
57 set enabled_flag = p_enabled_flag
58 ,displayed_flag = p_displayed_flag
59 ,attribute_prompt = p_attribute_prompt
60 ,lov_name = p_lov_name
61 ,insert_allowed_flag = p_insert_allowed_flag ,
62 enable_nonseed_flag = P_ENABLE_NONSEED_FLAG ,
63 last_update_date = f_ludate ,
64 last_updated_by = f_luby ,
65 last_update_login = 0
66 where template_id = l_demand_plan_id
67 and attribute_type = p_attribute_type
68 and attribute_name = p_attribute_name;
69
70 end if;
71 exception
72 when no_data_found then
73 -- Record doesn't exist - insert in all cases
74 insert into msd_template_attributes
75 (TEMPLATE_ID
76 ,ATTRIBUTE_NAME
77 ,ATTRIBUTE_TYPE
78 ,ENABLED_FLAG
79 ,DISPLAYED_FLAG
80 ,ATTRIBUTE_PROMPT
81 ,LOV_NAME
82 ,INSERT_ALLOWED_FLAG ,
83 ENABLE_NONSEED_FLAG ,
84 CREATION_DATE ,
85 CREATED_BY ,
86 LAST_UPDATE_DATE ,
87 LAST_UPDATED_BY ,
88 LAST_UPDATE_LOGIN
89 )
90 values
91 (l_demand_plan_id
92 ,P_ATTRIBUTE_NAME
93 ,P_ATTRIBUTE_TYPE
94 ,P_ENABLED_FLAG
95 ,P_DISPLAYED_FLAG
96 ,P_ATTRIBUTE_PROMPT
97 ,P_LOV_NAME
98 ,P_INSERT_ALLOWED_FLAG ,
99 P_ENABLE_NONSEED_FLAG ,
100 f_ludate ,
101 f_luby ,
102 f_ludate ,
103 f_luby ,
104 0
105 );
106 end;
107
108 END;
109
110 END msd_template_attribute_pkg ;