1 package body ozf_offr_prod_denorm_pvt_oa as
2 /* $Header: ozfaodmb.pls 120.0 2005/08/31 09:43 gramanat noship $ */
3 procedure rosetta_table_copy_in_p0(t out nocopy ozf_offr_elig_prod_denorm_pvt.num_tbl_type, a0 JTF_NUMBER_TABLE) as
4 ddindx binary_integer; indx binary_integer;
5 begin
6 if a0 is not null and a0.count > 0 then
7 if a0.count > 0 then
8 indx := a0.first;
9 ddindx := 1;
10 while true loop
11 t(ddindx) := a0(indx);
12 ddindx := ddindx+1;
13 if a0.last =indx
14 then exit;
15 end if;
16 indx := a0.next(indx);
17 end loop;
18 end if;
19 end if;
20 end rosetta_table_copy_in_p0;
21 procedure rosetta_table_copy_out_p0(t ozf_offr_elig_prod_denorm_pvt.num_tbl_type, a0 out nocopy JTF_NUMBER_TABLE) as
22 ddindx binary_integer; indx binary_integer;
23 begin
24 if t is null or t.count = 0 then
25 a0 := JTF_NUMBER_TABLE();
26 else
27 a0 := JTF_NUMBER_TABLE();
28 if t.count > 0 then
29 a0.extend(t.count);
30 ddindx := t.first;
31 indx := 1;
32 while true loop
33 a0(indx) := t(ddindx);
34 indx := indx+1;
35 if t.last =ddindx
36 then exit;
37 end if;
38 ddindx := t.next(ddindx);
39 end loop;
40 end if;
41 end if;
42 end rosetta_table_copy_out_p0;
43
44 procedure rosetta_table_copy_in_p1(t out nocopy ozf_offr_elig_prod_denorm_pvt.char_tbl_type, a0 JTF_VARCHAR2_TABLE_100) as
45 ddindx binary_integer; indx binary_integer;
46 begin
47 if a0 is not null and a0.count > 0 then
48 if a0.count > 0 then
49 indx := a0.first;
50 ddindx := 1;
51 while true loop
52 t(ddindx) := a0(indx);
53 ddindx := ddindx+1;
54 if a0.last =indx
55 then exit;
56 end if;
57 indx := a0.next(indx);
58 end loop;
59 end if;
60 end if;
61 end rosetta_table_copy_in_p1;
62 procedure rosetta_table_copy_out_p1(t ozf_offr_elig_prod_denorm_pvt.char_tbl_type, a0 out nocopy JTF_VARCHAR2_TABLE_100) as
63 ddindx binary_integer; indx binary_integer;
64 begin
65 if t is null or t.count = 0 then
66 a0 := JTF_VARCHAR2_TABLE_100();
67 else
68 a0 := JTF_VARCHAR2_TABLE_100();
69 if t.count > 0 then
70 a0.extend(t.count);
71 ddindx := t.first;
72 indx := 1;
73 while true loop
74 a0(indx) := t(ddindx);
75 indx := indx+1;
76 if t.last =ddindx
77 then exit;
78 end if;
79 ddindx := t.next(ddindx);
80 end loop;
81 end if;
82 end if;
83 end rosetta_table_copy_out_p1;
84
85 procedure find_party_elig(p_offers_tbl JTF_NUMBER_TABLE
86 , p_party_id NUMBER
87 , p_cust_acct_id NUMBER
88 , p_cust_site_id NUMBER
89 , p_api_version NUMBER
90 , p_init_msg_list VARCHAR2
91 , p_commit VARCHAR2
92 , x_return_status out nocopy VARCHAR2
93 , x_msg_count out nocopy NUMBER
94 , x_msg_data out nocopy VARCHAR2
95 , x_offers_tbl out nocopy JTF_NUMBER_TABLE
96 )
97
98 as
99 ddp_offers_tbl ozf_offr_elig_prod_denorm_pvt.num_tbl_type;
100 ddx_offers_tbl ozf_offr_elig_prod_denorm_pvt.num_tbl_type;
101 ddindx binary_integer; indx binary_integer;
102 begin
103
104 -- copy data to the local IN or IN-OUT args, if any
105 ozf_offr_prod_denorm_pvt_oa.rosetta_table_copy_in_p0(ddp_offers_tbl, p_offers_tbl);
106
107
108
109
110
111
112
113
114
115
116
117 -- here's the delegated call to the old PL/SQL routine
118 ozf_offr_elig_prod_denorm_pvt.find_party_elig(ddp_offers_tbl,
119 p_party_id,
120 p_cust_acct_id,
121 p_cust_site_id,
122 p_api_version,
123 p_init_msg_list,
124 p_commit,
125 x_return_status,
126 x_msg_count,
127 x_msg_data,
128 ddx_offers_tbl);
129
130 -- copy data back from the local variables to OUT or IN-OUT args, if any
131
132
133
134
135
136
137
138
139
140
141 ozf_offr_prod_denorm_pvt_oa.rosetta_table_copy_out_p0(ddx_offers_tbl, x_offers_tbl);
142 end;
143
144 procedure find_product_elig(p_products_tbl JTF_NUMBER_TABLE
145 , p_party_id NUMBER
146 , p_cust_acct_id NUMBER
147 , p_cust_site_id NUMBER
148 , p_api_version NUMBER
149 , p_init_msg_list VARCHAR2
150 , p_commit VARCHAR2
151 , x_return_status out nocopy VARCHAR2
152 , x_msg_count out nocopy NUMBER
153 , x_msg_data out nocopy VARCHAR2
154 , x_offers_tbl out nocopy JTF_NUMBER_TABLE
155 )
156
157 as
158 ddp_products_tbl ozf_offr_elig_prod_denorm_pvt.num_tbl_type;
159 ddx_offers_tbl ozf_offr_elig_prod_denorm_pvt.num_tbl_type;
160 ddindx binary_integer; indx binary_integer;
161 begin
162
163 -- copy data to the local IN or IN-OUT args, if any
164 ozf_offr_prod_denorm_pvt_oa.rosetta_table_copy_in_p0(ddp_products_tbl, p_products_tbl);
165
166
167
168
169
170
171
172
173
174
175
176 -- here's the delegated call to the old PL/SQL routine
177 ozf_offr_elig_prod_denorm_pvt.find_product_elig(ddp_products_tbl,
178 p_party_id,
179 p_cust_acct_id,
180 p_cust_site_id,
181 p_api_version,
182 p_init_msg_list,
183 p_commit,
184 x_return_status,
185 x_msg_count,
186 x_msg_data,
187 ddx_offers_tbl);
188
189 -- copy data back from the local variables to OUT or IN-OUT args, if any
190
191
192
193
194
195
196
197
198
199
200 ozf_offr_prod_denorm_pvt_oa.rosetta_table_copy_out_p0(ddx_offers_tbl, x_offers_tbl);
201 end;
202
203 end ozf_offr_prod_denorm_pvt_oa;