[Home] [Help]
PACKAGE BODY: APPS.CUG_INCIDNT_ATTR_VALS_PVT_W
Source
1 package body cug_incidnt_attr_vals_pvt_w as
2 /* $Header: CUGRINWB.pls 115.4 2003/12/30 19:50:48 aneemuch 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 procedure rosetta_table_copy_in_p1(t out nocopy cug_incidnt_attr_vals_pvt.sr_tbl, a0 JTF_NUMBER_TABLE
14 , a1 JTF_NUMBER_TABLE
15 , a2 JTF_VARCHAR2_TABLE_300
16 , a3 JTF_VARCHAR2_TABLE_100
17 , a4 JTF_VARCHAR2_TABLE_2000
18 , a5 JTF_DATE_TABLE
19 , a6 JTF_DATE_TABLE
20 , a7 JTF_VARCHAR2_TABLE_200
21 , a8 JTF_VARCHAR2_TABLE_200
22 , a9 JTF_VARCHAR2_TABLE_200
23 , a10 JTF_VARCHAR2_TABLE_200
24 , a11 JTF_VARCHAR2_TABLE_200
25 , a12 JTF_VARCHAR2_TABLE_200
26 , a13 JTF_VARCHAR2_TABLE_200
27 , a14 JTF_VARCHAR2_TABLE_200
28 , a15 JTF_VARCHAR2_TABLE_200
29 , a16 JTF_VARCHAR2_TABLE_200
30 , a17 JTF_VARCHAR2_TABLE_200
31 , a18 JTF_VARCHAR2_TABLE_200
32 , a19 JTF_VARCHAR2_TABLE_200
33 , a20 JTF_VARCHAR2_TABLE_200
34 , a21 JTF_VARCHAR2_TABLE_200
35 , a22 JTF_VARCHAR2_TABLE_200
36 , a23 JTF_NUMBER_TABLE
37 ) as
38 ddindx binary_integer; indx binary_integer;
39 begin
40 if a0 is not null and a0.count > 0 then
41 if a0.count > 0 then
42 indx := a0.first;
43 ddindx := 1;
44 while true loop
45 t(ddindx).incidnt_attr_val_id := a0(indx);
46 t(ddindx).incident_id := a1(indx);
47 t(ddindx).sr_question := a2(indx);
48 t(ddindx).override_addr_valid_flag := a3(indx);
49 t(ddindx).sr_answer := a4(indx);
50 t(ddindx).start_date := rosetta_g_miss_date_in_map(a5(indx));
51 t(ddindx).end_date := rosetta_g_miss_date_in_map(a6(indx));
52 t(ddindx).attribute_category := a7(indx);
53 t(ddindx).attribute1 := a8(indx);
54 t(ddindx).attribute2 := a9(indx);
55 t(ddindx).attribute3 := a10(indx);
56 t(ddindx).attribute4 := a11(indx);
57 t(ddindx).attribute5 := a12(indx);
58 t(ddindx).attribute6 := a13(indx);
59 t(ddindx).attribute7 := a14(indx);
60 t(ddindx).attribute8 := a15(indx);
61 t(ddindx).attribute9 := a16(indx);
62 t(ddindx).attribute10 := a17(indx);
63 t(ddindx).attribute11 := a18(indx);
64 t(ddindx).attribute12 := a19(indx);
65 t(ddindx).attribute13 := a20(indx);
66 t(ddindx).attribute14 := a21(indx);
67 t(ddindx).attribute15 := a22(indx);
68 t(ddindx).object_version_number := a23(indx);
69 ddindx := ddindx+1;
70 if a0.last =indx
71 then exit;
72 end if;
73 indx := a0.next(indx);
74 end loop;
75 end if;
76 end if;
77 end rosetta_table_copy_in_p1;
78 procedure rosetta_table_copy_out_p1(t cug_incidnt_attr_vals_pvt.sr_tbl, a0 out nocopy JTF_NUMBER_TABLE
79 , a1 out nocopy JTF_NUMBER_TABLE
80 , a2 out nocopy JTF_VARCHAR2_TABLE_300
81 , a3 out nocopy JTF_VARCHAR2_TABLE_100
82 , a4 out nocopy JTF_VARCHAR2_TABLE_2000
83 , a5 out nocopy JTF_DATE_TABLE
84 , a6 out nocopy JTF_DATE_TABLE
85 , a7 out nocopy JTF_VARCHAR2_TABLE_200
86 , a8 out nocopy JTF_VARCHAR2_TABLE_200
87 , a9 out nocopy JTF_VARCHAR2_TABLE_200
88 , a10 out nocopy JTF_VARCHAR2_TABLE_200
89 , a11 out nocopy JTF_VARCHAR2_TABLE_200
90 , a12 out nocopy JTF_VARCHAR2_TABLE_200
91 , a13 out nocopy JTF_VARCHAR2_TABLE_200
92 , a14 out nocopy JTF_VARCHAR2_TABLE_200
93 , a15 out nocopy JTF_VARCHAR2_TABLE_200
94 , a16 out nocopy JTF_VARCHAR2_TABLE_200
95 , a17 out nocopy JTF_VARCHAR2_TABLE_200
96 , a18 out nocopy JTF_VARCHAR2_TABLE_200
97 , a19 out nocopy JTF_VARCHAR2_TABLE_200
98 , a20 out nocopy JTF_VARCHAR2_TABLE_200
99 , a21 out nocopy JTF_VARCHAR2_TABLE_200
100 , a22 out nocopy JTF_VARCHAR2_TABLE_200
101 , a23 out nocopy JTF_NUMBER_TABLE
102 ) as
103 ddindx binary_integer; indx binary_integer;
104 begin
105 if t is null or t.count = 0 then
106 a0 := JTF_NUMBER_TABLE();
107 a1 := JTF_NUMBER_TABLE();
108 a2 := JTF_VARCHAR2_TABLE_300();
109 a3 := JTF_VARCHAR2_TABLE_100();
110 a4 := JTF_VARCHAR2_TABLE_2000();
111 a5 := JTF_DATE_TABLE();
112 a6 := JTF_DATE_TABLE();
113 a7 := JTF_VARCHAR2_TABLE_200();
114 a8 := JTF_VARCHAR2_TABLE_200();
115 a9 := JTF_VARCHAR2_TABLE_200();
116 a10 := JTF_VARCHAR2_TABLE_200();
117 a11 := JTF_VARCHAR2_TABLE_200();
118 a12 := JTF_VARCHAR2_TABLE_200();
119 a13 := JTF_VARCHAR2_TABLE_200();
120 a14 := JTF_VARCHAR2_TABLE_200();
121 a15 := JTF_VARCHAR2_TABLE_200();
122 a16 := JTF_VARCHAR2_TABLE_200();
123 a17 := JTF_VARCHAR2_TABLE_200();
124 a18 := JTF_VARCHAR2_TABLE_200();
125 a19 := JTF_VARCHAR2_TABLE_200();
126 a20 := JTF_VARCHAR2_TABLE_200();
127 a21 := JTF_VARCHAR2_TABLE_200();
128 a22 := JTF_VARCHAR2_TABLE_200();
129 a23 := JTF_NUMBER_TABLE();
130 else
131 a0 := JTF_NUMBER_TABLE();
132 a1 := JTF_NUMBER_TABLE();
133 a2 := JTF_VARCHAR2_TABLE_300();
134 a3 := JTF_VARCHAR2_TABLE_100();
135 a4 := JTF_VARCHAR2_TABLE_2000();
136 a5 := JTF_DATE_TABLE();
137 a6 := JTF_DATE_TABLE();
138 a7 := JTF_VARCHAR2_TABLE_200();
139 a8 := JTF_VARCHAR2_TABLE_200();
140 a9 := JTF_VARCHAR2_TABLE_200();
141 a10 := JTF_VARCHAR2_TABLE_200();
142 a11 := JTF_VARCHAR2_TABLE_200();
143 a12 := JTF_VARCHAR2_TABLE_200();
144 a13 := JTF_VARCHAR2_TABLE_200();
145 a14 := JTF_VARCHAR2_TABLE_200();
146 a15 := JTF_VARCHAR2_TABLE_200();
147 a16 := JTF_VARCHAR2_TABLE_200();
148 a17 := JTF_VARCHAR2_TABLE_200();
149 a18 := JTF_VARCHAR2_TABLE_200();
150 a19 := JTF_VARCHAR2_TABLE_200();
151 a20 := JTF_VARCHAR2_TABLE_200();
152 a21 := JTF_VARCHAR2_TABLE_200();
153 a22 := JTF_VARCHAR2_TABLE_200();
154 a23 := JTF_NUMBER_TABLE();
155 if t.count > 0 then
156 a0.extend(t.count);
157 a1.extend(t.count);
158 a2.extend(t.count);
159 a3.extend(t.count);
160 a4.extend(t.count);
161 a5.extend(t.count);
162 a6.extend(t.count);
163 a7.extend(t.count);
164 a8.extend(t.count);
165 a9.extend(t.count);
166 a10.extend(t.count);
167 a11.extend(t.count);
168 a12.extend(t.count);
169 a13.extend(t.count);
170 a14.extend(t.count);
171 a15.extend(t.count);
172 a16.extend(t.count);
173 a17.extend(t.count);
174 a18.extend(t.count);
175 a19.extend(t.count);
176 a20.extend(t.count);
177 a21.extend(t.count);
178 a22.extend(t.count);
179 a23.extend(t.count);
180 ddindx := t.first;
181 indx := 1;
182 while true loop
183 a0(indx) := t(ddindx).incidnt_attr_val_id;
184 a1(indx) := t(ddindx).incident_id;
185 a2(indx) := t(ddindx).sr_question;
186 a3(indx) := t(ddindx).override_addr_valid_flag;
187 a4(indx) := t(ddindx).sr_answer;
188 a5(indx) := t(ddindx).start_date;
189 a6(indx) := t(ddindx).end_date;
190 a7(indx) := t(ddindx).attribute_category;
191 a8(indx) := t(ddindx).attribute1;
192 a9(indx) := t(ddindx).attribute2;
193 a10(indx) := t(ddindx).attribute3;
194 a11(indx) := t(ddindx).attribute4;
195 a12(indx) := t(ddindx).attribute5;
196 a13(indx) := t(ddindx).attribute6;
197 a14(indx) := t(ddindx).attribute7;
198 a15(indx) := t(ddindx).attribute8;
199 a16(indx) := t(ddindx).attribute9;
200 a17(indx) := t(ddindx).attribute10;
201 a18(indx) := t(ddindx).attribute11;
202 a19(indx) := t(ddindx).attribute12;
203 a20(indx) := t(ddindx).attribute13;
204 a21(indx) := t(ddindx).attribute14;
205 a22(indx) := t(ddindx).attribute15;
206 a23(indx) := t(ddindx).object_version_number;
207 indx := indx+1;
208 if t.last =ddindx
209 then exit;
210 end if;
211 ddindx := t.next(ddindx);
212 end loop;
213 end if;
214 end if;
215 end rosetta_table_copy_out_p1;
216
217 procedure create_runtime_data(p_api_version NUMBER
218 , p_init_msg_list VARCHAR2
219 , p_commit VARCHAR
220 , p3_a0 in out nocopy JTF_NUMBER_TABLE
221 , p3_a1 in out nocopy JTF_NUMBER_TABLE
222 , p3_a2 in out nocopy JTF_VARCHAR2_TABLE_300
223 , p3_a3 in out nocopy JTF_VARCHAR2_TABLE_100
224 , p3_a4 in out nocopy JTF_VARCHAR2_TABLE_2000
225 , p3_a5 in out nocopy JTF_DATE_TABLE
226 , p3_a6 in out nocopy JTF_DATE_TABLE
227 , p3_a7 in out nocopy JTF_VARCHAR2_TABLE_200
228 , p3_a8 in out nocopy JTF_VARCHAR2_TABLE_200
229 , p3_a9 in out nocopy JTF_VARCHAR2_TABLE_200
230 , p3_a10 in out nocopy JTF_VARCHAR2_TABLE_200
231 , p3_a11 in out nocopy JTF_VARCHAR2_TABLE_200
232 , p3_a12 in out nocopy JTF_VARCHAR2_TABLE_200
233 , p3_a13 in out nocopy JTF_VARCHAR2_TABLE_200
234 , p3_a14 in out nocopy JTF_VARCHAR2_TABLE_200
235 , p3_a15 in out nocopy JTF_VARCHAR2_TABLE_200
236 , p3_a16 in out nocopy JTF_VARCHAR2_TABLE_200
237 , p3_a17 in out nocopy JTF_VARCHAR2_TABLE_200
238 , p3_a18 in out nocopy JTF_VARCHAR2_TABLE_200
239 , p3_a19 in out nocopy JTF_VARCHAR2_TABLE_200
240 , p3_a20 in out nocopy JTF_VARCHAR2_TABLE_200
241 , p3_a21 in out nocopy JTF_VARCHAR2_TABLE_200
242 , p3_a22 in out nocopy JTF_VARCHAR2_TABLE_200
243 , p3_a23 in out nocopy JTF_NUMBER_TABLE
244 , x_msg_count out nocopy NUMBER
245 , x_msg_data out nocopy VARCHAR2
246 , x_return_status out nocopy VARCHAR2
247 )
248
249 as
250 ddp_sr_tbl cug_incidnt_attr_vals_pvt.sr_tbl;
251 ddindx binary_integer; indx binary_integer;
252 begin
253
254 -- copy data to the local IN or IN-OUT args, if any
255
256
257
258 cug_incidnt_attr_vals_pvt_w.rosetta_table_copy_in_p1(ddp_sr_tbl, p3_a0
259 , p3_a1
260 , p3_a2
261 , p3_a3
262 , p3_a4
263 , p3_a5
264 , p3_a6
265 , p3_a7
266 , p3_a8
267 , p3_a9
268 , p3_a10
269 , p3_a11
270 , p3_a12
271 , p3_a13
272 , p3_a14
273 , p3_a15
274 , p3_a16
275 , p3_a17
276 , p3_a18
277 , p3_a19
278 , p3_a20
279 , p3_a21
280 , p3_a22
281 , p3_a23
282 );
283
284
285
286
287 -- here's the delegated call to the old PL/SQL routine
288 cug_incidnt_attr_vals_pvt.create_runtime_data(p_api_version,
289 p_init_msg_list,
290 p_commit,
291 ddp_sr_tbl,
292 x_msg_count,
293 x_msg_data,
294 x_return_status);
295
296 -- copy data back from the local variables to OUT or IN-OUT args, if any
297
298
299
300 cug_incidnt_attr_vals_pvt_w.rosetta_table_copy_out_p1(ddp_sr_tbl, p3_a0
301 , p3_a1
302 , p3_a2
303 , p3_a3
304 , p3_a4
305 , p3_a5
306 , p3_a6
307 , p3_a7
308 , p3_a8
309 , p3_a9
310 , p3_a10
311 , p3_a11
312 , p3_a12
313 , p3_a13
314 , p3_a14
315 , p3_a15
316 , p3_a16
317 , p3_a17
318 , p3_a18
319 , p3_a19
320 , p3_a20
321 , p3_a21
322 , p3_a22
323 , p3_a23
324 );
325
326
327
328 end;
329
330 end cug_incidnt_attr_vals_pvt_w;