DBA Data[Home] [Help]

PACKAGE BODY: APPS.AMV_STOCK_PVT_W

Source


1 package body amv_stock_pvt_w as
2   /* $Header: amvwstkb.pls 120.2 2005/06/30 08:26 appldev 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_p6(t out nocopy amv_stock_pvt.amv_tkr_varray_type, a0 JTF_VARCHAR2_TABLE_100
23     , a1 JTF_NUMBER_TABLE
24     ) as
25     ddindx binary_integer; indx binary_integer;
26   begin
27   if a0 is not null and a0.count > 0 then
28       if a0.count > 0 then
29         indx := a0.first;
30         ddindx := 1;
31         while true loop
32           t(ddindx).key_id := a0(indx);
33           t(ddindx).stock_id := rosetta_g_miss_num_map(a1(indx));
34           ddindx := ddindx+1;
35           if a0.last =indx
36             then exit;
37           end if;
38           indx := a0.next(indx);
39         end loop;
40       end if;
41    end if;
42   end rosetta_table_copy_in_p6;
43   procedure rosetta_table_copy_out_p6(t amv_stock_pvt.amv_tkr_varray_type, a0 out nocopy JTF_VARCHAR2_TABLE_100
44     , a1 out nocopy JTF_NUMBER_TABLE
45     ) as
46     ddindx binary_integer; indx binary_integer;
47   begin
48   if t is null or t.count = 0 then
49     a0 := JTF_VARCHAR2_TABLE_100();
50     a1 := JTF_NUMBER_TABLE();
51   else
52       a0 := JTF_VARCHAR2_TABLE_100();
53       a1 := JTF_NUMBER_TABLE();
54       if t.count > 0 then
55         a0.extend(t.count);
56         a1.extend(t.count);
57         ddindx := t.first;
58         indx := 1;
59         while true loop
60           a0(indx) := t(ddindx).key_id;
61           a1(indx) := rosetta_g_miss_num_map(t(ddindx).stock_id);
62           indx := indx+1;
63           if t.last =ddindx
64             then exit;
65           end if;
66           ddindx := t.next(ddindx);
67         end loop;
68       end if;
69    end if;
70   end rosetta_table_copy_out_p6;
71 
72   procedure rosetta_table_copy_in_p7(t out nocopy amv_stock_pvt.amv_sym_varray_type, a0 JTF_NUMBER_TABLE
73     , a1 JTF_VARCHAR2_TABLE_100
74     , a2 JTF_VARCHAR2_TABLE_100
75     ) as
76     ddindx binary_integer; indx binary_integer;
77   begin
78   if a0 is not null and a0.count > 0 then
79       if a0.count > 0 then
80         indx := a0.first;
81         ddindx := 1;
82         while true loop
83           t(ddindx).stock_id := rosetta_g_miss_num_map(a0(indx));
84           t(ddindx).symbol := a1(indx);
85           t(ddindx).exchange := a2(indx);
86           ddindx := ddindx+1;
87           if a0.last =indx
88             then exit;
89           end if;
90           indx := a0.next(indx);
91         end loop;
92       end if;
93    end if;
94   end rosetta_table_copy_in_p7;
95   procedure rosetta_table_copy_out_p7(t amv_stock_pvt.amv_sym_varray_type, a0 out nocopy JTF_NUMBER_TABLE
96     , a1 out nocopy JTF_VARCHAR2_TABLE_100
97     , a2 out nocopy JTF_VARCHAR2_TABLE_100
98     ) as
99     ddindx binary_integer; indx binary_integer;
100   begin
101   if t is null or t.count = 0 then
102     a0 := JTF_NUMBER_TABLE();
103     a1 := JTF_VARCHAR2_TABLE_100();
104     a2 := JTF_VARCHAR2_TABLE_100();
105   else
106       a0 := JTF_NUMBER_TABLE();
107       a1 := JTF_VARCHAR2_TABLE_100();
108       a2 := JTF_VARCHAR2_TABLE_100();
109       if t.count > 0 then
110         a0.extend(t.count);
111         a1.extend(t.count);
112         a2.extend(t.count);
113         ddindx := t.first;
114         indx := 1;
115         while true loop
116           a0(indx) := rosetta_g_miss_num_map(t(ddindx).stock_id);
117           a1(indx) := t(ddindx).symbol;
118           a2(indx) := t(ddindx).exchange;
119           indx := indx+1;
120           if t.last =ddindx
121             then exit;
122           end if;
123           ddindx := t.next(ddindx);
124         end loop;
125       end if;
126    end if;
127   end rosetta_table_copy_out_p7;
128 
129   procedure rosetta_table_copy_in_p8(t out nocopy amv_stock_pvt.amv_stk_varray_type, a0 JTF_NUMBER_TABLE
130     , a1 JTF_VARCHAR2_TABLE_100
131     , a2 JTF_VARCHAR2_TABLE_300
132     , a3 JTF_NUMBER_TABLE
133     , a4 JTF_NUMBER_TABLE
134     ) as
135     ddindx binary_integer; indx binary_integer;
136   begin
137   if a0 is not null and a0.count > 0 then
138       if a0.count > 0 then
139         indx := a0.first;
140         ddindx := 1;
141         while true loop
142           t(ddindx).stock_id := rosetta_g_miss_num_map(a0(indx));
143           t(ddindx).symbol := a1(indx);
144           t(ddindx).description := a2(indx);
145           t(ddindx).price := rosetta_g_miss_num_map(a3(indx));
146           t(ddindx).change := rosetta_g_miss_num_map(a4(indx));
147           ddindx := ddindx+1;
148           if a0.last =indx
149             then exit;
150           end if;
151           indx := a0.next(indx);
152         end loop;
153       end if;
154    end if;
155   end rosetta_table_copy_in_p8;
156   procedure rosetta_table_copy_out_p8(t amv_stock_pvt.amv_stk_varray_type, a0 out nocopy JTF_NUMBER_TABLE
157     , a1 out nocopy JTF_VARCHAR2_TABLE_100
158     , a2 out nocopy JTF_VARCHAR2_TABLE_300
159     , a3 out nocopy JTF_NUMBER_TABLE
160     , a4 out nocopy JTF_NUMBER_TABLE
161     ) as
162     ddindx binary_integer; indx binary_integer;
163   begin
164   if t is null or t.count = 0 then
165     a0 := JTF_NUMBER_TABLE();
166     a1 := JTF_VARCHAR2_TABLE_100();
167     a2 := JTF_VARCHAR2_TABLE_300();
168     a3 := JTF_NUMBER_TABLE();
169     a4 := JTF_NUMBER_TABLE();
170   else
171       a0 := JTF_NUMBER_TABLE();
172       a1 := JTF_VARCHAR2_TABLE_100();
173       a2 := JTF_VARCHAR2_TABLE_300();
174       a3 := JTF_NUMBER_TABLE();
175       a4 := JTF_NUMBER_TABLE();
176       if t.count > 0 then
177         a0.extend(t.count);
178         a1.extend(t.count);
179         a2.extend(t.count);
180         a3.extend(t.count);
181         a4.extend(t.count);
182         ddindx := t.first;
183         indx := 1;
184         while true loop
185           a0(indx) := rosetta_g_miss_num_map(t(ddindx).stock_id);
186           a1(indx) := t(ddindx).symbol;
187           a2(indx) := t(ddindx).description;
188           a3(indx) := rosetta_g_miss_num_map(t(ddindx).price);
189           a4(indx) := rosetta_g_miss_num_map(t(ddindx).change);
190           indx := indx+1;
191           if t.last =ddindx
192             then exit;
193           end if;
194           ddindx := t.next(ddindx);
195         end loop;
196       end if;
197    end if;
198   end rosetta_table_copy_out_p8;
199 
200   procedure rosetta_table_copy_in_p9(t out nocopy amv_stock_pvt.amv_news_varray_type, a0 JTF_VARCHAR2_TABLE_100
201     , a1 JTF_VARCHAR2_TABLE_2000
202     , a2 JTF_VARCHAR2_TABLE_2000
203     , a3 JTF_VARCHAR2_TABLE_300
204     , a4 JTF_DATE_TABLE
205     ) as
206     ddindx binary_integer; indx binary_integer;
207   begin
208   if a0 is not null and a0.count > 0 then
209       if a0.count > 0 then
210         indx := a0.first;
211         ddindx := 1;
212         while true loop
213           t(ddindx).key_id := a0(indx);
214           t(ddindx).news_url := a1(indx);
215           t(ddindx).title := a2(indx);
216           t(ddindx).provider := a3(indx);
217           t(ddindx).date_time := rosetta_g_miss_date_in_map(a4(indx));
218           ddindx := ddindx+1;
219           if a0.last =indx
220             then exit;
221           end if;
222           indx := a0.next(indx);
223         end loop;
224       end if;
225    end if;
226   end rosetta_table_copy_in_p9;
227   procedure rosetta_table_copy_out_p9(t amv_stock_pvt.amv_news_varray_type, a0 out nocopy JTF_VARCHAR2_TABLE_100
228     , a1 out nocopy JTF_VARCHAR2_TABLE_2000
229     , a2 out nocopy JTF_VARCHAR2_TABLE_2000
230     , a3 out nocopy JTF_VARCHAR2_TABLE_300
231     , a4 out nocopy JTF_DATE_TABLE
232     ) as
233     ddindx binary_integer; indx binary_integer;
234   begin
235   if t is null or t.count = 0 then
236     a0 := JTF_VARCHAR2_TABLE_100();
237     a1 := JTF_VARCHAR2_TABLE_2000();
238     a2 := JTF_VARCHAR2_TABLE_2000();
239     a3 := JTF_VARCHAR2_TABLE_300();
240     a4 := JTF_DATE_TABLE();
241   else
242       a0 := JTF_VARCHAR2_TABLE_100();
243       a1 := JTF_VARCHAR2_TABLE_2000();
244       a2 := JTF_VARCHAR2_TABLE_2000();
245       a3 := JTF_VARCHAR2_TABLE_300();
246       a4 := JTF_DATE_TABLE();
247       if t.count > 0 then
248         a0.extend(t.count);
249         a1.extend(t.count);
250         a2.extend(t.count);
251         a3.extend(t.count);
252         a4.extend(t.count);
253         ddindx := t.first;
254         indx := 1;
255         while true loop
256           a0(indx) := t(ddindx).key_id;
257           a1(indx) := t(ddindx).news_url;
258           a2(indx) := t(ddindx).title;
259           a3(indx) := t(ddindx).provider;
260           a4(indx) := t(ddindx).date_time;
261           indx := indx+1;
262           if t.last =ddindx
263             then exit;
264           end if;
265           ddindx := t.next(ddindx);
266         end loop;
267       end if;
268    end if;
269   end rosetta_table_copy_out_p9;
270 
271   procedure rosetta_table_copy_in_p10(t out nocopy amv_stock_pvt.amv_char_varray_type, a0 JTF_VARCHAR2_TABLE_400) as
272     ddindx binary_integer; indx binary_integer;
273   begin
274   if a0 is not null and a0.count > 0 then
275       if a0.count > 0 then
276         indx := a0.first;
277         ddindx := 1;
278         while true loop
279           t(ddindx) := a0(indx);
280           ddindx := ddindx+1;
281           if a0.last =indx
282             then exit;
283           end if;
284           indx := a0.next(indx);
285         end loop;
286       end if;
287    end if;
288   end rosetta_table_copy_in_p10;
289   procedure rosetta_table_copy_out_p10(t amv_stock_pvt.amv_char_varray_type, a0 out nocopy JTF_VARCHAR2_TABLE_400) as
290     ddindx binary_integer; indx binary_integer;
291   begin
292   if t is null or t.count = 0 then
293     a0 := JTF_VARCHAR2_TABLE_400();
294   else
295       a0 := JTF_VARCHAR2_TABLE_400();
296       if t.count > 0 then
297         a0.extend(t.count);
298         ddindx := t.first;
299         indx := 1;
300         while true loop
301           a0(indx) := t(ddindx);
302           indx := indx+1;
303           if t.last =ddindx
304             then exit;
305           end if;
306           ddindx := t.next(ddindx);
307         end loop;
308       end if;
309    end if;
310   end rosetta_table_copy_out_p10;
311 
312   procedure rosetta_table_copy_in_p11(t out nocopy amv_stock_pvt.amv_num_varray_type, a0 JTF_NUMBER_TABLE) as
313     ddindx binary_integer; indx binary_integer;
314   begin
315   if a0 is not null and a0.count > 0 then
316       if a0.count > 0 then
317         indx := a0.first;
318         ddindx := 1;
319         while true loop
320           t(ddindx) := rosetta_g_miss_num_map(a0(indx));
321           ddindx := ddindx+1;
322           if a0.last =indx
323             then exit;
324           end if;
325           indx := a0.next(indx);
326         end loop;
327       end if;
328    end if;
329   end rosetta_table_copy_in_p11;
330   procedure rosetta_table_copy_out_p11(t amv_stock_pvt.amv_num_varray_type, a0 out nocopy JTF_NUMBER_TABLE) as
331     ddindx binary_integer; indx binary_integer;
332   begin
333   if t is null or t.count = 0 then
334     a0 := JTF_NUMBER_TABLE();
335   else
336       a0 := JTF_NUMBER_TABLE();
337       if t.count > 0 then
338         a0.extend(t.count);
339         ddindx := t.first;
340         indx := 1;
341         while true loop
342           a0(indx) := rosetta_g_miss_num_map(t(ddindx));
343           indx := indx+1;
344           if t.last =ddindx
345             then exit;
346           end if;
347           ddindx := t.next(ddindx);
348         end loop;
349       end if;
350    end if;
351   end rosetta_table_copy_out_p11;
352 
353   procedure get_userticker(p_api_version  NUMBER
354     , p_init_msg_list  VARCHAR2
355     , p_validation_level  NUMBER
356     , x_return_status out nocopy  VARCHAR2
357     , x_msg_count out nocopy  NUMBER
358     , x_msg_data out nocopy  VARCHAR2
359     , p_user_id  NUMBER
360     , p_distinct_stocks  VARCHAR2
361     , p_sort_order  VARCHAR2
362     , p9_a0 out nocopy JTF_NUMBER_TABLE
363     , p9_a1 out nocopy JTF_VARCHAR2_TABLE_100
364     , p9_a2 out nocopy JTF_VARCHAR2_TABLE_300
365     , p9_a3 out nocopy JTF_NUMBER_TABLE
366     , p9_a4 out nocopy JTF_NUMBER_TABLE
367   )
368 
369   as
370     ddx_stkpr_array amv_stock_pvt.amv_stk_varray_type;
371     ddindx binary_integer; indx binary_integer;
372   begin
373 
374     -- copy data to the local IN or IN-OUT args, if any
375 
376 
377 
378 
379 
380 
381 
382 
383 
384 
385     -- here's the delegated call to the old PL/SQL routine
386     amv_stock_pvt.get_userticker(p_api_version,
387       p_init_msg_list,
388       p_validation_level,
389       x_return_status,
390       x_msg_count,
391       x_msg_data,
392       p_user_id,
393       p_distinct_stocks,
394       p_sort_order,
395       ddx_stkpr_array);
396 
397     -- copy data back from the local variables to OUT or IN-OUT args, if any
398 
399 
400 
401 
402 
403 
404 
405 
406 
407     amv_stock_pvt_w.rosetta_table_copy_out_p8(ddx_stkpr_array, p9_a0
408       , p9_a1
409       , p9_a2
410       , p9_a3
411       , p9_a4
412       );
413   end;
414 
415   procedure get_stockdetails(p_api_version  NUMBER
416     , p_init_msg_list  VARCHAR2
417     , p_validation_level  NUMBER
418     , x_return_status out nocopy  VARCHAR2
419     , x_msg_count out nocopy  NUMBER
420     , x_msg_data out nocopy  VARCHAR2
421     , p_symbols  VARCHAR2
422     , p7_a0 out nocopy JTF_NUMBER_TABLE
423     , p7_a1 out nocopy JTF_VARCHAR2_TABLE_100
424     , p7_a2 out nocopy JTF_VARCHAR2_TABLE_300
425     , p7_a3 out nocopy JTF_NUMBER_TABLE
426     , p7_a4 out nocopy JTF_NUMBER_TABLE
427   )
428 
429   as
430     ddx_stkpr_array amv_stock_pvt.amv_stk_varray_type;
431     ddindx binary_integer; indx binary_integer;
432   begin
433 
434     -- copy data to the local IN or IN-OUT args, if any
435 
436 
437 
438 
439 
440 
441 
442 
443     -- here's the delegated call to the old PL/SQL routine
444     amv_stock_pvt.get_stockdetails(p_api_version,
445       p_init_msg_list,
446       p_validation_level,
447       x_return_status,
448       x_msg_count,
449       x_msg_data,
450       p_symbols,
451       ddx_stkpr_array);
452 
453     -- copy data back from the local variables to OUT or IN-OUT args, if any
454 
455 
456 
457 
458 
459 
460 
461     amv_stock_pvt_w.rosetta_table_copy_out_p8(ddx_stkpr_array, p7_a0
462       , p7_a1
463       , p7_a2
464       , p7_a3
465       , p7_a4
466       );
467   end;
468 
469   procedure get_vendormissedstocks(p_api_version  NUMBER
470     , p_init_msg_list  VARCHAR2
471     , p_validation_level  NUMBER
472     , x_return_status out nocopy  VARCHAR2
473     , x_msg_count out nocopy  NUMBER
474     , x_msg_data out nocopy  VARCHAR2
475     , p_vendor_id  NUMBER
476     , p_start_index  NUMBER
477     , p_batch_size  NUMBER
478     , p9_a0 out nocopy JTF_NUMBER_TABLE
479     , p9_a1 out nocopy JTF_VARCHAR2_TABLE_100
480     , p9_a2 out nocopy JTF_VARCHAR2_TABLE_100
481   )
482 
483   as
484     ddx_stocks_array amv_stock_pvt.amv_sym_varray_type;
485     ddindx binary_integer; indx binary_integer;
486   begin
487 
488     -- copy data to the local IN or IN-OUT args, if any
489 
490 
491 
492 
493 
494 
495 
496 
497 
498 
499     -- here's the delegated call to the old PL/SQL routine
500     amv_stock_pvt.get_vendormissedstocks(p_api_version,
501       p_init_msg_list,
502       p_validation_level,
503       x_return_status,
504       x_msg_count,
505       x_msg_data,
506       p_vendor_id,
507       p_start_index,
508       p_batch_size,
509       ddx_stocks_array);
510 
511     -- copy data back from the local variables to OUT or IN-OUT args, if any
512 
513 
514 
515 
516 
517 
518 
519 
520 
521     amv_stock_pvt_w.rosetta_table_copy_out_p7(ddx_stocks_array, p9_a0
522       , p9_a1
523       , p9_a2
524       );
525   end;
526 
527   procedure insert_stockvendorkeys(p_api_version  NUMBER
528     , p_init_msg_list  VARCHAR2
529     , p_commit  VARCHAR2
530     , p_validation_level  NUMBER
531     , x_return_status out nocopy  VARCHAR2
532     , x_msg_count out nocopy  NUMBER
533     , x_msg_data out nocopy  VARCHAR2
534     , p_vendor_id  NUMBER
535     , p8_a0  VARCHAR2 := fnd_api.g_miss_char
536     , p8_a1  NUMBER := 0-1962.0724
537   )
538 
539   as
540     ddp_ticker_rec amv_stock_pvt.amv_tkr_obj_type;
541     ddindx binary_integer; indx binary_integer;
542   begin
543 
544     -- copy data to the local IN or IN-OUT args, if any
545 
546 
547 
548 
549 
550 
551 
552 
553     ddp_ticker_rec.key_id := p8_a0;
554     ddp_ticker_rec.stock_id := rosetta_g_miss_num_map(p8_a1);
555 
556     -- here's the delegated call to the old PL/SQL routine
557     amv_stock_pvt.insert_stockvendorkeys(p_api_version,
558       p_init_msg_list,
559       p_commit,
560       p_validation_level,
561       x_return_status,
562       x_msg_count,
563       x_msg_data,
564       p_vendor_id,
565       ddp_ticker_rec);
566 
567     -- copy data back from the local variables to OUT or IN-OUT args, if any
568 
569 
570 
571 
572 
573 
574 
575 
576   end;
577 
578   procedure get_userselectedkeys(p_api_version  NUMBER
579     , p_init_msg_list  VARCHAR2
580     , p_validation_level  NUMBER
581     , x_return_status out nocopy  VARCHAR2
582     , x_msg_count out nocopy  NUMBER
583     , x_msg_data out nocopy  VARCHAR2
584     , p_vendor_id  NUMBER
585     , p_all_keys  VARCHAR2
586     , x_keys_array out nocopy JTF_VARCHAR2_TABLE_400
587   )
588 
589   as
590     ddx_keys_array amv_stock_pvt.amv_char_varray_type;
591     ddindx binary_integer; indx binary_integer;
592   begin
593 
594     -- copy data to the local IN or IN-OUT args, if any
595 
596 
597 
598 
599 
600 
601 
602 
603 
604     -- here's the delegated call to the old PL/SQL routine
605     amv_stock_pvt.get_userselectedkeys(p_api_version,
606       p_init_msg_list,
607       p_validation_level,
608       x_return_status,
609       x_msg_count,
610       x_msg_data,
611       p_vendor_id,
612       p_all_keys,
613       ddx_keys_array);
614 
615     -- copy data back from the local variables to OUT or IN-OUT args, if any
616 
617 
618 
619 
620 
621 
622 
623 
624     amv_stock_pvt_w.rosetta_table_copy_out_p10(ddx_keys_array, x_keys_array);
625   end;
626 
627   procedure insert_vendornews(p_api_version  NUMBER
628     , p_init_msg_list  VARCHAR2
629     , p_commit  VARCHAR2
630     , p_validation_level  NUMBER
631     , x_return_status out nocopy  VARCHAR2
632     , x_msg_count out nocopy  NUMBER
633     , x_msg_data out nocopy  VARCHAR2
634     , p_vendor_id  NUMBER
635     , p8_a0  VARCHAR2 := fnd_api.g_miss_char
636     , p8_a1  VARCHAR2 := fnd_api.g_miss_char
637     , p8_a2  VARCHAR2 := fnd_api.g_miss_char
638     , p8_a3  VARCHAR2 := fnd_api.g_miss_char
639     , p8_a4  DATE := fnd_api.g_miss_date
640   )
641 
642   as
643     ddp_news_rec amv_stock_pvt.amv_news_obj_type;
644     ddindx binary_integer; indx binary_integer;
645   begin
646 
647     -- copy data to the local IN or IN-OUT args, if any
648 
649 
650 
651 
652 
653 
654 
655 
656     ddp_news_rec.key_id := p8_a0;
657     ddp_news_rec.news_url := p8_a1;
658     ddp_news_rec.title := p8_a2;
659     ddp_news_rec.provider := p8_a3;
660     ddp_news_rec.date_time := rosetta_g_miss_date_in_map(p8_a4);
661 
662     -- here's the delegated call to the old PL/SQL routine
663     amv_stock_pvt.insert_vendornews(p_api_version,
664       p_init_msg_list,
665       p_commit,
666       p_validation_level,
667       x_return_status,
668       x_msg_count,
669       x_msg_data,
670       p_vendor_id,
671       ddp_news_rec);
672 
673     -- copy data back from the local variables to OUT or IN-OUT args, if any
674 
675 
676 
677 
678 
679 
680 
681 
682   end;
683 
684   procedure get_companynews(p_api_version  NUMBER
685     , p_init_msg_list  VARCHAR2
686     , p_commit  VARCHAR2
687     , p_validation_level  NUMBER
688     , x_return_status out nocopy  VARCHAR2
689     , x_msg_count out nocopy  NUMBER
690     , x_msg_data out nocopy  VARCHAR2
691     , p_stock_id  NUMBER
692     , p8_a0 out nocopy JTF_VARCHAR2_TABLE_100
693     , p8_a1 out nocopy JTF_VARCHAR2_TABLE_2000
694     , p8_a2 out nocopy JTF_VARCHAR2_TABLE_2000
695     , p8_a3 out nocopy JTF_VARCHAR2_TABLE_300
696     , p8_a4 out nocopy JTF_DATE_TABLE
697   )
698 
699   as
700     ddx_news_array amv_stock_pvt.amv_news_varray_type;
701     ddindx binary_integer; indx binary_integer;
702   begin
703 
704     -- copy data to the local IN or IN-OUT args, if any
705 
706 
707 
708 
709 
710 
711 
712 
713 
714     -- here's the delegated call to the old PL/SQL routine
715     amv_stock_pvt.get_companynews(p_api_version,
716       p_init_msg_list,
717       p_commit,
718       p_validation_level,
719       x_return_status,
720       x_msg_count,
721       x_msg_data,
722       p_stock_id,
723       ddx_news_array);
724 
725     -- copy data back from the local variables to OUT or IN-OUT args, if any
726 
727 
728 
729 
730 
731 
732 
733 
734     amv_stock_pvt_w.rosetta_table_copy_out_p9(ddx_news_array, p8_a0
735       , p8_a1
736       , p8_a2
737       , p8_a3
738       , p8_a4
739       );
740   end;
741 
742 end amv_stock_pvt_w;