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