DBA Data[Home] [Help]

PACKAGE BODY: APPS.CN_CALC_FORMULAS_PVT_W

Source


1 package body cn_calc_formulas_pvt_w as
2   /* $Header: cnwformb.pls 120.3 2006/01/05 18:09 jxsingh ship $ */
3   procedure rosetta_table_copy_in_p3(t out nocopy cn_calc_formulas_pvt.input_tbl_type, a0 JTF_NUMBER_TABLE
4     , a1 JTF_NUMBER_TABLE
5     , a2 JTF_NUMBER_TABLE
6     , a3 JTF_NUMBER_TABLE
7     , a4 JTF_VARCHAR2_TABLE_100
8     , a5 JTF_VARCHAR2_TABLE_100
9     , a6 JTF_VARCHAR2_TABLE_100
10     , a7 JTF_VARCHAR2_TABLE_100
11     , a8 JTF_NUMBER_TABLE
12     , a9 JTF_VARCHAR2_TABLE_100
13     , a10 JTF_VARCHAR2_TABLE_100
14     ) as
15     ddindx binary_integer; indx binary_integer;
16   begin
17   if a0 is not null and a0.count > 0 then
18       if a0.count > 0 then
19         indx := a0.first;
20         ddindx := 1;
21         while true loop
22           t(ddindx).formula_input_id := a0(indx);
23           t(ddindx).calc_sql_exp_id := a1(indx);
24           t(ddindx).f_calc_sql_exp_id := a2(indx);
25           t(ddindx).rate_dim_sequence := a3(indx);
26           t(ddindx).calc_exp_name := a4(indx);
27           t(ddindx).calc_exp_status := a5(indx);
28           t(ddindx).f_calc_exp_name := a6(indx);
29           t(ddindx).f_calc_exp_status := a7(indx);
30           t(ddindx).object_version_number := a8(indx);
31           t(ddindx).cumulative_flag := a9(indx);
32           t(ddindx).split_flag := a10(indx);
33           ddindx := ddindx+1;
34           if a0.last =indx
35             then exit;
36           end if;
37           indx := a0.next(indx);
38         end loop;
39       end if;
40    end if;
41   end rosetta_table_copy_in_p3;
42   procedure rosetta_table_copy_out_p3(t cn_calc_formulas_pvt.input_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
43     , a1 out nocopy JTF_NUMBER_TABLE
44     , a2 out nocopy JTF_NUMBER_TABLE
45     , a3 out nocopy JTF_NUMBER_TABLE
46     , a4 out nocopy JTF_VARCHAR2_TABLE_100
47     , a5 out nocopy JTF_VARCHAR2_TABLE_100
48     , a6 out nocopy JTF_VARCHAR2_TABLE_100
49     , a7 out nocopy JTF_VARCHAR2_TABLE_100
50     , a8 out nocopy JTF_NUMBER_TABLE
51     , a9 out nocopy JTF_VARCHAR2_TABLE_100
52     , a10 out nocopy JTF_VARCHAR2_TABLE_100
53     ) as
54     ddindx binary_integer; indx binary_integer;
55   begin
56   if t is null or t.count = 0 then
57     a0 := JTF_NUMBER_TABLE();
58     a1 := JTF_NUMBER_TABLE();
59     a2 := JTF_NUMBER_TABLE();
60     a3 := JTF_NUMBER_TABLE();
61     a4 := JTF_VARCHAR2_TABLE_100();
62     a5 := JTF_VARCHAR2_TABLE_100();
63     a6 := JTF_VARCHAR2_TABLE_100();
64     a7 := JTF_VARCHAR2_TABLE_100();
65     a8 := JTF_NUMBER_TABLE();
66     a9 := JTF_VARCHAR2_TABLE_100();
67     a10 := JTF_VARCHAR2_TABLE_100();
68   else
69       a0 := JTF_NUMBER_TABLE();
70       a1 := JTF_NUMBER_TABLE();
71       a2 := JTF_NUMBER_TABLE();
72       a3 := JTF_NUMBER_TABLE();
73       a4 := JTF_VARCHAR2_TABLE_100();
74       a5 := JTF_VARCHAR2_TABLE_100();
75       a6 := JTF_VARCHAR2_TABLE_100();
76       a7 := JTF_VARCHAR2_TABLE_100();
77       a8 := JTF_NUMBER_TABLE();
78       a9 := JTF_VARCHAR2_TABLE_100();
79       a10 := JTF_VARCHAR2_TABLE_100();
80       if t.count > 0 then
81         a0.extend(t.count);
82         a1.extend(t.count);
83         a2.extend(t.count);
84         a3.extend(t.count);
85         a4.extend(t.count);
86         a5.extend(t.count);
87         a6.extend(t.count);
88         a7.extend(t.count);
89         a8.extend(t.count);
90         a9.extend(t.count);
91         a10.extend(t.count);
92         ddindx := t.first;
93         indx := 1;
94         while true loop
95           a0(indx) := t(ddindx).formula_input_id;
96           a1(indx) := t(ddindx).calc_sql_exp_id;
97           a2(indx) := t(ddindx).f_calc_sql_exp_id;
98           a3(indx) := t(ddindx).rate_dim_sequence;
99           a4(indx) := t(ddindx).calc_exp_name;
100           a5(indx) := t(ddindx).calc_exp_status;
101           a6(indx) := t(ddindx).f_calc_exp_name;
102           a7(indx) := t(ddindx).f_calc_exp_status;
103           a8(indx) := t(ddindx).object_version_number;
104           a9(indx) := t(ddindx).cumulative_flag;
105           a10(indx) := t(ddindx).split_flag;
106           indx := indx+1;
107           if t.last =ddindx
108             then exit;
109           end if;
110           ddindx := t.next(ddindx);
111         end loop;
112       end if;
113    end if;
114   end rosetta_table_copy_out_p3;
115 
116   procedure rosetta_table_copy_in_p4(t out nocopy cn_calc_formulas_pvt.rt_assign_tbl_type, a0 JTF_NUMBER_TABLE
117     , a1 JTF_NUMBER_TABLE
118     , a2 JTF_DATE_TABLE
119     , a3 JTF_DATE_TABLE
120     , a4 JTF_VARCHAR2_TABLE_100
121     , a5 JTF_VARCHAR2_TABLE_100
122     , a6 JTF_NUMBER_TABLE
123     ) as
124     ddindx binary_integer; indx binary_integer;
125   begin
126   if a0 is not null and a0.count > 0 then
127       if a0.count > 0 then
128         indx := a0.first;
129         ddindx := 1;
130         while true loop
131           t(ddindx).rt_formula_asgn_id := a0(indx);
132           t(ddindx).rate_schedule_id := a1(indx);
133           t(ddindx).start_date := a2(indx);
134           t(ddindx).end_date := a3(indx);
135           t(ddindx).rate_schedule_name := a4(indx);
136           t(ddindx).rate_schedule_type := a5(indx);
137           t(ddindx).object_version_number := a6(indx);
138           ddindx := ddindx+1;
139           if a0.last =indx
140             then exit;
141           end if;
142           indx := a0.next(indx);
143         end loop;
144       end if;
145    end if;
146   end rosetta_table_copy_in_p4;
147   procedure rosetta_table_copy_out_p4(t cn_calc_formulas_pvt.rt_assign_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
148     , a1 out nocopy JTF_NUMBER_TABLE
149     , a2 out nocopy JTF_DATE_TABLE
150     , a3 out nocopy JTF_DATE_TABLE
151     , a4 out nocopy JTF_VARCHAR2_TABLE_100
152     , a5 out nocopy JTF_VARCHAR2_TABLE_100
153     , a6 out nocopy JTF_NUMBER_TABLE
154     ) as
155     ddindx binary_integer; indx binary_integer;
156   begin
157   if t is null or t.count = 0 then
158     a0 := JTF_NUMBER_TABLE();
159     a1 := JTF_NUMBER_TABLE();
160     a2 := JTF_DATE_TABLE();
161     a3 := JTF_DATE_TABLE();
162     a4 := JTF_VARCHAR2_TABLE_100();
163     a5 := JTF_VARCHAR2_TABLE_100();
164     a6 := JTF_NUMBER_TABLE();
165   else
166       a0 := JTF_NUMBER_TABLE();
167       a1 := JTF_NUMBER_TABLE();
168       a2 := JTF_DATE_TABLE();
169       a3 := JTF_DATE_TABLE();
170       a4 := JTF_VARCHAR2_TABLE_100();
171       a5 := JTF_VARCHAR2_TABLE_100();
172       a6 := JTF_NUMBER_TABLE();
173       if t.count > 0 then
174         a0.extend(t.count);
175         a1.extend(t.count);
176         a2.extend(t.count);
177         a3.extend(t.count);
178         a4.extend(t.count);
179         a5.extend(t.count);
180         a6.extend(t.count);
181         ddindx := t.first;
182         indx := 1;
183         while true loop
184           a0(indx) := t(ddindx).rt_formula_asgn_id;
185           a1(indx) := t(ddindx).rate_schedule_id;
186           a2(indx) := t(ddindx).start_date;
187           a3(indx) := t(ddindx).end_date;
188           a4(indx) := t(ddindx).rate_schedule_name;
189           a5(indx) := t(ddindx).rate_schedule_type;
190           a6(indx) := t(ddindx).object_version_number;
191           indx := indx+1;
192           if t.last =ddindx
193             then exit;
194           end if;
195           ddindx := t.next(ddindx);
196         end loop;
197       end if;
198    end if;
199   end rosetta_table_copy_out_p4;
200 
201   procedure rosetta_table_copy_in_p5(t out nocopy cn_calc_formulas_pvt.parent_expression_tbl_type, a0 JTF_VARCHAR2_TABLE_100) as
202     ddindx binary_integer; indx binary_integer;
203   begin
204   if a0 is not null and a0.count > 0 then
205       if a0.count > 0 then
206         indx := a0.first;
207         ddindx := 1;
208         while true loop
209           t(ddindx) := a0(indx);
210           ddindx := ddindx+1;
211           if a0.last =indx
212             then exit;
213           end if;
214           indx := a0.next(indx);
215         end loop;
216       end if;
217    end if;
218   end rosetta_table_copy_in_p5;
219   procedure rosetta_table_copy_out_p5(t cn_calc_formulas_pvt.parent_expression_tbl_type, a0 out nocopy JTF_VARCHAR2_TABLE_100) as
220     ddindx binary_integer; indx binary_integer;
221   begin
222   if t is null or t.count = 0 then
223     a0 := JTF_VARCHAR2_TABLE_100();
224   else
225       a0 := JTF_VARCHAR2_TABLE_100();
226       if t.count > 0 then
227         a0.extend(t.count);
228         ddindx := t.first;
229         indx := 1;
230         while true loop
231           a0(indx) := t(ddindx);
232           indx := indx+1;
233           if t.last =ddindx
234             then exit;
235           end if;
236           ddindx := t.next(ddindx);
237         end loop;
238       end if;
239    end if;
240   end rosetta_table_copy_out_p5;
241 
242   procedure rosetta_table_copy_in_p6(t out nocopy cn_calc_formulas_pvt.formula_tbl_type, a0 JTF_NUMBER_TABLE
243     , a1 JTF_VARCHAR2_TABLE_100
244     , a2 JTF_VARCHAR2_TABLE_100
245     , a3 JTF_VARCHAR2_TABLE_100
246     , a4 JTF_VARCHAR2_TABLE_100
247     , a5 JTF_VARCHAR2_TABLE_100
248     , a6 JTF_NUMBER_TABLE
249     , a7 JTF_VARCHAR2_TABLE_100
250     , a8 JTF_VARCHAR2_TABLE_100
251     , a9 JTF_VARCHAR2_TABLE_100
252     , a10 JTF_VARCHAR2_TABLE_100
253     , a11 JTF_VARCHAR2_TABLE_100
254     , a12 JTF_NUMBER_TABLE
255     , a13 JTF_NUMBER_TABLE
256     , a14 JTF_NUMBER_TABLE
257     , a15 JTF_NUMBER_TABLE
258     ) as
259     ddindx binary_integer; indx binary_integer;
260   begin
261   if a0 is not null and a0.count > 0 then
262       if a0.count > 0 then
263         indx := a0.first;
264         ddindx := 1;
265         while true loop
266           t(ddindx).calc_formula_id := a0(indx);
267           t(ddindx).name := a1(indx);
268           t(ddindx).description := a2(indx);
269           t(ddindx).formula_type := a3(indx);
270           t(ddindx).formula_status := a4(indx);
271           t(ddindx).trx_group_code := a5(indx);
272           t(ddindx).number_dim := a6(indx);
273           t(ddindx).cumulative_flag := a7(indx);
274           t(ddindx).itd_flag := a8(indx);
275           t(ddindx).split_flag := a9(indx);
276           t(ddindx).threshold_all_tier_flag := a10(indx);
277           t(ddindx).modeling_flag := a11(indx);
278           t(ddindx).perf_measure_id := a12(indx);
279           t(ddindx).output_exp_id := a13(indx);
280           t(ddindx).f_output_exp_id := a14(indx);
281           t(ddindx).object_version_number := a15(indx);
282           ddindx := ddindx+1;
283           if a0.last =indx
284             then exit;
285           end if;
286           indx := a0.next(indx);
287         end loop;
288       end if;
289    end if;
290   end rosetta_table_copy_in_p6;
291   procedure rosetta_table_copy_out_p6(t cn_calc_formulas_pvt.formula_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
292     , a1 out nocopy JTF_VARCHAR2_TABLE_100
293     , a2 out nocopy JTF_VARCHAR2_TABLE_100
294     , a3 out nocopy JTF_VARCHAR2_TABLE_100
295     , a4 out nocopy JTF_VARCHAR2_TABLE_100
296     , a5 out nocopy JTF_VARCHAR2_TABLE_100
297     , a6 out nocopy JTF_NUMBER_TABLE
298     , a7 out nocopy JTF_VARCHAR2_TABLE_100
299     , a8 out nocopy JTF_VARCHAR2_TABLE_100
300     , a9 out nocopy JTF_VARCHAR2_TABLE_100
301     , a10 out nocopy JTF_VARCHAR2_TABLE_100
302     , a11 out nocopy JTF_VARCHAR2_TABLE_100
303     , a12 out nocopy JTF_NUMBER_TABLE
304     , a13 out nocopy JTF_NUMBER_TABLE
305     , a14 out nocopy JTF_NUMBER_TABLE
306     , a15 out nocopy JTF_NUMBER_TABLE
307     ) as
308     ddindx binary_integer; indx binary_integer;
309   begin
310   if t is null or t.count = 0 then
311     a0 := JTF_NUMBER_TABLE();
312     a1 := JTF_VARCHAR2_TABLE_100();
313     a2 := JTF_VARCHAR2_TABLE_100();
314     a3 := JTF_VARCHAR2_TABLE_100();
315     a4 := JTF_VARCHAR2_TABLE_100();
316     a5 := JTF_VARCHAR2_TABLE_100();
317     a6 := JTF_NUMBER_TABLE();
318     a7 := JTF_VARCHAR2_TABLE_100();
319     a8 := JTF_VARCHAR2_TABLE_100();
320     a9 := JTF_VARCHAR2_TABLE_100();
321     a10 := JTF_VARCHAR2_TABLE_100();
322     a11 := JTF_VARCHAR2_TABLE_100();
323     a12 := JTF_NUMBER_TABLE();
324     a13 := JTF_NUMBER_TABLE();
325     a14 := JTF_NUMBER_TABLE();
326     a15 := JTF_NUMBER_TABLE();
327   else
328       a0 := JTF_NUMBER_TABLE();
329       a1 := JTF_VARCHAR2_TABLE_100();
330       a2 := JTF_VARCHAR2_TABLE_100();
331       a3 := JTF_VARCHAR2_TABLE_100();
332       a4 := JTF_VARCHAR2_TABLE_100();
333       a5 := JTF_VARCHAR2_TABLE_100();
334       a6 := JTF_NUMBER_TABLE();
335       a7 := JTF_VARCHAR2_TABLE_100();
336       a8 := JTF_VARCHAR2_TABLE_100();
337       a9 := JTF_VARCHAR2_TABLE_100();
338       a10 := JTF_VARCHAR2_TABLE_100();
339       a11 := JTF_VARCHAR2_TABLE_100();
340       a12 := JTF_NUMBER_TABLE();
341       a13 := JTF_NUMBER_TABLE();
342       a14 := JTF_NUMBER_TABLE();
343       a15 := JTF_NUMBER_TABLE();
344       if t.count > 0 then
345         a0.extend(t.count);
346         a1.extend(t.count);
347         a2.extend(t.count);
348         a3.extend(t.count);
349         a4.extend(t.count);
350         a5.extend(t.count);
351         a6.extend(t.count);
352         a7.extend(t.count);
353         a8.extend(t.count);
354         a9.extend(t.count);
355         a10.extend(t.count);
359         a14.extend(t.count);
356         a11.extend(t.count);
357         a12.extend(t.count);
358         a13.extend(t.count);
360         a15.extend(t.count);
361         ddindx := t.first;
362         indx := 1;
363         while true loop
364           a0(indx) := t(ddindx).calc_formula_id;
365           a1(indx) := t(ddindx).name;
366           a2(indx) := t(ddindx).description;
367           a3(indx) := t(ddindx).formula_type;
368           a4(indx) := t(ddindx).formula_status;
369           a5(indx) := t(ddindx).trx_group_code;
370           a6(indx) := t(ddindx).number_dim;
371           a7(indx) := t(ddindx).cumulative_flag;
372           a8(indx) := t(ddindx).itd_flag;
373           a9(indx) := t(ddindx).split_flag;
374           a10(indx) := t(ddindx).threshold_all_tier_flag;
375           a11(indx) := t(ddindx).modeling_flag;
376           a12(indx) := t(ddindx).perf_measure_id;
377           a13(indx) := t(ddindx).output_exp_id;
378           a14(indx) := t(ddindx).f_output_exp_id;
379           a15(indx) := t(ddindx).object_version_number;
380           indx := indx+1;
381           if t.last =ddindx
382             then exit;
383           end if;
384           ddindx := t.next(ddindx);
385         end loop;
386       end if;
387    end if;
388   end rosetta_table_copy_out_p6;
389 
390   procedure create_formula(p_api_version  NUMBER
391     , p_init_msg_list  VARCHAR2
392     , p_commit  VARCHAR2
393     , p_validation_level  NUMBER
394     , p_generate_packages  VARCHAR2
395     , p_name  VARCHAR2
396     , p_description  VARCHAR2
397     , p_formula_type  VARCHAR2
398     , p_trx_group_code  VARCHAR2
399     , p_number_dim  NUMBER
400     , p_cumulative_flag  VARCHAR2
401     , p_itd_flag  VARCHAR2
402     , p_split_flag  VARCHAR2
403     , p_threshold_all_tier_flag  VARCHAR2
404     , p_modeling_flag  VARCHAR2
405     , p_perf_measure_id  NUMBER
406     , p_output_exp_id  NUMBER
407     , p_f_output_exp_id  NUMBER
408     , p18_a0 JTF_NUMBER_TABLE
409     , p18_a1 JTF_NUMBER_TABLE
410     , p18_a2 JTF_NUMBER_TABLE
411     , p18_a3 JTF_NUMBER_TABLE
412     , p18_a4 JTF_VARCHAR2_TABLE_100
413     , p18_a5 JTF_VARCHAR2_TABLE_100
414     , p18_a6 JTF_VARCHAR2_TABLE_100
415     , p18_a7 JTF_VARCHAR2_TABLE_100
416     , p18_a8 JTF_NUMBER_TABLE
417     , p18_a9 JTF_VARCHAR2_TABLE_100
418     , p18_a10 JTF_VARCHAR2_TABLE_100
419     , p19_a0 JTF_NUMBER_TABLE
420     , p19_a1 JTF_NUMBER_TABLE
421     , p19_a2 JTF_DATE_TABLE
422     , p19_a3 JTF_DATE_TABLE
423     , p19_a4 JTF_VARCHAR2_TABLE_100
424     , p19_a5 JTF_VARCHAR2_TABLE_100
425     , p19_a6 JTF_NUMBER_TABLE
426     , p_org_id  NUMBER
427     , x_calc_formula_id in out nocopy  NUMBER
428     , x_formula_status out nocopy  VARCHAR2
429     , x_return_status out nocopy  VARCHAR2
430     , x_msg_count out nocopy  NUMBER
431     , x_msg_data out nocopy  VARCHAR2
432   )
433 
434   as
435     ddp_input_tbl cn_calc_formulas_pvt.input_tbl_type;
436     ddp_rt_assign_tbl cn_calc_formulas_pvt.rt_assign_tbl_type;
437     ddindx binary_integer; indx binary_integer;
438   begin
439 
440     -- copy data to the local IN or IN-OUT args, if any
441 
442 
443 
444 
445 
446 
447 
448 
449 
450 
451 
452 
453 
454 
455 
456 
457 
458 
459     cn_calc_formulas_pvt_w.rosetta_table_copy_in_p3(ddp_input_tbl, p18_a0
460       , p18_a1
461       , p18_a2
462       , p18_a3
463       , p18_a4
464       , p18_a5
465       , p18_a6
466       , p18_a7
467       , p18_a8
468       , p18_a9
469       , p18_a10
470       );
471 
472     cn_calc_formulas_pvt_w.rosetta_table_copy_in_p4(ddp_rt_assign_tbl, p19_a0
473       , p19_a1
474       , p19_a2
475       , p19_a3
476       , p19_a4
477       , p19_a5
478       , p19_a6
479       );
480 
481 
482 
483 
484 
485 
486 
487     -- here's the delegated call to the old PL/SQL routine
488     cn_calc_formulas_pvt.create_formula(p_api_version,
489       p_init_msg_list,
490       p_commit,
491       p_validation_level,
492       p_generate_packages,
493       p_name,
494       p_description,
495       p_formula_type,
496       p_trx_group_code,
497       p_number_dim,
498       p_cumulative_flag,
499       p_itd_flag,
500       p_split_flag,
501       p_threshold_all_tier_flag,
502       p_modeling_flag,
503       p_perf_measure_id,
504       p_output_exp_id,
505       p_f_output_exp_id,
506       ddp_input_tbl,
507       ddp_rt_assign_tbl,
508       p_org_id,
509       x_calc_formula_id,
510       x_formula_status,
511       x_return_status,
512       x_msg_count,
513       x_msg_data);
514 
515     -- copy data back from the local variables to OUT or IN-OUT args, if any
516 
517 
518 
519 
520 
521 
522 
523 
524 
528 
525 
526 
527 
529 
530 
531 
532 
533 
534 
535 
536 
537 
538 
539 
540 
541   end;
542 
543   procedure update_formula(p_api_version  NUMBER
544     , p_init_msg_list  VARCHAR2
545     , p_commit  VARCHAR2
546     , p_validation_level  NUMBER
547     , p_generate_packages  VARCHAR2
548     , p_calc_formula_id  NUMBER
549     , p_name  VARCHAR2
550     , p_description  VARCHAR2
551     , p_formula_type  VARCHAR2
552     , p_formula_status  VARCHAR2
553     , p_trx_group_code  VARCHAR2
554     , p_number_dim  NUMBER
555     , p_cumulative_flag  VARCHAR2
556     , p_itd_flag  VARCHAR2
557     , p_split_flag  VARCHAR2
558     , p_threshold_all_tier_flag  VARCHAR2
559     , p_modeling_flag  VARCHAR2
560     , p_perf_measure_id  NUMBER
561     , p_output_exp_id  NUMBER
562     , p_f_output_exp_id  NUMBER
563     , p20_a0 JTF_NUMBER_TABLE
564     , p20_a1 JTF_NUMBER_TABLE
565     , p20_a2 JTF_NUMBER_TABLE
566     , p20_a3 JTF_NUMBER_TABLE
567     , p20_a4 JTF_VARCHAR2_TABLE_100
568     , p20_a5 JTF_VARCHAR2_TABLE_100
569     , p20_a6 JTF_VARCHAR2_TABLE_100
570     , p20_a7 JTF_VARCHAR2_TABLE_100
571     , p20_a8 JTF_NUMBER_TABLE
572     , p20_a9 JTF_VARCHAR2_TABLE_100
573     , p20_a10 JTF_VARCHAR2_TABLE_100
574     , p21_a0 JTF_NUMBER_TABLE
575     , p21_a1 JTF_NUMBER_TABLE
576     , p21_a2 JTF_DATE_TABLE
577     , p21_a3 JTF_DATE_TABLE
578     , p21_a4 JTF_VARCHAR2_TABLE_100
579     , p21_a5 JTF_VARCHAR2_TABLE_100
580     , p21_a6 JTF_NUMBER_TABLE
581     , p_org_id  NUMBER
582     , p_object_version_number in out nocopy  NUMBER
583     , x_formula_status out nocopy  VARCHAR2
584     , x_return_status out nocopy  VARCHAR2
585     , x_msg_count out nocopy  NUMBER
586     , x_msg_data out nocopy  VARCHAR2
587   )
588 
589   as
590     ddp_input_tbl cn_calc_formulas_pvt.input_tbl_type;
591     ddp_rt_assign_tbl cn_calc_formulas_pvt.rt_assign_tbl_type;
592     ddindx binary_integer; indx binary_integer;
593   begin
594 
595     -- copy data to the local IN or IN-OUT args, if any
596 
597 
598 
599 
600 
601 
602 
603 
604 
605 
606 
607 
608 
609 
610 
611 
612 
613 
614 
615 
616     cn_calc_formulas_pvt_w.rosetta_table_copy_in_p3(ddp_input_tbl, p20_a0
617       , p20_a1
618       , p20_a2
619       , p20_a3
620       , p20_a4
621       , p20_a5
622       , p20_a6
623       , p20_a7
624       , p20_a8
625       , p20_a9
626       , p20_a10
627       );
628 
629     cn_calc_formulas_pvt_w.rosetta_table_copy_in_p4(ddp_rt_assign_tbl, p21_a0
630       , p21_a1
631       , p21_a2
632       , p21_a3
633       , p21_a4
634       , p21_a5
635       , p21_a6
636       );
637 
638 
639 
640 
641 
642 
643 
644     -- here's the delegated call to the old PL/SQL routine
645     cn_calc_formulas_pvt.update_formula(p_api_version,
646       p_init_msg_list,
647       p_commit,
648       p_validation_level,
649       p_generate_packages,
650       p_calc_formula_id,
651       p_name,
652       p_description,
653       p_formula_type,
654       p_formula_status,
655       p_trx_group_code,
656       p_number_dim,
657       p_cumulative_flag,
658       p_itd_flag,
659       p_split_flag,
660       p_threshold_all_tier_flag,
661       p_modeling_flag,
662       p_perf_measure_id,
663       p_output_exp_id,
664       p_f_output_exp_id,
665       ddp_input_tbl,
666       ddp_rt_assign_tbl,
667       p_org_id,
668       p_object_version_number,
669       x_formula_status,
670       x_return_status,
671       x_msg_count,
672       x_msg_data);
673 
674     -- copy data back from the local variables to OUT or IN-OUT args, if any
675 
676 
677 
678 
679 
680 
681 
682 
683 
684 
685 
686 
687 
688 
689 
690 
691 
692 
693 
694 
695 
696 
697 
698 
699 
700 
701 
702   end;
703 
704 end cn_calc_formulas_pvt_w;