[Home] [Help]
PACKAGE BODY: APPS.PV_CMDASHBOARD_UTIL_W
Source
1 package body pv_cmdashboard_util_w as
2 /* $Header: pvxwcdub.pls 120.0 2005/07/05 23:49:54 appldev noship $ */
3 procedure rosetta_table_copy_in_p1(t out nocopy pv_cmdashboard_util.kpi_tbl_type, a0 JTF_NUMBER_TABLE
4 , a1 JTF_VARCHAR2_TABLE_100
5 , a2 JTF_VARCHAR2_TABLE_400
6 , a3 JTF_VARCHAR2_TABLE_100
7 , a4 JTF_VARCHAR2_TABLE_100
8 ) as
9 ddindx binary_integer; indx binary_integer;
10 begin
11 if a0 is not null and a0.count > 0 then
12 if a0.count > 0 then
13 indx := a0.first;
14 ddindx := 1;
15 while true loop
16 t(ddindx).attribute_id := a0(indx);
17 t(ddindx).attribute_name := a1(indx);
18 t(ddindx).attribute_value := a2(indx);
19 t(ddindx).enabled_flag := a3(indx);
20 t(ddindx).display_style := a4(indx);
21 ddindx := ddindx+1;
22 if a0.last =indx
23 then exit;
24 end if;
25 indx := a0.next(indx);
26 end loop;
27 end if;
28 end if;
29 end rosetta_table_copy_in_p1;
30 procedure rosetta_table_copy_out_p1(t pv_cmdashboard_util.kpi_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
31 , a1 out nocopy JTF_VARCHAR2_TABLE_100
32 , a2 out nocopy JTF_VARCHAR2_TABLE_400
33 , a3 out nocopy JTF_VARCHAR2_TABLE_100
34 , a4 out nocopy JTF_VARCHAR2_TABLE_100
35 ) as
36 ddindx binary_integer; indx binary_integer;
37 begin
38 if t is null or t.count = 0 then
39 a0 := JTF_NUMBER_TABLE();
40 a1 := JTF_VARCHAR2_TABLE_100();
41 a2 := JTF_VARCHAR2_TABLE_400();
42 a3 := JTF_VARCHAR2_TABLE_100();
43 a4 := JTF_VARCHAR2_TABLE_100();
44 else
45 a0 := JTF_NUMBER_TABLE();
46 a1 := JTF_VARCHAR2_TABLE_100();
47 a2 := JTF_VARCHAR2_TABLE_400();
48 a3 := JTF_VARCHAR2_TABLE_100();
49 a4 := JTF_VARCHAR2_TABLE_100();
50 if t.count > 0 then
51 a0.extend(t.count);
52 a1.extend(t.count);
53 a2.extend(t.count);
54 a3.extend(t.count);
55 a4.extend(t.count);
56 ddindx := t.first;
57 indx := 1;
58 while true loop
59 a0(indx) := t(ddindx).attribute_id;
60 a1(indx) := t(ddindx).attribute_name;
61 a2(indx) := t(ddindx).attribute_value;
62 a3(indx) := t(ddindx).enabled_flag;
63 a4(indx) := t(ddindx).display_style;
64 indx := indx+1;
65 if t.last =ddindx
66 then exit;
67 end if;
68 ddindx := t.next(ddindx);
69 end loop;
70 end if;
71 end if;
72 end rosetta_table_copy_out_p1;
73
74 procedure get_kpis_detail(p_resource_id NUMBER
75 , p1_a0 in out nocopy JTF_NUMBER_TABLE
76 , p1_a1 in out nocopy JTF_VARCHAR2_TABLE_100
77 , p1_a2 in out nocopy JTF_VARCHAR2_TABLE_400
78 , p1_a3 in out nocopy JTF_VARCHAR2_TABLE_100
79 , p1_a4 in out nocopy JTF_VARCHAR2_TABLE_100
80 )
81
82 as
83 ddp_kpi_set pv_cmdashboard_util.kpi_tbl_type;
84 ddindx binary_integer; indx binary_integer;
85 begin
86
87 -- copy data to the local IN or IN-OUT args, if any
88
89 pv_cmdashboard_util_w.rosetta_table_copy_in_p1(ddp_kpi_set, p1_a0
90 , p1_a1
91 , p1_a2
92 , p1_a3
93 , p1_a4
94 );
95
96 -- here's the delegated call to the old PL/SQL routine
97 pv_cmdashboard_util.get_kpis_detail(p_resource_id,
98 ddp_kpi_set);
99
100 -- copy data back from the local variables to OUT or IN-OUT args, if any
101
102 pv_cmdashboard_util_w.rosetta_table_copy_out_p1(ddp_kpi_set, p1_a0
103 , p1_a1
104 , p1_a2
105 , p1_a3
106 , p1_a4
107 );
108 end;
109
110 end pv_cmdashboard_util_w;