DBA Data[Home] [Help]

PACKAGE BODY: APPS.CSP_REQ_LINE_DETAILS_PVT_W

Source


1 package body csp_req_line_details_pvt_w as
2   /* $Header: csprqldpvtwb.pls 120.1 2010/12/07 06:20:45 hhaugeru noship $ */
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   rosetta_g_mistake_date_high date := to_date('01/01/+4710', 'MM/DD/SYYYY');
6   rosetta_g_mistake_date_low date := to_date('01/01/-4710', 'MM/DD/SYYYY');
7 
8   -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
9   function rosetta_g_miss_date_in_map(d date) return date as
10   begin
11     if d > rosetta_g_mistake_date_high then return fnd_api.g_miss_date; end if;
12     if d < rosetta_g_mistake_date_low then return fnd_api.g_miss_date; end if;
13     return d;
14   end;
15 
16   procedure rosetta_table_copy_in_p3(t out nocopy csp_req_line_details_pvt.req_line_details_tbl_type, a0 JTF_NUMBER_TABLE
17     , a1 JTF_NUMBER_TABLE
18     , a2 JTF_NUMBER_TABLE
19     , a3 JTF_DATE_TABLE
20     , a4 JTF_NUMBER_TABLE
21     , a5 JTF_DATE_TABLE
22     , a6 JTF_NUMBER_TABLE
23     , a7 JTF_VARCHAR2_TABLE_100
24     , a8 JTF_NUMBER_TABLE
25     ) as
26     ddindx binary_integer; indx binary_integer;
27   begin
28   if a0 is not null and a0.count > 0 then
29       if a0.count > 0 then
30         indx := a0.first;
31         ddindx := 1;
32         while true loop
33           t(ddindx).req_line_detail_id := a0(indx);
34           t(ddindx).requirement_line_id := a1(indx);
35           t(ddindx).created_by := a2(indx);
36           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a3(indx));
37           t(ddindx).last_updated_by := a4(indx);
38           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a5(indx));
39           t(ddindx).last_update_login := a6(indx);
40           t(ddindx).source_type := a7(indx);
41           t(ddindx).source_id := a8(indx);
42           ddindx := ddindx+1;
43           if a0.last =indx
44             then exit;
45           end if;
46           indx := a0.next(indx);
47         end loop;
48       end if;
49    end if;
50   end rosetta_table_copy_in_p3;
51   procedure rosetta_table_copy_out_p3(t csp_req_line_details_pvt.req_line_details_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
52     , a1 out nocopy JTF_NUMBER_TABLE
53     , a2 out nocopy JTF_NUMBER_TABLE
54     , a3 out nocopy JTF_DATE_TABLE
55     , a4 out nocopy JTF_NUMBER_TABLE
56     , a5 out nocopy JTF_DATE_TABLE
57     , a6 out nocopy JTF_NUMBER_TABLE
58     , a7 out nocopy JTF_VARCHAR2_TABLE_100
59     , a8 out nocopy JTF_NUMBER_TABLE
60     ) as
61     ddindx binary_integer; indx binary_integer;
62   begin
63   if t is null or t.count = 0 then
64     a0 := JTF_NUMBER_TABLE();
65     a1 := JTF_NUMBER_TABLE();
66     a2 := JTF_NUMBER_TABLE();
67     a3 := JTF_DATE_TABLE();
68     a4 := JTF_NUMBER_TABLE();
69     a5 := JTF_DATE_TABLE();
70     a6 := JTF_NUMBER_TABLE();
71     a7 := JTF_VARCHAR2_TABLE_100();
72     a8 := JTF_NUMBER_TABLE();
73   else
74       a0 := JTF_NUMBER_TABLE();
75       a1 := JTF_NUMBER_TABLE();
76       a2 := JTF_NUMBER_TABLE();
77       a3 := JTF_DATE_TABLE();
78       a4 := JTF_NUMBER_TABLE();
79       a5 := JTF_DATE_TABLE();
80       a6 := JTF_NUMBER_TABLE();
81       a7 := JTF_VARCHAR2_TABLE_100();
82       a8 := JTF_NUMBER_TABLE();
83       if t.count > 0 then
84         a0.extend(t.count);
85         a1.extend(t.count);
86         a2.extend(t.count);
87         a3.extend(t.count);
88         a4.extend(t.count);
89         a5.extend(t.count);
90         a6.extend(t.count);
91         a7.extend(t.count);
92         a8.extend(t.count);
93         ddindx := t.first;
94         indx := 1;
95         while true loop
96           a0(indx) := t(ddindx).req_line_detail_id;
97           a1(indx) := t(ddindx).requirement_line_id;
98           a2(indx) := t(ddindx).created_by;
99           a3(indx) := t(ddindx).creation_date;
100           a4(indx) := t(ddindx).last_updated_by;
101           a5(indx) := t(ddindx).last_update_date;
102           a6(indx) := t(ddindx).last_update_login;
103           a7(indx) := t(ddindx).source_type;
104           a8(indx) := t(ddindx).source_id;
105           indx := indx+1;
106           if t.last =ddindx
107             then exit;
108           end if;
109           ddindx := t.next(ddindx);
110         end loop;
111       end if;
112    end if;
113   end rosetta_table_copy_out_p3;
114 
115   procedure create_req_line_details(p_api_version_number  NUMBER
116     , p_init_msg_list  VARCHAR2
117     , p_commit  VARCHAR2
118     , p_validation_level  NUMBER
119     , p4_a0 JTF_NUMBER_TABLE
120     , p4_a1 JTF_NUMBER_TABLE
121     , p4_a2 JTF_NUMBER_TABLE
122     , p4_a3 JTF_DATE_TABLE
123     , p4_a4 JTF_NUMBER_TABLE
124     , p4_a5 JTF_DATE_TABLE
125     , p4_a6 JTF_NUMBER_TABLE
126     , p4_a7 JTF_VARCHAR2_TABLE_100
127     , p4_a8 JTF_NUMBER_TABLE
128     , p5_a0 out nocopy JTF_NUMBER_TABLE
129     , p5_a1 out nocopy JTF_NUMBER_TABLE
130     , p5_a2 out nocopy JTF_NUMBER_TABLE
131     , p5_a3 out nocopy JTF_DATE_TABLE
132     , p5_a4 out nocopy JTF_NUMBER_TABLE
133     , p5_a5 out nocopy JTF_DATE_TABLE
134     , p5_a6 out nocopy JTF_NUMBER_TABLE
135     , p5_a7 out nocopy JTF_VARCHAR2_TABLE_100
136     , p5_a8 out nocopy JTF_NUMBER_TABLE
137     , x_return_status out nocopy  VARCHAR2
138     , x_msg_count out nocopy  NUMBER
139     , x_msg_data out nocopy  VARCHAR2
140   )
141 
142   as
143     ddp_req_line_details_tbl csp_req_line_details_pvt.req_line_details_tbl_type;
144     ddx_req_line_details_tbl csp_req_line_details_pvt.req_line_details_tbl_type;
145     ddindx binary_integer; indx binary_integer;
146   begin
147 
148     -- copy data to the local IN or IN-OUT args, if any
149 
150 
151 
152 
153     csp_req_line_details_pvt_w.rosetta_table_copy_in_p3(ddp_req_line_details_tbl, p4_a0
154       , p4_a1
155       , p4_a2
156       , p4_a3
157       , p4_a4
158       , p4_a5
159       , p4_a6
160       , p4_a7
161       , p4_a8
162       );
163 
164 
165 
166 
167 
168     -- here's the delegated call to the old PL/SQL routine
169     csp_req_line_details_pvt.create_req_line_details(p_api_version_number,
170       p_init_msg_list,
171       p_commit,
172       p_validation_level,
173       ddp_req_line_details_tbl,
174       ddx_req_line_details_tbl,
175       x_return_status,
176       x_msg_count,
177       x_msg_data);
178 
179     -- copy data back from the local variables to OUT or IN-OUT args, if any
180 
181 
182 
183 
184 
185     csp_req_line_details_pvt_w.rosetta_table_copy_out_p3(ddx_req_line_details_tbl, p5_a0
186       , p5_a1
187       , p5_a2
188       , p5_a3
189       , p5_a4
190       , p5_a5
191       , p5_a6
192       , p5_a7
193       , p5_a8
194       );
195 
196 
197 
198   end;
199 
200   procedure update_req_line_details(p_api_version_number  NUMBER
201     , p_init_msg_list  VARCHAR2
202     , p_commit  VARCHAR2
203     , p_validation_level  NUMBER
204     , p4_a0 JTF_NUMBER_TABLE
205     , p4_a1 JTF_NUMBER_TABLE
206     , p4_a2 JTF_NUMBER_TABLE
207     , p4_a3 JTF_DATE_TABLE
208     , p4_a4 JTF_NUMBER_TABLE
209     , p4_a5 JTF_DATE_TABLE
210     , p4_a6 JTF_NUMBER_TABLE
211     , p4_a7 JTF_VARCHAR2_TABLE_100
212     , p4_a8 JTF_NUMBER_TABLE
213     , x_return_status out nocopy  VARCHAR2
214     , x_msg_count out nocopy  NUMBER
215     , x_msg_data out nocopy  VARCHAR2
216   )
217 
218   as
219     ddp_req_line_details_tbl csp_req_line_details_pvt.req_line_details_tbl_type;
220     ddindx binary_integer; indx binary_integer;
221   begin
222 
223     -- copy data to the local IN or IN-OUT args, if any
224 
225 
226 
227 
228     csp_req_line_details_pvt_w.rosetta_table_copy_in_p3(ddp_req_line_details_tbl, p4_a0
229       , p4_a1
230       , p4_a2
231       , p4_a3
232       , p4_a4
233       , p4_a5
234       , p4_a6
235       , p4_a7
236       , p4_a8
237       );
238 
239 
240 
241 
242     -- here's the delegated call to the old PL/SQL routine
243     csp_req_line_details_pvt.update_req_line_details(p_api_version_number,
244       p_init_msg_list,
245       p_commit,
246       p_validation_level,
247       ddp_req_line_details_tbl,
248       x_return_status,
249       x_msg_count,
250       x_msg_data);
251 
252     -- copy data back from the local variables to OUT or IN-OUT args, if any
253 
254 
255 
256 
257 
258 
259 
260   end;
261 
262   procedure delete_req_line_details(p_api_version_number  NUMBER
263     , p_init_msg_list  VARCHAR2
264     , p_commit  VARCHAR2
265     , p_validation_level  NUMBER
266     , p4_a0 JTF_NUMBER_TABLE
267     , p4_a1 JTF_NUMBER_TABLE
268     , p4_a2 JTF_NUMBER_TABLE
269     , p4_a3 JTF_DATE_TABLE
270     , p4_a4 JTF_NUMBER_TABLE
271     , p4_a5 JTF_DATE_TABLE
272     , p4_a6 JTF_NUMBER_TABLE
273     , p4_a7 JTF_VARCHAR2_TABLE_100
274     , p4_a8 JTF_NUMBER_TABLE
275     , x_return_status out nocopy  VARCHAR2
276     , x_msg_count out nocopy  NUMBER
277     , x_msg_data out nocopy  VARCHAR2
278   )
279 
280   as
281     ddp_req_line_details_tbl csp_req_line_details_pvt.req_line_details_tbl_type;
282     ddindx binary_integer; indx binary_integer;
283   begin
284 
285     -- copy data to the local IN or IN-OUT args, if any
286 
287 
288 
289 
290     csp_req_line_details_pvt_w.rosetta_table_copy_in_p3(ddp_req_line_details_tbl, p4_a0
291       , p4_a1
292       , p4_a2
293       , p4_a3
294       , p4_a4
295       , p4_a5
296       , p4_a6
297       , p4_a7
298       , p4_a8
299       );
300 
301 
302 
303 
304     -- here's the delegated call to the old PL/SQL routine
305     csp_req_line_details_pvt.delete_req_line_details(p_api_version_number,
306       p_init_msg_list,
307       p_commit,
308       p_validation_level,
309       ddp_req_line_details_tbl,
310       x_return_status,
311       x_msg_count,
312       x_msg_data);
313 
314     -- copy data back from the local variables to OUT or IN-OUT args, if any
315 
316 
317 
318 
319 
320 
321 
322   end;
323 
324 end csp_req_line_details_pvt_w;