DBA Data[Home] [Help]

PACKAGE BODY: APPS.PV_ATTRIBUTE_USAGE_PVT_W

Source


1 package body pv_attribute_usage_pvt_w as
2   /* $Header: pvxwatub.pls 115.3 2002/12/10 19:34:34 amaram 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   function rosetta_g_miss_num_map(n number) return number as
7     a number := fnd_api.g_miss_num;
8     b number := 0-1962.0724;
9   begin
10     if n=a then return b; end if;
11     if n=b then return a; end if;
12     return n;
13   end;
14 
15   -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
16   function rosetta_g_miss_date_in_map(d date) return date as
17   begin
18     if d = rosetta_g_mistake_date then return fnd_api.g_miss_date; end if;
19     return d;
20   end;
21 
22   procedure rosetta_table_copy_in_p2(t out nocopy pv_attribute_usage_pvt.attribute_usage_tbl_type, a0 JTF_NUMBER_TABLE
23     , a1 JTF_DATE_TABLE
24     , a2 JTF_NUMBER_TABLE
25     , a3 JTF_DATE_TABLE
26     , a4 JTF_NUMBER_TABLE
27     , a5 JTF_NUMBER_TABLE
28     , a6 JTF_NUMBER_TABLE
29     , a7 JTF_NUMBER_TABLE
30     , a8 JTF_NUMBER_TABLE
31     , a9 JTF_DATE_TABLE
32     , a10 JTF_NUMBER_TABLE
33     , a11 JTF_VARCHAR2_TABLE_100
34     , a12 JTF_VARCHAR2_TABLE_100
35     , a13 JTF_NUMBER_TABLE
36     , a14 JTF_VARCHAR2_TABLE_100
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).attribute_usage_id := rosetta_g_miss_num_map(a0(indx));
46           t(ddindx).last_update_date := rosetta_g_miss_date_in_map(a1(indx));
47           t(ddindx).last_updated_by := rosetta_g_miss_num_map(a2(indx));
48           t(ddindx).creation_date := rosetta_g_miss_date_in_map(a3(indx));
49           t(ddindx).created_by := rosetta_g_miss_num_map(a4(indx));
50           t(ddindx).last_update_login := rosetta_g_miss_num_map(a5(indx));
51           t(ddindx).request_id := rosetta_g_miss_num_map(a6(indx));
52           t(ddindx).program_application_id := rosetta_g_miss_num_map(a7(indx));
53           t(ddindx).program_id := rosetta_g_miss_num_map(a8(indx));
54           t(ddindx).program_update_date := rosetta_g_miss_date_in_map(a9(indx));
55           t(ddindx).object_version_number := rosetta_g_miss_num_map(a10(indx));
56           t(ddindx).attribute_usage_type := a11(indx);
57           t(ddindx).attribute_usage_code := a12(indx);
58           t(ddindx).attribute_id := rosetta_g_miss_num_map(a13(indx));
59           t(ddindx).enabled_flag := a14(indx);
60           ddindx := ddindx+1;
61           if a0.last =indx
62             then exit;
63           end if;
64           indx := a0.next(indx);
65         end loop;
66       end if;
67    end if;
68   end rosetta_table_copy_in_p2;
69   procedure rosetta_table_copy_out_p2(t pv_attribute_usage_pvt.attribute_usage_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
70     , a1 out nocopy JTF_DATE_TABLE
71     , a2 out nocopy JTF_NUMBER_TABLE
72     , a3 out nocopy JTF_DATE_TABLE
73     , a4 out nocopy JTF_NUMBER_TABLE
74     , a5 out nocopy JTF_NUMBER_TABLE
75     , a6 out nocopy JTF_NUMBER_TABLE
76     , a7 out nocopy JTF_NUMBER_TABLE
77     , a8 out nocopy JTF_NUMBER_TABLE
78     , a9 out nocopy JTF_DATE_TABLE
79     , a10 out nocopy JTF_NUMBER_TABLE
80     , a11 out nocopy JTF_VARCHAR2_TABLE_100
81     , a12 out nocopy JTF_VARCHAR2_TABLE_100
82     , a13 out nocopy JTF_NUMBER_TABLE
83     , a14 out nocopy JTF_VARCHAR2_TABLE_100
84     ) as
85     ddindx binary_integer; indx binary_integer;
86   begin
87   if t is null or t.count = 0 then
88     a0 := JTF_NUMBER_TABLE();
89     a1 := JTF_DATE_TABLE();
90     a2 := JTF_NUMBER_TABLE();
91     a3 := JTF_DATE_TABLE();
92     a4 := JTF_NUMBER_TABLE();
93     a5 := JTF_NUMBER_TABLE();
94     a6 := JTF_NUMBER_TABLE();
95     a7 := JTF_NUMBER_TABLE();
96     a8 := JTF_NUMBER_TABLE();
97     a9 := JTF_DATE_TABLE();
98     a10 := JTF_NUMBER_TABLE();
99     a11 := JTF_VARCHAR2_TABLE_100();
100     a12 := JTF_VARCHAR2_TABLE_100();
101     a13 := JTF_NUMBER_TABLE();
102     a14 := JTF_VARCHAR2_TABLE_100();
103   else
104       a0 := JTF_NUMBER_TABLE();
105       a1 := JTF_DATE_TABLE();
106       a2 := JTF_NUMBER_TABLE();
107       a3 := JTF_DATE_TABLE();
108       a4 := JTF_NUMBER_TABLE();
109       a5 := JTF_NUMBER_TABLE();
110       a6 := JTF_NUMBER_TABLE();
111       a7 := JTF_NUMBER_TABLE();
112       a8 := JTF_NUMBER_TABLE();
113       a9 := JTF_DATE_TABLE();
114       a10 := JTF_NUMBER_TABLE();
115       a11 := JTF_VARCHAR2_TABLE_100();
116       a12 := JTF_VARCHAR2_TABLE_100();
117       a13 := JTF_NUMBER_TABLE();
118       a14 := JTF_VARCHAR2_TABLE_100();
119       if t.count > 0 then
120         a0.extend(t.count);
121         a1.extend(t.count);
122         a2.extend(t.count);
123         a3.extend(t.count);
124         a4.extend(t.count);
125         a5.extend(t.count);
126         a6.extend(t.count);
127         a7.extend(t.count);
128         a8.extend(t.count);
129         a9.extend(t.count);
130         a10.extend(t.count);
131         a11.extend(t.count);
132         a12.extend(t.count);
133         a13.extend(t.count);
134         a14.extend(t.count);
135         ddindx := t.first;
136         indx := 1;
137         while true loop
138           a0(indx) := rosetta_g_miss_num_map(t(ddindx).attribute_usage_id);
139           a1(indx) := t(ddindx).last_update_date;
140           a2(indx) := rosetta_g_miss_num_map(t(ddindx).last_updated_by);
141           a3(indx) := t(ddindx).creation_date;
142           a4(indx) := rosetta_g_miss_num_map(t(ddindx).created_by);
143           a5(indx) := rosetta_g_miss_num_map(t(ddindx).last_update_login);
144           a6(indx) := rosetta_g_miss_num_map(t(ddindx).request_id);
145           a7(indx) := rosetta_g_miss_num_map(t(ddindx).program_application_id);
146           a8(indx) := rosetta_g_miss_num_map(t(ddindx).program_id);
147           a9(indx) := t(ddindx).program_update_date;
148           a10(indx) := rosetta_g_miss_num_map(t(ddindx).object_version_number);
149           a11(indx) := t(ddindx).attribute_usage_type;
150           a12(indx) := t(ddindx).attribute_usage_code;
151           a13(indx) := rosetta_g_miss_num_map(t(ddindx).attribute_id);
152           a14(indx) := t(ddindx).enabled_flag;
153           indx := indx+1;
154           if t.last =ddindx
155             then exit;
156           end if;
157           ddindx := t.next(ddindx);
158         end loop;
159       end if;
160    end if;
161   end rosetta_table_copy_out_p2;
162 
163   procedure create_attribute_usage(p_api_version_number  NUMBER
164     , p_init_msg_list  VARCHAR2
165     , p_commit  VARCHAR2
166     , p_validation_level  NUMBER
167     , x_return_status out nocopy  VARCHAR2
168     , x_msg_count out nocopy  NUMBER
169     , x_msg_data out nocopy  VARCHAR2
170     , x_attribute_usage_id out nocopy  NUMBER
171     , p7_a0  NUMBER := 0-1962.0724
172     , p7_a1  DATE := fnd_api.g_miss_date
173     , p7_a2  NUMBER := 0-1962.0724
174     , p7_a3  DATE := fnd_api.g_miss_date
175     , p7_a4  NUMBER := 0-1962.0724
176     , p7_a5  NUMBER := 0-1962.0724
177     , p7_a6  NUMBER := 0-1962.0724
178     , p7_a7  NUMBER := 0-1962.0724
179     , p7_a8  NUMBER := 0-1962.0724
180     , p7_a9  DATE := fnd_api.g_miss_date
181     , p7_a10  NUMBER := 0-1962.0724
182     , p7_a11  VARCHAR2 := fnd_api.g_miss_char
183     , p7_a12  VARCHAR2 := fnd_api.g_miss_char
184     , p7_a13  NUMBER := 0-1962.0724
185     , p7_a14  VARCHAR2 := fnd_api.g_miss_char
186   )
187   as
188     ddp_attribute_usage_rec pv_attribute_usage_pvt.attribute_usage_rec_type;
189     ddindx binary_integer; indx binary_integer;
190   begin
191 
192     -- copy data to the local IN or IN-OUT args, if any
193 
194 
195 
196 
197 
198 
199 
200     ddp_attribute_usage_rec.attribute_usage_id := rosetta_g_miss_num_map(p7_a0);
201     ddp_attribute_usage_rec.last_update_date := rosetta_g_miss_date_in_map(p7_a1);
202     ddp_attribute_usage_rec.last_updated_by := rosetta_g_miss_num_map(p7_a2);
203     ddp_attribute_usage_rec.creation_date := rosetta_g_miss_date_in_map(p7_a3);
204     ddp_attribute_usage_rec.created_by := rosetta_g_miss_num_map(p7_a4);
205     ddp_attribute_usage_rec.last_update_login := rosetta_g_miss_num_map(p7_a5);
206     ddp_attribute_usage_rec.request_id := rosetta_g_miss_num_map(p7_a6);
207     ddp_attribute_usage_rec.program_application_id := rosetta_g_miss_num_map(p7_a7);
208     ddp_attribute_usage_rec.program_id := rosetta_g_miss_num_map(p7_a8);
209     ddp_attribute_usage_rec.program_update_date := rosetta_g_miss_date_in_map(p7_a9);
210     ddp_attribute_usage_rec.object_version_number := rosetta_g_miss_num_map(p7_a10);
211     ddp_attribute_usage_rec.attribute_usage_type := p7_a11;
212     ddp_attribute_usage_rec.attribute_usage_code := p7_a12;
213     ddp_attribute_usage_rec.attribute_id := rosetta_g_miss_num_map(p7_a13);
214     ddp_attribute_usage_rec.enabled_flag := p7_a14;
215 
216 
217     -- here's the delegated call to the old PL/SQL routine
218     pv_attribute_usage_pvt.create_attribute_usage(p_api_version_number,
219       p_init_msg_list,
220       p_commit,
221       p_validation_level,
222       x_return_status,
223       x_msg_count,
224       x_msg_data,
225       ddp_attribute_usage_rec,
226       x_attribute_usage_id);
227 
228     -- copy data back from the local OUT or IN-OUT args, if any
229 
230 
231 
232 
233 
234 
235 
236 
237   end;
238 
239   procedure update_attribute_usage(p_api_version_number  NUMBER
240     , p_init_msg_list  VARCHAR2
241     , p_commit  VARCHAR2
242     , p_validation_level  NUMBER
243     , x_return_status out nocopy  VARCHAR2
244     , x_msg_count out nocopy  NUMBER
245     , x_msg_data out nocopy  VARCHAR2
246     , x_object_version_number out nocopy  NUMBER
247     , p7_a0  NUMBER := 0-1962.0724
248     , p7_a1  DATE := fnd_api.g_miss_date
249     , p7_a2  NUMBER := 0-1962.0724
250     , p7_a3  DATE := fnd_api.g_miss_date
251     , p7_a4  NUMBER := 0-1962.0724
252     , p7_a5  NUMBER := 0-1962.0724
253     , p7_a6  NUMBER := 0-1962.0724
254     , p7_a7  NUMBER := 0-1962.0724
255     , p7_a8  NUMBER := 0-1962.0724
256     , p7_a9  DATE := fnd_api.g_miss_date
257     , p7_a10  NUMBER := 0-1962.0724
258     , p7_a11  VARCHAR2 := fnd_api.g_miss_char
259     , p7_a12  VARCHAR2 := fnd_api.g_miss_char
260     , p7_a13  NUMBER := 0-1962.0724
261     , p7_a14  VARCHAR2 := fnd_api.g_miss_char
262   )
263   as
264     ddp_attribute_usage_rec pv_attribute_usage_pvt.attribute_usage_rec_type;
265     ddindx binary_integer; indx binary_integer;
266   begin
267 
268     -- copy data to the local IN or IN-OUT args, if any
269 
270 
271 
272 
273 
274 
275 
276     ddp_attribute_usage_rec.attribute_usage_id := rosetta_g_miss_num_map(p7_a0);
277     ddp_attribute_usage_rec.last_update_date := rosetta_g_miss_date_in_map(p7_a1);
278     ddp_attribute_usage_rec.last_updated_by := rosetta_g_miss_num_map(p7_a2);
279     ddp_attribute_usage_rec.creation_date := rosetta_g_miss_date_in_map(p7_a3);
280     ddp_attribute_usage_rec.created_by := rosetta_g_miss_num_map(p7_a4);
281     ddp_attribute_usage_rec.last_update_login := rosetta_g_miss_num_map(p7_a5);
282     ddp_attribute_usage_rec.request_id := rosetta_g_miss_num_map(p7_a6);
283     ddp_attribute_usage_rec.program_application_id := rosetta_g_miss_num_map(p7_a7);
284     ddp_attribute_usage_rec.program_id := rosetta_g_miss_num_map(p7_a8);
285     ddp_attribute_usage_rec.program_update_date := rosetta_g_miss_date_in_map(p7_a9);
286     ddp_attribute_usage_rec.object_version_number := rosetta_g_miss_num_map(p7_a10);
287     ddp_attribute_usage_rec.attribute_usage_type := p7_a11;
288     ddp_attribute_usage_rec.attribute_usage_code := p7_a12;
289     ddp_attribute_usage_rec.attribute_id := rosetta_g_miss_num_map(p7_a13);
290     ddp_attribute_usage_rec.enabled_flag := p7_a14;
291 
292 
293     -- here's the delegated call to the old PL/SQL routine
294     pv_attribute_usage_pvt.update_attribute_usage(p_api_version_number,
295       p_init_msg_list,
296       p_commit,
297       p_validation_level,
298       x_return_status,
299       x_msg_count,
300       x_msg_data,
301       ddp_attribute_usage_rec,
302       x_object_version_number);
303 
304     -- copy data back from the local OUT or IN-OUT args, if any
305 
306 
307 
308 
309 
310 
311 
312 
313   end;
314 
315   procedure validate_attribute_usage(p_api_version_number  NUMBER
316     , p_init_msg_list  VARCHAR2
317     , p_validation_level  NUMBER
318     , p_validation_mode  VARCHAR2
319     , x_return_status out nocopy  VARCHAR2
320     , x_msg_count out nocopy  NUMBER
321     , x_msg_data out nocopy  VARCHAR2
322     , p4_a0  NUMBER := 0-1962.0724
323     , p4_a1  DATE := fnd_api.g_miss_date
324     , p4_a2  NUMBER := 0-1962.0724
325     , p4_a3  DATE := fnd_api.g_miss_date
326     , p4_a4  NUMBER := 0-1962.0724
327     , p4_a5  NUMBER := 0-1962.0724
328     , p4_a6  NUMBER := 0-1962.0724
329     , p4_a7  NUMBER := 0-1962.0724
330     , p4_a8  NUMBER := 0-1962.0724
331     , p4_a9  DATE := fnd_api.g_miss_date
332     , p4_a10  NUMBER := 0-1962.0724
333     , p4_a11  VARCHAR2 := fnd_api.g_miss_char
334     , p4_a12  VARCHAR2 := fnd_api.g_miss_char
335     , p4_a13  NUMBER := 0-1962.0724
336     , p4_a14  VARCHAR2 := fnd_api.g_miss_char
337   )
338   as
339     ddp_attribute_usage_rec pv_attribute_usage_pvt.attribute_usage_rec_type;
340     ddindx binary_integer; indx binary_integer;
341   begin
342 
343     -- copy data to the local IN or IN-OUT args, if any
344 
345 
346 
347 
348     ddp_attribute_usage_rec.attribute_usage_id := rosetta_g_miss_num_map(p4_a0);
349     ddp_attribute_usage_rec.last_update_date := rosetta_g_miss_date_in_map(p4_a1);
353     ddp_attribute_usage_rec.last_update_login := rosetta_g_miss_num_map(p4_a5);
350     ddp_attribute_usage_rec.last_updated_by := rosetta_g_miss_num_map(p4_a2);
351     ddp_attribute_usage_rec.creation_date := rosetta_g_miss_date_in_map(p4_a3);
352     ddp_attribute_usage_rec.created_by := rosetta_g_miss_num_map(p4_a4);
354     ddp_attribute_usage_rec.request_id := rosetta_g_miss_num_map(p4_a6);
355     ddp_attribute_usage_rec.program_application_id := rosetta_g_miss_num_map(p4_a7);
356     ddp_attribute_usage_rec.program_id := rosetta_g_miss_num_map(p4_a8);
357     ddp_attribute_usage_rec.program_update_date := rosetta_g_miss_date_in_map(p4_a9);
358     ddp_attribute_usage_rec.object_version_number := rosetta_g_miss_num_map(p4_a10);
359     ddp_attribute_usage_rec.attribute_usage_type := p4_a11;
360     ddp_attribute_usage_rec.attribute_usage_code := p4_a12;
361     ddp_attribute_usage_rec.attribute_id := rosetta_g_miss_num_map(p4_a13);
362     ddp_attribute_usage_rec.enabled_flag := p4_a14;
363 
364 
365 
366 
367     -- here's the delegated call to the old PL/SQL routine
368     pv_attribute_usage_pvt.validate_attribute_usage(p_api_version_number,
369       p_init_msg_list,
370       p_validation_level,
371       p_validation_mode,
372       ddp_attribute_usage_rec,
373       x_return_status,
374       x_msg_count,
375       x_msg_data);
376 
377     -- copy data back from the local OUT or IN-OUT args, if any
378 
379 
380 
381 
382 
383 
384 
385   end;
386 
387   procedure check_attr_usage_items(p_validation_mode  VARCHAR2
388     , x_return_status out nocopy  VARCHAR2
389     , p0_a0  NUMBER := 0-1962.0724
390     , p0_a1  DATE := fnd_api.g_miss_date
391     , p0_a2  NUMBER := 0-1962.0724
392     , p0_a3  DATE := fnd_api.g_miss_date
393     , p0_a4  NUMBER := 0-1962.0724
394     , p0_a5  NUMBER := 0-1962.0724
395     , p0_a6  NUMBER := 0-1962.0724
396     , p0_a7  NUMBER := 0-1962.0724
397     , p0_a8  NUMBER := 0-1962.0724
398     , p0_a9  DATE := fnd_api.g_miss_date
399     , p0_a10  NUMBER := 0-1962.0724
400     , p0_a11  VARCHAR2 := fnd_api.g_miss_char
401     , p0_a12  VARCHAR2 := fnd_api.g_miss_char
402     , p0_a13  NUMBER := 0-1962.0724
403     , p0_a14  VARCHAR2 := fnd_api.g_miss_char
404   )
405   as
406     ddp_attribute_usage_rec pv_attribute_usage_pvt.attribute_usage_rec_type;
407     ddindx binary_integer; indx binary_integer;
408   begin
409 
410     -- copy data to the local IN or IN-OUT args, if any
411     ddp_attribute_usage_rec.attribute_usage_id := rosetta_g_miss_num_map(p0_a0);
412     ddp_attribute_usage_rec.last_update_date := rosetta_g_miss_date_in_map(p0_a1);
413     ddp_attribute_usage_rec.last_updated_by := rosetta_g_miss_num_map(p0_a2);
414     ddp_attribute_usage_rec.creation_date := rosetta_g_miss_date_in_map(p0_a3);
415     ddp_attribute_usage_rec.created_by := rosetta_g_miss_num_map(p0_a4);
416     ddp_attribute_usage_rec.last_update_login := rosetta_g_miss_num_map(p0_a5);
417     ddp_attribute_usage_rec.request_id := rosetta_g_miss_num_map(p0_a6);
418     ddp_attribute_usage_rec.program_application_id := rosetta_g_miss_num_map(p0_a7);
419     ddp_attribute_usage_rec.program_id := rosetta_g_miss_num_map(p0_a8);
420     ddp_attribute_usage_rec.program_update_date := rosetta_g_miss_date_in_map(p0_a9);
421     ddp_attribute_usage_rec.object_version_number := rosetta_g_miss_num_map(p0_a10);
422     ddp_attribute_usage_rec.attribute_usage_type := p0_a11;
423     ddp_attribute_usage_rec.attribute_usage_code := p0_a12;
424     ddp_attribute_usage_rec.attribute_id := rosetta_g_miss_num_map(p0_a13);
425     ddp_attribute_usage_rec.enabled_flag := p0_a14;
426 
427 
428 
429     -- here's the delegated call to the old PL/SQL routine
430     pv_attribute_usage_pvt.check_attr_usage_items(ddp_attribute_usage_rec,
431       p_validation_mode,
432       x_return_status);
433 
434     -- copy data back from the local OUT or IN-OUT args, if any
435 
436 
437   end;
438 
439   procedure validate_attr_usage_rec(p_api_version_number  NUMBER
440     , p_init_msg_list  VARCHAR2
441     , x_return_status out nocopy  VARCHAR2
442     , x_msg_count out nocopy  NUMBER
443     , x_msg_data out nocopy  VARCHAR2
444     , p_validation_mode  VARCHAR2
445     , p5_a0  NUMBER := 0-1962.0724
446     , p5_a1  DATE := fnd_api.g_miss_date
447     , p5_a2  NUMBER := 0-1962.0724
448     , p5_a3  DATE := fnd_api.g_miss_date
449     , p5_a4  NUMBER := 0-1962.0724
450     , p5_a5  NUMBER := 0-1962.0724
451     , p5_a6  NUMBER := 0-1962.0724
452     , p5_a7  NUMBER := 0-1962.0724
453     , p5_a8  NUMBER := 0-1962.0724
454     , p5_a9  DATE := fnd_api.g_miss_date
455     , p5_a10  NUMBER := 0-1962.0724
456     , p5_a11  VARCHAR2 := fnd_api.g_miss_char
457     , p5_a12  VARCHAR2 := fnd_api.g_miss_char
458     , p5_a13  NUMBER := 0-1962.0724
459     , p5_a14  VARCHAR2 := fnd_api.g_miss_char
460   )
461   as
462     ddp_attribute_usage_rec pv_attribute_usage_pvt.attribute_usage_rec_type;
463     ddindx binary_integer; indx binary_integer;
464   begin
465 
466     -- copy data to the local IN or IN-OUT args, if any
467 
468 
469 
470 
471 
472     ddp_attribute_usage_rec.attribute_usage_id := rosetta_g_miss_num_map(p5_a0);
473     ddp_attribute_usage_rec.last_update_date := rosetta_g_miss_date_in_map(p5_a1);
474     ddp_attribute_usage_rec.last_updated_by := rosetta_g_miss_num_map(p5_a2);
475     ddp_attribute_usage_rec.creation_date := rosetta_g_miss_date_in_map(p5_a3);
476     ddp_attribute_usage_rec.created_by := rosetta_g_miss_num_map(p5_a4);
477     ddp_attribute_usage_rec.last_update_login := rosetta_g_miss_num_map(p5_a5);
478     ddp_attribute_usage_rec.request_id := rosetta_g_miss_num_map(p5_a6);
479     ddp_attribute_usage_rec.program_application_id := rosetta_g_miss_num_map(p5_a7);
480     ddp_attribute_usage_rec.program_id := rosetta_g_miss_num_map(p5_a8);
481     ddp_attribute_usage_rec.program_update_date := rosetta_g_miss_date_in_map(p5_a9);
482     ddp_attribute_usage_rec.object_version_number := rosetta_g_miss_num_map(p5_a10);
483     ddp_attribute_usage_rec.attribute_usage_type := p5_a11;
484     ddp_attribute_usage_rec.attribute_usage_code := p5_a12;
485     ddp_attribute_usage_rec.attribute_id := rosetta_g_miss_num_map(p5_a13);
486     ddp_attribute_usage_rec.enabled_flag := p5_a14;
487 
488 
489     -- here's the delegated call to the old PL/SQL routine
490     pv_attribute_usage_pvt.validate_attr_usage_rec(p_api_version_number,
491       p_init_msg_list,
492       x_return_status,
493       x_msg_count,
494       x_msg_data,
495       ddp_attribute_usage_rec,
496       p_validation_mode);
497 
498     -- copy data back from the local OUT or IN-OUT args, if any
499 
500 
501 
502 
503 
504 
505   end;
506 
507 end pv_attribute_usage_pvt_w;