[Home] [Help]
PACKAGE BODY: APPS.WSMPDJOB
Source
1 PACKAGE BODY WSMPDJOB as
2 /* $Header: WSMDJTHB.pls 115.14 2003/12/04 22:53:05 zchen ship $ */
3
4 PROCEDURE Insert_Row(
5 X_Rowid IN OUT NOCOPY VARCHAR2,
6 X_wip_entity_id IN OUT NOCOPY NUMBER,
7 X_organization_id NUMBER,
8 X_last_update_date DATE,
9 X_last_updated_by NUMBER,
10 X_creation_date DATE,
11 X_created_by NUMBER,
12 X_last_update_login NUMBER,
13 X_description VARCHAR2,
14 X_status_type NUMBER,
15 X_primary_item_id NUMBER,
16 X_firm_planned_flag NUMBER,
17 X_job_type NUMBER,
18 X_wip_supply_type NUMBER,
19 X_class_code VARCHAR2,
20 X_material_account NUMBER,
21 X_material_overhead_account NUMBER,
22 X_resource_account NUMBER,
23 X_outside_processing_account NUMBER,
24 X_material_variance_account NUMBER,
25 X_resource_variance_account NUMBER,
26 X_outside_proc_var_account NUMBER,
27 X_std_cost_adjustment_account NUMBER,
28 X_overhead_account NUMBER,
29 X_overhead_variance_account NUMBER,
30 X_scheduled_start_date DATE,
31 X_date_released DATE,
32 X_scheduled_completion_date DATE,
33 X_date_completed DATE,
34 X_date_closed DATE,
35 X_start_quantity NUMBER,
36 X_overcompletion_toleran_type NUMBER,
37 X_overcompletion_toleran_value NUMBER,
38 X_quantity_completed NUMBER,
39 X_quantity_scrapped NUMBER,
40 X_net_quantity NUMBER,
41 X_bom_reference_id NUMBER,
42 X_routing_reference_id NUMBER,
43 X_common_bom_sequence_id NUMBER,
44 X_common_routing_sequence_id NUMBER,
45 X_bom_revision VARCHAR2,
46 X_routing_revision VARCHAR2,
47 X_bom_revision_date DATE,
48 X_routing_revision_date DATE,
49 X_lot_number VARCHAR2,
50 X_alternate_bom_designator VARCHAR2,
51 X_alternate_routing_designator VARCHAR2,
52 X_completion_subinventory VARCHAR2,
53 X_completion_locator_id NUMBER,
54 X_demand_class VARCHAR2,
55 X_attribute_category VARCHAR2,
56 X_attribute1 VARCHAR2,
57 X_attribute2 VARCHAR2,
58 X_attribute3 VARCHAR2,
59 X_attribute4 VARCHAR2,
60 X_attribute5 VARCHAR2,
61 X_attribute6 VARCHAR2,
62 X_attribute7 VARCHAR2,
63 X_attribute8 VARCHAR2,
64 X_attribute9 VARCHAR2,
65 X_attribute10 VARCHAR2,
66 X_attribute11 VARCHAR2,
67 X_attribute12 VARCHAR2,
68 X_attribute13 VARCHAR2,
69 X_attribute14 VARCHAR2,
70 X_attribute15 VARCHAR2,
71 X_We_Rowid IN OUT NOCOPY VARCHAR2,
72 X_Entity_Type NUMBER,
73 X_Wip_Entity_Name VARCHAR2,
74 X_Schedule_Group_Id NUMBER,
75 X_Build_Sequence NUMBER,
76 X_Line_Id NUMBER,
77 X_Project_Id NUMBER,
78 X_Task_Id NUMBER,
79 X_end_item_unit_number VARCHAR2,
80 X_po_creation_time NUMBER,
81 X_priority NUMBER,
82 X_due_date DATE,
83 x_coproducts_supply NUMBER,
84 x_error_code OUT NOCOPY NUMBER,
85 x_error_msg OUT NOCOPY VARCHAR2
86 ) IS
87
88 CURSOR C(we_id NUMBER) IS
89 SELECT rowid
90 FROM WIP_DISCRETE_JOBS
91 WHERE wip_entity_id = we_id
92 AND organization_id = X_Organization_Id;
93
94 -- CURSOR C2 IS SELECT wip_entities_s.nextval FROM DUAL; perf. tuning, abb
95
96 CURSOR C3(we_id NUMBER) IS
97 SELECT rowid
98 FROM WIP_ENTITIES
99 WHERE wip_entity_id = we_id
100 AND organization_id = X_Organization_Id;
101
102 -- Begin WSM Customization
103 x_est_scrap_account NUMBER;
104 x_est_scrap_var_account NUMBER;
105 l_stat_num NUMBER;
106 -- End WSM Customization
107
108 BEGIN
109 null;
110 /* --commented out by abedajna since this is no longer used
111 l_stat_num := 10;
112
113 -- Begin WSM Customization
114 l_stat_num := 20;
115 -- abb H: removed the clause class_type = 5, since we are providing the class_code, it's not necessary.
116 BEGIN
117 SELECT EST_SCRAP_ACCOUNT,
118 EST_SCRAP_VAR_ACCOUNT
119 INTO x_est_scrap_account,
120 x_est_scrap_var_account
121 FROM WIP_ACCOUNTING_CLASSES
122 where organization_id = X_organization_id
123 AND class_code = X_class_code;
124 EXCEPTION
125 WHEN NO_DATA_FOUND THEN NULL;
126 END;
127 -- End WSM Customization
128 l_stat_num := 30;
129
130 INSERT INTO WIP_DISCRETE_JOBS(
131 wip_entity_id,
132 organization_id,
133 last_update_date,
134 last_updated_by,
135 creation_date,
136 created_by,
137 last_update_login,
138 description,
139 status_type,
140 primary_item_id,
141 firm_planned_flag,
142 job_type,
143 wip_supply_type,
144 class_code,
145 material_account,
146 material_overhead_account,
147 resource_account,
148 outside_processing_account,
149 material_variance_account,
150 resource_variance_account,
151 outside_proc_variance_account,
152 std_cost_adjustment_account,
153 overhead_account,
154 overhead_variance_account,
155 scheduled_start_date,
156 date_released,
157 scheduled_completion_date,
158 date_completed,
159 date_closed,
160 start_quantity,
161 overcompletion_tolerance_type,
162 overcompletion_tolerance_value,
163 quantity_completed,
164 quantity_scrapped,
165 net_quantity,
166 bom_reference_id,
167 routing_reference_id,
168 common_bom_sequence_id,
169 common_routing_sequence_id,
170 bom_revision,
171 routing_revision,
172 bom_revision_date,
173 routing_revision_date,
174 lot_number,
175 alternate_bom_designator,
176 alternate_routing_designator,
177 completion_subinventory,
178 completion_locator_id,
179 demand_class,
180 attribute_category,
181 attribute1,
182 attribute2,
183 attribute3,
184 attribute4,
185 attribute5,
186 attribute6,
187 attribute7,
188 attribute8,
189 attribute9,
190 attribute10,
191 attribute11,
192 attribute12,
193 attribute13,
194 attribute14,
195 attribute15,
196 schedule_group_id,
197 build_sequence,
198 line_id,
199 project_id,
200 task_id,
201 end_item_unit_number,
202 po_creation_time,
203 priority,
204 due_date,
205 -- Begin WSM Customization
206 est_scrap_account,
207 est_scrap_var_account,
208 coproducts_supply
209 -- End WSM Customization
210 ) VALUES (
211 -- X_wip_entity_id, abedajna, perf.tuning
212 decode(X_wip_entity_id, NULL, wip_entities_s.nextval, X_wip_entity_id),
213 X_organization_id,
214 X_last_update_date,
215 X_last_updated_by,
216 X_creation_date,
217 X_created_by,
218 X_last_update_login,
219 X_description,
220 X_status_type,
221 X_primary_item_id,
222 X_firm_planned_flag,
223 X_job_type,
224 X_wip_supply_type,
225 X_class_code,
226 X_material_account,
227 X_material_overhead_account,
228 X_resource_account,
229 X_outside_processing_account,
230 X_material_variance_account,
231 X_resource_variance_account,
232 X_outside_proc_var_account,
233 X_std_cost_adjustment_account,
234 X_overhead_account,
235 X_overhead_variance_account,
236 X_scheduled_start_date,
237 X_date_released,
238 X_scheduled_completion_date,
239 X_date_completed,
240 X_date_closed,
241 X_start_quantity,
242 X_overcompletion_toleran_type,
243 X_overcompletion_toleran_value,
244 X_quantity_completed,
245 X_quantity_scrapped,
246 X_net_quantity,
247 X_bom_reference_id,
248 X_routing_reference_id,
249 X_common_bom_sequence_id,
250 X_common_routing_sequence_id,
251 X_bom_revision,
252 X_routing_revision,
253 X_bom_revision_date,
254 X_routing_revision_date,
255 X_lot_number,
256 X_alternate_bom_designator,
257 X_alternate_routing_designator,
258 X_completion_subinventory,
259 X_completion_locator_id,
260 X_demand_class,
261 X_attribute_category,
262 X_attribute1,
263 X_attribute2,
264 X_attribute3,
265 X_attribute4,
266 X_attribute5,
267 X_attribute6,
268 X_attribute7,
269 X_attribute8,
270 X_attribute9,
271 X_attribute10,
272 X_attribute11,
273 X_attribute12,
274 X_attribute13,
275 X_attribute14,
276 X_attribute15,
277 X_Schedule_Group_Id,
278 X_Build_Sequence,
279 X_Line_Id,
280 X_Project_Id,
281 X_Task_ID,
282 X_end_item_unit_number,
283 X_po_creation_time,
284 X_priority,
285 X_due_date,
286 -- Begin WSM Customization
287 x_est_scrap_account,
288 x_est_scrap_var_account,
289 x_coproducts_supply)
290 RETURNING wip_entity_id into X_wip_entity_id;
291 --abedajna, perf.tuning
292
293 -- End WSM Customization
294 l_stat_num := 40;
295
296 OPEN C(X_Wip_Entity_Id);
297 FETCH C INTO X_Rowid;
298 if (C%NOTFOUND) then
299 CLOSE C;
300 Raise NO_DATA_FOUND;
301 end if;
302 CLOSE C;
303 l_stat_num := 50;
304
305 INSERT INTO WIP_ENTITIES(
306 wip_entity_id,
307 organization_id,
308 last_update_date,
309 last_updated_by,
310 creation_date,
311 created_by,
312 last_update_login,
313 wip_entity_name,
314 entity_type,
315 description,
316 primary_item_id,
317 gen_object_id
318 ) VALUES (
319 X_Wip_Entity_Id,
320 X_Organization_Id,
321 X_Last_Update_Date,
322 X_Last_Updated_By,
323 X_Creation_Date,
324 X_Created_By,
325 X_Last_Update_Login,
326 X_Wip_Entity_Name,
327 X_Entity_Type,
328 X_Description,
329 X_Primary_Item_Id,
330 MTL_GEN_OBJECT_ID_S.nextval);
331 l_stat_num := 60;
332
333 OPEN C3(X_Wip_Entity_Id);
334 FETCH C3 INTO X_We_Rowid;
335 if (C3%NOTFOUND) then
336 CLOSE C3;
337 Raise NO_DATA_FOUND;
338 end if;
339 CLOSE C3;
340
341 EXCEPTION
342 WHEN others THEN
343 x_error_code := SQLCODE;
344 x_error_msg := 'WSMDJTHB.INSERT_ROW('||l_stat_num||')'|| substr(SQLERRM,1,200);
345 */
346 END INSERT_ROW;
347
348 PROCEDURE Update_Row(
349 X_Rowid VARCHAR2,
350 X_wip_entity_id NUMBER,
351 X_organization_id NUMBER,
352 X_last_update_date DATE,
353 X_last_updated_by NUMBER,
354 X_creation_date DATE,
355 X_created_by NUMBER,
356 X_last_update_login NUMBER,
357 X_description VARCHAR2,
358 X_status_type NUMBER,
359 X_primary_item_id NUMBER,
360 X_firm_planned_flag NUMBER,
361 X_job_type NUMBER,
362 X_wip_supply_type NUMBER,
363 X_class_code VARCHAR2,
364 X_material_account NUMBER,
365 X_material_overhead_account NUMBER,
366 X_resource_account NUMBER,
367 X_outside_processing_account NUMBER,
368 X_material_variance_account NUMBER,
369 X_resource_variance_account NUMBER,
370 X_outside_proc_var_account NUMBER,
371 X_std_cost_adjustment_account NUMBER,
372 X_overhead_account NUMBER,
373 X_overhead_variance_account NUMBER,
374 X_scheduled_start_date DATE,
375 X_date_released DATE,
376 X_scheduled_completion_date DATE,
377 X_date_completed DATE,
378 X_date_closed DATE,
379 X_start_quantity NUMBER,
380 X_overcompletion_toleran_type NUMBER,
381 X_overcompletion_toleran_value NUMBER,
382 X_quantity_completed NUMBER,
383 X_quantity_scrapped NUMBER,
384 X_net_quantity NUMBER,
385 X_bom_reference_id NUMBER,
386 X_routing_reference_id NUMBER,
387 X_common_bom_sequence_id NUMBER,
388 X_common_routing_sequence_id NUMBER,
389 X_bom_revision VARCHAR2,
390 X_routing_revision VARCHAR2,
391 X_bom_revision_date DATE,
392 X_routing_revision_date DATE,
393 X_lot_number VARCHAR2,
394 X_alternate_bom_designator VARCHAR2,
395 X_alternate_routing_designator VARCHAR2,
396 X_completion_subinventory VARCHAR2,
397 X_completion_locator_id NUMBER,
398 X_demand_class VARCHAR2,
399 X_attribute_category VARCHAR2,
400 X_attribute1 VARCHAR2,
401 X_attribute2 VARCHAR2,
402 X_attribute3 VARCHAR2,
406 X_attribute7 VARCHAR2,
403 X_attribute4 VARCHAR2,
404 X_attribute5 VARCHAR2,
405 X_attribute6 VARCHAR2,
407 X_attribute8 VARCHAR2,
408 X_attribute9 VARCHAR2,
409 X_attribute10 VARCHAR2,
410 X_attribute11 VARCHAR2,
411 X_attribute12 VARCHAR2,
412 X_attribute13 VARCHAR2,
413 X_attribute14 VARCHAR2,
414 X_attribute15 VARCHAR2,
415 X_We_Rowid IN OUT NOCOPY VARCHAR2,
416 X_end_item_unit_number VARCHAR2,
417 X_Entity_Type NUMBER,
418 X_Wip_Entity_Name VARCHAR2,
419 X_Update_Wip_Entities VARCHAR2,
420 X_Schedule_Group_Id NUMBER,
421 X_Build_Sequence NUMBER,
422 X_Line_Id NUMBER,
423 X_Project_Id NUMBER,
424 X_Task_Id NUMBER,
425 X_priority NUMBER,
426 X_due_date DATE,
427 x_coproducts_supply NUMBER,
428 x_error_code OUT NOCOPY NUMBER,
429 x_error_msg OUT NOCOPY VARCHAR2
430 ) IS
431
432 CURSOR C3(we_id NUMBER) IS
433 SELECT rowid
434 FROM WIP_ENTITIES
435 WHERE wip_entity_id = we_id
436 AND organization_id = X_Organization_Id;
437
438 dummy NUMBER;
439 l_stat_num NUMBER;
440
441 BEGIN
442
443 l_stat_num := 10;
444
445 UPDATE WIP_DISCRETE_JOBS SET
446 wip_entity_id = X_Wip_Entity_Id,
447 organization_id = X_Organization_Id,
448 last_update_date = X_Last_Update_Date,
449 last_updated_by = X_Last_Updated_By,
450 last_update_login = X_Last_Update_Login,
451 description = X_Description,
452 status_type = X_Status_Type,
453 primary_item_id = X_Primary_Item_Id,
454 firm_planned_flag = X_Firm_Planned_Flag,
455 job_type = X_Job_Type,
456 wip_supply_type = X_Wip_Supply_Type,
457 class_code = X_Class_Code,
458 material_account = X_Material_Account,
459 material_overhead_account = X_Material_Overhead_Account,
460 resource_account = X_Resource_Account,
461 outside_processing_account = X_Outside_Processing_Account,
462 material_variance_account = X_Material_Variance_Account,
463 resource_variance_account = X_Resource_Variance_Account,
464 outside_proc_variance_account = X_Outside_Proc_Var_Account,
465 std_cost_adjustment_account = X_Std_Cost_Adjustment_Account,
466 overhead_account = X_Overhead_Account,
467 overhead_variance_account = X_Overhead_Variance_Account,
468 scheduled_start_date = X_Scheduled_Start_Date,
469 date_released = X_Date_Released,
470 scheduled_completion_date = X_Scheduled_Completion_Date,
471 date_completed = X_Date_Completed,
472 date_closed = X_Date_Closed,
473 start_quantity = X_Start_Quantity,
474 overcompletion_tolerance_type = X_overcompletion_toleran_type,
475 overcompletion_tolerance_value = X_overcompletion_toleran_value,
476 quantity_completed = X_Quantity_Completed,
477 quantity_scrapped = X_Quantity_Scrapped,
478 net_quantity = X_Net_Quantity,
479 bom_reference_id = X_Bom_Reference_Id,
480 routing_reference_id = X_Routing_Reference_Id,
481 common_bom_sequence_id = X_Common_Bom_Sequence_Id,
482 common_routing_sequence_id = X_Common_Routing_Sequence_Id,
483 bom_revision = X_Bom_Revision,
484 routing_revision = X_Routing_Revision,
485 bom_revision_date = X_Bom_Revision_Date,
486 routing_revision_date = X_Routing_Revision_Date,
487 lot_number = X_Lot_Number,
488 alternate_bom_designator = X_Alternate_Bom_Designator,
489 alternate_routing_designator = X_Alternate_Routing_Designator,
490 completion_subinventory = X_Completion_Subinventory,
491 completion_locator_id = X_Completion_Locator_Id,
492 demand_class = X_Demand_Class,
493 attribute_category = X_Attribute_Category,
494 attribute1 = X_Attribute1,
495 attribute2 = X_Attribute2,
496 attribute3 = X_Attribute3,
497 attribute4 = X_Attribute4,
498 attribute5 = X_Attribute5,
499 attribute6 = X_Attribute6,
503 attribute10 = X_Attribute10,
500 attribute7 = X_Attribute7,
501 attribute8 = X_Attribute8,
502 attribute9 = X_Attribute9,
504 attribute11 = X_Attribute11,
505 attribute12 = X_Attribute12,
506 attribute13 = X_Attribute13,
507 attribute14 = X_Attribute14,
508 attribute15 = X_Attribute15,
509 end_item_unit_number = X_end_item_unit_number,
510 schedule_group_id = X_Schedule_Group_Id,
511 build_sequence = X_Build_Sequence,
512 line_id = X_Line_Id,
513 project_id = X_Project_Id,
514 task_id = X_Task_Id,
515 priority = X_priority,
516 due_date = X_due_date,
517 coproducts_supply = x_coproducts_supply
518 WHERE rowid = X_Rowid;
519 l_stat_num := 20;
520 if (SQL%NOTFOUND) then
521 Raise NO_DATA_FOUND;
522 end if;
523
524 l_stat_num := 30;
525 SELECT count(*) into dummy
526 FROM wip_entities
527 WHERE wip_entity_id = X_Wip_Entity_id;
528
529 l_stat_num := 40;
530 if dummy = 0 then
531 INSERT INTO WIP_ENTITIES(
532 wip_entity_id,
533 organization_id,
534 last_update_date,
535 last_updated_by,
536 creation_date,
537 created_by,
538 last_update_login,
539 wip_entity_name,
540 entity_type,
541 description,
542 primary_item_id,
543 gen_object_id
544 ) VALUES (
545 X_Wip_Entity_Id,
546 X_Organization_Id,
547 X_Last_Update_Date,
548 X_Last_Updated_By,
549 X_Creation_Date,
550 X_Created_By,
551 X_Last_Update_Login,
552 X_Wip_Entity_Name,
553 X_Entity_Type,
554 X_Description,
555 X_Primary_Item_Id,
556 MTL_GEN_OBJECT_ID_S.nextval);
557 else
558 IF X_Update_Wip_Entities = 'Y' THEN
559 l_stat_num := 50;
560 OPEN C3(X_Wip_Entity_Id);
561 FETCH C3 INTO X_We_Rowid;
562 if (C3%NOTFOUND) then
563 CLOSE C3;
564 Raise NO_DATA_FOUND;
565 end if;
566 CLOSE C3;
567
568 l_stat_num := 60;
569 UPDATE WIP_ENTITIES
570 SET
571 wip_entity_id = X_Wip_Entity_Id,
572 organization_id = X_Organization_Id,
573 last_update_date = X_Last_Update_Date,
574 last_updated_by = X_Last_Updated_By,
575 last_update_login = X_Last_Update_Login,
576 wip_entity_name = X_Wip_Entity_Name,
577 entity_type = X_Entity_Type,
578 description = X_Description,
579 primary_item_id = X_Primary_Item_Id
580 WHERE rowid = X_We_Rowid;
581 l_stat_num := 70;
582 if (SQL%NOTFOUND) then
583 Raise NO_DATA_FOUND;
584 end if;
588 WHEN others THEN
585 END IF;
586 end if;
587 EXCEPTION
589 X_We_Rowid := '';
590 x_error_code := SQLCODE;
591 x_error_msg := 'WSMDJTHB.Update_Row('||l_stat_num||')'|| substr(SQLERRM,1,200);
592 END Update_Row;
593
594 END WSMPDJOB;