DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_FORM_CANVAS_INFO

Source


1 PACKAGE BODY hr_form_canvas_info
2 /* $Header: hrfcninf.pkb 120.0 2005/05/31 00:12:57 appldev noship $ */
3 AS
4   --
5   -- Global variables
6   --
7   g_application_id               fnd_application.application_id%TYPE;
8   g_form_id                      fnd_form.form_id%TYPE;
9   g_form_canvases                t_form_canvases := t_form_canvases();
10 --
11 -- -----------------------------------------------------------------------------
12 -- |-----------------------------< form_canvases >-----------------------------|
13 -- -----------------------------------------------------------------------------
14 FUNCTION form_canvases
15   (p_application_id               IN     fnd_application.application_id%TYPE
16   ,p_form_id                      IN     fnd_form.form_id%TYPE
17   )
18 RETURN t_form_canvases
19 IS
20   --
21   CURSOR csr_form_canvases
22     (p_application_id               IN     fnd_application.application_id%TYPE
23     ,p_form_id                      IN     fnd_form.form_id%TYPE
24     )
25   IS
26     SELECT fcn.form_canvas_id
27           ,fcn.canvas_name
28           ,fcn.canvas_type
29           ,cnp.height
30           ,cnp.visible
31           ,cnp.width
32           ,cnp.x_position
33           ,cnp.y_position
34           ,cnp.information_category
35           ,cnp.information1
36           ,cnp.information2
37           ,cnp.information3
38           ,cnp.information4
39           ,cnp.information5
40           ,cnp.information6
41           ,cnp.information7
42           ,cnp.information8
43           ,cnp.information9
44           ,cnp.information10
45           ,cnp.information11
46           ,cnp.information12
47           ,cnp.information13
48           ,cnp.information14
49           ,cnp.information15
50           ,cnp.information16
51           ,cnp.information17
52           ,cnp.information18
53           ,cnp.information19
54           ,cnp.information20
55           ,cnp.information21
56           ,cnp.information22
57           ,cnp.information23
58           ,cnp.information24
59           ,cnp.information25
60           ,cnp.information26
61           ,cnp.information27
62           ,cnp.information28
63           ,cnp.information29
64           ,cnp.information30
65       FROM hr_canvas_properties cnp
66           ,hr_form_canvases_b fcn
67           ,hr_form_windows_b fwn
68      WHERE cnp.form_canvas_id = fcn.form_canvas_id
69        AND fcn.form_window_id = fwn.form_window_id
70        AND fwn.application_id = p_application_id
71        AND fwn.form_id = p_form_id;
72   --
73   l_form_canvases                t_form_canvases := t_form_canvases();
74 --
75 BEGIN
76   --
77   IF (   p_application_id = nvl(g_application_id,hr_api.g_number)
78      AND p_form_id = nvl(g_form_id,hr_api.g_number))
79   THEN
80     --
81     -- The form canvases have already been found with a previous call to this
82     -- function. Just return the global variable.
83     --
84     l_form_canvases := g_form_canvases;
85   --
86   ELSE
87     --
88     -- The identifiers are different to the previous call to this function, or
89     -- this is the first call to this function.
90     --
91     FOR l_form_canvas IN csr_form_canvases
92       (p_application_id               => p_application_id
93       ,p_form_id                      => p_form_id
94       )
95     LOOP
96       l_form_canvases.EXTEND;
97       l_form_canvases(l_form_canvases.LAST) := l_form_canvas;
98     END LOOP;
99     --
100     -- Set the global variables so the values are available to the next call to
101     -- the function.
102     --
103     g_application_id := p_application_id;
104     g_form_id := p_form_id;
105     g_form_canvases := l_form_canvases;
106   --
107   END IF;
108   --
109   RETURN(l_form_canvases);
110 --
111 END form_canvases;
112 --
113 END hr_form_canvas_info;