DBA Data[Home] [Help]

PACKAGE BODY: APPS.EAM_COPY_BOM_PKG_W

Source


1 package body eam_copy_bom_pkg_w as
2  /* $Header: EAMCPMRB.pls 120.2 2008/01/26 01:52:22 devijay ship $ */
3   procedure rosetta_table_copy_in_p2(t out nocopy eam_copy_bom_pkg.t_bom_table, a0 JTF_NUMBER_TABLE
4     , a1 JTF_VARCHAR2_TABLE_300
5     , a2 JTF_NUMBER_TABLE
6     , a3 JTF_VARCHAR2_TABLE_100
7     , a4 JTF_NUMBER_TABLE
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).component_item_id := a0(indx);
17           t(ddindx).description := a1(indx);
18           t(ddindx).component_quantity := a2(indx);
19           t(ddindx).uom := a3(indx);
20           t(ddindx).wip_supply_type := 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_p2;
30   procedure rosetta_table_copy_out_p2(t eam_copy_bom_pkg.t_bom_table, a0 out nocopy JTF_NUMBER_TABLE
31     , a1 out nocopy JTF_VARCHAR2_TABLE_300
32     , a2 out nocopy JTF_NUMBER_TABLE
33     , a3 out nocopy JTF_VARCHAR2_TABLE_100
34     , a4 out nocopy JTF_NUMBER_TABLE
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_300();
41     a2 := JTF_NUMBER_TABLE();
42     a3 := JTF_VARCHAR2_TABLE_100();
43     a4 := JTF_NUMBER_TABLE();
44   else
45       a0 := JTF_NUMBER_TABLE();
46       a1 := JTF_VARCHAR2_TABLE_300();
47       a2 := JTF_NUMBER_TABLE();
48       a3 := JTF_VARCHAR2_TABLE_100();
49       a4 := JTF_NUMBER_TABLE();
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).component_item_id;
60           a1(indx) := t(ddindx).description;
61           a2(indx) := t(ddindx).component_quantity;
62           a3(indx) := t(ddindx).uom;
63           a4(indx) := t(ddindx).wip_supply_type;
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_p2;
73 
74   procedure rosetta_table_copy_in_p3(t out nocopy eam_copy_bom_pkg.t_component_table, a0 JTF_VARCHAR2_TABLE_100
75     , a1 JTF_NUMBER_TABLE
76     , a2 JTF_NUMBER_TABLE
77     , a3 JTF_NUMBER_TABLE
78     , a4 JTF_NUMBER_TABLE
79     , a5 JTF_VARCHAR2_TABLE_100
80     , a6 JTF_NUMBER_TABLE
81     , a7 JTF_VARCHAR2_TABLE_100
82     ) as
83     ddindx binary_integer; indx binary_integer;
84   begin
85   if a0 is not null and a0.count > 0 then
86       if a0.count > 0 then
87         indx := a0.first;
88         ddindx := 1;
89         while true loop
90           t(ddindx).component_item := a0(indx);
91           t(ddindx).component_item_id := a1(indx);
92           t(ddindx).operation_sequence_number := a2(indx);
93           t(ddindx).quantity_per_assembly := a3(indx);
94           t(ddindx).wip_supply_type := a4(indx);
95           t(ddindx).supply_subinventory := a5(indx);
96           t(ddindx).supply_locator_id := a6(indx);
97           t(ddindx).supply_locator_name := a7(indx);
98           ddindx := ddindx+1;
99           if a0.last =indx
100             then exit;
101           end if;
102           indx := a0.next(indx);
103         end loop;
104       end if;
105    end if;
106   end rosetta_table_copy_in_p3;
107   procedure rosetta_table_copy_out_p3(t eam_copy_bom_pkg.t_component_table, a0 out nocopy JTF_VARCHAR2_TABLE_100
108     , a1 out nocopy JTF_NUMBER_TABLE
109     , a2 out nocopy JTF_NUMBER_TABLE
110     , a3 out nocopy JTF_NUMBER_TABLE
111     , a4 out nocopy JTF_NUMBER_TABLE
112     , a5 out nocopy JTF_VARCHAR2_TABLE_100
113     , a6 out nocopy JTF_NUMBER_TABLE
114     , a7 out nocopy JTF_VARCHAR2_TABLE_100
115     ) as
116     ddindx binary_integer; indx binary_integer;
117   begin
118   if t is null or t.count = 0 then
119     a0 := JTF_VARCHAR2_TABLE_100();
120     a1 := JTF_NUMBER_TABLE();
121     a2 := JTF_NUMBER_TABLE();
122     a3 := JTF_NUMBER_TABLE();
123     a4 := JTF_NUMBER_TABLE();
124     a5 := JTF_VARCHAR2_TABLE_100();
125     a6 := JTF_NUMBER_TABLE();
126     a7 := JTF_VARCHAR2_TABLE_100();
127   else
128       a0 := JTF_VARCHAR2_TABLE_100();
129       a1 := JTF_NUMBER_TABLE();
130       a2 := JTF_NUMBER_TABLE();
131       a3 := JTF_NUMBER_TABLE();
132       a4 := JTF_NUMBER_TABLE();
133       a5 := JTF_VARCHAR2_TABLE_100();
134       a6 := JTF_NUMBER_TABLE();
135       a7 := JTF_VARCHAR2_TABLE_100();
136       if t.count > 0 then
137         a0.extend(t.count);
138         a1.extend(t.count);
139         a2.extend(t.count);
140         a3.extend(t.count);
141         a4.extend(t.count);
142         a5.extend(t.count);
143         a6.extend(t.count);
144         a7.extend(t.count);
145         ddindx := t.first;
146         indx := 1;
147         while true loop
148           a0(indx) := t(ddindx).component_item;
149           a1(indx) := t(ddindx).component_item_id;
150           a2(indx) := t(ddindx).operation_sequence_number;
151           a3(indx) := t(ddindx).quantity_per_assembly;
152           a4(indx) := t(ddindx).wip_supply_type;
153           a5(indx) := t(ddindx).supply_subinventory;
154           a6(indx) := t(ddindx).supply_locator_id;
155           a7(indx) := t(ddindx).supply_locator_name;
156           indx := indx+1;
157           if t.last =ddindx
158             then exit;
159           end if;
160           ddindx := t.next(ddindx);
161         end loop;
162       end if;
163    end if;
164   end rosetta_table_copy_out_p3;
165 
166   procedure copy_to_bom(p_organization_id  NUMBER
167     , p_organization_code  VARCHAR2
168     , p_asset_number  VARCHAR2
169     , p_asset_group_id  NUMBER
170     , p4_a0 JTF_VARCHAR2_TABLE_100
171     , p4_a1 JTF_NUMBER_TABLE
172     , p4_a2 JTF_NUMBER_TABLE
173     , p4_a3 JTF_NUMBER_TABLE
174     , p4_a4 JTF_NUMBER_TABLE
175     , p4_a5 JTF_VARCHAR2_TABLE_100
176     , p4_a6 JTF_NUMBER_TABLE
177     , p4_a7 JTF_VARCHAR2_TABLE_100
178     , x_error_code out nocopy  NUMBER
179   )
180 
181   as
182     ddp_component_table eam_copy_bom_pkg.t_component_table;
183     ddindx binary_integer; indx binary_integer;
184   begin
185 
186     -- copy data to the local IN or IN-OUT args, if any
187 
188 
189 
190 
191     eam_copy_bom_pkg_w.rosetta_table_copy_in_p3(ddp_component_table, p4_a0
192       , p4_a1
193       , p4_a2
194       , p4_a3
195       , p4_a4
196       , p4_a5
197       , p4_a6
198       , p4_a7
199       );
200 
201 
202     -- here's the delegated call to the old PL/SQL routine
203     eam_copy_bom_pkg.copy_to_bom(p_organization_id,
204       p_organization_code,
205       p_asset_number,
206       p_asset_group_id,
207       ddp_component_table,
208       x_error_code);
209 
210     -- copy data back from the local variables to OUT or IN-OUT args, if any
211 
212 
213 
214 
215 
216   end;
217 
218   procedure retrieve_asset_bom(p_organization_id  NUMBER
219     , p_wip_entity_id  NUMBER
220     , p_operation_seq_num  NUMBER
221     , p_department_id  NUMBER
222     , p4_a0 JTF_NUMBER_TABLE
223     , p4_a1 JTF_VARCHAR2_TABLE_300
224     , p4_a2 JTF_NUMBER_TABLE
225     , p4_a3 JTF_VARCHAR2_TABLE_100
226     , p4_a4 JTF_NUMBER_TABLE
227     , x_error_code out nocopy  VARCHAR2
228   )
229 
230   as
231     ddp_bom_table eam_copy_bom_pkg.t_bom_table;
232     ddindx binary_integer; indx binary_integer;
233   begin
234 
235     -- copy data to the local IN or IN-OUT args, if any
236 
237 
238 
239 
240     eam_copy_bom_pkg_w.rosetta_table_copy_in_p2(ddp_bom_table, p4_a0
241       , p4_a1
242       , p4_a2
243       , p4_a3
244       , p4_a4
245       );
246 
247 
248     -- here's the delegated call to the old PL/SQL routine
249     eam_copy_bom_pkg.retrieve_asset_bom(p_organization_id,
250       p_wip_entity_id,
251       p_operation_seq_num,
252       p_department_id,
253       ddp_bom_table,
254       x_error_code);
255 
256     -- copy data back from the local variables to OUT or IN-OUT args, if any
257 
258 
259 
260 
261 
262   end;
263 
264 end eam_copy_bom_pkg_w;