[Home] [Help]
PACKAGE BODY: APPS.OKL_INV_TYPE_DELETE_PVT_W
Source
1 package body okl_inv_type_delete_pvt_w as
2 /* $Header: OKLEITDB.pls 120.1 2005/07/11 14:17:54 asawanka noship $ */
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_p1(t out nocopy okl_inv_type_delete_pvt.ity_del_tbl_type, a0 JTF_NUMBER_TABLE
23 , a1 JTF_NUMBER_TABLE
24 , a2 JTF_VARCHAR2_TABLE_200
25 , a3 JTF_VARCHAR2_TABLE_2000
26 , a4 JTF_VARCHAR2_TABLE_100
27 , a5 JTF_VARCHAR2_TABLE_100
28 ) as
29 ddindx binary_integer; indx binary_integer;
30 begin
31 if a0 is not null and a0.count > 0 then
32 if a0.count > 0 then
33 indx := a0.first;
34 ddindx := 1;
35 while true loop
36 t(ddindx).id := rosetta_g_miss_num_map(a0(indx));
37 t(ddindx).inf_id := rosetta_g_miss_num_map(a1(indx));
38 t(ddindx).name := a2(indx);
39 t(ddindx).description := a3(indx);
40 t(ddindx).group_asset_yn := a4(indx);
41 t(ddindx).group_by_contract_yn := a5(indx);
42 ddindx := ddindx+1;
43 if a0.last =indx
44 then exit;
45 end if;
46 indx := a0.next(indx);
47 end loop;
48 end if;
49 end if;
50 end rosetta_table_copy_in_p1;
51 procedure rosetta_table_copy_out_p1(t okl_inv_type_delete_pvt.ity_del_tbl_type, a0 out nocopy JTF_NUMBER_TABLE
52 , a1 out nocopy JTF_NUMBER_TABLE
53 , a2 out nocopy JTF_VARCHAR2_TABLE_200
54 , a3 out nocopy JTF_VARCHAR2_TABLE_2000
55 , a4 out nocopy JTF_VARCHAR2_TABLE_100
56 , a5 out nocopy JTF_VARCHAR2_TABLE_100
57 ) as
58 ddindx binary_integer; indx binary_integer;
59 begin
60 if t is null or t.count = 0 then
61 a0 := JTF_NUMBER_TABLE();
62 a1 := JTF_NUMBER_TABLE();
63 a2 := JTF_VARCHAR2_TABLE_200();
64 a3 := JTF_VARCHAR2_TABLE_2000();
65 a4 := JTF_VARCHAR2_TABLE_100();
66 a5 := JTF_VARCHAR2_TABLE_100();
67 else
68 a0 := JTF_NUMBER_TABLE();
69 a1 := JTF_NUMBER_TABLE();
70 a2 := JTF_VARCHAR2_TABLE_200();
71 a3 := JTF_VARCHAR2_TABLE_2000();
72 a4 := JTF_VARCHAR2_TABLE_100();
73 a5 := JTF_VARCHAR2_TABLE_100();
74 if t.count > 0 then
75 a0.extend(t.count);
76 a1.extend(t.count);
77 a2.extend(t.count);
78 a3.extend(t.count);
79 a4.extend(t.count);
80 a5.extend(t.count);
81 ddindx := t.first;
82 indx := 1;
83 while true loop
84 a0(indx) := rosetta_g_miss_num_map(t(ddindx).id);
85 a1(indx) := rosetta_g_miss_num_map(t(ddindx).inf_id);
86 a2(indx) := t(ddindx).name;
87 a3(indx) := t(ddindx).description;
88 a4(indx) := t(ddindx).group_asset_yn;
89 a5(indx) := t(ddindx).group_by_contract_yn;
90 indx := indx+1;
91 if t.last =ddindx
92 then exit;
93 end if;
94 ddindx := t.next(ddindx);
95 end loop;
96 end if;
97 end if;
98 end rosetta_table_copy_out_p1;
99
100 procedure delete_type(p_api_version NUMBER
101 , p_init_msg_list VARCHAR2
102 , x_return_status out nocopy VARCHAR2
103 , x_msg_count out nocopy NUMBER
104 , x_msg_data out nocopy VARCHAR2
105 , p5_a0 NUMBER := 0-1962.0724
106 , p5_a1 NUMBER := 0-1962.0724
107 , p5_a2 VARCHAR2 := fnd_api.g_miss_char
108 , p5_a3 VARCHAR2 := fnd_api.g_miss_char
109 , p5_a4 VARCHAR2 := fnd_api.g_miss_char
110 , p5_a5 VARCHAR2 := fnd_api.g_miss_char
111 )
112
113 as
114 ddp_ity_del_rec okl_inv_type_delete_pvt.ity_del_rec_type;
115 ddindx binary_integer; indx binary_integer;
116 begin
117
118 -- copy data to the local IN or IN-OUT args, if any
119
120
121
122
123
124 ddp_ity_del_rec.id := rosetta_g_miss_num_map(p5_a0);
125 ddp_ity_del_rec.inf_id := rosetta_g_miss_num_map(p5_a1);
126 ddp_ity_del_rec.name := p5_a2;
127 ddp_ity_del_rec.description := p5_a3;
128 ddp_ity_del_rec.group_asset_yn := p5_a4;
129 ddp_ity_del_rec.group_by_contract_yn := p5_a5;
130
131 -- here's the delegated call to the old PL/SQL routine
132 okl_inv_type_delete_pvt.delete_type(p_api_version,
133 p_init_msg_list,
134 x_return_status,
135 x_msg_count,
136 x_msg_data,
137 ddp_ity_del_rec);
138
139 -- copy data back from the local variables to OUT or IN-OUT args, if any
140
141
142
143
144
145 end;
146
147 procedure delete_type(p_api_version NUMBER
148 , p_init_msg_list VARCHAR2
149 , x_return_status out nocopy VARCHAR2
150 , x_msg_count out nocopy NUMBER
151 , x_msg_data out nocopy VARCHAR2
152 , p5_a0 JTF_NUMBER_TABLE
153 , p5_a1 JTF_NUMBER_TABLE
154 , p5_a2 JTF_VARCHAR2_TABLE_200
155 , p5_a3 JTF_VARCHAR2_TABLE_2000
156 , p5_a4 JTF_VARCHAR2_TABLE_100
157 , p5_a5 JTF_VARCHAR2_TABLE_100
158 )
159
160 as
161 ddp_ity_del_tbl okl_inv_type_delete_pvt.ity_del_tbl_type;
162 ddindx binary_integer; indx binary_integer;
163 begin
164
165 -- copy data to the local IN or IN-OUT args, if any
166
167
168
169
170
171 okl_inv_type_delete_pvt_w.rosetta_table_copy_in_p1(ddp_ity_del_tbl, p5_a0
172 , p5_a1
173 , p5_a2
174 , p5_a3
175 , p5_a4
176 , p5_a5
177 );
178
179 -- here's the delegated call to the old PL/SQL routine
180 okl_inv_type_delete_pvt.delete_type(p_api_version,
181 p_init_msg_list,
182 x_return_status,
183 x_msg_count,
184 x_msg_data,
185 ddp_ity_del_tbl);
186
187 -- copy data back from the local variables to OUT or IN-OUT args, if any
188
189
190
191
192
193 end;
194
195 end okl_inv_type_delete_pvt_w;