DBA Data[Home] [Help]

PACKAGE BODY: APPS.JTF_UM_APPROVAL_REQUESTS_PVT_W

Source


1 package body jtf_um_approval_requests_pvt_w as
2   /* $Header: JTFWAPRB.pls 120.2 2005/09/02 18:35:38 applrt ship $ */
3   rosetta_g_mistake_date date := to_date('01/01/+4713', 'MM/DD/SYYYY');
4   rosetta_g_miss_date date := to_date('01/01/-4712', 'MM/DD/SYYYY');
5 
6   -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
7   function rosetta_g_miss_date_in_map(d date) return date as
8   begin
9     if d = rosetta_g_mistake_date then return fnd_api.g_miss_date; end if;
10     return d;
11   end;
12 
13   function rosetta_g_miss_num_map(n number) return number as
14     a number := fnd_api.g_miss_num;
15     b number := 0-1962.0724;
16   begin
17     if n=a then return b; end if;
18     if n=b then return a; end if;
19     return n;
20   end;
21 
22   procedure rosetta_table_copy_in_p1(t out nocopy jtf_um_approval_requests_pvt.approval_request_table_type, a0 JTF_DATE_TABLE
23     , a1 JTF_VARCHAR2_TABLE_100
24     , a2 JTF_VARCHAR2_TABLE_400
25     , a3 JTF_VARCHAR2_TABLE_100
26     , a4 JTF_VARCHAR2_TABLE_1000
27     , a5 JTF_VARCHAR2_TABLE_100
28     , a6 JTF_NUMBER_TABLE
29     , a7 JTF_VARCHAR2_TABLE_100
30     ) as
31     ddindx binary_integer; indx binary_integer;
32   begin
33   if a0 is not null and a0.count > 0 then
34       if a0.count > 0 then
35         indx := a0.first;
36         ddindx := 1;
37         while true loop
38           t(ddindx).reg_last_update_date := rosetta_g_miss_date_in_map(a0(indx));
39           t(ddindx).user_name := a1(indx);
40           t(ddindx).company_name := a2(indx);
41           t(ddindx).entity_source := a3(indx);
42           t(ddindx).entity_name := a4(indx);
43           t(ddindx).wf_item_type := a5(indx);
44           t(ddindx).reg_id := rosetta_g_miss_num_map(a6(indx));
45           t(ddindx).approver := a7(indx);
46           ddindx := ddindx+1;
47           if a0.last =indx
48             then exit;
49           end if;
50           indx := a0.next(indx);
51         end loop;
52       end if;
53    end if;
54   end rosetta_table_copy_in_p1;
55   procedure rosetta_table_copy_out_p1(t jtf_um_approval_requests_pvt.approval_request_table_type, a0 out nocopy JTF_DATE_TABLE
56     , a1 out nocopy JTF_VARCHAR2_TABLE_100
57     , a2 out nocopy JTF_VARCHAR2_TABLE_400
58     , a3 out nocopy JTF_VARCHAR2_TABLE_100
59     , a4 out nocopy JTF_VARCHAR2_TABLE_1000
60     , a5 out nocopy JTF_VARCHAR2_TABLE_100
61     , a6 out nocopy JTF_NUMBER_TABLE
62     , a7 out nocopy JTF_VARCHAR2_TABLE_100
63     ) as
64     ddindx binary_integer; indx binary_integer;
65   begin
66   if t is null or t.count = 0 then
67     a0 := JTF_DATE_TABLE();
68     a1 := JTF_VARCHAR2_TABLE_100();
69     a2 := JTF_VARCHAR2_TABLE_400();
70     a3 := JTF_VARCHAR2_TABLE_100();
71     a4 := JTF_VARCHAR2_TABLE_1000();
72     a5 := JTF_VARCHAR2_TABLE_100();
73     a6 := JTF_NUMBER_TABLE();
74     a7 := JTF_VARCHAR2_TABLE_100();
75   else
76       a0 := JTF_DATE_TABLE();
77       a1 := JTF_VARCHAR2_TABLE_100();
78       a2 := JTF_VARCHAR2_TABLE_400();
79       a3 := JTF_VARCHAR2_TABLE_100();
80       a4 := JTF_VARCHAR2_TABLE_1000();
81       a5 := JTF_VARCHAR2_TABLE_100();
82       a6 := JTF_NUMBER_TABLE();
83       a7 := JTF_VARCHAR2_TABLE_100();
84       if t.count > 0 then
85         a0.extend(t.count);
86         a1.extend(t.count);
87         a2.extend(t.count);
88         a3.extend(t.count);
89         a4.extend(t.count);
90         a5.extend(t.count);
91         a6.extend(t.count);
92         a7.extend(t.count);
93         ddindx := t.first;
94         indx := 1;
95         while true loop
96           a0(indx) := t(ddindx).reg_last_update_date;
97           a1(indx) := t(ddindx).user_name;
98           a2(indx) := t(ddindx).company_name;
99           a3(indx) := t(ddindx).entity_source;
100           a4(indx) := t(ddindx).entity_name;
101           a5(indx) := t(ddindx).wf_item_type;
102           a6(indx) := rosetta_g_miss_num_map(t(ddindx).reg_id);
103           a7(indx) := t(ddindx).approver;
104           indx := indx+1;
105           if t.last =ddindx
106             then exit;
107           end if;
108           ddindx := t.next(ddindx);
109         end loop;
110       end if;
111    end if;
112   end rosetta_table_copy_out_p1;
113 
114   procedure pending_approval_sysadmin(p_sort_order  VARCHAR2
115     , p_number_of_records  NUMBER
116     , p2_a0 out nocopy JTF_DATE_TABLE
117     , p2_a1 out nocopy JTF_VARCHAR2_TABLE_100
118     , p2_a2 out nocopy JTF_VARCHAR2_TABLE_400
119     , p2_a3 out nocopy JTF_VARCHAR2_TABLE_100
120     , p2_a4 out nocopy JTF_VARCHAR2_TABLE_1000
121     , p2_a5 out nocopy JTF_VARCHAR2_TABLE_100
122     , p2_a6 out nocopy JTF_NUMBER_TABLE
123     , p2_a7 out nocopy JTF_VARCHAR2_TABLE_100
124   )
125 
126   as
127     ddx_result jtf_um_approval_requests_pvt.approval_request_table_type;
128     ddindx binary_integer; indx binary_integer;
129   begin
130 
131     -- copy data to the local IN or IN-OUT args, if any
132 
133 
134 
135     -- here's the delegated call to the old PL/SQL routine
136     jtf_um_approval_requests_pvt.pending_approval_sysadmin(p_sort_order,
137       p_number_of_records,
138       ddx_result);
139 
140     -- copy data back from the local variables to OUT or IN-OUT args, if any
141 
142 
143     jtf_um_approval_requests_pvt_w.rosetta_table_copy_out_p1(ddx_result, p2_a0
144       , p2_a1
145       , p2_a2
146       , p2_a3
147       , p2_a4
148       , p2_a5
149       , p2_a6
150       , p2_a7
151       );
152   end;
153 
154   procedure pending_approval_primary(p_sort_order  VARCHAR2
155     , p_number_of_records  NUMBER
156     , p_approver_user_id  NUMBER
157     , p3_a0 out nocopy JTF_DATE_TABLE
158     , p3_a1 out nocopy JTF_VARCHAR2_TABLE_100
159     , p3_a2 out nocopy JTF_VARCHAR2_TABLE_400
160     , p3_a3 out nocopy JTF_VARCHAR2_TABLE_100
161     , p3_a4 out nocopy JTF_VARCHAR2_TABLE_1000
162     , p3_a5 out nocopy JTF_VARCHAR2_TABLE_100
163     , p3_a6 out nocopy JTF_NUMBER_TABLE
164     , p3_a7 out nocopy JTF_VARCHAR2_TABLE_100
165   )
166 
167   as
168     ddx_result jtf_um_approval_requests_pvt.approval_request_table_type;
169     ddindx binary_integer; indx binary_integer;
170   begin
171 
172     -- copy data to the local IN or IN-OUT args, if any
173 
174 
175 
176 
177     -- here's the delegated call to the old PL/SQL routine
178     jtf_um_approval_requests_pvt.pending_approval_primary(p_sort_order,
179       p_number_of_records,
180       p_approver_user_id,
181       ddx_result);
182 
183     -- copy data back from the local variables to OUT or IN-OUT args, if any
184 
185 
186 
187     jtf_um_approval_requests_pvt_w.rosetta_table_copy_out_p1(ddx_result, p3_a0
188       , p3_a1
189       , p3_a2
190       , p3_a3
191       , p3_a4
192       , p3_a5
193       , p3_a6
194       , p3_a7
195       );
196   end;
197 
198   procedure pending_approval_owner(p_sort_order  VARCHAR2
199     , p_number_of_records  NUMBER
200     , p_approver_user_id  NUMBER
201     , p3_a0 out nocopy JTF_DATE_TABLE
202     , p3_a1 out nocopy JTF_VARCHAR2_TABLE_100
203     , p3_a2 out nocopy JTF_VARCHAR2_TABLE_400
204     , p3_a3 out nocopy JTF_VARCHAR2_TABLE_100
205     , p3_a4 out nocopy JTF_VARCHAR2_TABLE_1000
206     , p3_a5 out nocopy JTF_VARCHAR2_TABLE_100
207     , p3_a6 out nocopy JTF_NUMBER_TABLE
208     , p3_a7 out nocopy JTF_VARCHAR2_TABLE_100
209   )
210 
211   as
212     ddx_result jtf_um_approval_requests_pvt.approval_request_table_type;
213     ddindx binary_integer; indx binary_integer;
214   begin
215 
216     -- copy data to the local IN or IN-OUT args, if any
217 
218 
219 
220 
221     -- here's the delegated call to the old PL/SQL routine
222     jtf_um_approval_requests_pvt.pending_approval_owner(p_sort_order,
223       p_number_of_records,
224       p_approver_user_id,
225       ddx_result);
226 
227     -- copy data back from the local variables to OUT or IN-OUT args, if any
228 
229 
230 
231     jtf_um_approval_requests_pvt_w.rosetta_table_copy_out_p1(ddx_result, p3_a0
232       , p3_a1
233       , p3_a2
234       , p3_a3
235       , p3_a4
236       , p3_a5
237       , p3_a6
238       , p3_a7
239       );
240   end;
241 
242 end jtf_um_approval_requests_pvt_w;