[Home] [Help]
PACKAGE BODY: APPS.FND_OBJECT_DEFINITIONS_PKG
Source
1 package body FND_OBJECT_DEFINITIONS_PKG as
2 /* $Header: AFOBDEFB.pls 120.1.12010000.3 2009/08/26 13:15:37 vsoolapa noship $*/
3
4 procedure INSERT_ROW (
5 X_OBJECT_DEFINITION_ID in NUMBER,
6 X_APPLICATION_ID in NUMBER,
7 X_OBJECT_ID in NUMBER,
8 X_OBJECT_DEFINITION_TYPE in VARCHAR2,
9 X_OBJECT_VERSION in VARCHAR2,
10 X_OBJECT_EXTENSION_VERSION in VARCHAR2,
11 X_STATUS in VARCHAR2,
12 X_ENABLED_FLAG in VARCHAR2,
13 X_START_DATE_ACTIVE in DATE,
14 X_END_DATE_ACTIVE in DATE,
15 X_CREATION_DATE in DATE,
16 X_CREATED_BY in NUMBER,
17 X_LAST_UPDATE_DATE in DATE,
18 X_LAST_UPDATED_BY in NUMBER,
19 X_LAST_UPDATE_LOGIN in NUMBER,
20 X_OBJECT_DEFINITION in XMLTYPE,
21 X_OBJECT_REFERENCE in XMLTYPE
22 ) is
23 begin
24
25 insert into FND_OBJECT_DEFINITIONS (
26 OBJECT_DEFINITION_ID,
27 APPLICATION_ID,
28 OBJECT_ID,
29 OBJECT_DEFINITION_TYPE,
30 OBJECT_VERSION,
31 OBJECT_EXTENSION_VERSION,
32 STATUS,
33 ENABLED_FLAG,
34 START_DATE_ACTIVE,
35 END_DATE_ACTIVE,
36 CREATION_DATE,
37 CREATED_BY,
38 LAST_UPDATE_DATE,
39 LAST_UPDATED_BY,
40 LAST_UPDATE_LOGIN,
41 OBJECT_DEFINITION,
42 OBJECT_REFERENCE
43 ) values (
44 X_OBJECT_DEFINITION_ID,
45 X_APPLICATION_ID,
46 X_OBJECT_ID,
47 X_OBJECT_DEFINITION_TYPE,
48 X_OBJECT_VERSION,
49 X_OBJECT_EXTENSION_VERSION,
50 X_STATUS,
51 X_ENABLED_FLAG,
52 X_START_DATE_ACTIVE,
53 X_END_DATE_ACTIVE,
54 X_CREATION_DATE,
55 X_CREATED_BY,
56 X_LAST_UPDATE_DATE,
57 X_LAST_UPDATED_BY,
58 X_LAST_UPDATE_LOGIN,
59 X_OBJECT_DEFINITION,
60 X_OBJECT_REFERENCE
61 );
62
63 end INSERT_ROW;
64
65 procedure UPDATE_ROW (
66 X_APPLICATION_ID in NUMBER,
67 X_OBJECT_ID in NUMBER,
68 X_OBJECT_DEFINITION_TYPE in VARCHAR2,
69 X_OBJECT_VERSION in VARCHAR2,
70 X_OBJECT_EXTENSION_VERSION in VARCHAR2,
71 X_STATUS in VARCHAR2,
72 X_ENABLED_FLAG in VARCHAR2,
73 X_START_DATE_ACTIVE in DATE,
74 X_END_DATE_ACTIVE in DATE,
75 X_CREATION_DATE in DATE,
76 X_CREATED_BY in NUMBER,
77 X_LAST_UPDATE_DATE in DATE,
78 X_LAST_UPDATED_BY in NUMBER,
79 X_LAST_UPDATE_LOGIN in NUMBER,
80 X_OBJECT_DEFINITION in XMLTYPE,
81 X_OBJECT_REFERENCE in XMLTYPE
82 ) is
83 begin
84
85 update FND_OBJECT_DEFINITIONS set
86 APPLICATION_ID = X_APPLICATION_ID,
87 OBJECT_DEFINITION_TYPE = X_OBJECT_DEFINITION_TYPE,
88 OBJECT_VERSION = X_OBJECT_VERSION,
89 OBJECT_EXTENSION_VERSION = X_OBJECT_EXTENSION_VERSION,
90 STATUS = X_STATUS,
91 ENABLED_FLAG = X_ENABLED_FLAG,
92 START_DATE_ACTIVE = X_START_DATE_ACTIVE,
93 END_DATE_ACTIVE = X_END_DATE_ACTIVE,
94 CREATION_DATE = X_CREATION_DATE,
95 CREATED_BY = X_CREATED_BY,
96 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
97 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
98 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
99 OBJECT_DEFINITION = X_OBJECT_DEFINITION,
100 OBJECT_REFERENCE = X_OBJECT_REFERENCE
101 where OBJECT_ID = X_OBJECT_ID;
102
103 if (sql%notfound) then
104 raise no_data_found;
105 end if;
106
107 end UPDATE_ROW;
108
109 -- LOAD_ROW is called from Modeler code.
110 procedure LOAD_ROW (
111 X_OBJ_NAME in VARCHAR2,
112 X_APPLICATION_ID in NUMBER,
113 X_OBJECT_DEFINITION_TYPE in VARCHAR2,
114 X_OBJECT_EXTENSION_VERSION in VARCHAR2,
115 X_STATUS in VARCHAR2,
116 X_ENABLED_FLAG in VARCHAR2,
117 X_START_DATE_ACTIVE in DATE,
118 X_END_DATE_ACTIVE in DATE,
119 X_CREATION_DATE in DATE,
120 X_CREATED_BY in NUMBER,
121 X_LAST_UPDATE_DATE in DATE,
122 X_LAST_UPDATED_BY in NUMBER,
123 X_LAST_UPDATE_LOGIN in NUMBER,
124 X_OBJECT_DEFINITION in XMLTYPE,
125 X_OBJECT_REFERENCE in XMLTYPE
126 ) is
127 app_id number;
128 obj_id number;
129 obj_def_id number;
130 row_id varchar2(64);
131 f_luby number; -- entity owner in file
132 f_ludate date; -- entity update date in file
133 db_luby number; -- entity owner in db
134 db_ludate date; -- entity update date in db
135 begin
136
137 select object_id, last_updated_by, last_update_date
138 into obj_id, db_luby, db_ludate
139 from fnd_objects
140 where obj_name = X_OBJ_NAME;
141
142 fnd_object_definitions_pkg.UPDATE_ROW (
143 X_APPLICATION_ID => X_APPLICATION_ID,
144 X_OBJECT_ID => obj_id,
145 X_OBJECT_DEFINITION_TYPE => X_OBJECT_DEFINITION_TYPE,
146 X_OBJECT_VERSION => '12.0',
147 X_OBJECT_EXTENSION_VERSION => X_OBJECT_EXTENSION_VERSION,
148 X_STATUS => X_STATUS,
149 X_ENABLED_FLAG => X_ENABLED_FLAG,
150 X_START_DATE_ACTIVE => X_START_DATE_ACTIVE,
151 X_END_DATE_ACTIVE => '',
152 X_CREATION_DATE => X_CREATION_DATE,
153 X_CREATED_BY => X_CREATED_BY,
154 X_LAST_UPDATE_DATE => X_LAST_UPDATE_DATE,
155 X_LAST_UPDATED_BY => X_LAST_UPDATED_BY,
156 X_LAST_UPDATE_LOGIN => X_LAST_UPDATE_LOGIN,
157 X_OBJECT_DEFINITION => X_OBJECT_DEFINITION,
158 X_OBJECT_REFERENCE => X_OBJECT_REFERENCE);
159
160 exception
161 when NO_DATA_FOUND then
162
163 select fnd_object_definitions_s.nextval into obj_def_id from dual;
164
165 fnd_object_definitions_pkg.INSERT_ROW (
166 X_OBJECT_DEFINITION_ID => obj_def_id,
167 X_APPLICATION_ID => X_APPLICATION_ID,
168 X_OBJECT_ID => obj_id,
169 X_OBJECT_DEFINITION_TYPE => X_OBJECT_DEFINITION_TYPE,
170 X_OBJECT_VERSION => '12.0',
171 X_OBJECT_EXTENSION_VERSION => X_OBJECT_EXTENSION_VERSION,
172 X_STATUS => X_STATUS,
173 X_ENABLED_FLAG => X_ENABLED_FLAG,
174 X_START_DATE_ACTIVE => X_START_DATE_ACTIVE,
175 X_END_DATE_ACTIVE => '',
176 X_CREATION_DATE => X_CREATION_DATE,
177 X_CREATED_BY => X_CREATED_BY,
178 X_LAST_UPDATE_DATE => X_LAST_UPDATE_DATE,
179 X_LAST_UPDATED_BY => X_LAST_UPDATED_BY,
180 X_LAST_UPDATE_LOGIN => X_LAST_UPDATE_LOGIN,
181 X_OBJECT_DEFINITION => X_OBJECT_DEFINITION,
182 X_OBJECT_REFERENCE => X_OBJECT_REFERENCE);
183
184 end LOAD_ROW;
185
186 -- LOAD_ROW is called from afsearch.lct
187 procedure LOAD_ROW (
188 X_OBJ_NAME in VARCHAR2,
189 X_APPLICATION_ID in NUMBER,
190 X_OBJECT_DEFINITION_TYPE in VARCHAR2,
191 X_OBJECT_EXTENSION_VERSION in VARCHAR2,
192 X_STATUS in VARCHAR2,
193 X_ENABLED_FLAG in VARCHAR2,
194 X_START_DATE_ACTIVE in DATE,
195 X_END_DATE_ACTIVE in DATE,
196 X_CREATION_DATE in DATE,
197 X_CREATED_BY in NUMBER,
198 X_LAST_UPDATE_DATE in DATE,
199 X_LAST_UPDATED_BY in NUMBER,
200 X_LAST_UPDATE_LOGIN in NUMBER,
201 X_OBJECT_DEFINITION in XMLTYPE,
202 X_OBJECT_REFERENCE in XMLTYPE,
203 X_CUSTOM_MODE in VARCHAR2
204 ) is
205 app_id number;
206 obj_id number;
207 obj_def_id number;
208 row_id varchar2(64);
209 f_luby number; -- entity owner in file
210 f_ludate date; -- entity update date in file
211 db_luby number; -- entity owner in db
212 db_ludate date; -- entity update date in db
213 begin
214
215 select fo.object_id, fod.last_updated_by, fod.last_update_date
216 into obj_id, db_luby, db_ludate
217 from fnd_objects fo, fnd_object_definitions fod
218 where obj_name = X_OBJ_NAME
219 and fo.object_id = fod.object_id(+);
220
221 f_luby := X_LAST_UPDATED_BY;
222 f_ludate := nvl(X_LAST_UPDATE_DATE, sysdate);
223
224 if (db_luby is null OR db_ludate is null) then
225
226 select fnd_object_definitions_s.nextval into obj_def_id from dual;
227
228 fnd_object_definitions_pkg.INSERT_ROW (
229 X_OBJECT_DEFINITION_ID => obj_def_id,
230 X_APPLICATION_ID => X_APPLICATION_ID,
231 X_OBJECT_ID => obj_id,
232 X_OBJECT_DEFINITION_TYPE => X_OBJECT_DEFINITION_TYPE,
233 X_OBJECT_VERSION => '12.0',
234 X_OBJECT_EXTENSION_VERSION => X_OBJECT_EXTENSION_VERSION,
235 X_STATUS => X_STATUS,
236 X_ENABLED_FLAG => X_ENABLED_FLAG,
237 X_START_DATE_ACTIVE => X_START_DATE_ACTIVE,
238 X_END_DATE_ACTIVE => '',
239 X_CREATION_DATE => X_CREATION_DATE,
240 X_CREATED_BY => X_CREATED_BY,
241 X_LAST_UPDATE_DATE => X_LAST_UPDATE_DATE,
242 X_LAST_UPDATED_BY => X_LAST_UPDATED_BY,
243 X_LAST_UPDATE_LOGIN => X_LAST_UPDATE_LOGIN,
244 X_OBJECT_DEFINITION => X_OBJECT_DEFINITION,
245 X_OBJECT_REFERENCE => X_OBJECT_REFERENCE);
246
247 elsif (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
248 db_ludate, X_CUSTOM_MODE)) then
249 fnd_object_definitions_pkg.UPDATE_ROW (
250 X_APPLICATION_ID => X_APPLICATION_ID,
251 X_OBJECT_ID => obj_id,
252 X_OBJECT_DEFINITION_TYPE => X_OBJECT_DEFINITION_TYPE,
253 X_OBJECT_VERSION => '12.0',
254 X_OBJECT_EXTENSION_VERSION => X_OBJECT_EXTENSION_VERSION,
255 X_STATUS => X_STATUS,
256 X_ENABLED_FLAG => X_ENABLED_FLAG,
257 X_START_DATE_ACTIVE => X_START_DATE_ACTIVE,
258 X_END_DATE_ACTIVE => '',
259 X_CREATION_DATE => X_CREATION_DATE,
260 X_CREATED_BY => X_CREATED_BY,
261 X_LAST_UPDATE_DATE => X_LAST_UPDATE_DATE,
262 X_LAST_UPDATED_BY => X_LAST_UPDATED_BY,
263 X_LAST_UPDATE_LOGIN => X_LAST_UPDATE_LOGIN,
264 X_OBJECT_DEFINITION => X_OBJECT_DEFINITION,
265 X_OBJECT_REFERENCE => X_OBJECT_REFERENCE);
266 end if;
267
268 end LOAD_ROW;
269
270 end FND_OBJECT_DEFINITIONS_PKG;