DBA Data[Home] [Help]

PACKAGE BODY: APPS.OZF_SPLIT_CLAIM_PVT_W

Source


1 package body ozf_split_claim_pvt_w as
2   /* $Header: ozfwspcb.pls 120.4 2011/09/22 09:21:10 bkunjan 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   rosetta_g_mistake_date_high date := to_date('01/01/+4710', 'MM/DD/SYYYY');
6   rosetta_g_mistake_date_low date := to_date('01/01/-4710', 'MM/DD/SYYYY');
7 
8   -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
9   function rosetta_g_miss_date_in_map(d date) return date as
10   begin
11     if d > rosetta_g_mistake_date_high then return fnd_api.g_miss_date; end if;
12     if d < rosetta_g_mistake_date_low then return fnd_api.g_miss_date; end if;
13     return d;
14   end;
15 
16   procedure rosetta_table_copy_in_p1(t out nocopy ozf_split_claim_pvt.child_claim_tbl_type, a0 JTF_NUMBER_TABLE
17     , a1 JTF_NUMBER_TABLE
18     , a2 JTF_NUMBER_TABLE
19     , a3 JTF_NUMBER_TABLE
20     , a4 JTF_NUMBER_TABLE
21     , a5 JTF_NUMBER_TABLE
22     , a6 JTF_NUMBER_TABLE
23     , a7 JTF_NUMBER_TABLE
24     , a8 JTF_VARCHAR2_TABLE_4000
25     , a9 JTF_NUMBER_TABLE
26     ) as
27     ddindx binary_integer; indx binary_integer;
28   begin
29   if a0 is not null and a0.count > 0 then
30       if a0.count > 0 then
31         indx := a0.first;
32         ddindx := 1;
33         while true loop
34           t(ddindx).claim_id := a0(indx);
35           t(ddindx).object_version_number := a1(indx);
36           t(ddindx).claim_type_id := a2(indx);
37           t(ddindx).amount := a3(indx);
38           t(ddindx).line_amount_sum := a4(indx);
39           t(ddindx).reason_code_id := a5(indx);
40           t(ddindx).parent_claim_id := a6(indx);
41           t(ddindx).parent_object_ver_num := a7(indx);
42           t(ddindx).line_table := a8(indx);
43           t(ddindx).child_claim_id := a9(indx);
44           ddindx := ddindx+1;
45           if a0.last =indx
46             then exit;
47           end if;
48           indx := a0.next(indx);
49         end loop;
50       end if;
51    end if;
52   end rosetta_table_copy_in_p1;
53   procedure rosetta_table_copy_out_p1(t ozf_split_claim_pvt.child_claim_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
54     , a1 out nocopy JTF_NUMBER_TABLE
55     , a2 out nocopy JTF_NUMBER_TABLE
56     , a3 out nocopy JTF_NUMBER_TABLE
57     , a4 out nocopy JTF_NUMBER_TABLE
58     , a5 out nocopy JTF_NUMBER_TABLE
59     , a6 out nocopy JTF_NUMBER_TABLE
60     , a7 out nocopy JTF_NUMBER_TABLE
61     , a8 out nocopy JTF_VARCHAR2_TABLE_4000
62     , a9 out nocopy JTF_NUMBER_TABLE
63     ) as
64     ddindx binary_integer; indx binary_integer;
65   begin
66   if t is null or t.count = 0 then
67     a0 := JTF_NUMBER_TABLE();
68     a1 := JTF_NUMBER_TABLE();
69     a2 := JTF_NUMBER_TABLE();
70     a3 := JTF_NUMBER_TABLE();
71     a4 := JTF_NUMBER_TABLE();
72     a5 := JTF_NUMBER_TABLE();
73     a6 := JTF_NUMBER_TABLE();
74     a7 := JTF_NUMBER_TABLE();
75     a8 := JTF_VARCHAR2_TABLE_4000();
76     a9 := JTF_NUMBER_TABLE();
77   else
78       a0 := JTF_NUMBER_TABLE();
79       a1 := JTF_NUMBER_TABLE();
80       a2 := JTF_NUMBER_TABLE();
81       a3 := JTF_NUMBER_TABLE();
82       a4 := JTF_NUMBER_TABLE();
83       a5 := JTF_NUMBER_TABLE();
84       a6 := JTF_NUMBER_TABLE();
85       a7 := JTF_NUMBER_TABLE();
86       a8 := JTF_VARCHAR2_TABLE_4000();
87       a9 := JTF_NUMBER_TABLE();
88       if t.count > 0 then
89         a0.extend(t.count);
90         a1.extend(t.count);
91         a2.extend(t.count);
92         a3.extend(t.count);
93         a4.extend(t.count);
94         a5.extend(t.count);
95         a6.extend(t.count);
96         a7.extend(t.count);
97         a8.extend(t.count);
98         a9.extend(t.count);
99         ddindx := t.first;
100         indx := 1;
101         while true loop
102           a0(indx) := t(ddindx).claim_id;
103           a1(indx) := t(ddindx).object_version_number;
104           a2(indx) := t(ddindx).claim_type_id;
105           a3(indx) := t(ddindx).amount;
106           a4(indx) := t(ddindx).line_amount_sum;
107           a5(indx) := t(ddindx).reason_code_id;
108           a6(indx) := t(ddindx).parent_claim_id;
109           a7(indx) := t(ddindx).parent_object_ver_num;
110           a8(indx) := t(ddindx).line_table;
111           a9(indx) := t(ddindx).child_claim_id;
112           indx := indx+1;
113           if t.last =ddindx
114             then exit;
115           end if;
116           ddindx := t.next(ddindx);
117         end loop;
118       end if;
119    end if;
120   end rosetta_table_copy_out_p1;
121 
122   procedure create_child_claim_tbl(p_api_version  NUMBER
123     , p_init_msg_list  VARCHAR2
124     , p_commit  VARCHAR2
125     , p_validation_level  NUMBER
126     , x_return_status out nocopy  VARCHAR2
127     , x_msg_data out nocopy  VARCHAR2
128     , x_msg_count out nocopy  NUMBER
129     , p7_a0 in out nocopy JTF_NUMBER_TABLE
130     , p7_a1 in out nocopy JTF_NUMBER_TABLE
131     , p7_a2 in out nocopy JTF_NUMBER_TABLE
132     , p7_a3 in out nocopy JTF_NUMBER_TABLE
133     , p7_a4 in out nocopy JTF_NUMBER_TABLE
134     , p7_a5 in out nocopy JTF_NUMBER_TABLE
135     , p7_a6 in out nocopy JTF_NUMBER_TABLE
136     , p7_a7 in out nocopy JTF_NUMBER_TABLE
137     , p7_a8 in out nocopy JTF_VARCHAR2_TABLE_4000
138     , p7_a9 in out nocopy JTF_NUMBER_TABLE
139     , p_mode  VARCHAR2
140   )
141 
142   as
143     ddpx_child_claim_tbl ozf_split_claim_pvt.child_claim_tbl_type;
144     ddindx binary_integer; indx binary_integer;
145   begin
146 
147     -- copy data to the local IN or IN-OUT args, if any
148 
149 
150 
151 
152 
153 
154 
155     ozf_split_claim_pvt_w.rosetta_table_copy_in_p1(ddpx_child_claim_tbl, p7_a0
156       , p7_a1
157       , p7_a2
158       , p7_a3
159       , p7_a4
160       , p7_a5
161       , p7_a6
162       , p7_a7
163       , p7_a8
164       , p7_a9
165       );
166 
167 
168     -- here's the delegated call to the old PL/SQL routine
169     ozf_split_claim_pvt.create_child_claim_tbl(p_api_version,
170       p_init_msg_list,
171       p_commit,
172       p_validation_level,
173       x_return_status,
174       x_msg_data,
175       x_msg_count,
176       ddpx_child_claim_tbl,
177       p_mode);
178 
179     -- copy data back from the local variables to OUT or IN-OUT args, if any
180 
181 
182 
183 
184 
185 
186 
187     ozf_split_claim_pvt_w.rosetta_table_copy_out_p1(ddpx_child_claim_tbl, p7_a0
188       , p7_a1
189       , p7_a2
190       , p7_a3
191       , p7_a4
192       , p7_a5
193       , p7_a6
194       , p7_a7
195       , p7_a8
196       , p7_a9
197       );
198 
199   end;
200 
201   procedure update_child_claim_tbl(p_api_version  NUMBER
202     , p_init_msg_list  VARCHAR2
203     , p_commit  VARCHAR2
204     , p_validation_level  NUMBER
205     , x_return_status out nocopy  VARCHAR2
206     , x_msg_data out nocopy  VARCHAR2
207     , x_msg_count out nocopy  NUMBER
208     , p7_a0 JTF_NUMBER_TABLE
209     , p7_a1 JTF_NUMBER_TABLE
210     , p7_a2 JTF_NUMBER_TABLE
211     , p7_a3 JTF_NUMBER_TABLE
212     , p7_a4 JTF_NUMBER_TABLE
213     , p7_a5 JTF_NUMBER_TABLE
214     , p7_a6 JTF_NUMBER_TABLE
215     , p7_a7 JTF_NUMBER_TABLE
216     , p7_a8 JTF_VARCHAR2_TABLE_4000
217     , p7_a9 JTF_NUMBER_TABLE
218     , p_mode  VARCHAR2
219   )
220 
221   as
222     ddp_child_claim_tbl ozf_split_claim_pvt.child_claim_tbl_type;
223     ddindx binary_integer; indx binary_integer;
224   begin
225 
226     -- copy data to the local IN or IN-OUT args, if any
227 
228 
229 
230 
231 
232 
233 
234     ozf_split_claim_pvt_w.rosetta_table_copy_in_p1(ddp_child_claim_tbl, p7_a0
235       , p7_a1
236       , p7_a2
237       , p7_a3
238       , p7_a4
239       , p7_a5
240       , p7_a6
241       , p7_a7
242       , p7_a8
243       , p7_a9
244       );
245 
246 
247     -- here's the delegated call to the old PL/SQL routine
248     ozf_split_claim_pvt.update_child_claim_tbl(p_api_version,
249       p_init_msg_list,
250       p_commit,
251       p_validation_level,
252       x_return_status,
253       x_msg_data,
254       x_msg_count,
255       ddp_child_claim_tbl,
256       p_mode);
257 
258     -- copy data back from the local variables to OUT or IN-OUT args, if any
259 
260 
261 
262 
263 
264 
265 
266 
267   end;
268 
269 end ozf_split_claim_pvt_w;