[Home] [Help]
PACKAGE BODY: APPS.EAM_DIRECT_ITEMS_PKG_PVT
Source
1 PACKAGE BODY EAM_DIRECT_ITEMS_PKG_PVT AS
2 /* $Header: EAMVDIPB.pls 120.3 2009/11/19 09:37:22 vchidura ship $ */
3 /***************************************************************************
4 --
5 -- Copyright (c) 2002 Oracle Corporation, Redwood Shores, CA, USA
6 -- All rights reserved.
7 --
8 -- FILENAME
9 --
10 -- EAMVDIPB.pls
11 --
12 -- DESCRIPTION
13 --
14 -- Body of package EAM_DIRECT_ITEMS_PKG_PVT
15 --
16 -- NOTES
17 --
18 -- HISTORY
19 --
20 -- 01-OCT-2003 6/3/2004Basanth Roy Initial Creation
21 ***************************************************************************/
22
23 G_PKG_NAME CONSTANT VARCHAR2(30) := 'EAM_DIRECT_ITEMS_PKG_PVT';
24
25
26
27
28
29 /********************************************************************
30 * Procedure : Insert_Row
31 * Parameters IN : Direct Items column record
32 * Parameters OUT NOCOPY: Return Status
33 * Purpose : Procedure will perfrom an insert into the
34 * wip_eam_direct_items table.
35 *********************************************************************/
36
37 PROCEDURE Insert_Row
38 ( X_DESCRIPTION IN VARCHAR2 ,
39 X_DIRECT_ITEM_TYPE IN NUMBER ,
40 X_PURCHASING_CATEGORY_ID IN NUMBER ,
41 X_DIRECT_ITEM_SEQUENCE_ID IN OUT NOCOPY NUMBER, -- Fix for Bug 3745360
42 X_INVENTORY_ITEM_ID IN NUMBER ,
43 X_OPERATION_SEQ_NUM IN NUMBER ,
44 X_DEPARTMENT_ID IN NUMBER ,
45 X_WIP_ENTITY_ID IN NUMBER ,
46 X_ORGANIZATION_ID IN NUMBER ,
47 X_SUGGESTED_VENDOR_NAME IN VARCHAR2 ,
48 X_SUGGESTED_VENDOR_ID IN NUMBER ,
49 X_SUGGESTED_VENDOR_SITE IN VARCHAR2 ,
50 X_SUGGESTED_VENDOR_SITE_ID IN NUMBER ,
51 X_SUGGESTED_VENDOR_CONTACT IN VARCHAR2 ,
52 X_SUGGESTED_VENDOR_CONTACT_ID IN NUMBER ,
53 X_SUGGESTED_VENDOR_PHONE IN VARCHAR2 ,
54 X_SUGGESTED_VENDOR_ITEM_NUM IN VARCHAR2 ,
55 X_UNIT_PRICE IN NUMBER ,
56 X_AUTO_REQUEST_MATERIAL IN VARCHAR2 ,
57 X_REQUIRED_QUANTITY IN NUMBER ,
58 X_UOM IN VARCHAR2 ,
59 X_NEED_BY_DATE IN DATE ,
60 X_ATTRIBUTE_CATEGORY IN VARCHAR2 ,
61 X_ATTRIBUTE1 IN VARCHAR2 ,
62 X_ATTRIBUTE2 IN VARCHAR2 ,
63 X_ATTRIBUTE3 IN VARCHAR2 ,
64 X_ATTRIBUTE4 IN VARCHAR2 ,
65 X_ATTRIBUTE5 IN VARCHAR2 ,
66 X_ATTRIBUTE6 IN VARCHAR2 ,
67 X_ATTRIBUTE7 IN VARCHAR2 ,
68 X_ATTRIBUTE8 IN VARCHAR2 ,
69 X_ATTRIBUTE9 IN VARCHAR2 ,
70 X_ATTRIBUTE10 IN VARCHAR2 ,
71 X_ATTRIBUTE11 IN VARCHAR2 ,
72 X_ATTRIBUTE12 IN VARCHAR2 ,
73 X_ATTRIBUTE13 IN VARCHAR2 ,
74 X_ATTRIBUTE14 IN VARCHAR2 ,
75 X_ATTRIBUTE15 IN VARCHAR2 ,
76 X_PROGRAM_APPLICATION_ID IN NUMBER ,
77 X_PROGRAM_ID IN NUMBER ,
78 X_PROGRAM_UPDATE_DATE IN DATE ,
79 X_REQUEST_ID IN NUMBER ,
80 x_return_Status OUT NOCOPY VARCHAR2,
81 x_material_shortage_flag OUT NOCOPY VARCHAR2,
82 x_material_shortage_check_date OUT NOCOPY DATE
83 )
84 IS
85 l_eam_direct_items_rec EAM_PROCESS_WO_PUB.eam_direct_items_rec_type;
86 l_eam_direct_items_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
87 l_eam_mat_req_rec EAM_PROCESS_WO_PUB.eam_mat_req_rec_type;
88 l_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
89 l_output_dir VARCHAR2(512);
90
91 l_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
92 l_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
93 l_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
94 l_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
95 l_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
96 l_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
97 l_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
98 l_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
99 l_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
100 l_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
101 l_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
102 l_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
103 l_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
104 l_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
105 l_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
106
107 l_out_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
108 l_out_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
109 l_out_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
110 l_out_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
111 l_out_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
112 l_out_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
113 l_out_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
114 l_out_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
115 l_out_eam_direct_items_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
116 l_out_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
117 l_out_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
118 l_out_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
119 l_out_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
120 l_out_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
121 l_out_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
122 l_out_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
123 l_out_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
124
125 l_return_status VARCHAR2(10);
126 l_msg_count NUMBER;
127
128 BEGIN
129
130 l_eam_direct_items_tbl.delete;
131 l_eam_mat_req_tbl.delete;
132
133 if X_DIRECT_ITEM_TYPE = 1 then -- description based
134
135 l_eam_direct_items_rec.DESCRIPTION := X_DESCRIPTION;
136 l_eam_direct_items_rec.PURCHASING_CATEGORY_ID := X_PURCHASING_CATEGORY_ID;
137 l_eam_direct_items_rec.Direct_Item_Sequence_Id := X_Direct_Item_Sequence_Id;
138 l_eam_direct_items_rec.Operation_Seq_Num := X_Operation_Seq_Num;
139 l_eam_direct_items_rec.Department_id := X_Department_id;
140 l_eam_direct_items_rec.Wip_entity_id := X_Wip_entity_id;
141 l_eam_direct_items_rec.Organization_id := X_Organization_id;
142 l_eam_direct_items_rec.Suggested_Vendor_Name := X_Suggested_Vendor_Name;
143 l_eam_direct_items_rec.Suggested_Vendor_Id := X_Suggested_Vendor_Id;
144 l_eam_direct_items_rec.Suggested_Vendor_Site := X_Suggested_Vendor_Site;
145 l_eam_direct_items_rec.Suggested_Vendor_Site_Id := X_Suggested_Vendor_Site_Id;
146 l_eam_direct_items_rec.Suggested_Vendor_Contact := X_Suggested_Vendor_Contact;
147 l_eam_direct_items_rec.Suggested_Vendor_Contact_Id := X_Suggested_Vendor_Contact_Id;
148 l_eam_direct_items_rec.Suggested_Vendor_Phone := X_Suggested_Vendor_Phone;
149 l_eam_direct_items_rec.Suggested_Vendor_Item_Num := X_Suggested_Vendor_Item_Num;
150 l_eam_direct_items_rec.Unit_Price := X_Unit_Price;
151 l_eam_direct_items_rec.Auto_request_Material := X_Auto_request_Material;
152 l_eam_direct_items_rec.Required_Quantity := X_Required_Quantity;
153 l_eam_direct_items_rec.UOM := X_UOM;
154 l_eam_direct_items_rec.Need_By_Date := X_Need_By_Date;
155 l_eam_direct_items_rec.ATTRIBUTE_CATEGORY := X_ATTRIBUTE_CATEGORY;
156 l_eam_direct_items_rec.ATTRIBUTE1 := X_ATTRIBUTE1;
157 l_eam_direct_items_rec.ATTRIBUTE2 := X_ATTRIBUTE2;
158 l_eam_direct_items_rec.ATTRIBUTE3 := X_ATTRIBUTE3;
159 l_eam_direct_items_rec.ATTRIBUTE4 := X_ATTRIBUTE4;
160 l_eam_direct_items_rec.ATTRIBUTE5 := X_ATTRIBUTE5;
161 l_eam_direct_items_rec.ATTRIBUTE6 := X_ATTRIBUTE6;
162 l_eam_direct_items_rec.ATTRIBUTE7 := X_ATTRIBUTE7;
163 l_eam_direct_items_rec.ATTRIBUTE8 := X_ATTRIBUTE8;
164 l_eam_direct_items_rec.ATTRIBUTE9 := X_ATTRIBUTE9;
165 l_eam_direct_items_rec.ATTRIBUTE10 := X_ATTRIBUTE10;
166 l_eam_direct_items_rec.ATTRIBUTE11 := X_ATTRIBUTE11;
167 l_eam_direct_items_rec.ATTRIBUTE12 := X_ATTRIBUTE12;
168 l_eam_direct_items_rec.ATTRIBUTE13 := X_ATTRIBUTE13;
169 l_eam_direct_items_rec.ATTRIBUTE14 := X_ATTRIBUTE14;
170 l_eam_direct_items_rec.ATTRIBUTE15 := X_ATTRIBUTE15;
171 l_eam_direct_items_rec.PROGRAM_APPLICATION_ID := null;
172 l_eam_direct_items_rec.PROGRAM_ID := null;
173 l_eam_direct_items_rec.PROGRAM_UPDATE_DATE := sysdate;
174 l_eam_direct_items_rec.REQUEST_ID := null;
175 l_eam_direct_items_rec.RETURN_STATUS := null;
176 l_eam_direct_items_rec.TRANSACTION_TYPE := EAM_PROCESS_WO_PVT.G_OPR_CREATE;
177 l_eam_direct_items_rec.HEADER_ID := 1;
178 l_eam_direct_items_rec.BATCH_ID := 1;
179 l_eam_direct_items_rec.ROW_ID := null;
180
181 l_eam_direct_items_tbl(1) := l_eam_direct_items_rec;
182
183 elsif X_DIRECT_ITEM_TYPE = 2 then -- non-stockable inventory item
184
185 l_eam_mat_req_rec.Operation_Seq_Num := X_Operation_Seq_Num;
186 l_eam_mat_req_rec.Department_id := X_Department_id;
187 l_eam_mat_req_rec.Wip_entity_id := X_Wip_entity_id;
188 l_eam_mat_req_rec.Organization_id := X_Organization_id;
189 l_eam_mat_req_rec.Suggested_Vendor_Name := X_Suggested_Vendor_Name; -- Fix for Bug 3665818
190 l_eam_mat_req_rec.Vendor_Id := X_Suggested_Vendor_Id; -- Fix for Bug 3665818
191 l_eam_mat_req_rec.inventory_item_id := X_INVENTORY_ITEM_ID;
192 l_eam_mat_req_rec.Unit_Price := X_Unit_Price;
193 l_eam_mat_req_rec.Auto_request_Material := X_Auto_request_Material;
194 l_eam_mat_req_rec.Required_Quantity := X_Required_Quantity;
195 l_eam_mat_req_rec.Date_Required := X_Need_By_Date;
196 l_eam_mat_req_rec.ATTRIBUTE_CATEGORY := X_ATTRIBUTE_CATEGORY;
197 l_eam_mat_req_rec.ATTRIBUTE1 := X_ATTRIBUTE1;
198 l_eam_mat_req_rec.ATTRIBUTE2 := X_ATTRIBUTE2;
199 l_eam_mat_req_rec.ATTRIBUTE3 := X_ATTRIBUTE3;
200 l_eam_mat_req_rec.ATTRIBUTE4 := X_ATTRIBUTE4;
201 l_eam_mat_req_rec.ATTRIBUTE5 := X_ATTRIBUTE5;
202 l_eam_mat_req_rec.ATTRIBUTE6 := X_ATTRIBUTE6;
203 l_eam_mat_req_rec.ATTRIBUTE7 := X_ATTRIBUTE7;
204 l_eam_mat_req_rec.ATTRIBUTE8 := X_ATTRIBUTE8;
205 l_eam_mat_req_rec.ATTRIBUTE9 := X_ATTRIBUTE9;
206 l_eam_mat_req_rec.ATTRIBUTE10 := X_ATTRIBUTE10;
207 l_eam_mat_req_rec.ATTRIBUTE11 := X_ATTRIBUTE11;
208 l_eam_mat_req_rec.ATTRIBUTE12 := X_ATTRIBUTE12;
209 l_eam_mat_req_rec.ATTRIBUTE13 := X_ATTRIBUTE13;
210 l_eam_mat_req_rec.ATTRIBUTE14 := X_ATTRIBUTE14;
211 l_eam_mat_req_rec.ATTRIBUTE15 := X_ATTRIBUTE15;
212 l_eam_mat_req_rec.PROGRAM_APPLICATION_ID := null;
213 l_eam_mat_req_rec.PROGRAM_ID := null;
214 l_eam_mat_req_rec.PROGRAM_UPDATE_DATE := sysdate;
215 l_eam_mat_req_rec.REQUEST_ID := null;
216 l_eam_mat_req_rec.RETURN_STATUS := null;
217 l_eam_mat_req_rec.TRANSACTION_TYPE := EAM_PROCESS_WO_PVT.G_OPR_CREATE;
218 l_eam_mat_req_rec.HEADER_ID := 1;
219 l_eam_mat_req_rec.BATCH_ID := 1;
220 l_eam_mat_req_rec.ROW_ID := null;
221
222 l_eam_mat_req_tbl(1) := l_eam_mat_req_rec;
223
224 end if;
225
226 EAM_WORKORDER_UTIL_PKG.log_path(l_output_dir);
227
228 EAM_PROCESS_WO_PUB.PROCESS_WO
229 ( p_bo_identifier => 'EAM'
230 , p_api_version_number => 1.0
231 , p_init_msg_list => FALSE
232 , p_commit => 'N'
233 , p_eam_wo_rec => l_eam_wo_rec
234 , p_eam_op_tbl => l_eam_op_tbl
235 , p_eam_op_network_tbl => l_eam_op_network_tbl
236 , p_eam_res_tbl => l_eam_res_tbl
237 , p_eam_res_inst_tbl => l_eam_res_inst_tbl
238 , p_eam_sub_res_tbl => l_eam_sub_res_tbl
239 , p_eam_res_usage_tbl => l_eam_res_usage_tbl
240 , p_eam_mat_req_tbl => l_eam_mat_req_tbl
241 , p_eam_direct_items_tbl => l_eam_direct_items_tbl
242 , p_eam_wo_comp_rec => l_eam_wo_comp_rec
243 , p_eam_wo_quality_tbl => l_eam_wo_quality_tbl
244 , p_eam_meter_reading_tbl => l_eam_meter_reading_tbl
245 , p_eam_counter_prop_tbl => l_eam_counter_prop_tbl
246 , p_eam_wo_comp_rebuild_tbl => l_eam_wo_comp_rebuild_tbl
247 , p_eam_wo_comp_mr_read_tbl => l_eam_wo_comp_mr_read_tbl
248 , p_eam_op_comp_tbl => l_eam_op_comp_tbl
249 , p_eam_request_tbl => l_eam_request_tbl
250 , x_eam_wo_rec => l_out_eam_wo_rec
251 , x_eam_op_tbl => l_out_eam_op_tbl
252 , x_eam_op_network_tbl => l_out_eam_op_network_tbl
253 , x_eam_res_tbl => l_out_eam_res_tbl
254 , x_eam_res_inst_tbl => l_out_eam_res_inst_tbl
255 , x_eam_sub_res_tbl => l_out_eam_sub_res_tbl
256 , x_eam_res_usage_tbl => l_out_eam_res_usage_tbl
257 , x_eam_mat_req_tbl => l_out_eam_mat_req_tbl
258 , x_eam_direct_items_tbl => l_out_eam_direct_items_tbl
259 , x_eam_wo_comp_rec => l_out_eam_wo_comp_rec
260 , x_eam_wo_quality_tbl => l_out_eam_wo_quality_tbl
261 , x_eam_meter_reading_tbl => l_out_eam_meter_reading_tbl
262 , x_eam_counter_prop_tbl => l_out_eam_counter_prop_tbl
263 , x_eam_wo_comp_rebuild_tbl => l_out_eam_wo_comp_rebuild_tbl
264 , x_eam_wo_comp_mr_read_tbl => l_out_eam_wo_comp_mr_read_tbl
265 , x_eam_op_comp_tbl => l_out_eam_op_comp_tbl
266 , x_eam_request_tbl => l_out_eam_request_tbl
267 , x_return_status => l_return_status
268 , x_msg_count => l_msg_count
269 , p_debug => NVL(fnd_profile.value('EAM_DEBUG'), 'N')
270 , p_output_dir => l_output_dir
274
271 , p_debug_filename => 'diitemins.log'
272 , p_debug_file_mode => 'w'
273 );
275 x_return_status := l_return_status;
276 x_material_shortage_flag := l_out_eam_wo_rec.material_shortage_flag;
277 x_material_shortage_check_date := l_out_eam_wo_rec.material_shortage_check_date;
278
279 BEGIN -- Fix for Bug 3745360 Begin
280 IF x_direct_item_type = 1 THEN
281 x_direct_item_sequence_id := l_out_eam_direct_items_tbl(1).direct_item_sequence_id;
282 END IF;
283 EXCEPTION
284 WHEN no_data_found THEN
285 null;
286 END; -- Fix for Bug 3745360 End
287 END Insert_Row;
288
289
290
291
292 /********************************************************************
293 * Procedure : Update_Row
294 * Parameters IN : Direct Items column record
295 * Parameters OUT NOCOPY: Message Token Table
296 * Return Status
297 * Purpose : Procedure will perfrom an Update on the
298 * wip_eam_direct_items
299 *********************************************************************/
300
301 PROCEDURE Update_Row
302 ( X_DESCRIPTION IN VARCHAR2 ,
303 X_DIRECT_ITEM_TYPE IN NUMBER ,
304 X_PURCHASING_CATEGORY_ID IN NUMBER ,
305 X_DIRECT_ITEM_SEQUENCE_ID IN NUMBER ,
306 X_INVENTORY_ITEM_ID IN NUMBER ,
307 X_OPERATION_SEQ_NUM IN NUMBER ,
308 X_DEPARTMENT_ID IN NUMBER ,
309 X_WIP_ENTITY_ID IN NUMBER ,
310 X_ORGANIZATION_ID IN NUMBER ,
311 X_SUGGESTED_VENDOR_NAME IN VARCHAR2 ,
312 X_SUGGESTED_VENDOR_ID IN NUMBER ,
313 X_SUGGESTED_VENDOR_SITE IN VARCHAR2 ,
314 X_SUGGESTED_VENDOR_SITE_ID IN NUMBER ,
315 X_SUGGESTED_VENDOR_CONTACT IN VARCHAR2 ,
316 X_SUGGESTED_VENDOR_CONTACT_ID IN NUMBER ,
317 X_SUGGESTED_VENDOR_PHONE IN VARCHAR2 ,
318 X_SUGGESTED_VENDOR_ITEM_NUM IN VARCHAR2 ,
319 X_UNIT_PRICE IN NUMBER ,
320 X_AUTO_REQUEST_MATERIAL IN VARCHAR2 ,
321 X_REQUIRED_QUANTITY IN NUMBER ,
322 X_UOM IN VARCHAR2 ,
323 X_NEED_BY_DATE IN DATE ,
324 X_ATTRIBUTE_CATEGORY IN VARCHAR2 ,
325 X_ATTRIBUTE1 IN VARCHAR2 ,
326 X_ATTRIBUTE2 IN VARCHAR2 ,
327 X_ATTRIBUTE3 IN VARCHAR2 ,
328 X_ATTRIBUTE4 IN VARCHAR2 ,
329 X_ATTRIBUTE5 IN VARCHAR2 ,
330 X_ATTRIBUTE6 IN VARCHAR2 ,
331 X_ATTRIBUTE7 IN VARCHAR2 ,
332 X_ATTRIBUTE8 IN VARCHAR2 ,
333 X_ATTRIBUTE9 IN VARCHAR2 ,
334 X_ATTRIBUTE10 IN VARCHAR2 ,
335 X_ATTRIBUTE11 IN VARCHAR2 ,
336 X_ATTRIBUTE12 IN VARCHAR2 ,
337 X_ATTRIBUTE13 IN VARCHAR2 ,
338 X_ATTRIBUTE14 IN VARCHAR2 ,
339 X_ATTRIBUTE15 IN VARCHAR2 ,
340 X_PROGRAM_APPLICATION_ID IN NUMBER ,
341 X_PROGRAM_ID IN NUMBER ,
342 X_PROGRAM_UPDATE_DATE IN DATE ,
343 X_REQUEST_ID IN NUMBER ,
344 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
345 X_MATERIAL_SHORTAGE_FLAG OUT NOCOPY VARCHAR2,
346 X_MATERIAL_SHORTAGE_CHECK_DATe OUT NOCOPY DATE
347 )
348 IS
349
350 l_eam_direct_items_rec EAM_PROCESS_WO_PUB.eam_direct_items_rec_type;
351 l_eam_direct_items_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
352 l_eam_mat_req_rec EAM_PROCESS_WO_PUB.eam_mat_req_rec_type;
353 l_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
354
355 l_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
356 l_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
357 l_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
358 l_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
359 l_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
360 l_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
361 l_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
362 l_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
363 l_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
364 l_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
365 l_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
366 l_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
367 l_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
368 l_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
369 l_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
370
371 l_out_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
372 l_out_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
373 l_out_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
374 l_out_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
378 l_out_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
375 l_out_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
376 l_out_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
377 l_out_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
379 l_out_eam_direct_items_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
380 l_out_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
381 l_out_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
382 l_out_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
383 l_out_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
384 l_out_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
385 l_out_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
386 l_out_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
387 l_out_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
388
389 l_return_status VARCHAR2(10);
390 l_msg_count NUMBER;
391 l_output_dir VARCHAR2(512);
392
393 /* Added for bug 8969942---start --- */
394 l_prev_attribute_category VARCHAR2(30);
395 l_prev_attribute1 VARCHAR2(150);
396 l_prev_attribute2 VARCHAR2(150);
397 l_prev_attribute3 VARCHAR2(150);
398 l_prev_attribute4 VARCHAR2(150);
399 l_prev_attribute5 VARCHAR2(150);
400 l_prev_attribute6 VARCHAR2(150);
401 l_prev_attribute7 VARCHAR2(150);
402 l_prev_attribute8 VARCHAR2(150);
403 l_prev_attribute9 VARCHAR2(150);
404 l_prev_attribute10 VARCHAR2(150);
405 l_prev_attribute11 VARCHAR2(150);
406 l_prev_attribute12 VARCHAR2(150);
407 l_prev_attribute13 VARCHAR2(150);
408 l_prev_attribute14 VARCHAR2(150);
409 l_prev_attribute15 VARCHAR2(150);
410 /* ------end -----------------------*/
411
412 BEGIN
413
414 if X_DIRECT_ITEM_TYPE = 1 then
415
416 /* Adding Code to get previous operation data fields for 8969942 .. start ... */
417
418 Begin
419 select attribute_category
420 ,attribute1
421 ,attribute2
422 ,attribute3
423 ,attribute4
424 ,attribute5
425 ,attribute6
426 ,attribute7
427 ,attribute8
428 ,attribute9
429 ,attribute10
430 ,attribute11
431 ,attribute12
432 ,attribute13
433 ,attribute14
434 ,attribute15
435 into
436 l_prev_attribute_category
437 ,l_prev_attribute1
438 ,l_prev_attribute2
439 ,l_prev_attribute3
440 ,l_prev_attribute4
441 ,l_prev_attribute5
442 ,l_prev_attribute6
443 ,l_prev_attribute7
444 ,l_prev_attribute8
445 ,l_prev_attribute9
446 ,l_prev_attribute10
447 ,l_prev_attribute11
448 ,l_prev_attribute12
449 ,l_prev_attribute13
450 ,l_prev_attribute14
451 ,l_prev_attribute15
452 from WIP_EAM_DIRECT_ITEMS
453 where wip_entity_id =X_wip_Entity_Id
454 and organization_id = X_organization_id
455 and operation_seq_num= X_Operation_Seq_Num
456 and Direct_Item_Sequence_Id = X_Direct_Item_Sequence_Id;
457 EXCEPTION
458 WHEN NO_DATA_FOUND THEN
459 null;
460 When Others then
461 null;
462 END;
463
464 /* ... end ... for 8969942*/
465
466
467 l_eam_direct_items_rec.DESCRIPTION := X_DESCRIPTION;
468 l_eam_direct_items_rec.PURCHASING_CATEGORY_ID := X_PURCHASING_CATEGORY_ID;
469 l_eam_direct_items_rec.Direct_Item_Sequence_Id := X_Direct_Item_Sequence_Id;
470 l_eam_direct_items_rec.Operation_Seq_Num := X_Operation_Seq_Num;
471 l_eam_direct_items_rec.Department_id := X_Department_id;
472 l_eam_direct_items_rec.Wip_entity_id := X_Wip_entity_id;
473 l_eam_direct_items_rec.Organization_id := X_Organization_id;
474 l_eam_direct_items_rec.Suggested_Vendor_Name := X_Suggested_Vendor_Name;
475 l_eam_direct_items_rec.Suggested_Vendor_Id := X_Suggested_Vendor_Id;
476 l_eam_direct_items_rec.Suggested_Vendor_Site := X_Suggested_Vendor_Site;
477 l_eam_direct_items_rec.Suggested_Vendor_Site_Id := X_Suggested_Vendor_Site_Id;
481 l_eam_direct_items_rec.Suggested_Vendor_Item_Num := X_Suggested_Vendor_Item_Num;
478 l_eam_direct_items_rec.Suggested_Vendor_Contact := X_Suggested_Vendor_Contact;
479 l_eam_direct_items_rec.Suggested_Vendor_Contact_Id := X_Suggested_Vendor_Contact_Id;
480 l_eam_direct_items_rec.Suggested_Vendor_Phone := X_Suggested_Vendor_Phone;
482 l_eam_direct_items_rec.Unit_Price := X_Unit_Price;
483 l_eam_direct_items_rec.Auto_request_Material := X_Auto_request_Material;
484 l_eam_direct_items_rec.Required_Quantity := X_Required_Quantity;
485 l_eam_direct_items_rec.UOM := X_UOM;
486 l_eam_direct_items_rec.Need_By_Date := X_Need_By_Date;
487
488 /* ---- start for 8969942---- */
489 IF l_prev_attribute_category is not null and X_attribute_category is null THEN
490 l_eam_direct_items_rec.attribute_category := FND_API.G_MISS_CHAR;
491 ELSE
492 l_eam_direct_items_rec.attribute_category := X_attribute_category;
493 END IF;
494
495 IF l_prev_attribute1 is not null and X_attribute1 is null THEN
496 l_eam_direct_items_rec.attribute1 := FND_API.G_MISS_CHAR;
497 ELSE
498 l_eam_direct_items_rec.attribute1 := X_attribute1;
499 END IF;
500
501 IF l_prev_attribute2 is not null and X_attribute2 is null THEN
502 l_eam_direct_items_rec.attribute2 := FND_API.G_MISS_CHAR;
503 ELSE
504 l_eam_direct_items_rec.attribute2 := X_attribute2;
505 END IF;
506
507 IF l_prev_attribute3 is not null and X_attribute3 is null THEN
508 l_eam_direct_items_rec.attribute3 := FND_API.G_MISS_CHAR;
509 ELSE
510 l_eam_direct_items_rec.attribute3 := X_attribute3;
511 END IF;
512
513 IF l_prev_attribute4 is not null and X_attribute4 is null THEN
514 l_eam_direct_items_rec.attribute4 := FND_API.G_MISS_CHAR;
515 ELSE
516 l_eam_direct_items_rec.attribute4 := X_attribute4;
517 END IF;
518
519 IF l_prev_attribute5 is not null and X_attribute5 is null THEN
520 l_eam_direct_items_rec.attribute5 := FND_API.G_MISS_CHAR;
521 ELSE
522 l_eam_direct_items_rec.attribute5 := X_attribute5;
523 END IF;
524
525 IF l_prev_attribute6 is not null and X_attribute6 is null THEN
526 l_eam_direct_items_rec.attribute6 := FND_API.G_MISS_CHAR;
527 ELSE
528 l_eam_direct_items_rec.attribute6 := X_attribute6;
529 END IF;
530
531 IF l_prev_attribute7 is not null and X_attribute7 is null THEN
532 l_eam_direct_items_rec.attribute7 := FND_API.G_MISS_CHAR;
533 ELSE
534 l_eam_direct_items_rec.attribute7 := X_attribute7;
535 END IF;
536
537 IF l_prev_attribute8 is not null and X_attribute8 is null THEN
538 l_eam_direct_items_rec.attribute8 := FND_API.G_MISS_CHAR;
539 ELSE
540 l_eam_direct_items_rec.attribute8 := X_attribute8;
541 END IF;
542
543 IF l_prev_attribute9 is not null and X_attribute9 is null THEN
544 l_eam_direct_items_rec.attribute9 := FND_API.G_MISS_CHAR;
545 ELSE
546 l_eam_direct_items_rec.attribute9 := X_attribute9;
547 END IF;
548
549 IF l_prev_attribute10 is not null and X_attribute10 is null THEN
550 l_eam_direct_items_rec.attribute10 := FND_API.G_MISS_CHAR;
551 ELSE
552 l_eam_direct_items_rec.attribute10 := X_attribute10;
553 END IF;
554
555 IF l_prev_attribute11 is not null and X_attribute11 is null THEN
556 l_eam_direct_items_rec.attribute11 := FND_API.G_MISS_CHAR;
557 ELSE
558 l_eam_direct_items_rec.attribute11 := X_attribute11;
559 END IF;
560
561 IF l_prev_attribute12 is not null and X_attribute12 is null THEN
562 l_eam_direct_items_rec.attribute12 := FND_API.G_MISS_CHAR;
563 ELSE
564 l_eam_direct_items_rec.attribute12 := X_attribute12;
565 END IF;
566
567 IF l_prev_attribute13 is not null and X_attribute13 is null THEN
568 l_eam_direct_items_rec.attribute13 := FND_API.G_MISS_CHAR;
569 ELSE
570 l_eam_direct_items_rec.attribute13 := X_attribute13;
571 END IF;
575 ELSE
572
573 IF l_prev_attribute14 is not null and X_attribute14 is null THEN
574 l_eam_direct_items_rec.attribute14 := FND_API.G_MISS_CHAR;
576 l_eam_direct_items_rec.attribute14 := X_attribute14;
577 END IF;
578
579 IF l_prev_attribute15 is not null and X_attribute15 is null THEN
580 l_eam_direct_items_rec.attribute15 := FND_API.G_MISS_CHAR;
581 ELSE
582 l_eam_direct_items_rec.attribute15 := X_attribute15;
583 END IF;
584
585 /* ---- end for 8969942---- */
586
587 l_eam_direct_items_rec.PROGRAM_APPLICATION_ID := null;
588 l_eam_direct_items_rec.PROGRAM_ID := null;
589 l_eam_direct_items_rec.PROGRAM_UPDATE_DATE := sysdate;
590 l_eam_direct_items_rec.REQUEST_ID := null;
591 l_eam_direct_items_rec.RETURN_STATUS := null;
592 l_eam_direct_items_rec.TRANSACTION_TYPE := EAM_PROCESS_WO_PVT.G_OPR_UPDATE;
593 l_eam_direct_items_rec.HEADER_ID := 1;
594 l_eam_direct_items_rec.BATCH_ID := 1;
595 l_eam_direct_items_rec.ROW_ID := null;
596
597 l_eam_direct_items_tbl(1) := l_eam_direct_items_rec;
598
599 elsif X_DIRECT_ITEM_TYPE = 2 then
600
601 /* Adding Code to get previous operation data fields for 8969942 .. start ... */
602
603 Begin
604 select attribute_category
605 ,attribute1
606 ,attribute2
607 ,attribute3
608 ,attribute4
609 ,attribute5
610 ,attribute6
611 ,attribute7
612 ,attribute8
613 ,attribute9
614 ,attribute10
615 ,attribute11
616 ,attribute12
617 ,attribute13
618 ,attribute14
619 ,attribute15
620 into
621 l_prev_attribute_category
622 ,l_prev_attribute1
623 ,l_prev_attribute2
624 ,l_prev_attribute3
625 ,l_prev_attribute4
626 ,l_prev_attribute5
627 ,l_prev_attribute6
628 ,l_prev_attribute7
629 ,l_prev_attribute8
630 ,l_prev_attribute9
631 ,l_prev_attribute10
632 ,l_prev_attribute11
633 ,l_prev_attribute12
634 ,l_prev_attribute13
635 ,l_prev_attribute14
636 ,l_prev_attribute15
637 from WIP_REQUIREMENT_OPERATIONS
638 where wip_entity_id =X_wip_Entity_Id
639 and organization_id = X_organization_id
640 and operation_seq_num= X_Operation_Seq_Num
641 and INVENTORY_ITEM_ID = X_inventory_item_id;
642 EXCEPTION
643 WHEN NO_DATA_FOUND THEN
644 null;
645 When Others then
646 null;
647 END;
648
649 /* ... end ... for 8969942*/
650
651
652 l_eam_mat_req_rec.Operation_Seq_Num := X_Operation_Seq_Num;
653 l_eam_mat_req_rec.Department_id := X_Department_id;
654 l_eam_mat_req_rec.Wip_entity_id := X_Wip_entity_id;
655 l_eam_mat_req_rec.Organization_id := X_Organization_id;
656 l_eam_mat_req_rec.Suggested_Vendor_Name := X_Suggested_Vendor_Name; -- Fix for Bug 3665818
657 l_eam_mat_req_rec.Vendor_Id := X_Suggested_Vendor_Id; -- Fix for Bug 3665818
658 l_eam_mat_req_rec.inventory_item_id := X_Inventory_Item_id;
659 l_eam_mat_req_rec.Unit_Price := X_Unit_Price;
660 l_eam_mat_req_rec.Auto_request_Material := X_Auto_request_Material;
661 l_eam_mat_req_rec.Required_Quantity := X_Required_Quantity;
662 l_eam_mat_req_rec.Date_Required := X_Need_By_Date;
663
664 IF l_prev_attribute_category is not null and X_attribute_category is null THEN
665 l_eam_mat_req_rec.attribute_category := FND_API.G_MISS_CHAR;
666 ELSE
667 l_eam_mat_req_rec.attribute_category := X_attribute_category;
668 END IF;
669
670 IF l_prev_attribute1 is not null and X_attribute1 is null THEN
671 l_eam_mat_req_rec.attribute1 := FND_API.G_MISS_CHAR;
672 ELSE
673 l_eam_mat_req_rec.attribute1 := X_attribute1;
674 END IF;
675
676 IF l_prev_attribute2 is not null and X_attribute2 is null THEN
677 l_eam_mat_req_rec.attribute2 := FND_API.G_MISS_CHAR;
678 ELSE
679 l_eam_mat_req_rec.attribute2 := X_attribute2;
680 END IF;
681
682 IF l_prev_attribute3 is not null and X_attribute3 is null THEN
686 END IF;
683 l_eam_mat_req_rec.attribute3 := FND_API.G_MISS_CHAR;
684 ELSE
685 l_eam_mat_req_rec.attribute3 := X_attribute3;
687
688 IF l_prev_attribute4 is not null and X_attribute4 is null THEN
689 l_eam_mat_req_rec.attribute4 := FND_API.G_MISS_CHAR;
690 ELSE
691 l_eam_mat_req_rec.attribute4 := X_attribute4;
692 END IF;
693
694 IF l_prev_attribute5 is not null and X_attribute5 is null THEN
695 l_eam_mat_req_rec.attribute5 := FND_API.G_MISS_CHAR;
696 ELSE
697 l_eam_mat_req_rec.attribute5 := X_attribute5;
698 END IF;
699
700 IF l_prev_attribute6 is not null and X_attribute6 is null THEN
701 l_eam_mat_req_rec.attribute6 := FND_API.G_MISS_CHAR;
702 ELSE
703 l_eam_mat_req_rec.attribute6 := X_attribute6;
704 END IF;
705
706 IF l_prev_attribute7 is not null and X_attribute7 is null THEN
707 l_eam_mat_req_rec.attribute7 := FND_API.G_MISS_CHAR;
708 ELSE
709 l_eam_mat_req_rec.attribute7 := X_attribute7;
710 END IF;
711
712 IF l_prev_attribute8 is not null and X_attribute8 is null THEN
713 l_eam_mat_req_rec.attribute8 := FND_API.G_MISS_CHAR;
714 ELSE
715 l_eam_mat_req_rec.attribute8 := X_attribute8;
716 END IF;
717
718 IF l_prev_attribute9 is not null and X_attribute9 is null THEN
719 l_eam_mat_req_rec.attribute9 := FND_API.G_MISS_CHAR;
720 ELSE
721 l_eam_mat_req_rec.attribute9 := X_attribute9;
722 END IF;
723
724 IF l_prev_attribute10 is not null and X_attribute10 is null THEN
725 l_eam_mat_req_rec.attribute10 := FND_API.G_MISS_CHAR;
726 ELSE
727 l_eam_mat_req_rec.attribute10 := X_attribute10;
728 END IF;
729
730 IF l_prev_attribute11 is not null and X_attribute11 is null THEN
731 l_eam_mat_req_rec.attribute11 := FND_API.G_MISS_CHAR;
732 ELSE
733 l_eam_mat_req_rec.attribute11 := X_attribute11;
734 END IF;
735
736 IF l_prev_attribute12 is not null and X_attribute12 is null THEN
737 l_eam_mat_req_rec.attribute12 := FND_API.G_MISS_CHAR;
738 ELSE
739 l_eam_mat_req_rec.attribute12 := X_attribute12;
740 END IF;
741
742 IF l_prev_attribute13 is not null and X_attribute13 is null THEN
743 l_eam_mat_req_rec.attribute13 := FND_API.G_MISS_CHAR;
744 ELSE
745 l_eam_mat_req_rec.attribute13 := X_attribute13;
746 END IF;
747
748 IF l_prev_attribute14 is not null and X_attribute14 is null THEN
749 l_eam_mat_req_rec.attribute14 := FND_API.G_MISS_CHAR;
750 ELSE
751 l_eam_mat_req_rec.attribute14 := X_attribute14;
752 END IF;
753
754 IF l_prev_attribute15 is not null and X_attribute15 is null THEN
755 l_eam_mat_req_rec.attribute15 := FND_API.G_MISS_CHAR;
756 ELSE
757 l_eam_mat_req_rec.attribute15 := X_attribute15;
758 END IF;
759
760 l_eam_mat_req_rec.PROGRAM_APPLICATION_ID := null;
761 l_eam_mat_req_rec.PROGRAM_ID := null;
762 l_eam_mat_req_rec.PROGRAM_UPDATE_DATE := sysdate;
763 l_eam_mat_req_rec.REQUEST_ID := null;
764 l_eam_mat_req_rec.RETURN_STATUS := null;
765 l_eam_mat_req_rec.TRANSACTION_TYPE := EAM_PROCESS_WO_PVT.G_OPR_UPDATE;
766 l_eam_mat_req_rec.HEADER_ID := 1;
767 l_eam_mat_req_rec.BATCH_ID := 1;
768 l_eam_mat_req_rec.ROW_ID := null;
769
770 l_eam_mat_req_tbl(1) := l_eam_mat_req_rec;
771
772 end if;
773
774 EAM_WORKORDER_UTIL_PKG.log_path(l_output_dir);
775
776 EAM_PROCESS_WO_PUB.PROCESS_WO
777 ( p_bo_identifier => 'EAM'
778 , p_api_version_number => 1.0
779 , p_init_msg_list => FALSE
780 , p_commit => 'N'
781 , p_eam_wo_rec => l_eam_wo_rec
782 , p_eam_op_tbl => l_eam_op_tbl
783 , p_eam_op_network_tbl => l_eam_op_network_tbl
784 , p_eam_res_tbl => l_eam_res_tbl
785 , p_eam_res_inst_tbl => l_eam_res_inst_tbl
786 , p_eam_sub_res_tbl => l_eam_sub_res_tbl
787 , p_eam_res_usage_tbl => l_eam_res_usage_tbl
788 , p_eam_mat_req_tbl => l_eam_mat_req_tbl
789 , p_eam_direct_items_tbl => l_eam_direct_items_tbl
790 , p_eam_wo_comp_rec => l_eam_wo_comp_rec
791 , p_eam_wo_quality_tbl => l_eam_wo_quality_tbl
792 , p_eam_meter_reading_tbl => l_eam_meter_reading_tbl
793 , p_eam_counter_prop_tbl => l_eam_counter_prop_tbl
794 , p_eam_wo_comp_rebuild_tbl => l_eam_wo_comp_rebuild_tbl
795 , p_eam_wo_comp_mr_read_tbl => l_eam_wo_comp_mr_read_tbl
796 , p_eam_op_comp_tbl => l_eam_op_comp_tbl
797 , p_eam_request_tbl => l_eam_request_tbl
798 , x_eam_wo_rec => l_out_eam_wo_rec
799 , x_eam_op_tbl => l_out_eam_op_tbl
800 , x_eam_op_network_tbl => l_out_eam_op_network_tbl
801 , x_eam_res_tbl => l_out_eam_res_tbl
802 , x_eam_res_inst_tbl => l_out_eam_res_inst_tbl
803 , x_eam_sub_res_tbl => l_out_eam_sub_res_tbl
807 , x_eam_wo_comp_rec => l_out_eam_wo_comp_rec
804 , x_eam_res_usage_tbl => l_out_eam_res_usage_tbl
805 , x_eam_mat_req_tbl => l_out_eam_mat_req_tbl
806 , x_eam_direct_items_tbl => l_out_eam_direct_items_tbl
808 , x_eam_wo_quality_tbl => l_out_eam_wo_quality_tbl
809 , x_eam_meter_reading_tbl => l_out_eam_meter_reading_tbl
810 , x_eam_counter_prop_tbl => l_out_eam_counter_prop_tbl
811 , x_eam_wo_comp_rebuild_tbl => l_out_eam_wo_comp_rebuild_tbl
812 , x_eam_wo_comp_mr_read_tbl => l_out_eam_wo_comp_mr_read_tbl
813 , x_eam_op_comp_tbl => l_out_eam_op_comp_tbl
814 , x_eam_request_tbl => l_out_eam_request_tbl
815 , x_return_status => l_return_status
816 , x_msg_count => l_msg_count
817 , p_debug => NVL(fnd_profile.value('EAM_DEBUG'), 'N')
818 , p_output_dir => l_output_dir
819 , p_debug_filename => 'diitemupd.log'
820 , p_debug_file_mode => 'w'
821 );
822
823 x_return_status := l_return_status;
824 x_material_shortage_flag := l_out_eam_wo_rec.material_shortage_flag;
825 x_material_shortage_check_date := l_out_eam_wo_rec.material_shortage_check_date;
826
827 END Update_Row;
828
829
830
831 /********************************************************************
832 * Procedure : Delete_Row
833 * Parameters IN : Direct Items column record
834 * Parameters OUT NOCOPY: Message Token Table
835 * Return Status
836 * Purpose : Procedure will perfrom an Delete on the
837 * wip_eam_direct_items
838 *********************************************************************/
839
840 PROCEDURE Delete_Row
841 ( X_DIRECT_ITEM_TYPE IN NUMBER,
842 X_DIRECT_ITEM_SEQUENCE_ID IN NUMBER,
843 X_INVENTORY_ITEM_ID IN NUMBER,
844 X_OPERATION_SEQ_NUM IN NUMBER,
845 X_WIP_ENTITY_ID IN NUMBER,
846 X_ORGANIZATION_ID IN NUMBER,
847 x_return_Status OUT NOCOPY VARCHAR2,
848 x_material_shortage_flag OUT NOCOPY VARCHAR2,
849 x_material_shortage_check_date OUT NOCOPY DATE
850 )
851 IS
852 l_eam_direct_items_rec EAM_PROCESS_WO_PUB.eam_direct_items_rec_type;
853 l_eam_direct_items_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
854 l_eam_mat_req_rec EAM_PROCESS_WO_PUB.eam_mat_req_rec_type;
855 l_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
856
857 l_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
858 l_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
859 l_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
860 l_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
861 l_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
862 l_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
863 l_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
864 l_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
865 l_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
866 l_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
867 l_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
868 l_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
869 l_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
870 l_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
871 l_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
872
873 l_out_eam_wo_rec EAM_PROCESS_WO_PUB.eam_wo_rec_type;
874 l_out_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type;
875 l_out_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type;
876 l_out_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;
877 l_out_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type;
878 l_out_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type;
879 l_out_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type;
880 l_out_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type;
881 l_out_eam_direct_items_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type;
882 l_out_eam_wo_comp_rec EAM_PROCESS_WO_PUB.eam_wo_comp_rec_type;
883 l_out_eam_wo_quality_tbl EAM_PROCESS_WO_PUB.eam_wo_quality_tbl_type;
884 l_out_eam_meter_reading_tbl EAM_PROCESS_WO_PUB.eam_meter_reading_tbl_type;
885 l_out_eam_wo_comp_rebuild_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_rebuild_tbl_type;
886 l_out_eam_wo_comp_mr_read_tbl EAM_PROCESS_WO_PUB.eam_wo_comp_mr_read_tbl_type;
887 l_out_eam_op_comp_tbl EAM_PROCESS_WO_PUB.eam_op_comp_tbl_type;
888 l_out_eam_request_tbl EAM_PROCESS_WO_PUB.eam_request_tbl_type;
889 l_out_eam_counter_prop_tbl EAM_PROCESS_WO_PUB.eam_counter_prop_tbl_type;
890
891 l_return_status VARCHAR2(10);
892 l_msg_count NUMBER;
893 l_output_dir VARCHAR2(512);
894
895 BEGIN
896
897 l_eam_direct_items_tbl.delete;
898 l_eam_mat_req_tbl.delete;
899
900 EAM_WORKORDER_UTIL_PKG.log_path(l_output_dir);
901
902 if X_DIRECT_ITEM_TYPE = 1 then
903
904 l_eam_direct_items_rec.Direct_Item_Sequence_Id := X_Direct_Item_Sequence_Id;
905 l_eam_direct_items_rec.Operation_Seq_Num := X_Operation_Seq_Num;
906 l_eam_direct_items_rec.Wip_entity_id := X_Wip_entity_id;
907 l_eam_direct_items_rec.Organization_id := X_Organization_id;
908 l_eam_direct_items_rec.RETURN_STATUS := null;
909 l_eam_direct_items_rec.TRANSACTION_TYPE := EAM_PROCESS_WO_PVT.G_OPR_DELETE;
910 l_eam_direct_items_rec.HEADER_ID := 1;
911 l_eam_direct_items_rec.BATCH_ID := 1;
912 l_eam_direct_items_rec.ROW_ID := null;
913
914 l_eam_direct_items_tbl(1) := l_eam_direct_items_rec;
915
916 elsif X_DIRECT_ITEM_TYPE = 2 then
917
918 l_eam_mat_req_rec.Operation_Seq_Num := X_Operation_Seq_Num;
919 l_eam_mat_req_rec.Wip_entity_id := X_Wip_entity_id;
920 l_eam_mat_req_rec.Organization_id := X_Organization_id;
921 l_eam_mat_req_rec.inventory_item_id := X_Inventory_item_id;
922 l_eam_mat_req_rec.RETURN_STATUS := null;
923 l_eam_mat_req_rec.TRANSACTION_TYPE := EAM_PROCESS_WO_PVT.G_OPR_DELETE;
924 l_eam_mat_req_rec.HEADER_ID := 1;
925 l_eam_mat_req_rec.BATCH_ID := 1;
926 l_eam_mat_req_rec.ROW_ID := null;
927
928 l_eam_mat_req_tbl(1) := l_eam_mat_req_rec;
929
930 end if;
931
932 EAM_PROCESS_WO_PUB.PROCESS_WO
933 ( p_bo_identifier => 'EAM'
934 , p_api_version_number => 1.0
935 , p_init_msg_list => FALSE
936 , p_commit => 'N'
937 , p_eam_wo_rec => l_eam_wo_rec
938 , p_eam_op_tbl => l_eam_op_tbl
939 , p_eam_op_network_tbl => l_eam_op_network_tbl
940 , p_eam_res_tbl => l_eam_res_tbl
941 , p_eam_res_inst_tbl => l_eam_res_inst_tbl
942 , p_eam_sub_res_tbl => l_eam_sub_res_tbl
943 , p_eam_res_usage_tbl => l_eam_res_usage_tbl
944 , p_eam_mat_req_tbl => l_eam_mat_req_tbl
945 , p_eam_direct_items_tbl => l_eam_direct_items_tbl
946 , p_eam_wo_comp_rec => l_eam_wo_comp_rec
947 , p_eam_wo_quality_tbl => l_eam_wo_quality_tbl
948 , p_eam_meter_reading_tbl => l_eam_meter_reading_tbl
949 , p_eam_counter_prop_tbl => l_eam_counter_prop_tbl
950 , p_eam_wo_comp_rebuild_tbl => l_eam_wo_comp_rebuild_tbl
951 , p_eam_wo_comp_mr_read_tbl => l_eam_wo_comp_mr_read_tbl
952 , p_eam_op_comp_tbl => l_eam_op_comp_tbl
953 , p_eam_request_tbl => l_eam_request_tbl
954 , x_eam_wo_rec => l_out_eam_wo_rec
955 , x_eam_op_tbl => l_out_eam_op_tbl
956 , x_eam_op_network_tbl => l_out_eam_op_network_tbl
957 , x_eam_res_tbl => l_out_eam_res_tbl
958 , x_eam_res_inst_tbl => l_out_eam_res_inst_tbl
959 , x_eam_sub_res_tbl => l_out_eam_sub_res_tbl
960 , x_eam_res_usage_tbl => l_out_eam_res_usage_tbl
961 , x_eam_mat_req_tbl => l_out_eam_mat_req_tbl
962 , x_eam_direct_items_tbl => l_out_eam_direct_items_tbl
963 , x_eam_wo_comp_rec => l_out_eam_wo_comp_rec
964 , x_eam_wo_quality_tbl => l_out_eam_wo_quality_tbl
965 , x_eam_meter_reading_tbl => l_out_eam_meter_reading_tbl
966 , x_eam_counter_prop_tbl => l_out_eam_counter_prop_tbl
967 , x_eam_wo_comp_rebuild_tbl => l_out_eam_wo_comp_rebuild_tbl
968 , x_eam_wo_comp_mr_read_tbl => l_out_eam_wo_comp_mr_read_tbl
969 , x_eam_op_comp_tbl => l_out_eam_op_comp_tbl
970 , x_eam_request_tbl => l_out_eam_request_tbl
971 , x_return_status => l_return_status
972 , x_msg_count => l_msg_count
973 , p_debug => NVL(fnd_profile.value('EAM_DEBUG'), 'N')
974 , p_output_dir => l_output_dir
975 , p_debug_filename => 'diitemdel.log'
976 , p_debug_file_mode => 'w'
977 );
978
979 x_return_status := l_return_status;
980 x_material_shortage_flag := l_out_eam_wo_rec.material_shortage_flag;
981 x_material_shortage_check_date := l_out_eam_wo_rec.material_shortage_check_date;
982
983 END Delete_Row;
984
985 --Fix for 3352406.Added the following procedure to show the messages from the api
986 /********************************************************************
987 * Procedure : show_mesg
988 * Purpose : Procedure will concatenate all the messages
989 from the workorder api and return 1 string
990 *********************************************************************/
991 PROCEDURE show_mesg IS
992 l_msg_count NUMBER;
993 mesg varchar2(2000);
994 i NUMBER;
995 msg_index number;
996 temp varchar2(500);
997 BEGIN
998 mesg := '';
999
1000 l_msg_count := fnd_msg_pub.count_msg;
1001 IF(l_msg_count>0) THEN
1002
1003 msg_index := l_msg_count;
1004
1005 for i in 1..l_msg_count loop
1006 fnd_msg_pub.get(p_msg_index => FND_MSG_PUB.G_NEXT,
1007 p_encoded => 'F',
1008 p_data => temp,
1009 p_msg_index_out => msg_index);
1010 msg_index := msg_index-1;
1011 mesg := mesg || ' ' || to_char(i) || ' . '||temp ;
1012 end loop;
1013 fnd_message.set_name('EAM','EAM_WO_API_MESG');
1014
1015 fnd_message.set_token(token => 'MESG',
1016 value =>mesg,
1017 translate =>FALSE);
1018 APP_EXCEPTION.RAISE_EXCEPTION;
1019 END IF;
1020
1021 END show_mesg;
1022
1023 END EAM_DIRECT_ITEMS_PKG_PVT;