DBA Data[Home] [Help]

PACKAGE BODY: APPS.PA_GANTT_VIEWS_PKG

Source


1 package body PA_GANTT_VIEWS_PKG as
2 /* $Header: PAGCGVTB.pls 120.1 2005/08/19 16:33:10 mwasowic noship $ */
3 
4 procedure INSERT_ROW (
5   X_ROWID                     in out NOCOPY ROWID --File.Sql.39 bug 4440895
6  ,X_GANTT_VIEW_ID             in NUMBER
7  ,X_GANTT_VIEW_USAGE          in VARCHAR2
8  ,X_ENABLE_FLAG               in VARCHAR2
9  ,X_SHOW_SUMMARY_ROOT_FLAG    in VARCHAR2
10  ,X_SHOW_DEPENDENCIES_FLAG    in VARCHAR2
11  ,X_SHOW_SPLIT_TASK_FLAG      in VARCHAR2
12  ,X_BAR_HEIGHT                in NUMBER
13  ,X_TABLE_BACKGROUND          in NUMBER
14  ,X_TABLE_FOREGROUND          in NUMBER
15  ,X_CHART_BACKGROUND          in NUMBER
16  ,X_COMPARISON_FLAG           in VARCHAR2
17  ,X_GANTT_BAR_TEXT_LEFT       in VARCHAR2
18  ,X_GANTT_BAR_TEXT_RIGHT      in VARCHAR2
19  ,X_GANTT_BAR_TEXT_TOP        in VARCHAR2
20  ,X_GANTT_BAR_TEXT_BOTTOM     in VARCHAR2
21  ,X_GANTT_BAR_TEXT_INSIDE     in VARCHAR2
22  ,X_RECORD_VERSION_NUMBER     in NUMBER
23  ,X_ATTRIBUTE_CATEGORY        in VARCHAR2
24  ,X_ATTRIBUTE1                in VARCHAR2
25  ,X_ATTRIBUTE2                in VARCHAR2
26  ,X_ATTRIBUTE3                in VARCHAR2
27  ,X_ATTRIBUTE4                in VARCHAR2
28  ,X_ATTRIBUTE5                in VARCHAR2
29  ,X_ATTRIBUTE6                in VARCHAR2
30  ,X_ATTRIBUTE7                in VARCHAR2
31  ,X_ATTRIBUTE8                in VARCHAR2
32  ,X_ATTRIBUTE9                in VARCHAR2
33  ,X_ATTRIBUTE10               in VARCHAR2
34  ,X_ATTRIBUTE11               in VARCHAR2
35  ,X_ATTRIBUTE12               in VARCHAR2
36  ,X_ATTRIBUTE13               in VARCHAR2
37  ,X_ATTRIBUTE14               in VARCHAR2
38  ,X_ATTRIBUTE15               in VARCHAR2
39  ,X_NAME                      in VARCHAR2
40  ,X_DESCRIPTION               in VARCHAR2
41  ,X_CREATION_DATE             in DATE
42  ,X_CREATED_BY                in NUMBER
43  ,X_LAST_UPDATE_DATE          in DATE
44  ,X_LAST_UPDATED_BY           in NUMBER
45  ,X_LAST_UPDATE_LOGIN         in NUMBER
46  )
47  is
48 
49 cursor C(c_gantt_view_id pa_gantt_views_b.gantt_view_id%TYPE) is
50 select ROWID
51   from PA_GANTT_VIEWS_B
52  where GANTT_VIEW_ID = c_gantt_view_id;
53 
54 l_gantt_view_id     PA_GANTT_VIEWS_B.gantt_view_id%TYPE;
55 
56 BEGIN
57 
58   select nvl(X_GANTT_VIEW_ID,PA_GANTT_VIEWS_B_S.nextval)
59   into   l_gantt_view_id
60   from   dual;
61 
62   insert into PA_GANTT_VIEWS_B (
63     GANTT_VIEW_ID,
64     GANTT_VIEW_USAGE,
65     ENABLE_FLAG,
66     SHOW_SUMMARY_ROOT_FLAG,
67     SHOW_DEPENDENCIES_FLAG,
68     SHOW_SPLIT_TASK_FLAG,
69     BAR_HEIGHT,
70     TABLE_BACKGROUND,
71     TABLE_FOREGROUND,
72     CHART_BACKGROUND,
73     COMPARISON_FLAG,
74     GANTT_BAR_TEXT_LEFT,
75     GANTT_BAR_TEXT_RIGHT,
76     GANTT_BAR_TEXT_TOP,
77     GANTT_BAR_TEXT_BOTTOM,
78     GANTT_BAR_TEXT_INSIDE,
79     RECORD_VERSION_NUMBER,
80     ATTRIBUTE_CATEGORY,
81     ATTRIBUTE1,
82     ATTRIBUTE2,
83     ATTRIBUTE3,
84     ATTRIBUTE4,
85     ATTRIBUTE5,
86     ATTRIBUTE6,
87     ATTRIBUTE7,
88     ATTRIBUTE8,
89     ATTRIBUTE9,
90     ATTRIBUTE10,
91     ATTRIBUTE11,
92     ATTRIBUTE12,
93     ATTRIBUTE13,
94     ATTRIBUTE14,
95     ATTRIBUTE15,
96     CREATION_DATE,
97     CREATED_BY,
98     LAST_UPDATE_DATE,
99     LAST_UPDATED_BY,
100     LAST_UPDATE_LOGIN
101   ) values
102   (
103     l_gantt_view_id,
104     X_GANTT_VIEW_USAGE,
105     X_ENABLE_FLAG,
106     X_SHOW_SUMMARY_ROOT_FLAG,
107     X_SHOW_DEPENDENCIES_FLAG,
108     X_SHOW_SPLIT_TASK_FLAG,
109     X_BAR_HEIGHT,
110     X_TABLE_BACKGROUND,
111     X_TABLE_FOREGROUND,
112     X_CHART_BACKGROUND,
113     X_COMPARISON_FLAG,
114     X_GANTT_BAR_TEXT_LEFT,
115     X_GANTT_BAR_TEXT_RIGHT,
116     X_GANTT_BAR_TEXT_TOP,
117     X_GANTT_BAR_TEXT_BOTTOM,
118     X_GANTT_BAR_TEXT_INSIDE,
119     1,
120     X_ATTRIBUTE_CATEGORY,
121     X_ATTRIBUTE1,
122     X_ATTRIBUTE2,
123     X_ATTRIBUTE3,
124     X_ATTRIBUTE4,
125     X_ATTRIBUTE5,
126     X_ATTRIBUTE6,
127     X_ATTRIBUTE7,
128     X_ATTRIBUTE8,
129     X_ATTRIBUTE9,
130     X_ATTRIBUTE10,
131     X_ATTRIBUTE11,
132     X_ATTRIBUTE12,
133     X_ATTRIBUTE13,
134     X_ATTRIBUTE14,
135     X_ATTRIBUTE15,
136     X_CREATION_DATE,
137     X_CREATED_BY,
138     X_LAST_UPDATE_DATE,
139     X_LAST_UPDATED_BY,
140     X_LAST_UPDATE_LOGIN
141   );
142 
143   insert into PA_GANTT_VIEWS_TL (
144     GANTT_VIEW_ID,
145     NAME,
146     DESCRIPTION,
147     LAST_UPDATE_DATE,
148     LAST_UPDATED_BY,
149     CREATION_DATE,
150     CREATED_BY,
151     LAST_UPDATE_LOGIN,
152     LANGUAGE,
153     SOURCE_LANG
154   ) select
155     l_gantt_view_id,
156     X_NAME,
157     X_DESCRIPTION,
158     X_LAST_UPDATE_DATE,
159     X_LAST_UPDATED_BY,
160     X_CREATION_DATE,
161     X_CREATED_BY,
162     X_LAST_UPDATE_LOGIN,
163     L.LANGUAGE_CODE,
164     userenv('LANG')
165   from FND_LANGUAGES L
166   where L.INSTALLED_FLAG in ('I', 'B')
167   and not exists
168    (select NULL
169     from  PA_GANTT_VIEWS_TL T
170     where T.GANTT_VIEW_ID = l_gantt_view_id
171     and   T.LANGUAGE = L.LANGUAGE_CODE
172    );
173 
174   open c(l_gantt_view_id);
175   fetch c into X_ROWID;
176   if (c%notfound) then
177     close c;
178     raise no_data_found;
179   end if;
180   close c;
181 
182 end INSERT_ROW;
183 
184 procedure LOCK_ROW (
185   X_GANTT_VIEW_ID             in NUMBER,
186   X_GANTT_VIEW_USAGE          in VARCHAR2,
187   X_ENABLE_FLAG               in VARCHAR2,
188   X_SHOW_SUMMARY_ROOT_FLAG    in VARCHAR2,
189   X_SHOW_DEPENDENCIES_FLAG    in VARCHAR2,
190   X_SHOW_SPLIT_TASK_FLAG      in VARCHAR2,
191   X_BAR_HEIGHT                in NUMBER,
192   X_TABLE_BACKGROUND          in NUMBER,
193   X_TABLE_FOREGROUND          in NUMBER,
194   X_CHART_BACKGROUND          in NUMBER,
195   X_COMPARISON_FLAG           in VARCHAR2,
196   X_GANTT_BAR_TEXT_LEFT       in VARCHAR2,
197   X_GANTT_BAR_TEXT_RIGHT      in VARCHAR2,
198   X_GANTT_BAR_TEXT_TOP        in VARCHAR2,
199   X_GANTT_BAR_TEXT_BOTTOM     in VARCHAR2,
200   X_GANTT_BAR_TEXT_INSIDE     in VARCHAR2,
201   X_RECORD_VERSION_NUMBER     in NUMBER,
202   X_ATTRIBUTE_CATEGORY        in VARCHAR2,
203   X_ATTRIBUTE1                in VARCHAR2,
204   X_ATTRIBUTE2                in VARCHAR2,
205   X_ATTRIBUTE3                in VARCHAR2,
206   X_ATTRIBUTE4                in VARCHAR2,
207   X_ATTRIBUTE5                in VARCHAR2,
208   X_ATTRIBUTE6                in VARCHAR2,
209   X_ATTRIBUTE7                in VARCHAR2,
210   X_ATTRIBUTE8                in VARCHAR2,
211   X_ATTRIBUTE9                in VARCHAR2,
212   X_ATTRIBUTE10               in VARCHAR2,
213   X_ATTRIBUTE11               in VARCHAR2,
214   X_ATTRIBUTE12               in VARCHAR2,
215   X_ATTRIBUTE13               in VARCHAR2,
216   X_ATTRIBUTE14               in VARCHAR2,
217   X_ATTRIBUTE15               in VARCHAR2,
218   X_NAME                      in VARCHAR2,
219   X_DESCRIPTION               in VARCHAR2
220 )
221 is
222   cursor c is select
223       GANTT_VIEW_USAGE,
224       ENABLE_FLAG,
225       SHOW_SUMMARY_ROOT_FLAG,
226       SHOW_DEPENDENCIES_FLAG,
227       SHOW_SPLIT_TASK_FLAG,
228       BAR_HEIGHT,
229       TABLE_BACKGROUND,
230       TABLE_FOREGROUND,
231       CHART_BACKGROUND,
232       COMPARISON_FLAG,
233       GANTT_BAR_TEXT_LEFT,
234       GANTT_BAR_TEXT_RIGHT,
235       GANTT_BAR_TEXT_TOP,
236       GANTT_BAR_TEXT_BOTTOM,
237       GANTT_BAR_TEXT_INSIDE,
238       RECORD_VERSION_NUMBER,
239       ATTRIBUTE_CATEGORY,
240       ATTRIBUTE1,
241       ATTRIBUTE2,
242       ATTRIBUTE3,
243       ATTRIBUTE4,
244       ATTRIBUTE5,
245       ATTRIBUTE6,
246       ATTRIBUTE7,
247       ATTRIBUTE8,
248       ATTRIBUTE9,
249       ATTRIBUTE10,
250       ATTRIBUTE11,
251       ATTRIBUTE12,
252       ATTRIBUTE13,
253       ATTRIBUTE14,
254       ATTRIBUTE15
255     from PA_GANTT_VIEWS_B
256     where GANTT_VIEW_ID = X_GANTT_VIEW_ID
257     for update of GANTT_VIEW_ID nowait;
258   recinfo c%rowtype;
259 
260   cursor c1 is select
261       NAME,
262       DESCRIPTION,
263       decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
264     from PA_GANTT_VIEWS_TL
265     where GANTT_VIEW_ID = X_GANTT_VIEW_ID
266     and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
267     for update of GANTT_VIEW_ID nowait;
268 begin
269   open c;
270   fetch c into recinfo;
271   if (c%notfound) then
272     close c;
273     fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
274     app_exception.raise_exception;
275   end if;
276   close c;
277   if (    (recinfo.GANTT_VIEW_USAGE = X_GANTT_VIEW_USAGE)
278       AND (recinfo.ENABLE_FLAG = X_ENABLE_FLAG)
279       AND (recinfo.SHOW_SUMMARY_ROOT_FLAG = X_SHOW_SUMMARY_ROOT_FLAG)
280       AND (recinfo.SHOW_DEPENDENCIES_FLAG = X_SHOW_DEPENDENCIES_FLAG)
281       AND (recinfo.SHOW_SPLIT_TASK_FLAG = X_SHOW_SPLIT_TASK_FLAG)
282       AND (recinfo.BAR_HEIGHT = X_BAR_HEIGHT)
283       AND (recinfo.TABLE_BACKGROUND = X_TABLE_BACKGROUND)
284       AND (recinfo.TABLE_FOREGROUND = X_TABLE_FOREGROUND)
285       AND (recinfo.CHART_BACKGROUND = X_CHART_BACKGROUND)
286       AND ((recinfo.COMPARISON_FLAG = X_COMPARISON_FLAG)
287            OR ((recinfo.COMPARISON_FLAG is null) AND (X_COMPARISON_FLAG is null)))
288       AND ((recinfo.GANTT_BAR_TEXT_LEFT = X_GANTT_BAR_TEXT_LEFT)
289            OR ((recinfo.GANTT_BAR_TEXT_LEFT is null) AND (X_GANTT_BAR_TEXT_LEFT is null)))
290       AND ((recinfo.GANTT_BAR_TEXT_RIGHT = X_GANTT_BAR_TEXT_RIGHT)
291            OR ((recinfo.GANTT_BAR_TEXT_RIGHT is null) AND (X_GANTT_BAR_TEXT_RIGHT is null)))
292       AND ((recinfo.GANTT_BAR_TEXT_TOP = X_GANTT_BAR_TEXT_TOP)
293            OR ((recinfo.GANTT_BAR_TEXT_TOP is null) AND (X_GANTT_BAR_TEXT_TOP is null)))
294       AND ((recinfo.GANTT_BAR_TEXT_BOTTOM = X_GANTT_BAR_TEXT_BOTTOM)
295            OR ((recinfo.GANTT_BAR_TEXT_BOTTOM is null) AND (X_GANTT_BAR_TEXT_BOTTOM is null)))
296       AND ((recinfo.GANTT_BAR_TEXT_INSIDE = X_GANTT_BAR_TEXT_INSIDE)
297            OR ((recinfo.GANTT_BAR_TEXT_INSIDE is null) AND (X_GANTT_BAR_TEXT_INSIDE is null)))
298       AND ((recinfo.RECORD_VERSION_NUMBER = X_RECORD_VERSION_NUMBER)
299            OR ((recinfo.RECORD_VERSION_NUMBER is null) AND (X_RECORD_VERSION_NUMBER is null)))
300       AND ((recinfo.ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY)
301            OR ((recinfo.ATTRIBUTE_CATEGORY is null) AND (X_ATTRIBUTE_CATEGORY is null)))
302       AND ((recinfo.ATTRIBUTE1 = X_ATTRIBUTE1)
303            OR ((recinfo.ATTRIBUTE1 is null) AND (X_ATTRIBUTE1 is null)))
304       AND ((recinfo.ATTRIBUTE2 = X_ATTRIBUTE2)
305            OR ((recinfo.ATTRIBUTE2 is null) AND (X_ATTRIBUTE2 is null)))
306       AND ((recinfo.ATTRIBUTE3 = X_ATTRIBUTE3)
307            OR ((recinfo.ATTRIBUTE3 is null) AND (X_ATTRIBUTE3 is null)))
308       AND ((recinfo.ATTRIBUTE4 = X_ATTRIBUTE4)
309            OR ((recinfo.ATTRIBUTE4 is null) AND (X_ATTRIBUTE4 is null)))
310       AND ((recinfo.ATTRIBUTE5 = X_ATTRIBUTE5)
311            OR ((recinfo.ATTRIBUTE5 is null) AND (X_ATTRIBUTE5 is null)))
312       AND ((recinfo.ATTRIBUTE6 = X_ATTRIBUTE6)
313            OR ((recinfo.ATTRIBUTE6 is null) AND (X_ATTRIBUTE6 is null)))
314       AND ((recinfo.ATTRIBUTE7 = X_ATTRIBUTE7)
315            OR ((recinfo.ATTRIBUTE7 is null) AND (X_ATTRIBUTE7 is null)))
316       AND ((recinfo.ATTRIBUTE8 = X_ATTRIBUTE8)
317            OR ((recinfo.ATTRIBUTE8 is null) AND (X_ATTRIBUTE8 is null)))
318       AND ((recinfo.ATTRIBUTE9 = X_ATTRIBUTE9)
319            OR ((recinfo.ATTRIBUTE9 is null) AND (X_ATTRIBUTE9 is null)))
320       AND ((recinfo.ATTRIBUTE10 = X_ATTRIBUTE10)
321            OR ((recinfo.ATTRIBUTE10 is null) AND (X_ATTRIBUTE10 is null)))
322       AND ((recinfo.ATTRIBUTE11 = X_ATTRIBUTE11)
323            OR ((recinfo.ATTRIBUTE11 is null) AND (X_ATTRIBUTE11 is null)))
324       AND ((recinfo.ATTRIBUTE12 = X_ATTRIBUTE12)
325            OR ((recinfo.ATTRIBUTE12 is null) AND (X_ATTRIBUTE12 is null)))
326       AND ((recinfo.ATTRIBUTE13 = X_ATTRIBUTE13)
327            OR ((recinfo.ATTRIBUTE13 is null) AND (X_ATTRIBUTE13 is null)))
328       AND ((recinfo.ATTRIBUTE14 = X_ATTRIBUTE14)
329            OR ((recinfo.ATTRIBUTE14 is null) AND (X_ATTRIBUTE14 is null)))
330       AND ((recinfo.ATTRIBUTE15 = X_ATTRIBUTE15)
331            OR ((recinfo.ATTRIBUTE15 is null) AND (X_ATTRIBUTE15 is null)))
332   ) then
333     null;
334   else
335     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
336     app_exception.raise_exception;
337   end if;
338 
339   for tlinfo in c1 loop
340     if (tlinfo.BASELANG = 'Y') then
341       if (    (tlinfo.NAME = X_NAME)
342           AND ((tlinfo.DESCRIPTION = X_DESCRIPTION)
343                OR ((tlinfo.DESCRIPTION is null) AND (X_DESCRIPTION is null)))
344       ) then
345         null;
346       else
347         fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
348         app_exception.raise_exception;
349       end if;
350     end if;
351   end loop;
352   return;
353 end LOCK_ROW;
354 
355 procedure UPDATE_ROW (
356   X_GANTT_VIEW_ID             in NUMBER,
357   X_GANTT_VIEW_USAGE          in VARCHAR2,
358   X_ENABLE_FLAG               in VARCHAR2,
359   X_SHOW_SUMMARY_ROOT_FLAG    in VARCHAR2,
360   X_SHOW_DEPENDENCIES_FLAG    in VARCHAR2,
361   X_SHOW_SPLIT_TASK_FLAG      in VARCHAR2,
362   X_BAR_HEIGHT                in NUMBER,
363   X_TABLE_BACKGROUND          in NUMBER,
364   X_TABLE_FOREGROUND          in NUMBER,
365   X_CHART_BACKGROUND          in NUMBER,
366   X_COMPARISON_FLAG           in VARCHAR2,
367   X_GANTT_BAR_TEXT_LEFT       in VARCHAR2,
368   X_GANTT_BAR_TEXT_RIGHT      in VARCHAR2,
369   X_GANTT_BAR_TEXT_TOP        in VARCHAR2,
370   X_GANTT_BAR_TEXT_BOTTOM     in VARCHAR2,
371   X_GANTT_BAR_TEXT_INSIDE     in VARCHAR2,
372   X_RECORD_VERSION_NUMBER     in NUMBER,
373   X_ATTRIBUTE_CATEGORY        in VARCHAR2,
374   X_ATTRIBUTE1                in VARCHAR2,
375   X_ATTRIBUTE2                in VARCHAR2,
376   X_ATTRIBUTE3                in VARCHAR2,
377   X_ATTRIBUTE4                in VARCHAR2,
378   X_ATTRIBUTE5                in VARCHAR2,
379   X_ATTRIBUTE6                in VARCHAR2,
380   X_ATTRIBUTE7                in VARCHAR2,
381   X_ATTRIBUTE8                in VARCHAR2,
382   X_ATTRIBUTE9                in VARCHAR2,
383   X_ATTRIBUTE10               in VARCHAR2,
384   X_ATTRIBUTE11               in VARCHAR2,
385   X_ATTRIBUTE12               in VARCHAR2,
386   X_ATTRIBUTE13               in VARCHAR2,
387   X_ATTRIBUTE14               in VARCHAR2,
388   X_ATTRIBUTE15               in VARCHAR2,
389   X_NAME                      in VARCHAR2,
390   X_DESCRIPTION               in VARCHAR2,
391   X_LAST_UPDATE_DATE          in DATE,
392   X_LAST_UPDATED_BY           in NUMBER,
393   X_LAST_UPDATE_LOGIN         in NUMBER
394 )
395 is
396 begin
397   update PA_GANTT_VIEWS_B set
398     GANTT_VIEW_USAGE          = X_GANTT_VIEW_USAGE,
399     ENABLE_FLAG               = X_ENABLE_FLAG,
403     BAR_HEIGHT                = X_BAR_HEIGHT,
400     SHOW_SUMMARY_ROOT_FLAG    = X_SHOW_SUMMARY_ROOT_FLAG,
401     SHOW_DEPENDENCIES_FLAG    = X_SHOW_DEPENDENCIES_FLAG,
402     SHOW_SPLIT_TASK_FLAG      = X_SHOW_SPLIT_TASK_FLAG,
404     TABLE_BACKGROUND          = X_TABLE_BACKGROUND,
405     TABLE_FOREGROUND          = X_TABLE_FOREGROUND,
406     CHART_BACKGROUND          = X_CHART_BACKGROUND,
407     COMPARISON_FLAG           = X_COMPARISON_FLAG,
408     GANTT_BAR_TEXT_LEFT       = X_GANTT_BAR_TEXT_LEFT,
409     GANTT_BAR_TEXT_RIGHT      = X_GANTT_BAR_TEXT_RIGHT,
410     GANTT_BAR_TEXT_TOP        = X_GANTT_BAR_TEXT_TOP,
411     GANTT_BAR_TEXT_BOTTOM     = X_GANTT_BAR_TEXT_BOTTOM,
412     GANTT_BAR_TEXT_INSIDE     = X_GANTT_BAR_TEXT_INSIDE,
413     RECORD_VERSION_NUMBER     = nvl(X_RECORD_VERSION_NUMBER,0) + 1,
414     ATTRIBUTE_CATEGORY        = X_ATTRIBUTE_CATEGORY,
415     ATTRIBUTE1                = X_ATTRIBUTE1,
416     ATTRIBUTE2                = X_ATTRIBUTE2,
417     ATTRIBUTE3                = X_ATTRIBUTE3,
418     ATTRIBUTE4                = X_ATTRIBUTE4,
419     ATTRIBUTE5                = X_ATTRIBUTE5,
420     ATTRIBUTE6                = X_ATTRIBUTE6,
421     ATTRIBUTE7                = X_ATTRIBUTE7,
422     ATTRIBUTE8                = X_ATTRIBUTE8,
423     ATTRIBUTE9                = X_ATTRIBUTE9,
424     ATTRIBUTE10               = X_ATTRIBUTE10,
425     ATTRIBUTE11               = X_ATTRIBUTE11,
426     ATTRIBUTE12               = X_ATTRIBUTE12,
427     ATTRIBUTE13               = X_ATTRIBUTE13,
428     ATTRIBUTE14               = X_ATTRIBUTE14,
429     ATTRIBUTE15               = X_ATTRIBUTE15,
430     LAST_UPDATE_DATE          = X_LAST_UPDATE_DATE,
431     LAST_UPDATED_BY           = X_LAST_UPDATED_BY,
432     LAST_UPDATE_LOGIN         = X_LAST_UPDATE_LOGIN
433   where GANTT_VIEW_ID         = X_GANTT_VIEW_ID;
434 
435   if (sql%notfound) then
436     raise no_data_found;
437   end if;
438 
439   update PA_GANTT_VIEWS_TL set
440     NAME                 = X_NAME,
441     DESCRIPTION          = X_DESCRIPTION,
442     LAST_UPDATE_DATE     = X_LAST_UPDATE_DATE,
443     LAST_UPDATED_BY      = X_LAST_UPDATED_BY,
444     LAST_UPDATE_LOGIN    = X_LAST_UPDATE_LOGIN,
445     SOURCE_LANG          = userenv('LANG')
446   where GANTT_VIEW_ID    = X_GANTT_VIEW_ID
447   and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
448 
449   if (sql%notfound) then
450     raise no_data_found;
451   end if;
452 end UPDATE_ROW;
453 
454 procedure DELETE_ROW (
455   X_GANTT_VIEW_ID        in NUMBER
456 )
457 is
458 begin
459   delete from PA_GANTT_VIEWS_TL
460   where GANTT_VIEW_ID = X_GANTT_VIEW_ID;
461 
462   if (sql%notfound) then
463     raise no_data_found;
464   end if;
465 
466   delete from PA_GANTT_VIEWS_B
467   where GANTT_VIEW_ID = X_GANTT_VIEW_ID;
468 
469   if (sql%notfound) then
470     raise no_data_found;
471   end if;
472 end DELETE_ROW;
473 
474 procedure ADD_LANGUAGE
475 is
476 begin
477   delete from PA_GANTT_VIEWS_TL T
478   where not exists
479     (select NULL
480     from PA_GANTT_VIEWS_B B
481     where B.GANTT_VIEW_ID = T.GANTT_VIEW_ID
482     );
483 
484   update PA_GANTT_VIEWS_TL T set (
485       NAME,
486       DESCRIPTION
487     ) = (select
488       B.NAME,
489       B.DESCRIPTION
490     from PA_GANTT_VIEWS_TL B
491     where B.GANTT_VIEW_ID = T.GANTT_VIEW_ID
492     and B.LANGUAGE = T.SOURCE_LANG)
493   where (
494       T.GANTT_VIEW_ID,
495       T.LANGUAGE
496   ) in (select
497       SUBT.GANTT_VIEW_ID,
498       SUBT.LANGUAGE
499     from PA_GANTT_VIEWS_TL SUBB, PA_GANTT_VIEWS_TL SUBT
500     where SUBB.GANTT_VIEW_ID = SUBT.GANTT_VIEW_ID
501     and SUBB.LANGUAGE = SUBT.SOURCE_LANG
502     and (SUBB.NAME <> SUBT.NAME
503       or SUBB.DESCRIPTION <> SUBT.DESCRIPTION
504       or (SUBB.DESCRIPTION is null and SUBT.DESCRIPTION is not null)
505       or (SUBB.DESCRIPTION is not null and SUBT.DESCRIPTION is null)
506   ));
507 
508   insert into PA_GANTT_VIEWS_TL (
509     GANTT_VIEW_ID,
510     NAME,
511     DESCRIPTION,
512     LAST_UPDATE_DATE,
513     LAST_UPDATED_BY,
514     CREATION_DATE,
515     CREATED_BY,
516     LAST_UPDATE_LOGIN,
517     LANGUAGE,
518     SOURCE_LANG
519   ) select
520     B.GANTT_VIEW_ID,
521     B.NAME,
522     B.DESCRIPTION,
523     B.LAST_UPDATE_DATE,
524     B.LAST_UPDATED_BY,
525     B.CREATION_DATE,
526     B.CREATED_BY,
527     B.LAST_UPDATE_LOGIN,
528     L.LANGUAGE_CODE,
529     B.SOURCE_LANG
530   from PA_GANTT_VIEWS_TL B, FND_LANGUAGES L
531   where L.INSTALLED_FLAG in ('I', 'B')
532   and B.LANGUAGE = userenv('LANG')
533   and not exists
534     (select NULL
535     from PA_GANTT_VIEWS_TL T
536     where T.GANTT_VIEW_ID = B.GANTT_VIEW_ID
537     and T.LANGUAGE = L.LANGUAGE_CODE);
538 end ADD_LANGUAGE;
539 
540 procedure TRANSLATE_ROW(
541          X_GANTT_VIEW_ID           in     NUMBER
542         ,X_OWNER                   in     VARCHAR2
543         ,X_NAME                    in     VARCHAR2
544         ,X_DESCRIPTION             in     VARCHAR2
545 )
546 is
547      l_user_id      NUMBER;
548 BEGIN
549        if (X_OWNER = 'SEED') then
550           l_user_id   := 1;
551        else
552           l_user_id   := 0;
553        end if;
554 
555         update PA_GANTT_VIEWS_TL
556           set
557            LAST_UPDATE_DATE      = SYSDATE,
558            LAST_UPDATED_BY       = l_user_id,
559            LAST_UPDATE_LOGIN     = 0,
560            name                  = X_NAME,
561            description           = X_DESCRIPTION,
565 
562            source_lang           = userenv('LANG')
563        	where  GANTT_VIEW_ID   = X_GANTT_VIEW_ID
564              and USERENV('LANG') IN ( LANGUAGE , SOURCE_LANG );
566        if (sql%notfound) then
567          raise no_data_found;
568        end if;
569 
570 END TRANSLATE_ROW;
571 
572 procedure LOAD_ROW(
573          X_GANTT_VIEW_ID             in   NUMBER
574         ,X_GANTT_VIEW_USAGE          in   VARCHAR2
575         ,X_COMPARISON_FLAG           in   VARCHAR2
576         ,X_ENABLE_FLAG               in   VARCHAR2
577         ,X_SHOW_SUMMARY_ROOT_FLAG    in   VARCHAR2
578         ,X_SHOW_DEPENDENCIES_FLAG    in   VARCHAR2
579         ,X_SHOW_SPLIT_TASK_FLAG      in   VARCHAR2
580         ,X_BAR_HEIGHT                in   NUMBER
581         ,X_TABLE_BACKGROUND          in   NUMBER
582         ,X_TABLE_FOREGROUND          in   NUMBER
583         ,X_CHART_BACKGROUND          in   NUMBER
584         ,X_GANTT_BAR_TEXT_LEFT       in   VARCHAR2
585         ,X_GANTT_BAR_TEXT_RIGHT      in   VARCHAR2
586         ,X_GANTT_BAR_TEXT_TOP        in   VARCHAR2
587         ,X_GANTT_BAR_TEXT_BOTTOM     in   VARCHAR2
588         ,X_GANTT_BAR_TEXT_INSIDE     in   VARCHAR2
589         ,X_RECORD_VERSION_NUMBER     in   NUMBER
590         ,X_ATTRIBUTE_CATEGORY        in   VARCHAR2
591         ,X_ATTRIBUTE1                in   VARCHAR2
592         ,X_ATTRIBUTE2                in   VARCHAR2
593         ,X_ATTRIBUTE3                in   VARCHAR2
594         ,X_ATTRIBUTE4                in   VARCHAR2
595         ,X_ATTRIBUTE5                in   VARCHAR2
596         ,X_ATTRIBUTE6                in   VARCHAR2
597         ,X_ATTRIBUTE7                in   VARCHAR2
598         ,X_ATTRIBUTE8                in   VARCHAR2
599         ,X_ATTRIBUTE9                in   VARCHAR2
600         ,X_ATTRIBUTE10               in   VARCHAR2
601         ,X_ATTRIBUTE11               in   VARCHAR2
602         ,X_ATTRIBUTE12               in   VARCHAR2
603         ,X_ATTRIBUTE13               in   VARCHAR2
604         ,X_ATTRIBUTE14               in   VARCHAR2
605         ,X_ATTRIBUTE15               in   VARCHAR2
606         ,X_OWNER                     in   VARCHAR2
607         ,X_NAME                      in   VARCHAR2
608         ,X_DESCRIPTION               in   VARCHAR2
609 )
610 is
611      l_user_id NUMBER;
612      l_rowid   ROWID;
613 BEGIN
614 
615      if (X_OWNER = 'SEED')then
616           l_user_id := 1;
617      else
618           l_user_id :=0;
619      end if;
620 
621      PA_GANTT_VIEWS_PKG.UPDATE_ROW (
622              X_GANTT_VIEW_ID             =>  X_GANTT_VIEW_ID
623             ,X_GANTT_VIEW_USAGE          =>  X_GANTT_VIEW_USAGE
624             ,X_ENABLE_FLAG               =>  X_ENABLE_FLAG
625             ,X_SHOW_SUMMARY_ROOT_FLAG    =>  X_SHOW_SUMMARY_ROOT_FLAG
626             ,X_SHOW_DEPENDENCIES_FLAG    =>  X_SHOW_DEPENDENCIES_FLAG
627             ,X_SHOW_SPLIT_TASK_FLAG      =>  X_SHOW_SPLIT_TASK_FLAG
628             ,X_BAR_HEIGHT                =>  X_BAR_HEIGHT
629             ,X_TABLE_BACKGROUND          =>  X_TABLE_BACKGROUND
630             ,X_TABLE_FOREGROUND          =>  X_TABLE_FOREGROUND
631             ,X_CHART_BACKGROUND          =>  X_CHART_BACKGROUND
632             ,X_COMPARISON_FLAG           =>  X_COMPARISON_FLAG
633             ,X_GANTT_BAR_TEXT_LEFT       =>  X_GANTT_BAR_TEXT_LEFT
634             ,X_GANTT_BAR_TEXT_RIGHT      =>  X_GANTT_BAR_TEXT_RIGHT
635             ,X_GANTT_BAR_TEXT_TOP        =>  X_GANTT_BAR_TEXT_TOP
636             ,X_GANTT_BAR_TEXT_BOTTOM     =>  X_GANTT_BAR_TEXT_BOTTOM
637             ,X_GANTT_BAR_TEXT_INSIDE     =>  X_GANTT_BAR_TEXT_INSIDE
638             ,X_RECORD_VERSION_NUMBER     =>  X_RECORD_VERSION_NUMBER
639             ,X_ATTRIBUTE_CATEGORY        =>  X_ATTRIBUTE_CATEGORY
640             ,X_ATTRIBUTE1                =>  X_ATTRIBUTE1
641             ,X_ATTRIBUTE2                =>  X_ATTRIBUTE2
642             ,X_ATTRIBUTE3                =>  X_ATTRIBUTE3
643             ,X_ATTRIBUTE4                =>  X_ATTRIBUTE4
644             ,X_ATTRIBUTE5                =>  X_ATTRIBUTE5
645             ,X_ATTRIBUTE6                =>  X_ATTRIBUTE6
646             ,X_ATTRIBUTE7                =>  X_ATTRIBUTE7
647             ,X_ATTRIBUTE8                =>  X_ATTRIBUTE8
648             ,X_ATTRIBUTE9                =>  X_ATTRIBUTE9
649             ,X_ATTRIBUTE10               =>  X_ATTRIBUTE10
650             ,X_ATTRIBUTE11               =>  X_ATTRIBUTE11
651             ,X_ATTRIBUTE12               =>  X_ATTRIBUTE12
652             ,X_ATTRIBUTE13               =>  X_ATTRIBUTE13
653             ,X_ATTRIBUTE14               =>  X_ATTRIBUTE14
654             ,X_ATTRIBUTE15               =>  X_ATTRIBUTE15
655             ,X_NAME                      =>  X_NAME
656             ,X_DESCRIPTION               =>  X_DESCRIPTION
657             ,X_LAST_UPDATE_DATE          =>  sysdate
658             ,X_LAST_UPDATED_BY           =>  l_user_id
659             ,X_LAST_UPDATE_LOGIN         =>  0
660      );
661 EXCEPTION
662      WHEN no_data_found then
663           PA_GANTT_VIEWS_PKG.INSERT_ROW (
664                  X_ROWID                     =>  l_rowid
665                 ,X_GANTT_VIEW_ID             =>  X_GANTT_VIEW_ID
666                 ,X_GANTT_VIEW_USAGE          =>  X_GANTT_VIEW_USAGE
667                 ,X_ENABLE_FLAG               =>  X_ENABLE_FLAG
668                 ,X_SHOW_SUMMARY_ROOT_FLAG    =>  X_SHOW_SUMMARY_ROOT_FLAG
669                 ,X_SHOW_DEPENDENCIES_FLAG    =>  X_SHOW_DEPENDENCIES_FLAG
670                 ,X_SHOW_SPLIT_TASK_FLAG      =>  X_SHOW_SPLIT_TASK_FLAG
671                 ,X_BAR_HEIGHT                =>  X_BAR_HEIGHT
672                 ,X_TABLE_BACKGROUND          =>  X_TABLE_BACKGROUND
673                 ,X_TABLE_FOREGROUND          =>  X_TABLE_FOREGROUND
674                 ,X_CHART_BACKGROUND          =>  X_CHART_BACKGROUND
675                 ,X_COMPARISON_FLAG           =>  X_COMPARISON_FLAG
679                 ,X_GANTT_BAR_TEXT_BOTTOM     =>  X_GANTT_BAR_TEXT_BOTTOM
676                 ,X_GANTT_BAR_TEXT_LEFT       =>  X_GANTT_BAR_TEXT_LEFT
677                 ,X_GANTT_BAR_TEXT_RIGHT      =>  X_GANTT_BAR_TEXT_RIGHT
678                 ,X_GANTT_BAR_TEXT_TOP        =>  X_GANTT_BAR_TEXT_TOP
680                 ,X_GANTT_BAR_TEXT_INSIDE     =>  X_GANTT_BAR_TEXT_INSIDE
681                 ,X_RECORD_VERSION_NUMBER     =>  X_RECORD_VERSION_NUMBER
682                 ,X_ATTRIBUTE_CATEGORY        =>  X_ATTRIBUTE_CATEGORY
683                 ,X_ATTRIBUTE1                =>  X_ATTRIBUTE1
684                 ,X_ATTRIBUTE2                =>  X_ATTRIBUTE2
685                 ,X_ATTRIBUTE3                =>  X_ATTRIBUTE3
686                 ,X_ATTRIBUTE4                =>  X_ATTRIBUTE4
687                 ,X_ATTRIBUTE5                =>  X_ATTRIBUTE5
688                 ,X_ATTRIBUTE6                =>  X_ATTRIBUTE6
689                 ,X_ATTRIBUTE7                =>  X_ATTRIBUTE7
690                 ,X_ATTRIBUTE8                =>  X_ATTRIBUTE8
691                 ,X_ATTRIBUTE9                =>  X_ATTRIBUTE9
692                 ,X_ATTRIBUTE10               =>  X_ATTRIBUTE10
693                 ,X_ATTRIBUTE11               =>  X_ATTRIBUTE11
694                 ,X_ATTRIBUTE12               =>  X_ATTRIBUTE12
695                 ,X_ATTRIBUTE13               =>  X_ATTRIBUTE13
696                 ,X_ATTRIBUTE14               =>  X_ATTRIBUTE14
697                 ,X_ATTRIBUTE15               =>  X_ATTRIBUTE15
698                 ,X_NAME                      =>  X_NAME
699                 ,X_DESCRIPTION               =>  X_DESCRIPTION
700                 ,X_CREATION_DATE             =>  sysdate
701                 ,X_CREATED_BY                =>  l_user_id
702                 ,X_LAST_UPDATE_DATE          =>  sysdate
703                 ,X_LAST_UPDATED_BY           =>  l_user_id
704                 ,X_LAST_UPDATE_LOGIN         =>  0
705           );
706 END LOAD_ROW;
707 
708 end PA_GANTT_VIEWS_PKG;