[Home] [Help]
PACKAGE BODY: APPS.ITA_PARAMETER_HIERARCHY_PKG
Source
1 package body ITA_PARAMETER_HIERARCHY_PKG as
2 /* $Header: itatovrb.pls 120.0 2005/08/17 17:38 anmalhot noship $ */
3
4
5 procedure INSERT_ROW (
6 x_parameter_code IN VARCHAR2,
7 x_override_parameter_code IN VARCHAR2,
8 x_override_level IN NUMBER,
9 x_creation_date IN DATE,
10 x_created_by IN NUMBER,
11 x_last_update_date IN DATE,
12 x_last_updated_by IN NUMBER,
13 x_last_update_login IN NUMBER
14 )
15 is
16 l_check_par_code NUMBER;
17 l_check_override_code NUMBER;
18 begin
19
20 select 1
21 into l_check_par_code
22 from ita_setup_parameters_b
23 where parameter_code = x_parameter_code;
24
25 select 1
26 into l_check_override_code
27 from ita_setup_parameters_b
28 where parameter_code = x_override_parameter_code;
29
30 if ((l_check_par_code =1) and (l_check_override_code = 1)) then
31 insert into ITA_PARAMETER_HIERARCHY(
32 parameter_code,
33 override_parameter_code,
34 override_level,
35 creation_date,
36 created_by,
37 last_update_date,
38 last_updated_by,
39 last_update_login
40 ) values (
41 x_parameter_code ,
42 x_override_parameter_code ,
43 x_override_level ,
44 x_creation_date ,
45 x_created_by ,
46 x_last_update_date ,
47 x_last_updated_by ,
48 x_last_update_login );
49 end if;
50 EXCEPTION
51 when no_data_found then
52 fnd_file.put_line(fnd_file.log,'The parameter or override parameter does not exist');
53
54 end INSERT_ROW;
55
56
57 procedure LOCK_ROW (
58 x_parameter_code IN VARCHAR2,
59 x_override_parameter_code IN VARCHAR2,
60 x_override_level IN NUMBER,
61 x_creation_date IN DATE,
62 x_created_by IN NUMBER,
63 x_last_update_date IN DATE,
64 x_last_updated_by IN NUMBER,
65 x_last_update_login IN NUMBER
66 ) is
67 cursor c is select
68 override_level
69 from ITA_PARAMETER_HIERARCHY
70 where parameter_code = x_parameter_code
71 and override_parameter_code = x_override_parameter_code
72 for update of parameter_code,override_parameter_code nowait;
73 recinfo c%rowtype;
74
75 begin
76 open c;
77 fetch c into recinfo;
78 if (c%notfound) then
79 close c;
80 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
81 app_exception.raise_exception;
82 end if;
83 close c;
84 if (recinfo.override_level = x_override_level
85 OR (recinfo.override_level is null AND x_override_level is null))
86 then
87 null;
88
89 else
90 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
91 app_exception.raise_exception;
92 end if;
93
94 return;
95 end LOCK_ROW;
96
97
98 procedure UPDATE_ROW (
99 x_parameter_code IN VARCHAR2,
100 x_override_parameter_code IN VARCHAR2,
101 x_override_level IN NUMBER,
102 x_last_update_date IN DATE,
103 x_last_updated_by IN NUMBER,
104 x_last_update_login IN NUMBER
105 )
106 is
107 begin
108 update ita_parameter_hierarchy
109 set
110 override_level = x_override_level,
111 last_update_date = x_last_update_date,
112 last_updated_by = x_last_updated_by,
113 last_update_login = x_last_update_login
114 where parameter_code = x_parameter_code
115 and override_parameter_code = x_override_parameter_code;
116
117 if (sql%notfound) then
118 raise no_data_found;
119 end if;
120 end UPDATE_ROW;
121
122
123 procedure DELETE_ROW (
124 x_parameter_code IN VARCHAR2,
125 x_override_parameter_code IN VARCHAR2
126 ) is
127 begin
128 delete from ITA_PARAMETER_HIERARCHY
129 where parameter_code = x_parameter_code
130 and override_parameter_code = x_override_parameter_code;
131
132 if (sql%notfound) then
133 raise no_data_found;
134 end if;
135 end DELETE_ROW;
136
137
138 procedure LOAD_ROW(
139 x_parameter_code in VARCHAR2,
140 x_override_parameter_code in VARCHAR2,
141 x_override_level in NUMBER,
142 x_last_update_date in VARCHAR2,
143 x_owner in VARCHAR2,
144 x_custom_mode in VARCHAR2
145 ) is
146
147 f_luby number; -- entity owner in file
148 f_ludate date; -- entity update date in file
149 db_luby number; -- entity owner in db
150 db_ludate date; -- entity update date in db
151
152 begin
153 -- Translate owner to file_last_updated_by
154 f_luby := fnd_load_util.owner_id(X_OWNER);
155
156 -- Translate char last_update_date to date
157 f_ludate := nvl(to_date(X_LAST_UPDATE_DATE, 'YYYY/MM/DD'), sysdate);
158
159 select last_updated_by, last_update_date into db_luby, db_ludate
160 from ITA_PARAMETER_HIERARCHY
161 where parameter_code = x_parameter_code
162 and override_parameter_code = x_override_parameter_code;
163
164 if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby, db_ludate, X_CUSTOM_MODE))
165 then ITA_PARAMETER_HIERARCHY_PKG.UPDATE_ROW(
166 x_parameter_code => x_parameter_code,
167 x_override_parameter_code => x_override_parameter_code,
168 x_override_level => x_override_level,
169 x_last_update_date => f_ludate,
170 x_last_updated_by => f_luby,
171 x_last_update_login => 0);
172 end if;
173
174 exception when NO_DATA_FOUND
175 then ITA_PARAMETER_HIERARCHY_PKG.INSERT_ROW(
176 x_parameter_code => x_parameter_code,
177 x_override_parameter_code => x_override_parameter_code,
178 x_override_level => x_override_level,
179 x_creation_date => f_ludate,
180 x_created_by => f_luby,
181 x_last_update_date => f_ludate,
182 x_last_updated_by => f_luby,
183 x_last_update_login => 0);
184 end LOAD_ROW;
185
186
187 end ITA_PARAMETER_HIERARCHY_PKG;