DBA Data[Home] [Help]

PACKAGE BODY: APPS.ECO_CONTROLLER

Source


1 PACKAGE BODY ECO_Controller AS
2 /* $Header: ENGCECOB.pls 115.11 2003/10/30 11:21:31 akumar ship $ */
3 
4 -- Procedure Create_Exp_Unexp_Rec
5 
6 PROCEDURE Create_Exp_Unexp_Rec
7 (   p_controller_ECO_rec        IN  Controller_Eco_Rec_Type
8 ,   x_ECO_rec                   OUT NOCOPY ENG_ECO_PUB.Eco_Rec_Type
9 ,   x_unexp_ECO_rec             OUT NOCOPY ENG_ECO_PUB.ECO_Unexposed_Rec_Type
10 )
11 IS
12 BEGIN
13         -- Create exposed record
14 
15         x_ECO_rec.eco_name              := p_controller_ECO_rec.change_notice;
16         x_ECO_rec.organization_code     := p_controller_ECO_rec.organization_code;
17         x_ECO_rec.change_type_code      := p_controller_ECO_rec.change_order_type;
18         x_ECO_rec.description           := p_controller_ECO_rec.description;
19         x_ECO_rec.cancellation_comments := p_controller_ECO_rec.cancellation_comments;
20         x_ECO_rec.priority_code         := p_controller_ECO_rec.priority_code;
21         x_ECO_rec.reason_code           := p_controller_ECO_rec.reason_code;
22         x_ECO_rec.eng_implementation_cost := p_controller_ECO_rec.estimated_eng_cost;
23         x_ECO_rec.mfg_implementation_cost := p_controller_ECO_rec.estimated_mfg_cost;
24         x_ECO_rec.approval_list_name    := p_controller_ECO_rec.approval_list_name;
25         x_ECO_rec.attribute_category    := p_controller_ECO_rec.attribute_category;
26         x_ECO_rec.attribute1            := p_controller_ECO_rec.attribute1;
30         x_ECO_rec.attribute5            := p_controller_ECO_rec.attribute5;
27         x_ECO_rec.attribute2            := p_controller_ECO_rec.attribute2;
28         x_ECO_rec.attribute3            := p_controller_ECO_rec.attribute3;
29         x_ECO_rec.attribute4            := p_controller_ECO_rec.attribute4;
31         x_ECO_rec.attribute6            := p_controller_ECO_rec.attribute6;
32         x_ECO_rec.attribute7            := p_controller_ECO_rec.attribute7;
33         x_ECO_rec.attribute8            := p_controller_ECO_rec.attribute8;
34         x_ECO_rec.attribute9            := p_controller_ECO_rec.attribute9;
35         x_ECO_rec.attribute10           := p_controller_ECO_rec.attribute10;
36         x_ECO_rec.attribute11           := p_controller_ECO_rec.attribute11;
37         x_ECO_rec.attribute12           := p_controller_ECO_rec.attribute12;
38         x_ECO_rec.attribute13           := p_controller_ECO_rec.attribute13;
39         x_ECO_rec.attribute14           := p_controller_ECO_rec.attribute14;
40         x_ECO_rec.attribute15           := p_controller_ECO_rec.attribute15;
41        -- x_ECO_rec.hierarchy_flag        := p_controller_ECO_rec.hierarchy_flag;
42         x_ECO_rec.organization_hierarchy:= p_controller_ECO_rec.organization_hierarchy;
43 	--added
44         x_ECO_rec.approval_request_date := p_controller_ECO_rec.approval_request_date;
45         x_ECO_rec.approval_date   := p_controller_ECO_rec.approval_date;
46         --11.5.10
47 	x_ECO_rec.plm_or_erp_change :=p_controller_ECO_rec.plm_or_erp_change;
48 
49         -- Create unexposed record
50 
51         x_unexp_ECO_rec.organization_id := p_controller_ECO_rec.organization_id;
52         x_unexp_ECO_rec.initiation_date := p_controller_ECO_rec.initiation_date;
53         x_unexp_ECO_rec.implementation_date := p_controller_ECO_rec.implementation_date;
54         x_unexp_ECO_rec.cancellation_date := p_controller_ECO_rec.cancellation_date;
55         x_unexp_ECO_rec.approval_list_id := p_controller_ECO_rec.approval_list_id;
56         x_unexp_ECO_rec.change_order_type_id := p_controller_ECO_rec.change_order_type_id;
57         x_unexp_ECO_rec.responsible_org_id :=p_controller_ECO_rec.responsible_organization_id;
58         x_unexp_ECO_rec.requestor_id    := p_controller_ECO_rec.requestor_id;
59 --Uncommented for bug 307761
60  x_unexp_ECO_rec.project_id      := p_controller_ECO_rec.project_id;
61  x_unexp_ECO_rec.task_id         := p_controller_ECO_rec.task_id;
62 
63 	x_unexp_ECO_rec.change_id             := p_controller_ECO_rec.change_id;
64 	x_unexp_ECO_rec.change_mgmt_type_code := p_controller_ECO_rec.change_mgmt_type_code;
65         x_unexp_ECO_rec.hierarchy_id          := p_controller_ECO_rec.hierarchy_id;
66 
67 
68 	--added
69         x_unexp_ECO_rec.status_type           := p_controller_ECO_rec.status_type;
70 	x_unexp_ECO_rec.approval_status_type  := p_controller_ECO_rec.approval_status_type;
71 
72 
73 END Create_Exp_Unexp_Rec;
74 
75 PROCEDURE Create_Controller_Rec
76 (   p_ECO_rec                   IN  ENG_ECO_PUB.Eco_Rec_Type
77 ,   p_unexp_ECO_rec             IN  ENG_ECO_PUB.ECO_Unexposed_Rec_Type
78 ,   x_controller_ECO_rec        OUT NOCOPY Controller_Eco_Rec_Type
79 )
80 IS
81 BEGIN
82 
83         -- Create exposed record
84 
85         x_controller_ECO_rec.change_notice         := p_ECO_rec.eco_name;
86         x_controller_ECO_rec.organization_code     := p_ECO_rec.organization_code;
87         x_controller_ECO_rec.change_order_type     := p_ECO_rec.change_type_code;
88         x_controller_ECO_rec.description           := p_ECO_rec.description;
89         x_controller_ECO_rec.cancellation_comments := p_ECO_rec.cancellation_comments;
90         x_controller_ECO_rec.priority_code         := p_ECO_rec.priority_code;
91         x_controller_ECO_rec.reason_code           := p_ECO_rec.reason_code;
92         x_controller_ECO_rec.estimated_eng_cost := p_ECO_rec.eng_implementation_cost;
93         x_controller_ECO_rec.estimated_mfg_cost := p_ECO_rec.mfg_implementation_cost;
94         x_controller_ECO_rec.approval_list_name    := p_ECO_rec.approval_list_name;
95         x_controller_ECO_rec.attribute_category    := p_ECO_rec.attribute_category;
96         x_controller_ECO_rec.attribute1            := p_ECO_rec.attribute1;
97         x_controller_ECO_rec.attribute2            := p_ECO_rec.attribute2;
98         x_controller_ECO_rec.attribute3            := p_ECO_rec.attribute3;
99         x_controller_ECO_rec.attribute4            := p_ECO_rec.attribute4;
100         x_controller_ECO_rec.attribute5            := p_ECO_rec.attribute5;
101         x_controller_ECO_rec.attribute6            := p_ECO_rec.attribute6;
102         x_controller_ECO_rec.attribute7            := p_ECO_rec.attribute7;
103         x_controller_ECO_rec.attribute8            := p_ECO_rec.attribute8;
104         x_controller_ECO_rec.attribute9            := p_ECO_rec.attribute9;
105         x_controller_ECO_rec.attribute10           := p_ECO_rec.attribute10;
106         x_controller_ECO_rec.attribute11           := p_ECO_rec.attribute11;
107         x_controller_ECO_rec.attribute12           := p_ECO_rec.attribute12;
108         x_controller_ECO_rec.attribute13           := p_ECO_rec.attribute13;
109         x_controller_ECO_rec.attribute14           := p_ECO_rec.attribute14;
110         x_controller_ECO_rec.attribute15           := p_ECO_rec.attribute15;
111      -- x_controller_ECO_rec.hierarchy_flag        := p_ECO_rec.hierarchy_flag;
112         x_controller_ECO_rec.organization_hierarchy:= p_ECO_rec.organization_hierarchy;
113         x_controller_ECO_rec.approval_date         := p_ECO_rec.approval_date;
114         x_controller_ECO_rec.approval_request_date := p_ECO_rec.approval_request_date;
115 
116         --11.5.10
117         x_controller_ECO_rec.plm_or_erp_change :=p_ECO_rec.plm_or_erp_change;
118 
119 	x_controller_ECO_rec.status_type           := p_unexp_ECO_rec.status_type;
120         x_controller_ECO_rec.approval_status_type  := p_unexp_ECO_rec.approval_status_type;
121       	x_controller_ECO_rec.organization_id       := p_unexp_ECO_rec.organization_id;
125         x_controller_ECO_rec.approval_list_id      := p_unexp_ECO_rec.approval_list_id;
122         x_controller_ECO_rec.initiation_date       := p_unexp_ECO_rec.initiation_date;
123         x_controller_ECO_rec.implementation_date   := p_unexp_ECO_rec.implementation_date;
124         x_controller_ECO_rec.cancellation_date     := p_unexp_ECO_rec.cancellation_date;
126         x_controller_ECO_rec.change_order_type_id  := p_unexp_ECO_rec.change_order_type_id;
127         x_controller_ECO_rec.responsible_organization_id := p_unexp_ECO_rec.responsible_org_id;
128         x_controller_ECO_rec.requestor_id          := p_unexp_ECO_Rec.requestor_id;
129       --x_controller_ECO_rec.project_id            := p_unexp_ECO_rec.project_id;
130       --x_controller_ECO_rec.task_id               := p_unexp_ECO_rec.task_id;
131 	--------------
132         x_controller_ECO_rec.change_id             := p_unexp_ECO_rec.change_id;
133  	x_controller_ECO_rec.change_mgmt_type_code := p_unexp_ECO_rec.change_mgmt_type_code;
134        x_controller_ECO_rec.hierarchy_id          := p_unexp_ECO_rec.hierarchy_id;
135 
136 
137 END Create_Controller_Rec;
138 
139 -- Procedure Initialize_Record
140 
141 PROCEDURE Initialize_Record
142 (   p_ECO_controller_rec        IN  Controller_Eco_Rec_Type
143 ,   p_control_rec               IN  BOM_BO_PUB.Control_Rec_Type
144 ,   x_ECO_controller_rec        IN OUT NOCOPY Controller_Eco_Rec_Type
145 ,   x_Mesg_Token_Tbl            OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
146 ,   x_return_status             OUT NOCOPY VARCHAR2
147 )
148 IS
149 l_control_rec           BOM_BO_PUB.Control_Rec_Type := p_control_rec;
150 l_ECO_controller_rec    Controller_Eco_Rec_Type := p_ECO_controller_rec;
151 l_ECO_rec               ENG_ECO_PUB.ECO_Rec_Type;
152 l1_ECO_rec              ENG_ECO_PUB.ECO_Rec_Type;
153 l_unexp_ECO_rec         ENG_ECO_PUB.ECO_Unexposed_Rec_Type;
154 l_unexp_eco_rev_rec     ENG_ECO_PUB.Eco_Rev_Unexposed_Rec_Type;
155 l_unexp_rev_item_rec    ENG_ECO_PUB.Rev_Item_Unexposed_Rec_Type;
156 l_unexp_rev_comp_rec    BOM_BO_PUB.Rev_Comp_Unexposed_Rec_Type;
157 l_unexp_SBC_rec         BOM_BO_PUB.Sub_Comp_Unexposed_Rec_Type;
158 l_unexp_RFD_rec         BOM_BO_PUB.Ref_Desg_Unexposed_Rec_Type;
159 l_unexp_rev_op_rec	BOM_RTG_PUB.Rev_Op_Unexposed_Rec_Type;       --add
160 l_unexp_rev_op_res_rec	BOM_RTG_PUB.Rev_Op_Res_Unexposed_Rec_Type;   --add
161 l_unexp_rev_sub_res_rec	BOM_RTG_PUB.Rev_Sub_Res_Unexposed_Rec_Type;  --add
162 l_eco_revision_tbl      ENG_Eco_PUB.Eco_Revision_Tbl_Type;
163 l_revised_item_tbl      ENG_Eco_PUB.Revised_Item_Tbl_Type;
164 l_rev_component_tbl     BOM_BO_PUB.Rev_Component_Tbl_Type;
165 l_ref_designator_tbl    BOM_BO_PUB.Ref_Designator_Tbl_Type;
166 l_sub_component_tbl     BOM_BO_PUB.Sub_Component_Tbl_Type;
167 l_rev_operation_tbl     BOM_RTG_PUB.Rev_Operation_Tbl_Type;     --add
168 l_rev_op_resource_tbl   BOM_RTG_PUB.Rev_Op_Resource_Tbl_Type;   --add
169 l_rev_sub_resource_tbl  BOM_RTG_PUB.Rev_Sub_Resource_Tbl_Type;  --add
170 
171 l_mesg_token_tbl        Error_Handler.Mesg_Token_Tbl_Type;
172 l_return_status         VARCHAR2(1);
173 l_msg_count             NUMBER;
174 l_disable_revision   NUMBER:=2; --BUG 3034642
175 BEGIN
176         Create_Exp_Unexp_Rec
177         ( p_controller_ECO_rec  => l_ECO_controller_rec
178         , x_ECO_rec             => l_ECO_rec
179         , x_unexp_ECO_rec       => l_unexp_ECO_rec
180         );
181 
182         l_ECO_rec.transaction_type := 'CREATE';
183 
184         ENG_FORM_ECO_PVT.Process_ECO
185         ( x_return_status          => l_return_status
186         , x_msg_count               => l_msg_count
187         , p_control_rec             => l_control_rec
188         , p_ECO_rec                 => l_eco_rec
189         , p_unexp_eco_rec           => l_unexp_ECO_rec
190         , x_unexp_eco_rec           => l_unexp_ECO_rec
191         , x_unexp_eco_rev_rec       => l_unexp_eco_rev_rec
192         , x_unexp_revised_item_rec => l_unexp_rev_item_rec
193         , x_unexp_rev_comp_rec     => l_unexp_rev_comp_rec
194         , x_unexp_sub_comp_rec     => l_unexp_SBC_rec
195         , x_unexp_ref_desg_rec     => l_unexp_RFD_rec
196         , x_unexp_rev_op_rec       => l_unexp_rev_op_rec      --add
197         , x_unexp_rev_op_res_rec   => l_unexp_rev_op_res_rec  --add
198         , x_unexp_rev_sub_res_rec  => l_unexp_rev_sub_res_rec --add
199         , x_ECO_rec                => l1_eco_rec
200         , x_eco_revision_tbl       => l_eco_revision_tbl
201         , x_revised_item_tbl       => l_revised_item_tbl
202         , x_rev_Component_tbl      => l_rev_Component_tbl
203         , x_ref_designator_tbl     => l_ref_designator_tbl
204         , x_sub_component_tbl      => l_sub_component_tbl
205 	, x_rev_operation_tbl      => l_rev_operation_tbl     --add
206 	, x_rev_op_resource_tbl    => l_rev_op_resource_tbl   --add
207 	, x_rev_sub_resource_tbl   => l_rev_sub_resource_tbl  --add
208 	,   x_disable_revision       => l_disable_revision  --BUG 3034642
209         );
210 
211         Create_Controller_Rec
212         ( p_ECO_rec             => l1_eco_rec
213         , p_unexp_eco_rec       => l_unexp_eco_rec
214         , x_controller_ECO_rec  => l_eco_controller_rec
215         );
216 
217         x_eco_controller_rec := l_eco_controller_rec;
218         x_return_status := l_return_status;
219 END Initialize_Record;
220 
221 -- Procedure Validate_And_Write
222 
223 PROCEDURE Validate_And_Write
224 (   p_ECO_controller_rec        IN  Controller_Eco_Rec_Type
225 ,   p_control_rec               IN  BOM_BO_PUB.Control_Rec_Type
226 ,   p_record_status             IN  VARCHAR2
227 ,   x_ECO_controller_rec        IN OUT NOCOPY Controller_Eco_Rec_Type
228 ,   x_Mesg_Token_Tbl            OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
229 ,   x_return_status             OUT NOCOPY VARCHAR2
230 )
231 IS
232 l_control_rec           BOM_BO_PUB.Control_Rec_Type := p_control_rec;
233 l_ECO_controller_rec    Controller_Eco_Rec_Type := p_ECO_controller_rec;
237 l_unexp_rev_item_rec    ENG_ECO_PUB.Rev_Item_Unexposed_Rec_Type;
234 l_ECO_rec               ENG_ECO_PUB.ECO_Rec_Type;
235 l_unexp_ECO_rec         ENG_ECO_PUB.ECO_Unexposed_Rec_Type;
236 l_unexp_eco_rev_rec     ENG_ECO_PUB.Eco_Rev_Unexposed_Rec_Type;
238 l_unexp_rev_comp_rec    BOM_BO_PUB.Rev_Comp_Unexposed_Rec_Type;
239 l_unexp_SBC_rec         BOM_BO_PUB.Sub_Comp_Unexposed_Rec_Type;
240 l_unexp_RFD_rec         BOM_BO_PUB.Ref_Desg_Unexposed_Rec_Type;
241 l_unexp_rev_op_rec	BOM_RTG_PUB.Rev_Op_Unexposed_Rec_Type;       --add
242 l_unexp_rev_op_res_rec	BOM_RTG_PUB.Rev_Op_Res_Unexposed_Rec_Type;   --add
243 l_unexp_rev_sub_res_rec	BOM_RTG_PUB.Rev_Sub_Res_Unexposed_Rec_Type;  --add
244 l_eco_revision_tbl      ENG_Eco_PUB.Eco_Revision_Tbl_Type;
245 l_revised_item_tbl      ENG_Eco_PUB.Revised_Item_Tbl_Type;
246 l_rev_component_tbl     BOM_BO_PUB.Rev_Component_Tbl_Type;
247 l_ref_designator_tbl    BOM_BO_PUB.Ref_Designator_Tbl_Type;
248 l_sub_component_tbl     BOM_BO_PUB.Sub_Component_Tbl_Type;
249 l_rev_operation_tbl     BOM_RTG_PUB.Rev_Operation_Tbl_Type;     --add
250 l_rev_op_resource_tbl   BOM_RTG_PUB.Rev_Op_Resource_Tbl_Type;   --add
251 l_rev_sub_resource_tbl  BOM_RTG_PUB.Rev_Sub_Resource_Tbl_Type;  --add
252 
253 l_mesg_token_tbl        Error_Handler.Mesg_Token_Tbl_Type;
254 l_return_status         VARCHAR2(1);
255 l_msg_count             NUMBER;
256 l_disable_revision   NUMBER:=2; --BUG 3034642
257 BEGIN
258 
259          Create_Exp_Unexp_Rec
260         ( p_controller_ECO_rec  => l_ECO_controller_rec
261         , x_ECO_rec             => l_ECO_rec
262         , x_unexp_ECO_rec       => l_unexp_ECO_rec
263         );
264 
265            IF p_record_status IN ('NEW', 'INSERT')
266         THEN
267                 l_ECO_rec.transaction_type := 'CREATE';
268         ELSIF p_record_status IN ('QUERY', 'CHANGED')
269         THEN
270                 l_ECO_rec.transaction_type := 'UPDATE';
271         ELSIF p_record_status = 'DELETE'
272         THEN
273                 l_ECO_rec.transaction_type := 'DELETE';
274         END IF;
275 
276 
277         ENG_FORM_ECO_PVT.Process_ECO
278         ( x_return_status          => l_return_status
279         , x_msg_count              => l_msg_count
280         , p_control_rec            => l_control_rec
281         , p_ECO_rec                => l_ECO_rec
282         , p_unexp_eco_rec          => l_unexp_ECO_rec
283         , x_unexp_eco_rec          => l_unexp_ECO_rec
284         , x_unexp_eco_rev_rec      => l_unexp_eco_rev_rec
285         , x_unexp_revised_item_rec => l_unexp_rev_item_rec
286         , x_unexp_rev_comp_rec     => l_unexp_rev_comp_rec
287         , x_unexp_sub_comp_rec     => l_unexp_SBC_rec
288         , x_unexp_ref_desg_rec     => l_unexp_RFD_rec
289         , x_unexp_rev_op_rec       => l_unexp_rev_op_rec      --add
290         , x_unexp_rev_op_res_rec   => l_unexp_rev_op_res_rec  --add
291         , x_unexp_rev_sub_res_rec  => l_unexp_rev_sub_res_rec --add
292         , x_ECO_rec                => l_ECO_rec
293         , x_eco_revision_tbl       => l_eco_revision_tbl
294         , x_revised_item_tbl       => l_revised_item_tbl
295         , x_rev_Component_tbl      => l_rev_Component_tbl
296         , x_ref_designator_tbl     => l_ref_designator_tbl
297         , x_sub_component_tbl      => l_sub_component_tbl
298 	, x_rev_operation_tbl      => l_rev_operation_tbl     --add
299 	, x_rev_op_resource_tbl    => l_rev_op_resource_tbl   --add
300 	, x_rev_sub_resource_tbl   => l_rev_sub_resource_tbl  --add
301 	,   x_disable_revision       => l_disable_revision  --BUG 3034642
302         );
303 
304         Create_Controller_Rec
305         ( p_ECO_rec             => l_eco_rec
306         , p_unexp_eco_rec       => l_unexp_eco_rec
307         , x_controller_ECO_rec  => l_eco_controller_rec
308         );
309 
310         x_eco_controller_rec := l_eco_controller_rec;
311         x_return_status := l_return_status;
312 END Validate_And_Write;
313 
314 -- Procedure Delete_Row
315 
316 PROCEDURE Delete_Row
317 (   p_ECO_controller_rec        IN  Controller_Eco_Rec_Type
318 ,   p_control_rec               IN  BOM_BO_PUB.Control_Rec_Type
319 ,   x_Mesg_Token_Tbl            OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
320 ,   x_return_status             OUT NOCOPY VARCHAR2
321 )
322 IS
323 l_control_rec           BOM_BO_PUB.Control_Rec_Type := p_control_rec;
324 l_ECO_controller_rec    Controller_Eco_Rec_Type := p_ECO_controller_rec;
325 l_ECO_rec               ENG_ECO_PUB.ECO_Rec_Type;
326 l_unexp_ECO_rec         ENG_ECO_PUB.ECO_Unexposed_Rec_Type;
327 l_unexp_eco_rev_rec     ENG_ECO_PUB.Eco_Rev_Unexposed_Rec_Type;
328 l_unexp_rev_item_rec    ENG_ECO_PUB.Rev_Item_Unexposed_Rec_Type;
329 l_unexp_rev_comp_rec    BOM_BO_PUB.Rev_Comp_Unexposed_Rec_Type;
330 l_unexp_SBC_rec         BOM_BO_PUB.Sub_Comp_Unexposed_Rec_Type;
331 l_unexp_RFD_rec         BOM_BO_PUB.Ref_Desg_Unexposed_Rec_Type;
332 l_unexp_rev_op_rec	BOM_RTG_PUB.Rev_Op_Unexposed_Rec_Type;       --add
333 l_unexp_rev_op_res_rec	BOM_RTG_PUB.Rev_Op_Res_Unexposed_Rec_Type;   --add
334 l_unexp_rev_sub_res_rec	BOM_RTG_PUB.Rev_Sub_Res_Unexposed_Rec_Type;  --add
335 l_eco_revision_tbl      ENG_Eco_PUB.Eco_Revision_Tbl_Type;
336 l_revised_item_tbl      ENG_Eco_PUB.Revised_Item_Tbl_Type;
337 l_rev_component_tbl     BOM_BO_PUB.Rev_Component_Tbl_Type;
338 l_ref_designator_tbl    BOM_BO_PUB.Ref_Designator_Tbl_Type;
339 l_sub_component_tbl     BOM_BO_PUB.Sub_Component_Tbl_Type;
340 l_rev_operation_tbl     BOM_RTG_PUB.Rev_Operation_Tbl_Type;     --add
341 l_rev_op_resource_tbl   BOM_RTG_PUB.Rev_Op_Resource_Tbl_Type;   --add
342 l_rev_sub_resource_tbl  BOM_RTG_PUB.Rev_Sub_Resource_Tbl_Type;  --add
343 
344 l_mesg_token_tbl        Error_Handler.Mesg_Token_Tbl_Type;
345 l_return_status         VARCHAR2(1);
346 l_msg_count             NUMBER;
347 l_disable_revision   NUMBER:=2; --BUG 3034642
348 BEGIN
349         Create_Exp_Unexp_Rec
350         ( p_controller_ECO_rec  => l_ECO_controller_rec
354 
351         , x_ECO_rec             => l_ECO_rec
352         , x_unexp_ECO_rec       => l_unexp_ECO_rec
353         );
355         l_control_rec.entity_validation := TRUE;
356         l_control_rec.write_to_db := TRUE;
357         l_control_rec.process_entity := ENG_Globals.G_ENTITY_ECO;
358 
359         l_ECO_rec.transaction_type := 'DELETE';
360 
361         ENG_FORM_ECO_PVT.Process_ECO
362         ( x_return_status       => l_return_status
363         , x_msg_count           => l_msg_count
364         , p_control_rec         => l_control_rec
365         , p_ECO_rec             => l_eco_rec
366         , p_unexp_eco_rec       => l_unexp_ECO_rec
367         , x_unexp_eco_rec       => l_unexp_ECO_rec
368         , x_unexp_eco_rev_rec   => l_unexp_eco_rev_rec
369         , x_unexp_revised_item_rec => l_unexp_rev_item_rec
370         , x_unexp_rev_comp_rec     => l_unexp_rev_comp_rec
371         , x_unexp_sub_comp_rec     => l_unexp_SBC_rec
372         , x_unexp_ref_desg_rec     => l_unexp_RFD_rec
373         , x_unexp_rev_op_rec       => l_unexp_rev_op_rec      --add
374         , x_unexp_rev_op_res_rec   => l_unexp_rev_op_res_rec  --add
375         , x_unexp_rev_sub_res_rec  => l_unexp_rev_sub_res_rec --add
376         , x_ECO_rec                => l_eco_rec
377         , x_eco_revision_tbl       => l_eco_revision_tbl
378         , x_revised_item_tbl       => l_revised_item_tbl
379         , x_rev_Component_tbl      => l_rev_Component_tbl
380         , x_ref_designator_tbl     => l_ref_designator_tbl
381         , x_sub_component_tbl      => l_sub_component_tbl
382 	, x_rev_operation_tbl      => l_rev_operation_tbl     --add
383 	, x_rev_op_resource_tbl    => l_rev_op_resource_tbl   --add
384 	, x_rev_sub_resource_tbl   => l_rev_sub_resource_tbl  --add
385 	,   x_disable_revision       => l_disable_revision  --BUG 3034642
386         );
387 
388         x_return_status := l_return_status;
389 END Delete_Row;
390 
391 --Procedure Change_Attibute
392 
393 PROCEDURE Change_Attribute
394 (   p_ECO_controller_rec        IN  Controller_Eco_Rec_Type
395 ,   p_control_rec               IN  BOM_BO_PUB.Control_Rec_Type
396 ,   p_record_status             IN  VARCHAR2
397 ,   x_ECO_controller_rec        IN OUT NOCOPY Controller_Eco_Rec_Type
398 ,   x_Mesg_Token_Tbl            OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
399 ,   x_return_status             OUT NOCOPY VARCHAR2
400 )
401 IS
402 l_control_rec           BOM_BO_PUB.Control_Rec_Type := p_control_rec;
403 l_ECO_controller_rec    Controller_Eco_Rec_Type := p_ECO_controller_rec;
404 l_ECO_rec               ENG_ECO_PUB.ECO_Rec_Type;
405 l_unexp_ECO_rec         ENG_ECO_PUB.ECO_Unexposed_Rec_Type;
406 l_unexp_eco_rev_rec     ENG_ECO_PUB.Eco_Rev_Unexposed_Rec_Type;
407 l_unexp_rev_item_rec    ENG_ECO_PUB.Rev_Item_Unexposed_Rec_Type;
408 l_unexp_rev_comp_rec    BOM_BO_PUB.Rev_Comp_Unexposed_Rec_Type;
409 l_unexp_SBC_rec         BOM_BO_PUB.Sub_Comp_Unexposed_Rec_Type;
410 l_unexp_RFD_rec         BOM_BO_PUB.Ref_Desg_Unexposed_Rec_Type;
411 l_unexp_rev_op_rec	BOM_RTG_PUB.Rev_Op_Unexposed_Rec_Type;       --add
412 l_unexp_rev_op_res_rec	BOM_RTG_PUB.Rev_Op_Res_Unexposed_Rec_Type;   --add
413 l_unexp_rev_sub_res_rec	BOM_RTG_PUB.Rev_Sub_Res_Unexposed_Rec_Type;  --add
414 l_eco_revision_tbl      ENG_Eco_PUB.Eco_Revision_Tbl_Type;
415 l_revised_item_tbl      ENG_Eco_PUB.Revised_Item_Tbl_Type;
416 l_rev_component_tbl     BOM_BO_PUB.Rev_Component_Tbl_Type;
417 l_ref_designator_tbl    BOM_BO_PUB.Ref_Designator_Tbl_Type;
418 l_sub_component_tbl     BOM_BO_PUB.Sub_Component_Tbl_Type;
419 l_rev_operation_tbl     BOM_RTG_PUB.Rev_Operation_Tbl_Type;     --add
420 l_rev_op_resource_tbl   BOM_RTG_PUB.Rev_Op_Resource_Tbl_Type;   --add
421 l_rev_sub_resource_tbl  BOM_RTG_PUB.Rev_Sub_Resource_Tbl_Type;  --add
422 l_mesg_token_tbl        Error_Handler.Mesg_Token_Tbl_Type;
423 l_return_status         VARCHAR2(1);
424 l_msg_count             NUMBER;
425 l_other_message         VARCHAR2(50);
426 l_other_token_tbl       Error_Handler.Token_Tbl_Type;
427 l_disable_revision   NUMBER:=2; --BUG 3034642
428 BEGIN
429 
430         Create_Exp_Unexp_Rec
431         ( p_controller_ECO_rec  => l_ECO_controller_rec
432         , x_ECO_rec             => l_ECO_rec
433         , x_unexp_ECO_rec       => l_unexp_ECO_rec
434         );
435 
436 
437         IF p_record_status IN ('NEW', 'INSERT')
438         THEN
439                 l_ECO_rec.transaction_type := 'CREATE';
440         ELSIF p_record_status IN ('QUERY', 'CHANGED')
441         THEN
442                 l_ECO_rec.transaction_type := 'UPDATE';
443         END IF;
444 
445         ENG_FORM_ECO_PVT.Process_ECO
446         ( x_return_status       => l_return_status
447         , x_msg_count           => l_msg_count
448         , p_control_rec         => l_control_rec
449         , p_ECO_rec             => l_eco_rec
450         , p_unexp_eco_rec       => l_unexp_ECO_rec
451         , x_unexp_eco_rec       => l_unexp_ECO_rec
452         , x_unexp_eco_rev_rec   => l_unexp_eco_rev_rec
453         , x_unexp_revised_item_rec => l_unexp_rev_item_rec
454         , x_unexp_rev_comp_rec     => l_unexp_rev_comp_rec
455         , x_unexp_sub_comp_rec     => l_unexp_SBC_rec
456         , x_unexp_ref_desg_rec     => l_unexp_RFD_rec
457         , x_unexp_rev_op_rec       => l_unexp_rev_op_rec      --add
458         , x_unexp_rev_op_res_rec   => l_unexp_rev_op_res_rec  --add
459         , x_unexp_rev_sub_res_rec  => l_unexp_rev_sub_res_rec --add
460         , x_ECO_rec                => l_eco_rec
461         , x_eco_revision_tbl       => l_eco_revision_tbl
462         , x_revised_item_tbl       => l_revised_item_tbl
463         , x_rev_Component_tbl      => l_rev_Component_tbl
464         , x_ref_designator_tbl     => l_ref_designator_tbl
465         , x_sub_component_tbl      => l_sub_component_tbl
466 	, x_rev_operation_tbl      => l_rev_operation_tbl     --add
467 	, x_rev_op_resource_tbl    => l_rev_op_resource_tbl   --add
471        Create_Controller_Rec
468 	, x_rev_sub_resource_tbl   => l_rev_sub_resource_tbl  --add
469 	,   x_disable_revision       => l_disable_revision  --BUG 3034642
470       );
472         ( p_ECO_rec             => l_eco_rec
473         , p_unexp_eco_rec       => l_unexp_eco_rec
474         , x_controller_ECO_rec  => l_eco_controller_rec
475         );
476         x_eco_controller_rec := l_eco_controller_rec;
477         x_return_status := l_return_status;
478 
479 /*
480 EXCEPTION
481       WHEN OTHERS THEN
482         Eco_Error_Handler.Log_Error
483                 (  p_ECO_rec            => l_ECO_rec
484                 ,  p_eco_revision_tbl   => l_eco_revision_tbl
485                 ,  p_revised_item_tbl   => l_revised_item_tbl
486                 ,  p_rev_component_tbl  => l_rev_component_tbl
487                 ,  p_ref_designator_tbl => l_ref_designator_tbl
488                 ,  p_sub_component_tbl  => l_sub_component_tbl
489                 ,  p_rev_operation_tbl    => l_rev_operation_tbl       --add
490                 ,  p_rev_op_resource_tbl  => l_rev_op_resource_tbl     --add
491                 ,  p_rev_sub_resource_tbl => l_rev_sub_resource_tbl    --add
492                 ,  p_mesg_token_tbl     => l_mesg_token_tbl
493                 ,  p_error_status       => FND_API.G_RET_STS_UNEXP_ERROR
494                 ,  p_other_status       => Error_Handler.G_STATUS_NOT_PICKED
495                 ,  p_other_message      => l_other_message
496                 ,  p_other_token_tbl    => l_other_token_tbl
497                 ,  p_error_level        => 0
498                 ,  x_ECO_rec            => l_ECO_rec
499                 ,  x_eco_revision_tbl   => l_eco_revision_tbl
500                 ,  x_revised_item_tbl   => l_revised_item_tbl
501                 ,  x_rev_component_tbl  => l_rev_component_tbl
502                 ,  x_ref_designator_tbl => l_ref_designator_tbl
503                 ,  x_sub_component_tbl  => l_sub_component_tbl
504                 ,  x_rev_operation_tbl    => l_rev_operation_tbl         --add
505                 ,  x_rev_op_resource_tbl  => l_rev_op_resource_tbl       --add
506                 ,  x_rev_sub_resource_tbl => l_rev_sub_resource_tbl      --add
507                 );
508 
509 
510        x_return_status := 1;
511 */
512 
513 
514 END Change_Attribute;
515 
516 /*PROCEDURE Lock_Row
517 (   x_return_status                 OUT NOCOPY VARCHAR2
518 ,   x_err_text                      OUT NOCOPY VARCHAR2
519 ,   p_ECO_rec                       IN  ENG_Eco_PUB.Eco_Rec_Type
520 ,   x_ECO_rec                       OUT NOCOPY ENG_Eco_PUB.Eco_Rec_Type
521 );
522 */
523 
524 END ECO_Controller;