[Home] [Help]
Skip to content
PACKAGE BODY: APPS.EAM_REQUIREMENTS_PKG
Source
1 PACKAGE BODY EAM_REQUIREMENTS_PKG as
2 /* $Header: EAMMRTHB.pls 120.4 2009/10/01 10:18:22 vchidura ship $ */
3
4
5 PROCEDURE Pre_Insert IS
6 BEGIN
7 null;
8 END Pre_Insert;
9
10
11 PROCEDURE Insert_Row (X_row_id IN OUT NOCOPY VARCHAR2,
12 X_inventory_item_id IN NUMBER,
13 X_organization_id IN NUMBER,
14 X_wip_entity_id IN NUMBER,
15 X_operation_seq_num IN NUMBER,
16 X_repetitive_schedule_id IN NUMBER,
17 X_last_update_date IN DATE,
18 X_last_updated_by IN NUMBER,
19 X_creation_date IN DATE,
20 X_created_by IN NUMBER,
21 X_last_update_login IN NUMBER,
22 X_department_id IN NUMBER,
23 X_wip_supply_type IN NUMBER,
24 X_date_required IN DATE,
25 X_required_quantity IN NUMBER,
26 X_quantity_issued IN NUMBER,
27 X_quantity_per_assembly IN NUMBER,
28 X_comments IN VARCHAR2,
29 X_supply_subinventory IN VARCHAR2,
30 X_supply_locator_id IN NUMBER,
31 X_mrp_net_flag IN NUMBER,
32 X_mps_required_quantity IN NUMBER,
33 X_mps_date_required IN DATE,
34 X_attribute_category IN VARCHAR2,
35 X_attribute1 IN VARCHAR2,
36 X_attribute2 IN VARCHAR2,
37 X_attribute3 IN VARCHAR2,
38 X_attribute4 IN VARCHAR2,
39 X_attribute5 IN VARCHAR2,
40 X_attribute6 IN VARCHAR2,
41 X_attribute7 IN VARCHAR2,
42 X_attribute8 IN VARCHAR2,
43 X_attribute9 IN VARCHAR2,
44 X_attribute10 IN VARCHAR2,
45 X_attribute11 IN VARCHAR2,
46 X_attribute12 IN VARCHAR2,
47 X_attribute13 IN VARCHAR2,
48 X_attribute14 IN VARCHAR2,
49 X_attribute15 IN VARCHAR2,
50 X_auto_request_material IN VARCHAR2,
51 X_L_EAM_MAT_REC OUT NOCOPY EAM_PROCESS_WO_PUB.eam_mat_req_rec_type,
52 X_material_shortage_flag OUT NOCOPY VARCHAR2,
53 X_material_shortage_check_date OUT NOCOPY DATE
54 ) IS
55
56 l_return_status VARCHAR2(30) := '';
57 l_msg_count NUMBER := 0;
58 l_msg_data VARCHAR2(2000) := '';
59 l_status_type NUMBER;
60 l_material_issue_by_mo VARCHAR2(1);
61 l_output_dir VARCHAR2(512);
62 l_error_message VARCHAR2(1000);
63
64 l_eam_mat_req_rec EAM_PROCESS_WO_PUB.eam_mat_req_rec_type ;
65 l_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
66
67 l_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
68 l_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
69 l_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
70 l_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
71 l_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
72 l_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
73 l_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
74 l_eam_di_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
75 l_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
76 l_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
77 l_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
78 l_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
79 l_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
80 l_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
81 l_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
82 l_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
83
84 l_out_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
85 l_out_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
86 l_out_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
87 l_out_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
88 l_out_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
89 l_out_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
90 l_out_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
91 l_out_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
92 l_out_eam_di_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
93 l_out_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
94 l_out_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
95 l_out_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
96 l_out_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
97 l_out_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
98 l_out_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
99 l_out_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
100 l_out_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
101
102 CURSOR C IS
103 SELECT rowid
104 FROM WIP_REQUIREMENT_OPERATIONS
105 WHERE inventory_item_id = X_inventory_item_id
106 AND organization_id = X_organization_id
107 AND wip_entity_id = X_wip_entity_id
108 AND operation_seq_num = X_operation_seq_num;
109 BEGIN
110
111 /* get output directory path from database */
112 EAM_WORKORDER_UTIL_PKG.log_path(l_output_dir);
113
114
115 l_eam_mat_req_rec.header_id := X_wip_entity_id;
116 l_eam_mat_req_rec.batch_id := 1;
117 l_eam_mat_req_rec.wip_entity_id := X_wip_entity_id;
118 l_eam_mat_req_rec.organization_id := X_organization_id;
119 l_eam_mat_req_rec.operation_seq_num := X_operation_seq_num;
120 l_eam_mat_req_rec.inventory_item_id := X_inventory_item_id;
121 l_eam_mat_req_rec.quantity_per_assembly := X_quantity_per_assembly;
122 l_eam_mat_req_rec.department_id := X_department_id;
123 l_eam_mat_req_rec.wip_supply_type := X_wip_supply_type;
124 l_eam_mat_req_rec.date_required := X_date_required;
125 l_eam_mat_req_rec.required_quantity := X_required_quantity;
126 l_eam_mat_req_rec.quantity_issued := X_quantity_issued;
127 l_eam_mat_req_rec.supply_subinventory := X_supply_subinventory;
128 l_eam_mat_req_rec.supply_locator_id := X_supply_locator_id;
129 l_eam_mat_req_rec.mrp_net_flag := X_mrp_net_flag;
130 l_eam_mat_req_rec.mps_required_quantity := X_mps_required_quantity;
131 l_eam_mat_req_rec.mps_date_required := X_mps_date_required;
132 l_eam_mat_req_rec.component_sequence_id := null;
133 l_eam_mat_req_rec.comments := X_comments;
134 l_eam_mat_req_rec.attribute_category := X_attribute_category;
135 l_eam_mat_req_rec.attribute1 := X_attribute1;
136 l_eam_mat_req_rec.attribute2 := X_attribute2;
137 l_eam_mat_req_rec.attribute3 := X_attribute3;
138 l_eam_mat_req_rec.attribute4 := X_attribute4;
139 l_eam_mat_req_rec.attribute5 := X_attribute5;
140 l_eam_mat_req_rec.attribute6 := X_attribute6;
141 l_eam_mat_req_rec.attribute7 := X_attribute7;
142 l_eam_mat_req_rec.attribute8 := X_attribute8;
143 l_eam_mat_req_rec.attribute9 := X_attribute9;
144 l_eam_mat_req_rec.attribute10 := X_attribute10;
145 l_eam_mat_req_rec.attribute11 := X_attribute11;
146 l_eam_mat_req_rec.attribute12 := X_attribute12;
147 l_eam_mat_req_rec.attribute13 := X_attribute13;
148 l_eam_mat_req_rec.attribute14 := X_attribute14;
149 l_eam_mat_req_rec.attribute15 := X_attribute15;
150 l_eam_mat_req_rec.auto_request_material := X_auto_request_material;
151 l_eam_mat_req_rec.suggested_vendor_name := null;
152 l_eam_mat_req_rec.vendor_id := null;
153 l_eam_mat_req_rec.unit_price := null;
154 l_eam_mat_req_rec.request_id := null;
155 l_eam_mat_req_rec.program_application_id := null;
156 l_eam_mat_req_rec.program_id := null;
157 l_eam_mat_req_rec.program_update_date := sysdate;
158 l_eam_mat_req_rec.return_status := null;
159 l_eam_mat_req_rec.transaction_type := EAM_PROCESS_WO_PVT.G_OPR_CREATE;
160
161 l_eam_mat_req_tbl(1) := l_eam_mat_req_rec;
162
163 begin
164 EAM_PROCESS_WO_PUB.Process_WO
165 ( p_bo_identifier => 'EAM'
166 , p_init_msg_list => TRUE
167 , p_api_version_number => 1.0
168 , p_commit => 'N'
169 , p_eam_wo_rec => l_eam_wo_rec
170 , p_eam_op_tbl => l_eam_op_tbl
171 , p_eam_op_network_tbl => l_eam_op_network_tbl
172 , p_eam_res_tbl => l_eam_res_tbl
173 , p_eam_res_inst_tbl => l_eam_res_inst_tbl
174 , p_eam_sub_res_tbl => l_eam_sub_res_tbl
175 , p_eam_res_usage_tbl => l_eam_res_usage_tbl
176 , p_eam_mat_req_tbl => l_eam_mat_req_tbl
177 , p_eam_direct_items_tbl => l_eam_di_tbl
178 , p_eam_wo_comp_rec => l_eam_wo_comp_rec
179 , p_eam_wo_quality_tbl => l_eam_wo_quality_tbl
180 , p_eam_meter_reading_tbl => l_eam_meter_reading_tbl
181 , p_eam_counter_prop_tbl => l_eam_counter_prop_tbl
182 , p_eam_wo_comp_rebuild_tbl => l_eam_wo_comp_rebuild_tbl
183 , p_eam_wo_comp_mr_read_tbl => l_eam_wo_comp_mr_read_tbl
184 , p_eam_op_comp_tbl => l_eam_op_comp_tbl
185 , p_eam_request_tbl => l_eam_request_tbl
186 , x_eam_wo_rec => l_out_eam_wo_rec
187 , x_eam_op_tbl => l_out_eam_op_tbl
188 , x_eam_op_network_tbl => l_out_eam_op_network_tbl
189 , x_eam_res_tbl => l_out_eam_res_tbl
190 , x_eam_res_inst_tbl => l_out_eam_res_inst_tbl
191 , x_eam_sub_res_tbl => l_out_eam_sub_res_tbl
192 , x_eam_res_usage_tbl => l_out_eam_res_usage_tbl
193 , x_eam_mat_req_tbl => l_out_eam_mat_req_tbl
194 , x_eam_direct_items_tbl => l_out_eam_di_tbl
195 , x_eam_wo_comp_rec => l_out_eam_wo_comp_rec
196 , x_eam_wo_quality_tbl => l_out_eam_wo_quality_tbl
197 , x_eam_meter_reading_tbl => l_out_eam_meter_reading_tbl
198 , x_eam_counter_prop_tbl => l_out_eam_counter_prop_tbl
199 , x_eam_wo_comp_rebuild_tbl => l_out_eam_wo_comp_rebuild_tbl
200 , x_eam_wo_comp_mr_read_tbl => l_out_eam_wo_comp_mr_read_tbl
201 , x_eam_op_comp_tbl => l_out_eam_op_comp_tbl
202 , x_eam_request_tbl => l_out_eam_request_tbl
203 , x_return_status => l_return_status
204 , x_msg_count => l_msg_count
205 , p_debug => NVL(fnd_profile.value('EAM_DEBUG'), 'N')
206 , p_debug_filename => 'insertmrthb.log'
207 , p_output_dir => l_output_dir
208 , p_debug_file_mode => 'w'
209 );
210
211 EXCEPTION
212 WHEN OTHERS THEN
213 EAM_WORKORDER_UTIL_PKG.show_mesg;
214 APP_EXCEPTION.RAISE_EXCEPTION;
215 END;
216
217 IF (l_return_status = 'S') THEN
218 X_L_EAM_MAT_REC := l_out_eam_mat_req_tbl(1);
219 x_material_shortage_flag := l_out_eam_wo_rec.material_shortage_flag;
220 x_material_shortage_check_date := l_out_eam_wo_rec.material_shortage_check_date;
221 ELSE
222 EAM_WORKORDER_UTIL_PKG.show_mesg;
223 APP_EXCEPTION.RAISE_EXCEPTION;
224 END IF;
225
226
227 OPEN C;
228 FETCH C INTO X_row_id;
229 IF (C%NOTFOUND) THEN
230 CLOSE C;
231 RAISE NO_DATA_FOUND;
232 END IF;
233 CLOSE C;
234
235 END Insert_Row;
236
237
238
239 PROCEDURE Update_Row (X_row_id IN VARCHAR2,
240 X_inventory_item_id IN NUMBER,
241 X_organization_id IN NUMBER,
242 X_wip_entity_id IN NUMBER,
243 X_operation_seq_num IN NUMBER,
244 X_repetitive_schedule_id IN NUMBER,
245 X_last_update_date IN DATE,
246 X_last_updated_by IN NUMBER,
247 X_last_update_login IN NUMBER,
248 X_department_id IN NUMBER,
249 X_wip_supply_type IN NUMBER,
250 X_date_required IN DATE,
251 X_required_quantity IN NUMBER,
252 X_quantity_issued IN NUMBER,
253 X_quantity_per_assembly IN NUMBER,
254 X_comments IN VARCHAR2,
255 X_supply_subinventory IN VARCHAR2,
256 X_supply_locator_id IN NUMBER,
257 X_mrp_net_flag IN NUMBER,
258 X_mps_required_quantity IN NUMBER,
259 X_mps_date_required IN DATE,
260 X_attribute_category IN VARCHAR2,
261 X_attribute1 IN VARCHAR2,
262 X_attribute2 IN VARCHAR2,
263 X_attribute3 IN VARCHAR2,
264 X_attribute4 IN VARCHAR2,
265 X_attribute5 IN VARCHAR2,
266 X_attribute6 IN VARCHAR2,
267 X_attribute7 IN VARCHAR2,
268 X_attribute8 IN VARCHAR2,
269 X_attribute9 IN VARCHAR2,
270 X_attribute10 IN VARCHAR2,
271 X_attribute11 IN VARCHAR2,
272 X_attribute12 IN VARCHAR2,
273 X_attribute13 IN VARCHAR2,
274 X_attribute14 IN VARCHAR2,
275 X_attribute15 IN VARCHAR2,
276 X_auto_request_material IN VARCHAR2,
277 X_L_EAM_MAT_REC OUT NOCOPY EAM_PROCESS_WO_PUB.eam_mat_req_rec_type,
278 X_material_shortage_flag OUT NOCOPY VARCHAR2,
279 X_material_shortage_check_date OUT NOCOPY DATE
280 )IS
281
282 l_return_status VARCHAR2(30) := '';
283 l_msg_count NUMBER := 0;
284 l_msg_data VARCHAR2(2000) := '';
285 l_req_qty NUMBER := 0;
286 l_status_type NUMBER;
287 l_material_issue_by_mo VARCHAR2(1);
288
289 l_output_dir VARCHAR2(512);
290 l_eam_mat_req_rec EAM_PROCESS_WO_PUB.eam_mat_req_rec_type ;
294 l_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
291 l_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
292
293 l_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
295 l_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
296 l_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
297 l_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
298 l_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
299 l_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
300 l_eam_di_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
301 l_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
302 l_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
303 l_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
304 l_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
305 l_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
306 l_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
307 l_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
308 l_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
309
310 l_out_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
311 l_out_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
312 l_out_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
313 l_out_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
314 l_out_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
315 l_out_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
316 l_out_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
317 l_out_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
318 l_out_eam_di_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
319 l_out_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
320 l_out_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
321 l_out_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
322 l_out_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
323 l_out_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
324 l_out_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
325 l_out_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
326 l_out_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
327
328 /* Added for bug 8969942---start --- */
329 l_prev_comments VARCHAR2(4000);
330 l_prev_attribute_category VARCHAR2(30);
331 l_prev_attribute1 VARCHAR2(150);
332 l_prev_attribute2 VARCHAR2(150);
333 l_prev_attribute3 VARCHAR2(150);
334 l_prev_attribute4 VARCHAR2(150);
335 l_prev_attribute5 VARCHAR2(150);
336 l_prev_attribute6 VARCHAR2(150);
337 l_prev_attribute7 VARCHAR2(150);
338 l_prev_attribute8 VARCHAR2(150);
339 l_prev_attribute9 VARCHAR2(150);
340 l_prev_attribute10 VARCHAR2(150);
341 l_prev_attribute11 VARCHAR2(150);
342 l_prev_attribute12 VARCHAR2(150);
343 l_prev_attribute13 VARCHAR2(150);
344 l_prev_attribute14 VARCHAR2(150);
345 l_prev_attribute15 VARCHAR2(150);
346 /* ------end -----------------------*/
347
348 BEGIN
349 /* get output directory path from database */
350 EAM_WORKORDER_UTIL_PKG.log_path(l_output_dir);
351
352 /* Adding Code to get previous operation data fields for 8969942 .. start ... */
353
354 Begin
355 select comments
356 ,attribute_category
357 ,attribute1
358 ,attribute2
359 ,attribute3
360 ,attribute4
361 ,attribute5
362 ,attribute6
363 ,attribute7
364 ,attribute8
365 ,attribute9
366 ,attribute10
367 ,attribute11
368 ,attribute12
369 ,attribute13
370 ,attribute14
371 ,attribute15
372 into l_prev_comments
373 ,l_prev_attribute_category
374 ,l_prev_attribute1
375 ,l_prev_attribute2
376 ,l_prev_attribute3
377 ,l_prev_attribute4
378 ,l_prev_attribute5
379 ,l_prev_attribute6
380 ,l_prev_attribute7
381 ,l_prev_attribute8
382 ,l_prev_attribute9
383 ,l_prev_attribute10
384 ,l_prev_attribute11
385 ,l_prev_attribute12
386 ,l_prev_attribute13
387 ,l_prev_attribute14
388 ,l_prev_attribute15
389 from WIP_REQUIREMENT_OPERATIONS
390 where wip_entity_id =X_wip_Entity_Id
391 and organization_id = X_organization_id
392 and operation_seq_num= X_Operation_Seq_Num
393 and INVENTORY_ITEM_ID = X_inventory_item_id;
394 EXCEPTION
395 WHEN NO_DATA_FOUND THEN
396 null;
397 When Others then
398 null;
399 END;
400
401 /* ... end ... for 8861997*/
405 l_eam_mat_req_rec.header_id := X_wip_entity_id;
402
403
404
406 l_eam_mat_req_rec.batch_id := 1;
407 l_eam_mat_req_rec.wip_entity_id := X_wip_entity_id;
408 l_eam_mat_req_rec.organization_id := X_organization_id;
409 l_eam_mat_req_rec.operation_seq_num := X_operation_seq_num;
410 l_eam_mat_req_rec.inventory_item_id := X_inventory_item_id;
411 l_eam_mat_req_rec.quantity_per_assembly := X_quantity_per_assembly;
412 l_eam_mat_req_rec.department_id := X_department_id;
413 l_eam_mat_req_rec.wip_supply_type := X_wip_supply_type;
414 l_eam_mat_req_rec.date_required := X_date_required;
415 l_eam_mat_req_rec.required_quantity := X_required_quantity;
416 l_eam_mat_req_rec.quantity_issued := X_quantity_issued;
417 l_eam_mat_req_rec.supply_subinventory := X_supply_subinventory;
418 l_eam_mat_req_rec.supply_locator_id := X_supply_locator_id;
419 l_eam_mat_req_rec.mrp_net_flag := X_mrp_net_flag;
420 l_eam_mat_req_rec.mps_required_quantity := X_mps_required_quantity;
421 l_eam_mat_req_rec.mps_date_required := X_mps_date_required;
422 l_eam_mat_req_rec.component_sequence_id := null;
423 l_eam_mat_req_rec.auto_request_material := X_auto_request_material;
424 l_eam_mat_req_rec.suggested_vendor_name := null;
425 l_eam_mat_req_rec.vendor_id := null;
426 l_eam_mat_req_rec.unit_price := null;
427 l_eam_mat_req_rec.request_id := null;
428 l_eam_mat_req_rec.program_application_id := null;
429 l_eam_mat_req_rec.program_id := null;
430 l_eam_mat_req_rec.program_update_date := sysdate;
431 l_eam_mat_req_rec.return_status := null;
432 l_eam_mat_req_rec.transaction_type := EAM_PROCESS_WO_PVT.G_OPR_UPDATE;
433
434 /*---- code added for bug 8969942 -----start --*/
435
436
437 IF l_prev_comments is not null and X_comments is null THEN
438 l_eam_mat_req_rec.comments := FND_API.G_MISS_CHAR;
439 ELSE
440 l_eam_mat_req_rec.comments := X_comments;
441 END IF;
442
443 IF l_prev_attribute_category is not null and X_attribute_category is null THEN
444 l_eam_mat_req_rec.attribute_category := FND_API.G_MISS_CHAR;
445 ELSE
446 l_eam_mat_req_rec.attribute_category := X_attribute_category;
447 END IF;
448
449 IF l_prev_attribute1 is not null and X_attribute1 is null THEN
450 l_eam_mat_req_rec.attribute1 := FND_API.G_MISS_CHAR;
451 ELSE
452 l_eam_mat_req_rec.attribute1 := X_attribute1;
453 END IF;
454
455 IF l_prev_attribute2 is not null and X_attribute2 is null THEN
456 l_eam_mat_req_rec.attribute2 := FND_API.G_MISS_CHAR;
457 ELSE
458 l_eam_mat_req_rec.attribute2 := X_attribute2;
459 END IF;
460
461 IF l_prev_attribute3 is not null and X_attribute3 is null THEN
462 l_eam_mat_req_rec.attribute3 := FND_API.G_MISS_CHAR;
463 ELSE
464 l_eam_mat_req_rec.attribute3 := X_attribute3;
465 END IF;
466
467 IF l_prev_attribute4 is not null and X_attribute4 is null THEN
468 l_eam_mat_req_rec.attribute4 := FND_API.G_MISS_CHAR;
469 ELSE
470 l_eam_mat_req_rec.attribute4 := X_attribute4;
471 END IF;
472
473 IF l_prev_attribute5 is not null and X_attribute5 is null THEN
474 l_eam_mat_req_rec.attribute5 := FND_API.G_MISS_CHAR;
475 ELSE
476 l_eam_mat_req_rec.attribute5 := X_attribute5;
477 END IF;
478
479 IF l_prev_attribute6 is not null and X_attribute6 is null THEN
480 l_eam_mat_req_rec.attribute6 := FND_API.G_MISS_CHAR;
481 ELSE
482 l_eam_mat_req_rec.attribute6 := X_attribute6;
483 END IF;
484
485 IF l_prev_attribute7 is not null and X_attribute7 is null THEN
486 l_eam_mat_req_rec.attribute7 := FND_API.G_MISS_CHAR;
487 ELSE
488 l_eam_mat_req_rec.attribute7 := X_attribute7;
489 END IF;
490
491 IF l_prev_attribute8 is not null and X_attribute8 is null THEN
492 l_eam_mat_req_rec.attribute8 := FND_API.G_MISS_CHAR;
493 ELSE
494 l_eam_mat_req_rec.attribute8 := X_attribute8;
495 END IF;
496
497 IF l_prev_attribute9 is not null and X_attribute9 is null THEN
498 l_eam_mat_req_rec.attribute9 := FND_API.G_MISS_CHAR;
499 ELSE
500 l_eam_mat_req_rec.attribute9 := X_attribute9;
501 END IF;
502
506 l_eam_mat_req_rec.attribute10 := X_attribute10;
503 IF l_prev_attribute10 is not null and X_attribute10 is null THEN
504 l_eam_mat_req_rec.attribute10 := FND_API.G_MISS_CHAR;
505 ELSE
507 END IF;
508
509 IF l_prev_attribute11 is not null and X_attribute11 is null THEN
510 l_eam_mat_req_rec.attribute11 := FND_API.G_MISS_CHAR;
511 ELSE
512 l_eam_mat_req_rec.attribute11 := X_attribute11;
513 END IF;
514
515 IF l_prev_attribute12 is not null and X_attribute12 is null THEN
516 l_eam_mat_req_rec.attribute12 := FND_API.G_MISS_CHAR;
517 ELSE
518 l_eam_mat_req_rec.attribute12 := X_attribute12;
519 END IF;
520
521 IF l_prev_attribute13 is not null and X_attribute13 is null THEN
522 l_eam_mat_req_rec.attribute13 := FND_API.G_MISS_CHAR;
523 ELSE
524 l_eam_mat_req_rec.attribute13 := X_attribute13;
525 END IF;
526
527 IF l_prev_attribute14 is not null and X_attribute14 is null THEN
528 l_eam_mat_req_rec.attribute14 := FND_API.G_MISS_CHAR;
529 ELSE
530 l_eam_mat_req_rec.attribute14 := X_attribute14;
531 END IF;
532
533 IF l_prev_attribute15 is not null and X_attribute15 is null THEN
534 l_eam_mat_req_rec.attribute15 := FND_API.G_MISS_CHAR;
535 ELSE
536 l_eam_mat_req_rec.attribute15 := X_attribute15;
537 END IF;
538
539 /* ---- end for 8969942---- */
540
541 l_eam_mat_req_tbl(1) := l_eam_mat_req_rec;
542 EAM_PROCESS_WO_PUB.Process_WO
543 ( p_bo_identifier => 'EAM'
544 , p_init_msg_list => TRUE
545 , p_api_version_number => 1.0
546 , p_commit => 'N'
547 , p_eam_wo_rec => l_eam_wo_rec
548 , p_eam_op_tbl => l_eam_op_tbl
549 , p_eam_op_network_tbl => l_eam_op_network_tbl
550 , p_eam_res_tbl => l_eam_res_tbl
551 , p_eam_res_inst_tbl => l_eam_res_inst_tbl
552 , p_eam_sub_res_tbl => l_eam_sub_res_tbl
553 , p_eam_res_usage_tbl => l_eam_res_usage_tbl
554 , p_eam_mat_req_tbl => l_eam_mat_req_tbl
555 , p_eam_direct_items_tbl => l_eam_di_tbl
556 , p_eam_wo_comp_rec => l_eam_wo_comp_rec
557 , p_eam_wo_quality_tbl => l_eam_wo_quality_tbl
558 , p_eam_meter_reading_tbl => l_eam_meter_reading_tbl
559 , p_eam_counter_prop_tbl => l_eam_counter_prop_tbl
560 , p_eam_wo_comp_rebuild_tbl => l_eam_wo_comp_rebuild_tbl
561 , p_eam_wo_comp_mr_read_tbl => l_eam_wo_comp_mr_read_tbl
562 , p_eam_op_comp_tbl => l_eam_op_comp_tbl
563 , p_eam_request_tbl => l_eam_request_tbl
564 , x_eam_wo_rec => l_out_eam_wo_rec
565 , x_eam_op_tbl => l_out_eam_op_tbl
566 , x_eam_op_network_tbl => l_out_eam_op_network_tbl
567 , x_eam_res_tbl => l_out_eam_res_tbl
568 , x_eam_res_inst_tbl => l_out_eam_res_inst_tbl
569 , x_eam_sub_res_tbl => l_out_eam_sub_res_tbl
570 , x_eam_res_usage_tbl => l_out_eam_res_usage_tbl
571 , x_eam_mat_req_tbl => l_out_eam_mat_req_tbl
572 , x_eam_direct_items_tbl => l_out_eam_di_tbl
573 , x_eam_wo_comp_rec => l_out_eam_wo_comp_rec
574 , x_eam_wo_quality_tbl => l_out_eam_wo_quality_tbl
575 , x_eam_meter_reading_tbl => l_out_eam_meter_reading_tbl
576 , x_eam_counter_prop_tbl => l_out_eam_counter_prop_tbl
577 , x_eam_wo_comp_rebuild_tbl => l_out_eam_wo_comp_rebuild_tbl
578 , x_eam_wo_comp_mr_read_tbl => l_out_eam_wo_comp_mr_read_tbl
579 , x_eam_op_comp_tbl => l_out_eam_op_comp_tbl
580 , x_eam_request_tbl => l_out_eam_request_tbl
581 , x_return_status => l_return_status
582 , x_msg_count => l_msg_count
583 , p_debug => NVL(fnd_profile.value('EAM_DEBUG'), 'N')
584 , p_debug_filename => 'updatemrthb.log'
585 , p_output_dir => l_output_dir
586 , p_debug_file_mode => 'w'
587 );
588 IF (l_return_status = 'S') THEN
589 X_L_EAM_MAT_REC := l_out_eam_mat_req_tbl(1);
590 x_material_shortage_flag := l_out_eam_wo_rec.material_shortage_flag;
591 x_material_shortage_check_date := l_out_eam_wo_rec.material_shortage_check_date;
592 ELSE
593 EAM_WORKORDER_UTIL_PKG.show_mesg;
594 APP_EXCEPTION.RAISE_EXCEPTION;
595 END IF;
596
597
598 END Update_Row;
599
600
601 PROCEDURE Lock_Row( X_row_id IN VARCHAR2,
602 X_inventory_item_id IN NUMBER,
603 X_organization_id IN NUMBER,
604 X_wip_entity_id IN NUMBER,
605 X_operation_seq_num IN NUMBER,
606 X_department_id IN NUMBER,
607 X_wip_supply_type IN NUMBER,
608 X_date_required IN DATE,
609 X_required_quantity IN NUMBER,
610 X_quantity_issued IN NUMBER,
611 X_quantity_per_assembly IN NUMBER,
612 X_comments IN VARCHAR2,
616 X_attribute_category IN VARCHAR2,
613 X_supply_subinventory IN VARCHAR2,
614 X_supply_locator_id IN NUMBER,
615 X_mrp_net_flag IN NUMBER,
617 X_attribute1 IN VARCHAR2,
618 X_attribute2 IN VARCHAR2,
619 X_attribute3 IN VARCHAR2,
620 X_attribute4 IN VARCHAR2,
621 X_attribute5 IN VARCHAR2,
622 X_attribute6 IN VARCHAR2,
623 X_attribute7 IN VARCHAR2,
624 X_attribute8 IN VARCHAR2,
625 X_attribute9 IN VARCHAR2,
626 X_attribute10 IN VARCHAR2,
627 X_attribute11 IN VARCHAR2,
628 X_attribute12 IN VARCHAR2,
629 X_attribute13 IN VARCHAR2,
630 X_attribute14 IN VARCHAR2,
631 X_attribute15 IN VARCHAR2,
632 X_auto_request_material IN VARCHAR2) IS
633 CURSOR C IS
634 SELECT *
635 FROM WIP_REQUIREMENT_OPERATIONS
636 WHERE rowid = X_row_id
637 FOR UPDATE of Wip_Entity_Id NOWAIT;
638 Recinfo C%ROWTYPE;
639 BEGIN
640 OPEN C;
641 FETCH C INTO Recinfo;
642 IF (C%NOTFOUND) THEN
643 CLOSE C;
644 FND_MESSAGE.SET_NAME('FND','FORM_RECORD_DELETED');
645 FND_MESSAGE.RAISE_ERROR;
646 APP_EXCEPTION.RAISE_EXCEPTION;
647 END IF;
648 CLOSE C;
649
650 IF (Recinfo.inventory_item_id = X_Inventory_Item_Id)
651 AND (Recinfo.organization_id = X_Organization_Id)
652 AND (Recinfo.wip_entity_id = X_Wip_Entity_Id)
653 AND (Recinfo.operation_seq_num = X_Operation_Seq_Num)
654 AND (nvl(Recinfo.department_id, -1) =
655 nvl(X_Department_Id, -1))
656 AND (nvl(Recinfo.wip_supply_type, -1) =
657 nvl(X_Wip_Supply_Type, -1))
658 AND (Recinfo.date_required = X_Date_Required OR
659 (Recinfo.date_required is NULL AND
660 X_Date_Required is NULL))
661 AND (Recinfo.required_quantity = X_Required_Quantity)
662 AND (Recinfo.quantity_issued = X_Quantity_Issued OR
663 (Recinfo.quantity_issued = 0 AND
664 X_Quantity_Issued IS NULL))
665 AND (Recinfo.quantity_per_assembly = X_Quantity_Per_Assembly)
666 AND (nvl(Recinfo.comments, 'xxxx') =
667 nvl(X_Comments, 'xxxx'))
668 AND (nvl(Recinfo.supply_subinventory, 'xxxx') =
669 nvl(X_Supply_Subinventory, 'xxxx'))
670 AND (nvl(Recinfo.supply_locator_id, -1) =
671 nvl(X_Supply_Locator_Id, -1))
672 AND (Recinfo.mrp_net_flag = X_Mrp_Net_Flag)
673 AND (nvl(Recinfo.attribute_category, 'xxxx') =
674 nvl(X_Attribute_Category, 'xxxx'))
675 AND (nvl(Recinfo.attribute1, 'xxxx') =
676 nvl(X_Attribute1, 'xxxx'))
677 AND (nvl(Recinfo.attribute2, 'xxxx') =
678 nvl(X_Attribute2, 'xxxx'))
679 AND (nvl(Recinfo.attribute3, 'xxxx') =
680 nvl(X_Attribute3, 'xxxx'))
681 AND (nvl(Recinfo.attribute4, 'xxxx') =
682 nvl(X_Attribute4, 'xxxx'))
683 AND (nvl(Recinfo.attribute5, 'xxxx') =
684 nvl(X_Attribute5, 'xxxx'))
685 AND (nvl(Recinfo.attribute6, 'xxxx') =
686 nvl(X_Attribute6, 'xxxx'))
687 AND (nvl(Recinfo.attribute7, 'xxxx') =
688 nvl(X_Attribute7, 'xxxx'))
689 AND (nvl(Recinfo.attribute8, 'xxxx') =
690 nvl(X_Attribute8, 'xxxx'))
691 AND (nvl(Recinfo.attribute9, 'xxxx') =
692 nvl(X_Attribute9, 'xxxx'))
693 AND (nvl(Recinfo.attribute10, 'xxxx') =
694 nvl(X_Attribute10, 'xxxx'))
695 AND (nvl(Recinfo.attribute11, 'xxxx') =
696 nvl(X_Attribute11, 'xxxx'))
697 AND (nvl(Recinfo.attribute12, 'xxxx') =
698 nvl(X_Attribute12, 'xxxx'))
699 AND (nvl(Recinfo.attribute13, 'xxxx') =
700 nvl(X_Attribute13, 'xxxx'))
701 AND (nvl(Recinfo.attribute14, 'xxxx') =
702 nvl(X_Attribute14, 'xxxx'))
703 AND (nvl(Recinfo.attribute15, 'xxxx') =
704 nvl(X_Attribute15, 'xxxx'))
705 AND (nvl(Recinfo.auto_request_material, 'T') =
706 nvl(X_auto_request_material, 'T'))
707 THEN
708 RETURN;
709 ELSE
710 FND_MESSAGE.SET_NAME('FND','FORM_RECORD_CHANGED');
711 FND_MESSAGE.RAISE_ERROR;
712 APP_EXCEPTION.RAISE_EXCEPTION;
713 END IF;
714 END Lock_Row;
715
716
717 PROCEDURE Delete_Row(X_row_id IN VARCHAR2,
718 X_material_shortage_flag OUT NOCOPY VARCHAR2,
719 X_material_shortage_check_date OUT NOCOPY DATE) IS
720
721 l_wip_entity_id NUMBER := 0;
722 l_org_id NUMBER := 0;
723 l_return_status VARCHAR2(30) := '';
724 l_msg_count NUMBER := 0;
725 l_msg_data VARCHAR2(30) := '';
726 l_operation_seq_num NUMBER;
727 l_inventory_item_id NUMBER;
728 l_wip_entity_type NUMBER;
729 l_status_type NUMBER;
730 l_material_issue_by_mo VARCHAR2(1);
731 l_output_dir VARCHAR2(512);
732
733 l_eam_mat_req_rec EAM_PROCESS_WO_PUB.eam_mat_req_rec_type ;
734 l_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
735 l_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
736 l_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
737 l_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
738 l_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
739 l_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
740 l_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
741 l_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
742 l_eam_di_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
743 l_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
744 l_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
745 l_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
746 l_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
747 l_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
748 l_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
752 l_out_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
749 l_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
750 l_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
751
753 l_out_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
754 l_out_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
755 l_out_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
756 l_out_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
757 l_out_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
758 l_out_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
759 l_out_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
760 l_out_eam_di_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
761 l_out_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
762 l_out_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
763 l_out_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
764 l_out_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
765 l_out_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
766 l_out_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
767 l_out_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
768 l_out_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
769
770
771 BEGIN
772 /* get output directory path from database */
773 EAM_WORKORDER_UTIL_PKG.log_path(l_output_dir);
774
775
776 SELECT wip_entity_id, organization_id, operation_seq_num, inventory_item_id
777 INTO l_wip_entity_id, l_org_id, l_operation_seq_num, l_inventory_item_id
778 FROM WIP_REQUIREMENT_OPERATIONS
779 WHERE rowid = X_row_id;
780
781 l_eam_mat_req_rec.header_id := l_wip_entity_id;
782 l_eam_mat_req_rec.batch_id := 1;
783 l_eam_mat_req_rec.row_id := null;
784 l_eam_mat_req_rec.wip_entity_id := l_wip_entity_id;
785 l_eam_mat_req_rec.organization_id := l_org_id;
786 l_eam_mat_req_rec.operation_seq_num := l_operation_seq_num;
787 l_eam_mat_req_rec.inventory_item_id := l_inventory_item_id;
788 l_eam_mat_req_rec.transaction_type := EAM_PROCESS_WO_PVT.G_OPR_DELETE;
789
790 l_eam_mat_req_tbl(1) := l_eam_mat_req_rec;
791 EAM_PROCESS_WO_PUB.Process_WO
792 ( p_bo_identifier => 'EAM'
793 , p_init_msg_list => TRUE
794 , p_api_version_number => 1.0
795 , p_commit => 'N'
796 , p_eam_wo_rec => l_eam_wo_rec
797 , p_eam_op_tbl => l_eam_op_tbl
798 , p_eam_op_network_tbl => l_eam_op_network_tbl
799 , p_eam_res_tbl => l_eam_res_tbl
800 , p_eam_res_inst_tbl => l_eam_res_inst_tbl
801 , p_eam_sub_res_tbl => l_eam_sub_res_tbl
802 , p_eam_res_usage_tbl => l_eam_res_usage_tbl
803 , p_eam_mat_req_tbl => l_eam_mat_req_tbl
804 , p_eam_direct_items_tbl => l_eam_di_tbl
805 , p_eam_wo_comp_rec => l_eam_wo_comp_rec
806 , p_eam_wo_quality_tbl => l_eam_wo_quality_tbl
807 , p_eam_meter_reading_tbl => l_eam_meter_reading_tbl
808 , p_eam_counter_prop_tbl => l_eam_counter_prop_tbl
809 , p_eam_wo_comp_rebuild_tbl => l_eam_wo_comp_rebuild_tbl
810 , p_eam_wo_comp_mr_read_tbl => l_eam_wo_comp_mr_read_tbl
811 , p_eam_op_comp_tbl => l_eam_op_comp_tbl
812 , p_eam_request_tbl => l_eam_request_tbl
813 , x_eam_wo_rec => l_out_eam_wo_rec
814 , x_eam_op_tbl => l_out_eam_op_tbl
815 , x_eam_op_network_tbl => l_out_eam_op_network_tbl
816 , x_eam_res_tbl => l_out_eam_res_tbl
817 , x_eam_res_inst_tbl => l_out_eam_res_inst_tbl
818 , x_eam_sub_res_tbl => l_out_eam_sub_res_tbl
819 , x_eam_res_usage_tbl => l_out_eam_res_usage_tbl
820 , x_eam_mat_req_tbl => l_out_eam_mat_req_tbl
821 , x_eam_direct_items_tbl => l_out_eam_di_tbl
822 , x_eam_wo_comp_rec => l_out_eam_wo_comp_rec
823 , x_eam_wo_quality_tbl => l_out_eam_wo_quality_tbl
824 , x_eam_meter_reading_tbl => l_out_eam_meter_reading_tbl
825 , x_eam_counter_prop_tbl => l_out_eam_counter_prop_tbl
826 , x_eam_wo_comp_rebuild_tbl => l_out_eam_wo_comp_rebuild_tbl
827 , x_eam_wo_comp_mr_read_tbl => l_out_eam_wo_comp_mr_read_tbl
828 , x_eam_op_comp_tbl => l_out_eam_op_comp_tbl
829 , x_eam_request_tbl => l_out_eam_request_tbl
830 , x_return_status => l_return_status
831 , x_msg_count => l_msg_count
832 , p_debug => NVL(fnd_profile.value('EAM_DEBUG'), 'N')
833 , p_debug_filename => 'delmrthb.log'
834 , p_output_dir => l_output_dir
835 , p_debug_file_mode => 'w'
836 );
837 IF (l_return_status = 'S') THEN
838 COMMIT;
839 x_material_shortage_flag := l_out_eam_wo_rec.material_shortage_flag;
840 x_material_shortage_check_date := l_out_eam_wo_rec.material_shortage_check_date;
841 ELSE
842 EAM_WORKORDER_UTIL_PKG.show_mesg;
843 APP_EXCEPTION.RAISE_EXCEPTION;
844 END IF;
845 EXCEPTION
846 WHEN OTHERS THEN
847 EAM_WORKORDER_UTIL_PKG.show_mesg;
848 APP_EXCEPTION.RAISE_EXCEPTION;
849
850
851 END Delete_Row;
852
853
854
855 --
856 -- baroy - API to delete a requirements row (called from SS View Materials Page)
857 --
861 p_commit IN VARCHAR2,
858 PROCEDURE Delete_Row_SS(
859 p_api_version IN NUMBER,
860 p_init_msg_list IN VARCHAR2,
862 p_validate_only IN VARCHAR2,
863 p_record_version_number IN NUMBER,
864 x_return_status OUT NOCOPY VARCHAR2,
865 x_msg_count OUT NOCOPY NUMBER,
866 x_msg_data OUT NOCOPY VARCHAR2,
867 p_inventory_item_id IN NUMBER,
868 p_organization_id IN NUMBER,
869 p_wip_entity_id IN NUMBER,
870 p_operation_seq_num IN NUMBER) IS
871
872 l_material VARCHAR2(40);
873 l_msg_count NUMBER;
874 l_msg_data VARCHAR2(250);
875 l_return_status VARCHAR2(250);
876 l_data VARCHAR2(250);
877 l_msg_index_out NUMBER;
878 l_quantity_issued NUMBER := 0;
879 l_wip_entity_type NUMBER;
880 l_status_type NUMBER;
881 l_material_issue_by_mo VARCHAR2(1);
882
883 /* Commenting out for implementing WO API */
884 /* CURSOR pending_txns_cur IS
885 SELECT 1
886 FROM MTL_MATERIAL_TRANSACTIONS_TEMP
887 WHERE operation_seq_num = p_operation_seq_num
888 AND inventory_item_id = p_inventory_item_id
889 AND transaction_source_id = p_wip_entity_id
890 AND organization_id = p_organization_id
891 AND process_flag <> 'N'
892 AND posting_flag <> 'N';
893 CURSOR mtl_del_cur IS
894 SELECT 1
895 FROM MTL_MATERIAL_TRANSACTIONS
896 WHERE operation_seq_num = p_operation_seq_num
897 AND inventory_item_id = p_inventory_item_id
898 AND transaction_source_id = p_wip_entity_id
899 AND organization_id = p_organization_id; */
900
901 l_output_dir VARCHAR2(512);
902
903 l_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
904 l_eam_mat_req_rec EAM_PROCESS_WO_PUB.eam_mat_req_rec_type;
905 l_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
906 l_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
907 l_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
908 l_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
909 l_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
910 l_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
911 l_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
912 l_eam_direct_items_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
913 l_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
914 l_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
915 l_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
916 l_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
917 l_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
918 l_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
919 l_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
920 l_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
921
922 l_out_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
923 l_out_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
924 l_out_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
925 l_out_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
926 l_out_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
927 l_out_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
928 l_out_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
929 l_out_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
930 l_out_eam_direct_items_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
931 l_out_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
932 l_out_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
933 l_out_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
934 l_out_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
935 l_out_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
936 l_out_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
937 l_out_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
938 l_out_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
939
940
941 BEGIN
942
943 IF p_commit = FND_API.G_TRUE THEN
944 SAVEPOINT delete_row_ss;
945 END IF;
946
947 IF FND_API.TO_BOOLEAN(p_init_msg_list) THEN
948 FND_MSG_PUB.initialize;
949 END IF;
950
951 x_return_status := FND_API.G_RET_STS_SUCCESS;
952
953
954
955
956 l_eam_mat_req_rec.transaction_type := EAM_PROCESS_WO_PUB.G_OPR_DELETE;
957 l_eam_mat_req_rec.wip_entity_id := p_wip_entity_id;
958 l_eam_mat_req_rec.organization_id := p_organization_id;
959 l_eam_mat_req_rec.operation_seq_num := p_operation_seq_num;
960 l_eam_mat_req_rec.inventory_item_id := p_inventory_item_id;
961
962 l_eam_mat_req_tbl(1) := l_eam_mat_req_rec;
963
964 EAM_WORKORDER_UTIL_PKG.log_path(l_output_dir);
965
966
967 EAM_PROCESS_WO_PUB.Process_WO
968 ( p_bo_identifier => 'EAM'
969 , p_init_msg_list => TRUE
970 , p_api_version_number => 1.0
971 , p_eam_wo_rec => l_eam_wo_rec
972 , p_eam_op_tbl => l_eam_op_tbl
973 , p_eam_op_network_tbl => l_eam_op_network_tbl
974 , p_eam_res_tbl => l_eam_res_tbl
975 , p_eam_res_inst_tbl => l_eam_res_inst_tbl
976 , p_eam_sub_res_tbl => l_eam_sub_res_tbl
977 , p_eam_res_usage_tbl => l_eam_res_usage_tbl
978 , p_eam_mat_req_tbl => l_eam_mat_req_tbl
979 , p_eam_direct_items_tbl => l_eam_direct_items_tbl
983 , p_eam_counter_prop_tbl => l_eam_counter_prop_tbl
980 , p_eam_wo_comp_rec => l_eam_wo_comp_rec
981 , p_eam_wo_quality_tbl => l_eam_wo_quality_tbl
982 , p_eam_meter_reading_tbl => l_eam_meter_reading_tbl
984 , p_eam_wo_comp_rebuild_tbl => l_eam_wo_comp_rebuild_tbl
985 , p_eam_wo_comp_mr_read_tbl => l_eam_wo_comp_mr_read_tbl
986 , p_eam_op_comp_tbl => l_eam_op_comp_tbl
987 , p_eam_request_tbl => l_eam_request_tbl
988 , x_eam_wo_rec => l_out_eam_wo_rec
989 , x_eam_op_tbl => l_out_eam_op_tbl
990 , x_eam_op_network_tbl => l_out_eam_op_network_tbl
991 , x_eam_res_tbl => l_out_eam_res_tbl
992 , x_eam_res_inst_tbl => l_out_eam_res_inst_tbl
993 , x_eam_sub_res_tbl => l_out_eam_sub_res_tbl
994 , x_eam_res_usage_tbl => l_out_eam_res_usage_tbl
995 , x_eam_mat_req_tbl => l_out_eam_mat_req_tbl
996 , x_eam_direct_items_tbl => l_out_eam_direct_items_tbl
997 , x_eam_wo_comp_rec => l_out_eam_wo_comp_rec
998 , x_eam_wo_quality_tbl => l_out_eam_wo_quality_tbl
999 , x_eam_meter_reading_tbl => l_out_eam_meter_reading_tbl
1000 , x_eam_counter_prop_tbl => l_out_eam_counter_prop_tbl
1001 , x_eam_wo_comp_rebuild_tbl => l_out_eam_wo_comp_rebuild_tbl
1002 , x_eam_wo_comp_mr_read_tbl => l_out_eam_wo_comp_mr_read_tbl
1003 , x_eam_op_comp_tbl => l_out_eam_op_comp_tbl
1004 , x_eam_request_tbl => l_out_eam_request_tbl
1005 , x_return_status => x_return_status
1006 , x_msg_count => x_msg_count
1007 , p_debug => NVL(fnd_profile.value('EAM_DEBUG'), 'N')
1008 , p_debug_filename => 'delmrss.log'
1009 , p_output_dir => l_output_dir
1010 );
1011
1012
1013 /* Commented out for implementing the WO API */
1014 /*
1015 DELETE FROM WIP_REQUIREMENT_OPERATIONS
1016 WHERE wip_entity_id = p_wip_entity_id
1017 and organization_id = p_organization_id
1018 and inventory_item_id = p_inventory_item_id
1019 and operation_seq_num = p_operation_seq_num; */
1020 /* IF (SQL%NOTFOUND) THEN
1021 RAISE NO_DATA_FOUND;
1022
1023 ELSE */
1024
1025 /* Commented out for implementing the WO API */
1026 -- if validate not passed then raise error
1027 /* l_msg_count := FND_MSG_PUB.count_msg;
1028 IF l_msg_count = 1 THEN
1029 eam_execution_jsp.Get_Messages
1030 (p_encoded => FND_API.G_FALSE,
1031 p_msg_index => 1,
1032 p_msg_count => l_msg_count,
1033 p_msg_data => nvl(l_msg_data,FND_API.g_MISS_CHAR),
1034 p_data => l_data,
1035 p_msg_index_out => l_msg_index_out);
1036 x_msg_count := l_msg_count;
1037 x_msg_data := l_msg_data;
1038 ELSE
1039 x_msg_count := l_msg_count;
1040 END IF;
1041
1042 IF l_msg_count > 0 THEN
1043 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1044 RAISE FND_API.G_EXC_ERROR;
1045 END IF;
1046 */
1047
1048
1049 IF FND_API.TO_BOOLEAN(P_COMMIT)
1050 AND x_return_status = 'S' THEN
1051 COMMIT WORK;
1052 END IF;
1053
1054 EXCEPTION
1055 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1056 IF p_commit = FND_API.G_TRUE THEN
1057 ROLLBACK TO delete_row_ss;
1058 END IF;
1059 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1060 WHEN FND_API.G_EXC_ERROR THEN
1061 IF p_commit = FND_API.G_TRUE THEN
1062 ROLLBACK TO delete_row_ss;
1063 END IF;
1064 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1065 WHEN OTHERS THEN
1066 IF p_commit = FND_API.G_TRUE THEN
1067 ROLLBACK TO delete_row_ss;
1068 END IF;
1069 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1070
1071 END Delete_Row_SS;
1072
1073
1074
1075 -- API to delete a description based item requirements row (called from SS View Materials Page)
1076 --
1077 PROCEDURE Delete_Desc_Row_SS(
1078 p_api_version IN NUMBER,
1079 p_init_msg_list IN VARCHAR2,
1080 p_commit IN VARCHAR2,
1081 p_validate_only IN VARCHAR2,
1082 p_record_version_number IN NUMBER,
1083 x_return_status OUT NOCOPY VARCHAR2,
1084 x_msg_count OUT NOCOPY NUMBER,
1085 x_msg_data OUT NOCOPY VARCHAR2,
1086 p_di_sequence_id IN NUMBER,
1087 p_organization_id IN NUMBER,
1088 p_wip_entity_id IN NUMBER,
1089 p_operation_seq_num IN NUMBER) IS
1090
1091 l_material VARCHAR2(40);
1092 l_msg_count NUMBER;
1093 l_msg_data VARCHAR2(250);
1094 l_return_status VARCHAR2(250);
1095 l_data VARCHAR2(250);
1096 l_msg_index_out NUMBER;
1097 l_quantity_issued NUMBER := 0;
1098 l_wip_entity_type NUMBER;
1099 l_status_type NUMBER;
1100 l_material_issue_by_mo VARCHAR2(1);
1101
1102 l_output_dir VARCHAR2(512);
1103
1104 l_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
1105 l_eam_mat_req_rec EAM_PROCESS_WO_PUB.eam_mat_req_rec_type;
1106 l_eam_direct_item_rec EAM_PROCESS_WO_PUB.eam_direct_items_rec_type;
1107 l_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
1108 l_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
1109 l_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
1110 l_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
1111 l_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
1112 l_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
1113 l_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
1117 l_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
1114 l_eam_direct_items_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
1115 l_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
1116 l_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
1118 l_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
1119 l_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
1120 l_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
1121 l_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
1122 l_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
1123
1124 l_out_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
1125 l_out_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
1126 l_out_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
1127 l_out_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
1128 l_out_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
1129 l_out_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
1130 l_out_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
1131 l_out_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
1132 l_out_eam_direct_items_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
1133 l_out_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
1134 l_out_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
1135 l_out_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
1136 l_out_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
1137 l_out_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
1138 l_out_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
1139 l_out_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
1140 l_out_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
1141
1142 BEGIN
1143
1144 IF p_commit = FND_API.G_TRUE THEN
1145 SAVEPOINT delete_desc_row_ss;
1146 END IF;
1147
1148 IF FND_API.TO_BOOLEAN(p_init_msg_list) THEN
1149 FND_MSG_PUB.initialize;
1150 END IF;
1151
1152 x_return_status := FND_API.G_RET_STS_SUCCESS;
1153 EAM_WORKORDER_UTIL_PKG.log_path(l_output_dir);
1154
1155
1156 l_eam_direct_item_rec.transaction_type := EAM_PROCESS_WO_PUB.G_OPR_DELETE;
1157 l_eam_direct_item_rec.wip_entity_id := p_wip_entity_id;
1158 l_eam_direct_item_rec.organization_id := p_organization_id;
1159 l_eam_direct_item_rec.operation_seq_num := p_operation_seq_num;
1160 l_eam_direct_item_rec.direct_item_sequence_id := p_di_sequence_id;
1161
1162 l_eam_direct_items_tbl(1) := l_eam_direct_item_rec;
1163
1164 EAM_PROCESS_WO_PUB.Process_WO
1165 ( p_bo_identifier => 'EAM'
1166 , p_init_msg_list => TRUE
1167 , p_api_version_number => 1.0
1168 , p_eam_wo_rec => l_eam_wo_rec
1169 , p_eam_op_tbl => l_eam_op_tbl
1170 , p_eam_op_network_tbl => l_eam_op_network_tbl
1171 , p_eam_res_tbl => l_eam_res_tbl
1172 , p_eam_res_inst_tbl => l_eam_res_inst_tbl
1173 , p_eam_sub_res_tbl => l_eam_sub_res_tbl
1174 , p_eam_res_usage_tbl => l_eam_res_usage_tbl
1175 , p_eam_mat_req_tbl => l_eam_mat_req_tbl
1176 , p_eam_direct_items_tbl => l_eam_direct_items_tbl
1177 , p_eam_wo_comp_rec => l_eam_wo_comp_rec
1178 , p_eam_wo_quality_tbl => l_eam_wo_quality_tbl
1179 , p_eam_meter_reading_tbl => l_eam_meter_reading_tbl
1180 , p_eam_counter_prop_tbl => l_eam_counter_prop_tbl
1181 , p_eam_wo_comp_rebuild_tbl => l_eam_wo_comp_rebuild_tbl
1182 , p_eam_wo_comp_mr_read_tbl => l_eam_wo_comp_mr_read_tbl
1183 , p_eam_op_comp_tbl => l_eam_op_comp_tbl
1184 , p_eam_request_tbl => l_eam_request_tbl
1185 , x_eam_wo_rec => l_out_eam_wo_rec
1186 , x_eam_op_tbl => l_out_eam_op_tbl
1187 , x_eam_op_network_tbl => l_out_eam_op_network_tbl
1188 , x_eam_res_tbl => l_out_eam_res_tbl
1189 , x_eam_res_inst_tbl => l_out_eam_res_inst_tbl
1190 , x_eam_sub_res_tbl => l_out_eam_sub_res_tbl
1191 , x_eam_res_usage_tbl => l_out_eam_res_usage_tbl
1192 , x_eam_mat_req_tbl => l_out_eam_mat_req_tbl
1193 , x_eam_direct_items_tbl => l_out_eam_direct_items_tbl
1194 , x_eam_wo_comp_rec => l_out_eam_wo_comp_rec
1195 , x_eam_wo_quality_tbl => l_out_eam_wo_quality_tbl
1196 , x_eam_meter_reading_tbl => l_out_eam_meter_reading_tbl
1197 , x_eam_counter_prop_tbl => l_out_eam_counter_prop_tbl
1198 , x_eam_wo_comp_rebuild_tbl => l_out_eam_wo_comp_rebuild_tbl
1199 , x_eam_wo_comp_mr_read_tbl => l_out_eam_wo_comp_mr_read_tbl
1200 , x_eam_op_comp_tbl => l_out_eam_op_comp_tbl
1201 , x_eam_request_tbl => l_out_eam_request_tbl
1202 , x_return_status => x_return_status
1203 , x_msg_count => x_msg_count
1204 , p_debug => NVL(fnd_profile.value('EAM_DEBUG'), 'N')
1205 , p_debug_filename => 'deldiss.log'
1206 , p_output_dir => l_output_dir
1207 );
1208
1209
1210
1211 IF FND_API.TO_BOOLEAN(P_COMMIT)
1212 AND x_return_status = 'S' THEN
1213 COMMIT WORK;
1214 END IF;
1215
1216 EXCEPTION
1217 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1218 IF p_commit = FND_API.G_TRUE THEN
1219 ROLLBACK TO delete_desc_row_ss;
1220 END IF;
1221 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1222 WHEN FND_API.G_EXC_ERROR THEN
1223 IF p_commit = FND_API.G_TRUE THEN
1224 ROLLBACK TO delete_desc_row_ss;
1228 IF p_commit = FND_API.G_TRUE THEN
1225 END IF;
1226 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1227 WHEN OTHERS THEN
1229 ROLLBACK TO delete_desc_row_ss;
1230 END IF;
1231 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1232
1233 END Delete_Desc_Row_SS;
1234
1235
1236
1237
1238
1239 END EAM_REQUIREMENTS_PKG;