DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_WINDOW_PROPERTIES_PKG

Source


1 package body HR_WINDOW_PROPERTIES_PKG as
2 /* $Header: hrwnplct.pkb 120.1 2011/04/28 10:21:16 sidsaxen ship $ */
3 -- -----------------------------------------------------------------------------
4 -- |-----------------------------< update_copies >-----------------------------|
5 -- -----------------------------------------------------------------------------
6 procedure UPDATE_COPIES (
7   X_WINDOW_PROPERTY_ID in NUMBER,
8   X_FORM_WINDOW_ID in NUMBER,
9   X_TEMPLATE_WINDOW_ID in NUMBER,
10   X_HEIGHT in NUMBER,
11   X_WIDTH in NUMBER,
12   X_X_POSITION in NUMBER,
13   X_Y_POSITION in NUMBER,
14   X_TITLE in VARCHAR2,
15   X_INFORMATION_CATEGORY in VARCHAR2,
16   X_INFORMATION1 in VARCHAR2,
17   X_INFORMATION2 in VARCHAR2,
18   X_INFORMATION3 in VARCHAR2,
19   X_INFORMATION4 in VARCHAR2,
20   X_INFORMATION5 in VARCHAR2,
21   X_INFORMATION6 in VARCHAR2,
22   X_INFORMATION7 in VARCHAR2,
23   X_INFORMATION8 in VARCHAR2,
24   X_INFORMATION9 in VARCHAR2,
25   X_INFORMATION10 in VARCHAR2,
26   X_INFORMATION11 in VARCHAR2,
27   X_INFORMATION12 in VARCHAR2,
28   X_INFORMATION13 in VARCHAR2,
29   X_INFORMATION14 in VARCHAR2,
30   X_INFORMATION15 in VARCHAR2,
31   X_INFORMATION16 in VARCHAR2,
32   X_INFORMATION17 in VARCHAR2,
33   X_INFORMATION18 in VARCHAR2,
34   X_INFORMATION19 in VARCHAR2,
35   X_INFORMATION20 in VARCHAR2,
36   X_INFORMATION21 in VARCHAR2,
37   X_INFORMATION22 in VARCHAR2,
38   X_INFORMATION23 in VARCHAR2,
39   X_INFORMATION24 in VARCHAR2,
40   X_INFORMATION25 in VARCHAR2,
41   X_INFORMATION26 in VARCHAR2,
42   X_INFORMATION27 in VARCHAR2,
43   X_INFORMATION28 in VARCHAR2,
44   X_INFORMATION29 in VARCHAR2,
45   X_INFORMATION30 in VARCHAR2,
46   X_LAST_UPDATE_DATE in DATE,
47   X_LAST_UPDATED_BY in NUMBER,
48   X_LAST_UPDATE_LOGIN in NUMBER
49 ) is
50   cursor csr_original is
51     select *
52       from HR_WINDOW_PROPERTIES_VL
53      where WINDOW_PROPERTY_ID = X_WINDOW_PROPERTY_ID;
54   l_original csr_original%rowtype;
55   cursor csr_copies is
56     select wnp.window_property_id
57       from HR_WINDOW_PROPERTIES_B wnp
58           ,HR_TEMPLATE_WINDOWS_B twn
59           ,HR_TEMPLATE_WINDOWS_B two
60      where wnp.TEMPLATE_WINDOW_ID = twn.TEMPLATE_WINDOW_ID
61        and twn.FORM_TEMPLATE_ID in (select sft.FORM_TEMPLATE_ID_TO
62                                       from HR_SOURCE_FORM_TEMPLATES sft
63                                 start with sft.FORM_TEMPLATE_ID_FROM = two.FORM_TEMPLATE_ID
64                                 connect by sft.FORM_TEMPLATE_ID_FROM = prior sft.FORM_TEMPLATE_ID_TO)
65        and twn.FORM_WINDOW_ID = two.FORM_WINDOW_ID
66        and two.TEMPLATE_WINDOW_ID = X_TEMPLATE_WINDOW_ID;
67 begin
68   if (X_TEMPLATE_WINDOW_ID is not null) then
69     open csr_original;
70     fetch csr_original into l_original;
71     if csr_original%found then
72       close csr_original;
73       for l_copy in csr_copies loop
74         update HR_WINDOW_PROPERTIES_B set
75           HEIGHT = decode(nvl(HEIGHT,hr_api.g_number),nvl(l_original.HEIGHT,hr_api.g_number),X_HEIGHT,HEIGHT),
76           WIDTH = decode(nvl(WIDTH,hr_api.g_number),nvl(l_original.WIDTH,hr_api.g_number),X_WIDTH,WIDTH),
77           X_POSITION = decode(nvl(X_POSITION,hr_api.g_number),nvl(l_original.X_POSITION,hr_api.g_number),X_X_POSITION,X_POSITION),
78           Y_POSITION = decode(nvl(Y_POSITION,hr_api.g_number),nvl(l_original.Y_POSITION,hr_api.g_number),X_Y_POSITION,Y_POSITION),
79           INFORMATION_CATEGORY = decode(nvl(INFORMATION_CATEGORY,hr_api.g_varchar2),nvl(l_original.INFORMATION_CATEGORY,hr_api.g_varchar2),X_INFORMATION_CATEGORY,INFORMATION_CATEGORY),
80           INFORMATION1  = decode(nvl(INFORMATION1 ,hr_api.g_varchar2),nvl(l_original.INFORMATION1 ,hr_api.g_varchar2),X_INFORMATION1 ,INFORMATION1 ),
81           INFORMATION2  = decode(nvl(INFORMATION2 ,hr_api.g_varchar2),nvl(l_original.INFORMATION2 ,hr_api.g_varchar2),X_INFORMATION2 ,INFORMATION2 ),
82           INFORMATION3  = decode(nvl(INFORMATION3 ,hr_api.g_varchar2),nvl(l_original.INFORMATION3 ,hr_api.g_varchar2),X_INFORMATION3 ,INFORMATION3 ),
83           INFORMATION4  = decode(nvl(INFORMATION4 ,hr_api.g_varchar2),nvl(l_original.INFORMATION4 ,hr_api.g_varchar2),X_INFORMATION4 ,INFORMATION4 ),
84           INFORMATION5  = decode(nvl(INFORMATION5 ,hr_api.g_varchar2),nvl(l_original.INFORMATION5 ,hr_api.g_varchar2),X_INFORMATION5 ,INFORMATION5 ),
85           INFORMATION6  = decode(nvl(INFORMATION6 ,hr_api.g_varchar2),nvl(l_original.INFORMATION6 ,hr_api.g_varchar2),X_INFORMATION6 ,INFORMATION6 ),
86           INFORMATION7  = decode(nvl(INFORMATION7 ,hr_api.g_varchar2),nvl(l_original.INFORMATION7 ,hr_api.g_varchar2),X_INFORMATION7 ,INFORMATION7 ),
87           INFORMATION8  = decode(nvl(INFORMATION8 ,hr_api.g_varchar2),nvl(l_original.INFORMATION8 ,hr_api.g_varchar2),X_INFORMATION8 ,INFORMATION8 ),
88           INFORMATION9  = decode(nvl(INFORMATION9 ,hr_api.g_varchar2),nvl(l_original.INFORMATION9 ,hr_api.g_varchar2),X_INFORMATION9 ,INFORMATION9 ),
89           INFORMATION10 = decode(nvl(INFORMATION10,hr_api.g_varchar2),nvl(l_original.INFORMATION10,hr_api.g_varchar2),X_INFORMATION10,INFORMATION10),
93           INFORMATION14 = decode(nvl(INFORMATION14,hr_api.g_varchar2),nvl(l_original.INFORMATION14,hr_api.g_varchar2),X_INFORMATION14,INFORMATION14),
90           INFORMATION11 = decode(nvl(INFORMATION11,hr_api.g_varchar2),nvl(l_original.INFORMATION11,hr_api.g_varchar2),X_INFORMATION11,INFORMATION11),
91           INFORMATION12 = decode(nvl(INFORMATION12,hr_api.g_varchar2),nvl(l_original.INFORMATION12,hr_api.g_varchar2),X_INFORMATION12,INFORMATION12),
92           INFORMATION13 = decode(nvl(INFORMATION13,hr_api.g_varchar2),nvl(l_original.INFORMATION13,hr_api.g_varchar2),X_INFORMATION13,INFORMATION13),
94           INFORMATION15 = decode(nvl(INFORMATION15,hr_api.g_varchar2),nvl(l_original.INFORMATION15,hr_api.g_varchar2),X_INFORMATION15,INFORMATION15),
95           INFORMATION16 = decode(nvl(INFORMATION16,hr_api.g_varchar2),nvl(l_original.INFORMATION16,hr_api.g_varchar2),X_INFORMATION16,INFORMATION16),
96           INFORMATION17 = decode(nvl(INFORMATION17,hr_api.g_varchar2),nvl(l_original.INFORMATION17,hr_api.g_varchar2),X_INFORMATION17,INFORMATION17),
97           INFORMATION18 = decode(nvl(INFORMATION18,hr_api.g_varchar2),nvl(l_original.INFORMATION18,hr_api.g_varchar2),X_INFORMATION18,INFORMATION18),
98           INFORMATION19 = decode(nvl(INFORMATION19,hr_api.g_varchar2),nvl(l_original.INFORMATION19,hr_api.g_varchar2),X_INFORMATION19,INFORMATION19),
99           INFORMATION20 = decode(nvl(INFORMATION20,hr_api.g_varchar2),nvl(l_original.INFORMATION20,hr_api.g_varchar2),X_INFORMATION20,INFORMATION20),
100           INFORMATION21 = decode(nvl(INFORMATION21,hr_api.g_varchar2),nvl(l_original.INFORMATION21,hr_api.g_varchar2),X_INFORMATION21,INFORMATION21),
101           INFORMATION22 = decode(nvl(INFORMATION22,hr_api.g_varchar2),nvl(l_original.INFORMATION22,hr_api.g_varchar2),X_INFORMATION22,INFORMATION22),
102           INFORMATION23 = decode(nvl(INFORMATION23,hr_api.g_varchar2),nvl(l_original.INFORMATION23,hr_api.g_varchar2),X_INFORMATION23,INFORMATION23),
103           INFORMATION24 = decode(nvl(INFORMATION24,hr_api.g_varchar2),nvl(l_original.INFORMATION24,hr_api.g_varchar2),X_INFORMATION24,INFORMATION24),
104           INFORMATION25 = decode(nvl(INFORMATION25,hr_api.g_varchar2),nvl(l_original.INFORMATION25,hr_api.g_varchar2),X_INFORMATION25,INFORMATION25),
105           INFORMATION26 = decode(nvl(INFORMATION26,hr_api.g_varchar2),nvl(l_original.INFORMATION26,hr_api.g_varchar2),X_INFORMATION26,INFORMATION26),
106           INFORMATION27 = decode(nvl(INFORMATION27,hr_api.g_varchar2),nvl(l_original.INFORMATION27,hr_api.g_varchar2),X_INFORMATION27,INFORMATION27),
107           INFORMATION28 = decode(nvl(INFORMATION28,hr_api.g_varchar2),nvl(l_original.INFORMATION28,hr_api.g_varchar2),X_INFORMATION28,INFORMATION28),
108           INFORMATION29 = decode(nvl(INFORMATION29,hr_api.g_varchar2),nvl(l_original.INFORMATION29,hr_api.g_varchar2),X_INFORMATION29,INFORMATION29),
109           INFORMATION30 = decode(nvl(INFORMATION30,hr_api.g_varchar2),nvl(l_original.INFORMATION30,hr_api.g_varchar2),X_INFORMATION30,INFORMATION30),
110           LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
111           LAST_UPDATED_BY = X_LAST_UPDATED_BY,
112           LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
113         where WINDOW_PROPERTY_ID = l_copy.WINDOW_PROPERTY_ID;
114         if (sql%notfound) then
115           raise no_data_found;
116         end if;
117         update HR_WINDOW_PROPERTIES_TL set
118           TITLE = decode(nvl(TITLE,hr_api.g_varchar2),nvl(l_original.TITLE,hr_api.g_varchar2),X_TITLE,TITLE),
119           LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
120           LAST_UPDATED_BY = X_LAST_UPDATED_BY,
121           LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
122           SOURCE_LANG = userenv('LANG')
123         where WINDOW_PROPERTY_ID = l_copy.WINDOW_PROPERTY_ID
124           and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
125         if (sql%notfound) then
126           raise no_data_found;
127         end if;
128       end loop;
129     else
130       close csr_original;
131     end if;
132   end if;
133 end UPDATE_COPIES;
134 --
135 procedure OWNER_TO_WHO (
136   X_OWNER in VARCHAR2,
137   X_CREATION_DATE out nocopy DATE,
138   X_CREATED_BY out nocopy NUMBER,
139   X_LAST_UPDATE_DATE out nocopy DATE,
140   X_LAST_UPDATED_BY out nocopy NUMBER,
141   X_LAST_UPDATE_LOGIN out nocopy NUMBER
142 ) is
143 begin
144   if X_OWNER = 'SEED' then
145     X_CREATED_BY := 1;
146     X_LAST_UPDATED_BY := 1;
147   else
148     X_CREATED_BY := 0;
149     X_LAST_UPDATED_BY := 0;
150   end if;
151   X_CREATION_DATE := sysdate;
152   X_LAST_UPDATE_DATE := sysdate;
153   X_LAST_UPDATE_LOGIN := 0;
154 end OWNER_TO_WHO;
155 procedure INSERT_ROW (
156   X_ROWID in out nocopy VARCHAR2,
157   X_WINDOW_PROPERTY_ID in NUMBER,
158   X_INFORMATION17 in VARCHAR2,
159   X_INFORMATION18 in VARCHAR2,
160   X_INFORMATION19 in VARCHAR2,
161   X_INFORMATION20 in VARCHAR2,
162   X_INFORMATION21 in VARCHAR2,
163   X_INFORMATION22 in VARCHAR2,
164   X_INFORMATION23 in VARCHAR2,
165   X_INFORMATION24 in VARCHAR2,
166   X_INFORMATION25 in VARCHAR2,
167   X_INFORMATION26 in VARCHAR2,
168   X_INFORMATION27 in VARCHAR2,
169   X_INFORMATION28 in VARCHAR2,
170   X_INFORMATION29 in VARCHAR2,
171   X_INFORMATION30 in VARCHAR2,
172   X_X_POSITION in NUMBER,
173   X_FORM_WINDOW_ID in NUMBER,
174   X_TEMPLATE_WINDOW_ID in NUMBER,
175   X_HEIGHT in NUMBER,
176   X_WIDTH in NUMBER,
177   X_INFORMATION12 in VARCHAR2,
178   X_INFORMATION13 in VARCHAR2,
179   X_INFORMATION14 in VARCHAR2,
180   X_INFORMATION15 in VARCHAR2,
181   X_INFORMATION16 in VARCHAR2,
182   X_INFORMATION5 in VARCHAR2,
183   X_INFORMATION6 in VARCHAR2,
184   X_INFORMATION7 in VARCHAR2,
185   X_INFORMATION8 in VARCHAR2,
186   X_INFORMATION9 in VARCHAR2,
187   X_INFORMATION10 in VARCHAR2,
188   X_INFORMATION11 in VARCHAR2,
189   X_Y_POSITION in NUMBER,
190   X_INFORMATION_CATEGORY in VARCHAR2,
191   X_INFORMATION1 in VARCHAR2,
192   X_INFORMATION2 in VARCHAR2,
193   X_INFORMATION3 in VARCHAR2,
194   X_INFORMATION4 in VARCHAR2,
195   X_TITLE in VARCHAR2,
196   X_CREATION_DATE in DATE,
200   X_LAST_UPDATE_LOGIN in NUMBER
197   X_CREATED_BY in NUMBER,
198   X_LAST_UPDATE_DATE in DATE,
199   X_LAST_UPDATED_BY in NUMBER,
201 ) is
202   cursor C is select ROWID from HR_WINDOW_PROPERTIES_B
203     where WINDOW_PROPERTY_ID = X_WINDOW_PROPERTY_ID
204     ;
205 begin
206 
207 --
208 -- Added the following code as a part of Zero Downtime Patching Project.
209 -- Code Starts Here.
210 --
211 
212 BEGIN
213 	PER_RIC_PKG.chk_integrity (
214     p_entity_name		=>	'HR_WINDOW_PROPERTIES_B',
215     p_ref_entity_info   => PER_RIC_PKG.ref_entity_tbl(
216 							PER_RIC_PKG.ref_info_rec('HR_FORM_WINDOWS_B', PER_RIC_PKG.column_info_tbl(
217                                                 PER_RIC_PKG.col_info_rec('FORM_WINDOW_ID',NULL,X_FORM_WINDOW_ID,NULL))),
218 							PER_RIC_PKG.ref_info_rec('HR_TEMPLATE_WINDOWS_B', PER_RIC_PKG.column_info_tbl(
219                                                 PER_RIC_PKG.col_info_rec('TEMPLATE_WINDOW_ID',NULL,X_TEMPLATE_WINDOW_ID,NULL)))
220 							),
221     p_ref_type        	=>	'INS');
222 
223 END;
224 --
225 -- Code Ends Here.
226 --
227   insert into HR_WINDOW_PROPERTIES_B (
228     INFORMATION17,
229     INFORMATION18,
230     INFORMATION19,
231     INFORMATION20,
232     INFORMATION21,
233     INFORMATION22,
234     INFORMATION23,
235     INFORMATION24,
236     INFORMATION25,
237     INFORMATION26,
238     INFORMATION27,
239     INFORMATION28,
240     INFORMATION29,
241     INFORMATION30,
242     X_POSITION,
243     FORM_WINDOW_ID,
244     TEMPLATE_WINDOW_ID,
245     HEIGHT,
246     WIDTH,
247     INFORMATION12,
248     INFORMATION13,
249     INFORMATION14,
250     INFORMATION15,
251     INFORMATION16,
252     WINDOW_PROPERTY_ID,
253     INFORMATION5,
254     INFORMATION6,
255     INFORMATION7,
256     INFORMATION8,
257     INFORMATION9,
258     INFORMATION10,
259     INFORMATION11,
260     Y_POSITION,
261     INFORMATION_CATEGORY,
262     INFORMATION1,
263     INFORMATION2,
264     INFORMATION3,
265     INFORMATION4,
266     CREATION_DATE,
267     CREATED_BY,
268     LAST_UPDATE_DATE,
269     LAST_UPDATED_BY,
270     LAST_UPDATE_LOGIN
271   ) values (
272     X_INFORMATION17,
273     X_INFORMATION18,
274     X_INFORMATION19,
275     X_INFORMATION20,
276     X_INFORMATION21,
277     X_INFORMATION22,
278     X_INFORMATION23,
279     X_INFORMATION24,
280     X_INFORMATION25,
281     X_INFORMATION26,
282     X_INFORMATION27,
283     X_INFORMATION28,
284     X_INFORMATION29,
285     X_INFORMATION30,
286     X_X_POSITION,
287     X_FORM_WINDOW_ID,
288     X_TEMPLATE_WINDOW_ID,
289     X_HEIGHT,
290     X_WIDTH,
291     X_INFORMATION12,
292     X_INFORMATION13,
293     X_INFORMATION14,
294     X_INFORMATION15,
295     X_INFORMATION16,
296     X_WINDOW_PROPERTY_ID,
297     X_INFORMATION5,
298     X_INFORMATION6,
299     X_INFORMATION7,
300     X_INFORMATION8,
301     X_INFORMATION9,
302     X_INFORMATION10,
303     X_INFORMATION11,
304     X_Y_POSITION,
305     X_INFORMATION_CATEGORY,
306     X_INFORMATION1,
307     X_INFORMATION2,
308     X_INFORMATION3,
309     X_INFORMATION4,
310     X_CREATION_DATE,
311     X_CREATED_BY,
312     X_LAST_UPDATE_DATE,
313     X_LAST_UPDATED_BY,
314     X_LAST_UPDATE_LOGIN
315   );
316 
317 --
318 -- Added the following code as a part of Zero Downtime Patching Project.
319 -- Code Starts Here.
320 --
321 
322 BEGIN
323 	PER_RIC_PKG.chk_integrity (
324     p_entity_name			=>	'HR_WINDOW_PROPERTIES_TL',
325     p_ref_entity         	=>	'HR_WINDOW_PROPERTIES_B',
326     p_ref_column_name    	=>	'WINDOW_PROPERTY_ID',
327     p_ref_col_value_number  =>	X_WINDOW_PROPERTY_ID,
328     p_ref_col_value_varchar =>	NULL,
329     p_ref_col_value_date    =>	NULL,
330     p_ref_type        		=>	'INS');
331 
332 END;
333 --
334 -- Code Ends Here.
335 --
336   insert into HR_WINDOW_PROPERTIES_TL (
337     WINDOW_PROPERTY_ID,
338     TITLE,
339     LAST_UPDATE_DATE,
340     LAST_UPDATED_BY,
341     LAST_UPDATE_LOGIN,
342     CREATED_BY,
343     CREATION_DATE,
344     LANGUAGE,
345     SOURCE_LANG
346   ) select
347     X_WINDOW_PROPERTY_ID,
348     X_TITLE,
349     X_LAST_UPDATE_DATE,
350     X_LAST_UPDATED_BY,
351     X_LAST_UPDATE_LOGIN,
352     X_CREATED_BY,
353     X_CREATION_DATE,
354     L.LANGUAGE_CODE,
355     userenv('LANG')
356   from FND_LANGUAGES L
357   where L.INSTALLED_FLAG in ('I', 'B')
358   and not exists
359     (select NULL
360     from HR_WINDOW_PROPERTIES_TL T
361     where T.WINDOW_PROPERTY_ID = X_WINDOW_PROPERTY_ID
362     and T.LANGUAGE = L.LANGUAGE_CODE);
363 
364   open c;
365   fetch c into X_ROWID;
366   if (c%notfound) then
367     close c;
368     raise no_data_found;
369   end if;
370   close c;
371 
372 end INSERT_ROW;
373 
374 procedure LOCK_ROW (
375   X_WINDOW_PROPERTY_ID in NUMBER,
376   X_INFORMATION17 in VARCHAR2,
377   X_INFORMATION18 in VARCHAR2,
378   X_INFORMATION19 in VARCHAR2,
379   X_INFORMATION20 in VARCHAR2,
380   X_INFORMATION21 in VARCHAR2,
381   X_INFORMATION22 in VARCHAR2,
382   X_INFORMATION23 in VARCHAR2,
383   X_INFORMATION24 in VARCHAR2,
384   X_INFORMATION25 in VARCHAR2,
385   X_INFORMATION26 in VARCHAR2,
386   X_INFORMATION27 in VARCHAR2,
387   X_INFORMATION28 in VARCHAR2,
388   X_INFORMATION29 in VARCHAR2,
389   X_INFORMATION30 in VARCHAR2,
390   X_X_POSITION in NUMBER,
391   X_FORM_WINDOW_ID in NUMBER,
392   X_TEMPLATE_WINDOW_ID in NUMBER,
393   X_HEIGHT in NUMBER,
394   X_WIDTH in NUMBER,
395   X_INFORMATION12 in VARCHAR2,
396   X_INFORMATION13 in VARCHAR2,
397   X_INFORMATION14 in VARCHAR2,
398   X_INFORMATION15 in VARCHAR2,
399   X_INFORMATION16 in VARCHAR2,
400   X_INFORMATION5 in VARCHAR2,
401   X_INFORMATION6 in VARCHAR2,
402   X_INFORMATION7 in VARCHAR2,
403   X_INFORMATION8 in VARCHAR2,
404   X_INFORMATION9 in VARCHAR2,
405   X_INFORMATION10 in VARCHAR2,
406   X_INFORMATION11 in VARCHAR2,
407   X_Y_POSITION in NUMBER,
408   X_INFORMATION_CATEGORY in VARCHAR2,
409   X_INFORMATION1 in VARCHAR2,
410   X_INFORMATION2 in VARCHAR2,
411   X_INFORMATION3 in VARCHAR2,
412   X_INFORMATION4 in VARCHAR2,
413   X_TITLE in VARCHAR2
414 ) is
415   cursor c is select
416       INFORMATION17,
417       INFORMATION18,
418       INFORMATION19,
419       INFORMATION20,
420       INFORMATION21,
421       INFORMATION22,
422       INFORMATION23,
423       INFORMATION24,
424       INFORMATION25,
425       INFORMATION26,
426       INFORMATION27,
427       INFORMATION28,
428       INFORMATION29,
429       INFORMATION30,
430       X_POSITION,
431       FORM_WINDOW_ID,
432       TEMPLATE_WINDOW_ID,
433       HEIGHT,
434       WIDTH,
435       INFORMATION12,
436       INFORMATION13,
437       INFORMATION14,
438       INFORMATION15,
439       INFORMATION16,
440       INFORMATION5,
441       INFORMATION6,
442       INFORMATION7,
443       INFORMATION8,
444       INFORMATION9,
445       INFORMATION10,
446       INFORMATION11,
447       Y_POSITION,
448       INFORMATION_CATEGORY,
449       INFORMATION1,
450       INFORMATION2,
451       INFORMATION3,
452       INFORMATION4
453     from HR_WINDOW_PROPERTIES_B
454     where WINDOW_PROPERTY_ID = X_WINDOW_PROPERTY_ID
455     for update of WINDOW_PROPERTY_ID nowait;
456   recinfo c%rowtype;
457 
458   cursor c1 is select
459       TITLE,
460       decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
461     from HR_WINDOW_PROPERTIES_TL
462     where WINDOW_PROPERTY_ID = X_WINDOW_PROPERTY_ID
463     and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
464     for update of WINDOW_PROPERTY_ID nowait;
465 begin
466   open c;
467   fetch c into recinfo;
468   if (c%notfound) then
469     close c;
470     fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
471     app_exception.raise_exception;
472   end if;
473   close c;
474   if (    ((recinfo.INFORMATION17 = X_INFORMATION17)
475            OR ((recinfo.INFORMATION17 is null) AND (X_INFORMATION17 is null)))
476       AND ((recinfo.INFORMATION18 = X_INFORMATION18)
477            OR ((recinfo.INFORMATION18 is null) AND (X_INFORMATION18 is null)))
478       AND ((recinfo.INFORMATION19 = X_INFORMATION19)
479            OR ((recinfo.INFORMATION19 is null) AND (X_INFORMATION19 is null)))
480       AND ((recinfo.INFORMATION20 = X_INFORMATION20)
481            OR ((recinfo.INFORMATION20 is null) AND (X_INFORMATION20 is null)))
482       AND ((recinfo.INFORMATION21 = X_INFORMATION21)
483            OR ((recinfo.INFORMATION21 is null) AND (X_INFORMATION21 is null)))
484       AND ((recinfo.INFORMATION22 = X_INFORMATION22)
485            OR ((recinfo.INFORMATION22 is null) AND (X_INFORMATION22 is null)))
486       AND ((recinfo.INFORMATION23 = X_INFORMATION23)
487            OR ((recinfo.INFORMATION23 is null) AND (X_INFORMATION23 is null)))
488       AND ((recinfo.INFORMATION24 = X_INFORMATION24)
489            OR ((recinfo.INFORMATION24 is null) AND (X_INFORMATION24 is null)))
490       AND ((recinfo.INFORMATION25 = X_INFORMATION25)
491            OR ((recinfo.INFORMATION25 is null) AND (X_INFORMATION25 is null)))
492       AND ((recinfo.INFORMATION26 = X_INFORMATION26)
493            OR ((recinfo.INFORMATION26 is null) AND (X_INFORMATION26 is null)))
494       AND ((recinfo.INFORMATION27 = X_INFORMATION27)
495            OR ((recinfo.INFORMATION27 is null) AND (X_INFORMATION27 is null)))
496       AND ((recinfo.INFORMATION28 = X_INFORMATION28)
497            OR ((recinfo.INFORMATION28 is null) AND (X_INFORMATION28 is null)))
498       AND ((recinfo.INFORMATION29 = X_INFORMATION29)
499            OR ((recinfo.INFORMATION29 is null) AND (X_INFORMATION29 is null)))
500       AND ((recinfo.INFORMATION30 = X_INFORMATION30)
501            OR ((recinfo.INFORMATION30 is null) AND (X_INFORMATION30 is null)))
502       AND ((recinfo.X_POSITION = X_X_POSITION)
503            OR ((recinfo.X_POSITION is null) AND (X_X_POSITION is null)))
504       AND ((recinfo.FORM_WINDOW_ID = X_FORM_WINDOW_ID)
508       AND ((recinfo.HEIGHT = X_HEIGHT)
505            OR ((recinfo.FORM_WINDOW_ID is null) AND (X_FORM_WINDOW_ID is null)))
506       AND ((recinfo.TEMPLATE_WINDOW_ID = X_TEMPLATE_WINDOW_ID)
507            OR ((recinfo.TEMPLATE_WINDOW_ID is null) AND (X_TEMPLATE_WINDOW_ID is null)))
509            OR ((recinfo.HEIGHT is null) AND (X_HEIGHT is null)))
510       AND ((recinfo.WIDTH = X_WIDTH)
511            OR ((recinfo.WIDTH is null) AND (X_WIDTH is null)))
512       AND ((recinfo.INFORMATION12 = X_INFORMATION12)
513            OR ((recinfo.INFORMATION12 is null) AND (X_INFORMATION12 is null)))
514       AND ((recinfo.INFORMATION13 = X_INFORMATION13)
515            OR ((recinfo.INFORMATION13 is null) AND (X_INFORMATION13 is null)))
516       AND ((recinfo.INFORMATION14 = X_INFORMATION14)
517            OR ((recinfo.INFORMATION14 is null) AND (X_INFORMATION14 is null)))
518       AND ((recinfo.INFORMATION15 = X_INFORMATION15)
519            OR ((recinfo.INFORMATION15 is null) AND (X_INFORMATION15 is null)))
520       AND ((recinfo.INFORMATION16 = X_INFORMATION16)
521            OR ((recinfo.INFORMATION16 is null) AND (X_INFORMATION16 is null)))
522       AND ((recinfo.INFORMATION5 = X_INFORMATION5)
523            OR ((recinfo.INFORMATION5 is null) AND (X_INFORMATION5 is null)))
524       AND ((recinfo.INFORMATION6 = X_INFORMATION6)
525            OR ((recinfo.INFORMATION6 is null) AND (X_INFORMATION6 is null)))
526       AND ((recinfo.INFORMATION7 = X_INFORMATION7)
527            OR ((recinfo.INFORMATION7 is null) AND (X_INFORMATION7 is null)))
528       AND ((recinfo.INFORMATION8 = X_INFORMATION8)
529            OR ((recinfo.INFORMATION8 is null) AND (X_INFORMATION8 is null)))
530       AND ((recinfo.INFORMATION9 = X_INFORMATION9)
531            OR ((recinfo.INFORMATION9 is null) AND (X_INFORMATION9 is null)))
532       AND ((recinfo.INFORMATION10 = X_INFORMATION10)
533            OR ((recinfo.INFORMATION10 is null) AND (X_INFORMATION10 is null)))
534       AND ((recinfo.INFORMATION11 = X_INFORMATION11)
535            OR ((recinfo.INFORMATION11 is null) AND (X_INFORMATION11 is null)))
536       AND ((recinfo.Y_POSITION = X_Y_POSITION)
537            OR ((recinfo.Y_POSITION is null) AND (X_Y_POSITION is null)))
538       AND ((recinfo.INFORMATION_CATEGORY = X_INFORMATION_CATEGORY)
539            OR ((recinfo.INFORMATION_CATEGORY is null) AND (X_INFORMATION_CATEGORY is null)))
540       AND ((recinfo.INFORMATION1 = X_INFORMATION1)
541            OR ((recinfo.INFORMATION1 is null) AND (X_INFORMATION1 is null)))
542       AND ((recinfo.INFORMATION2 = X_INFORMATION2)
543            OR ((recinfo.INFORMATION2 is null) AND (X_INFORMATION2 is null)))
544       AND ((recinfo.INFORMATION3 = X_INFORMATION3)
545            OR ((recinfo.INFORMATION3 is null) AND (X_INFORMATION3 is null)))
546       AND ((recinfo.INFORMATION4 = X_INFORMATION4)
547            OR ((recinfo.INFORMATION4 is null) AND (X_INFORMATION4 is null)))
548   ) then
549     null;
550   else
551     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
552     app_exception.raise_exception;
553   end if;
554 
555   for tlinfo in c1 loop
556     if (tlinfo.BASELANG = 'Y') then
557       if (    ((tlinfo.TITLE = X_TITLE)
558                OR ((tlinfo.TITLE is null) AND (X_TITLE is null)))
559       ) then
560         null;
561       else
562         fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
563         app_exception.raise_exception;
564       end if;
565     end if;
566   end loop;
567   return;
568 end LOCK_ROW;
569 
570 procedure UPDATE_ROW (
571   X_WINDOW_PROPERTY_ID in NUMBER,
572   X_INFORMATION17 in VARCHAR2,
573   X_INFORMATION18 in VARCHAR2,
574   X_INFORMATION19 in VARCHAR2,
575   X_INFORMATION20 in VARCHAR2,
576   X_INFORMATION21 in VARCHAR2,
577   X_INFORMATION22 in VARCHAR2,
578   X_INFORMATION23 in VARCHAR2,
579   X_INFORMATION24 in VARCHAR2,
580   X_INFORMATION25 in VARCHAR2,
581   X_INFORMATION26 in VARCHAR2,
582   X_INFORMATION27 in VARCHAR2,
583   X_INFORMATION28 in VARCHAR2,
584   X_INFORMATION29 in VARCHAR2,
585   X_INFORMATION30 in VARCHAR2,
586   X_X_POSITION in NUMBER,
587   X_FORM_WINDOW_ID in NUMBER,
588   X_TEMPLATE_WINDOW_ID in NUMBER,
589   X_HEIGHT in NUMBER,
590   X_WIDTH in NUMBER,
591   X_INFORMATION12 in VARCHAR2,
592   X_INFORMATION13 in VARCHAR2,
593   X_INFORMATION14 in VARCHAR2,
594   X_INFORMATION15 in VARCHAR2,
595   X_INFORMATION16 in VARCHAR2,
596   X_INFORMATION5 in VARCHAR2,
597   X_INFORMATION6 in VARCHAR2,
598   X_INFORMATION7 in VARCHAR2,
599   X_INFORMATION8 in VARCHAR2,
600   X_INFORMATION9 in VARCHAR2,
601   X_INFORMATION10 in VARCHAR2,
602   X_INFORMATION11 in VARCHAR2,
603   X_Y_POSITION in NUMBER,
604   X_INFORMATION_CATEGORY in VARCHAR2,
605   X_INFORMATION1 in VARCHAR2,
606   X_INFORMATION2 in VARCHAR2,
607   X_INFORMATION3 in VARCHAR2,
608   X_INFORMATION4 in VARCHAR2,
609   X_TITLE in VARCHAR2,
610   X_LAST_UPDATE_DATE in DATE,
611   X_LAST_UPDATED_BY in NUMBER,
612   X_LAST_UPDATE_LOGIN in NUMBER
613 ) is
614 begin
615   update HR_WINDOW_PROPERTIES_B set
616     INFORMATION17 = X_INFORMATION17,
617     INFORMATION18 = X_INFORMATION18,
618     INFORMATION19 = X_INFORMATION19,
619     INFORMATION20 = X_INFORMATION20,
620     INFORMATION21 = X_INFORMATION21,
621     INFORMATION22 = X_INFORMATION22,
622     INFORMATION23 = X_INFORMATION23,
623     INFORMATION24 = X_INFORMATION24,
624     INFORMATION25 = X_INFORMATION25,
625     INFORMATION26 = X_INFORMATION26,
626     INFORMATION27 = X_INFORMATION27,
627     INFORMATION28 = X_INFORMATION28,
628     INFORMATION29 = X_INFORMATION29,
629     INFORMATION30 = X_INFORMATION30,
630     X_POSITION = X_X_POSITION,
631     FORM_WINDOW_ID = X_FORM_WINDOW_ID,
632     TEMPLATE_WINDOW_ID = X_TEMPLATE_WINDOW_ID,
633     HEIGHT = X_HEIGHT,
634     WIDTH = X_WIDTH,
635     INFORMATION12 = X_INFORMATION12,
636     INFORMATION13 = X_INFORMATION13,
637     INFORMATION14 = X_INFORMATION14,
638     INFORMATION15 = X_INFORMATION15,
639     INFORMATION16 = X_INFORMATION16,
640     INFORMATION5 = X_INFORMATION5,
641     INFORMATION6 = X_INFORMATION6,
642     INFORMATION7 = X_INFORMATION7,
643     INFORMATION8 = X_INFORMATION8,
644     INFORMATION9 = X_INFORMATION9,
648     INFORMATION_CATEGORY = X_INFORMATION_CATEGORY,
645     INFORMATION10 = X_INFORMATION10,
646     INFORMATION11 = X_INFORMATION11,
647     Y_POSITION = X_Y_POSITION,
649     INFORMATION1 = X_INFORMATION1,
650     INFORMATION2 = X_INFORMATION2,
651     INFORMATION3 = X_INFORMATION3,
652     INFORMATION4 = X_INFORMATION4,
653     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
654     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
655     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
656   where WINDOW_PROPERTY_ID = X_WINDOW_PROPERTY_ID;
657 
658   if (sql%notfound) then
659     raise no_data_found;
660   end if;
661 
662   update HR_WINDOW_PROPERTIES_TL set
663     TITLE = X_TITLE,
664     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
665     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
666     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
667     SOURCE_LANG = userenv('LANG')
668   where WINDOW_PROPERTY_ID = X_WINDOW_PROPERTY_ID
669   and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
670 
671   if (sql%notfound) then
672     raise no_data_found;
673   end if;
674 end UPDATE_ROW;
675 
676 procedure DELETE_ROW (
677   X_WINDOW_PROPERTY_ID in NUMBER
678 ) is
679 begin
680   delete from HR_WINDOW_PROPERTIES_TL
681   where WINDOW_PROPERTY_ID = X_WINDOW_PROPERTY_ID;
682 
683   if (sql%notfound) then
684     raise no_data_found;
685   end if;
686 --
687 -- Added the following code as a part of Zero Downtime Patching Project.
688 -- Code Starts Here.
689 --
690 
691 BEGIN
692 	PER_RIC_PKG.chk_integrity (
693     p_entity_name			=>	'HR_WINDOW_PROPERTIES_B',
694     p_ref_entity         	=>	'HR_WINDOW_PROPERTIES_TL',
695     p_ref_column_name    	=>	'WINDOW_PROPERTY_ID',
696     p_ref_col_value_number  =>	X_WINDOW_PROPERTY_ID,
697     p_ref_col_value_varchar =>	NULL,
698     p_ref_col_value_date    =>	NULL,
699     p_ref_type        		=>	'DEL');
700 
701 END;
702 --
703 -- Code Ends Here.
704 --
705   delete from HR_WINDOW_PROPERTIES_B
706   where WINDOW_PROPERTY_ID = X_WINDOW_PROPERTY_ID;
707 
708   if (sql%notfound) then
709     raise no_data_found;
710   end if;
711 end DELETE_ROW;
712 
713 procedure ADD_LANGUAGE
714 is
715 begin
716   delete from HR_WINDOW_PROPERTIES_TL T
717   where not exists
718     (select NULL
719     from HR_WINDOW_PROPERTIES_B B
720     where B.WINDOW_PROPERTY_ID = T.WINDOW_PROPERTY_ID
721     );
722 
723   update HR_WINDOW_PROPERTIES_TL T set (
724       TITLE
725     ) = (select
726       B.TITLE
727     from HR_WINDOW_PROPERTIES_TL B
728     where B.WINDOW_PROPERTY_ID = T.WINDOW_PROPERTY_ID
729     and B.LANGUAGE = T.SOURCE_LANG)
730   where (
731       T.WINDOW_PROPERTY_ID,
732       T.LANGUAGE
733   ) in (select
734       SUBT.WINDOW_PROPERTY_ID,
735       SUBT.LANGUAGE
736     from HR_WINDOW_PROPERTIES_TL SUBB, HR_WINDOW_PROPERTIES_TL SUBT
737     where SUBB.WINDOW_PROPERTY_ID = SUBT.WINDOW_PROPERTY_ID
738     and SUBB.LANGUAGE = SUBT.SOURCE_LANG
739     and (SUBB.TITLE <> SUBT.TITLE
740       or (SUBB.TITLE is null and SUBT.TITLE is not null)
741       or (SUBB.TITLE is not null and SUBT.TITLE is null)
742   ));
743 
744   insert into HR_WINDOW_PROPERTIES_TL (
745     WINDOW_PROPERTY_ID,
746     TITLE,
747     LAST_UPDATE_DATE,
748     LAST_UPDATED_BY,
749     LAST_UPDATE_LOGIN,
750     CREATED_BY,
751     CREATION_DATE,
752     LANGUAGE,
753     SOURCE_LANG
754   ) select
755     B.WINDOW_PROPERTY_ID,
756     B.TITLE,
757     B.LAST_UPDATE_DATE,
758     B.LAST_UPDATED_BY,
759     B.LAST_UPDATE_LOGIN,
760     B.CREATED_BY,
761     B.CREATION_DATE,
762     L.LANGUAGE_CODE,
763     B.SOURCE_LANG
764   from HR_WINDOW_PROPERTIES_TL B, FND_LANGUAGES L
765   where L.INSTALLED_FLAG in ('I', 'B')
766   and B.LANGUAGE = userenv('LANG')
767   and not exists
768     (select NULL
769     from HR_WINDOW_PROPERTIES_TL T
770     where T.WINDOW_PROPERTY_ID = B.WINDOW_PROPERTY_ID
771     and T.LANGUAGE = L.LANGUAGE_CODE);
772 end ADD_LANGUAGE;
773 
774 procedure TRANSLATE_ROW (
775   X_APPLICATION_SHORT_NAME in VARCHAR2,
776   X_FORM_NAME in VARCHAR2,
777   X_WINDOW_NAME in VARCHAR2,
778   X_TEMPLATE_NAME in VARCHAR2,
779   X_TERRITORY_SHORT_NAME in VARCHAR2,
780   X_OWNER in VARCHAR2,
781   X_TITLE in VARCHAR2) is
782   X_ROWID ROWID;
783   X_CREATION_DATE DATE;
784   X_CREATED_BY NUMBER;
785   X_LAST_UPDATE_DATE DATE;
786   X_LAST_UPDATED_BY NUMBER;
787   X_LAST_UPDATE_LOGIN NUMBER;
788   X_FORM_ID NUMBER;
789   X_APPLICATION_ID NUMBER;
790   X_FORM_WINDOW_ID NUMBER;
791   X_TEMPLATE_WINDOW_ID NUMBER;
792   X_TEMPLATE_WINDOW_CONTEXT_ID NUMBER;
793   X_WINDOW_PROPERTY_ID NUMBER;
794 begin
795 
796   OWNER_TO_WHO (
797     X_OWNER,
798     X_CREATION_DATE,
799     X_CREATED_BY,
800     X_LAST_UPDATE_DATE,
801     X_LAST_UPDATED_BY,
802     X_LAST_UPDATE_LOGIN
803   );
804 
805  select application_id
806  into x_application_id
807  from fnd_application
808  where application_short_name = x_application_short_name;
809 
810  select form_id
811  into x_form_id
812  from fnd_form
813  where form_name = x_form_name
814  and application_id = x_application_id;
815 
816  select form_window_id
817  into x_form_window_id
818  from hr_form_windows_b
819  where window_name = x_window_name
820  and application_id = x_application_id
821  and form_id = x_form_id;
822 
823  IF ltrim(rtrim(x_template_name)) is not null then
824 
825  select hti.template_window_id
826  into x_template_window_id
827  from hr_form_templates_b hft
828       ,hr_template_windows_b hti
829  where hti.form_window_id = x_form_window_id
830  and hti.form_template_id = hft.form_template_id
831  and hft.form_id = x_form_id
832  and hft.application_id = x_application_id
833  and (  (hft.legislation_code is null and x_territory_short_name is null)
834      or (hft.legislation_code = x_territory_short_name) )
835  and hft.template_name = x_template_name;
836 
837  x_form_window_id := null;
838  ELSE
839  x_template_window_id := null;
840  END IF;
841 
842  select window_property_id
843  into x_window_property_id
844  from hr_window_properties_b
845  where nvl(form_window_id,hr_api.g_number) =  nvl(x_form_window_id,hr_api.g_number)
846  and nvl(template_window_id,hr_api.g_number) = nvl(x_template_window_id,hr_api.g_number);
847 
848  update HR_WINDOW_PROPERTIES_TL set
849   TITLE = X_TITLE,
850   LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
851   LAST_UPDATED_BY = X_LAST_UPDATED_BY,
852   LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
853   SOURCE_LANG = userenv('LANG')
854  where userenv('LANG') in (LANGUAGE,SOURCE_LANG)
855  and window_property_id = x_window_property_id;
856 
857 
858 end TRANSLATE_ROW;
859 
860 procedure LOAD_ROW (
861   X_APPLICATION_SHORT_NAME in VARCHAR2,
862   X_FORM_NAME in VARCHAR2,
863   X_WINDOW_NAME in VARCHAR2,
864   X_TEMPLATE_NAME in VARCHAR2,
865   X_TERRITORY_SHORT_NAME in VARCHAR2,
866   X_OWNER in VARCHAR2,
867   X_HEIGHT     in VARCHAR2,
868   X_WIDTH     in VARCHAR2,
869   X_X_POSITION  in VARCHAR2,
870   X_Y_POSITION in VARCHAR2,
871   X_INFORMATION_CATEGORY in VARCHAR2,
872   X_INFORMATION1 in VARCHAR2,
873   X_INFORMATION2 in VARCHAR2,
874   X_INFORMATION3 in VARCHAR2,
875   X_INFORMATION4 in VARCHAR2,
876   X_INFORMATION5 in VARCHAR2,
877   X_INFORMATION6 in VARCHAR2,
878   X_INFORMATION7 in VARCHAR2,
879   X_INFORMATION8 in VARCHAR2,
880   X_INFORMATION9 in VARCHAR2,
881   X_INFORMATION10 in VARCHAR2,
882   X_INFORMATION11 in VARCHAR2,
883   X_INFORMATION12 in VARCHAR2,
884   X_INFORMATION13 in VARCHAR2,
885   X_INFORMATION14 in VARCHAR2,
886   X_INFORMATION15 in VARCHAR2,
887   X_INFORMATION16 in VARCHAR2,
888   X_INFORMATION17 in VARCHAR2,
889   X_INFORMATION18 in VARCHAR2,
890   X_INFORMATION19 in VARCHAR2,
891   X_INFORMATION20 in VARCHAR2,
892   X_INFORMATION21 in VARCHAR2,
893   X_INFORMATION22 in VARCHAR2,
894   X_INFORMATION23 in VARCHAR2,
895   X_INFORMATION24 in VARCHAR2,
896   X_INFORMATION25 in VARCHAR2,
897   X_INFORMATION26 in VARCHAR2,
898   X_INFORMATION27 in VARCHAR2,
899   X_INFORMATION28 in VARCHAR2,
900   X_INFORMATION29 in VARCHAR2,
901   X_INFORMATION30 in VARCHAR2,
902   X_TITLE in VARCHAR2) is
903   X_ROWID ROWID;
904   X_CREATION_DATE DATE;
905   X_CREATED_BY NUMBER;
906   X_LAST_UPDATE_DATE DATE;
907   X_LAST_UPDATED_BY NUMBER;
908   X_LAST_UPDATE_LOGIN NUMBER;
909   X_FORM_ID NUMBER;
910   X_APPLICATION_ID NUMBER;
911   X_FORM_WINDOW_ID NUMBER;
912   X_TEMPLATE_WINDOW_ID NUMBER;
913   X_TEMPLATE_WINDOW_CONTEXT_ID NUMBER;
914   X_WINDOW_PROPERTY_ID NUMBER;
915 begin
916 
917   OWNER_TO_WHO (
918     X_OWNER,
919     X_CREATION_DATE,
920     X_CREATED_BY,
921     X_LAST_UPDATE_DATE,
922     X_LAST_UPDATED_BY,
923     X_LAST_UPDATE_LOGIN
924   );
925 
926  select application_id
927  into x_application_id
928  from fnd_application
929  where application_short_name = x_application_short_name;
930 
931  select form_id
932  into x_form_id
933  from fnd_form
934  where form_name = x_form_name
935  and application_id = x_application_id;
936 
937  select form_window_id
938  into x_form_window_id
939  from hr_form_windows_b
940  where window_name = x_window_name
941  and application_id = x_application_id
942  and form_id = x_form_id;
943 
944  IF ltrim(rtrim(x_template_name)) is not null THEN
945 
946  select hti.template_window_id
947  into x_template_window_id
948  from hr_form_templates_b hft
949       ,hr_template_windows_b hti
950  where hti.form_window_id = x_form_window_id
951  and hti.form_template_id = hft.form_template_id
952  and hft.form_id = x_form_id
953  and hft.application_id = x_application_id
954  and (  (hft.legislation_code is null and x_territory_short_name is null)
955      or (hft.legislation_code = x_territory_short_name) )
956  and hft.template_name = x_template_name;
957 
958  x_form_window_id := null;
959  ELSE
960   x_template_window_id := null;
961 
962  END IF;
963 
964  begin
965    select window_property_id
966    into x_window_property_id
967    from hr_window_properties_b
968    where nvl(form_window_id,hr_api.g_number) =  nvl(x_form_window_id,hr_api.g_number)
969    and nvl(template_window_id,hr_api.g_number) = nvl(x_template_window_id,hr_api.g_number);
970  exception
971    when no_data_found then
972      select hr_window_properties_b_s.nextval
973      into x_window_property_id
974      from dual;
975  end;
976 
977  begin
978 
979   UPDATE_COPIES (
980     X_WINDOW_PROPERTY_ID,
981     X_FORM_WINDOW_ID,
982     X_TEMPLATE_WINDOW_ID,
983     X_HEIGHT,
984     X_WIDTH,
985     X_X_POSITION,
986     X_Y_POSITION,
987     X_TITLE,
988     X_INFORMATION_CATEGORY,
989     X_INFORMATION1,
990     X_INFORMATION2,
991     X_INFORMATION3,
992     X_INFORMATION4,
993     X_INFORMATION5,
994     X_INFORMATION6,
995     X_INFORMATION7,
996     X_INFORMATION8,
997     X_INFORMATION9,
998     X_INFORMATION10,
999     X_INFORMATION11,
1000     X_INFORMATION12,
1001     X_INFORMATION13,
1002     X_INFORMATION14,
1003     X_INFORMATION15,
1004     X_INFORMATION16,
1005     X_INFORMATION17,
1006     X_INFORMATION18,
1007     X_INFORMATION19,
1008     X_INFORMATION20,
1009     X_INFORMATION21,
1010     X_INFORMATION22,
1011     X_INFORMATION23,
1012     X_INFORMATION24,
1013     X_INFORMATION25,
1014     X_INFORMATION26,
1015     X_INFORMATION27,
1016     X_INFORMATION28,
1017     X_INFORMATION29,
1018     X_INFORMATION30,
1019     X_LAST_UPDATE_DATE,
1020     X_LAST_UPDATED_BY,
1021     X_LAST_UPDATE_LOGIN
1022     );
1023 
1024   UPDATE_ROW (
1025     X_WINDOW_PROPERTY_ID,
1026     X_INFORMATION17,
1027     X_INFORMATION18,
1028     X_INFORMATION19,
1029     X_INFORMATION20,
1030     X_INFORMATION21,
1031     X_INFORMATION22,
1032     X_INFORMATION23,
1033     X_INFORMATION24,
1034     X_INFORMATION25,
1035     X_INFORMATION26,
1036     X_INFORMATION27,
1037     X_INFORMATION28,
1038     X_INFORMATION29,
1039     X_INFORMATION30,
1040     to_number(X_X_POSITION),
1041     X_FORM_WINDOW_ID,
1042     X_TEMPLATE_WINDOW_ID,
1043     to_number(X_HEIGHT),
1044     to_number(X_WIDTH),
1045     X_INFORMATION12,
1046     X_INFORMATION13,
1047     X_INFORMATION14,
1048     X_INFORMATION15,
1049     X_INFORMATION16,
1050     X_INFORMATION5,
1051     X_INFORMATION6,
1052     X_INFORMATION7,
1053     X_INFORMATION8,
1054     X_INFORMATION9,
1055     X_INFORMATION10,
1056     X_INFORMATION11,
1057     to_number(X_Y_POSITION),
1058     X_INFORMATION_CATEGORY,
1059     X_INFORMATION1,
1060     X_INFORMATION2,
1061     X_INFORMATION3,
1062     X_INFORMATION4,
1063     X_TITLE,
1064     X_LAST_UPDATE_DATE,
1065     X_LAST_UPDATED_BY,
1066     X_LAST_UPDATE_LOGIN);
1067 
1068  exception
1069    when no_data_found then
1070      INSERT_ROW (
1071        X_ROWID,
1072        X_WINDOW_PROPERTY_ID,
1073        X_INFORMATION17,
1074        X_INFORMATION18,
1075        X_INFORMATION19,
1076        X_INFORMATION20,
1077        X_INFORMATION21,
1078        X_INFORMATION22,
1079        X_INFORMATION23,
1080        X_INFORMATION24,
1081        X_INFORMATION25,
1082        X_INFORMATION26,
1083        X_INFORMATION27,
1084        X_INFORMATION28,
1085        X_INFORMATION29,
1086        X_INFORMATION30,
1087        to_number(X_X_POSITION),
1088        X_FORM_WINDOW_ID,
1089        X_TEMPLATE_WINDOW_ID,
1090        to_number(X_HEIGHT),
1091        to_number(X_WIDTH),
1092        X_INFORMATION12,
1093        X_INFORMATION13,
1094        X_INFORMATION14,
1095        X_INFORMATION15,
1096        X_INFORMATION16,
1097        X_INFORMATION5,
1098        X_INFORMATION6,
1099        X_INFORMATION7,
1100        X_INFORMATION8,
1101        X_INFORMATION9,
1102        X_INFORMATION10,
1103        X_INFORMATION11,
1104        to_number(X_Y_POSITION),
1105        X_INFORMATION_CATEGORY,
1106        X_INFORMATION1,
1107        X_INFORMATION2,
1108        X_INFORMATION3,
1109        X_INFORMATION4,
1110        X_TITLE,
1111        X_CREATION_DATE,
1112        X_CREATED_BY,
1113        X_LAST_UPDATE_DATE,
1114        X_LAST_UPDATED_BY,
1115        X_LAST_UPDATE_LOGIN);
1116  end;
1117 end LOAD_ROW;
1118 end HR_WINDOW_PROPERTIES_PKG;