DBA Data[Home] [Help]

APPS.INV_WIP_PICKING_PVT dependencies on FND_API

Line 27: , p_allow_partial_pick IN VARCHAR2 DEFAULT fnd_api.g_true

23:
24: -- Forward declarations
25: PROCEDURE process_line(
26: p_mo_line_rec IN OUT NOCOPY inv_move_order_pub.trolin_rec_type
27: , p_allow_partial_pick IN VARCHAR2 DEFAULT fnd_api.g_true
28: , p_grouping_rule_id IN NUMBER DEFAULT NULL
29: , p_plan_tasks IN BOOLEAN
30: , p_call_wip_api IN BOOLEAN --Added bug 4634522
31: , x_return_status OUT NOCOPY VARCHAR2

Line 101: , p_print_pick_slip => FND_API.G_FALSE

97: , p_mo_line_rec_tbl => p_mo_line_rec_tbl
98: , p_auto_detail_flag => p_auto_detail_flag
99: , p_auto_pick_confirm_flag => p_auto_pick_confirm_flag
100: , p_allow_partial_pick => p_allow_partial_pick
101: , p_print_pick_slip => FND_API.G_FALSE
102: , p_plan_tasks => FALSE
103: , p_commit => p_commit
104: , p_init_msg_lst => p_init_msg_lst
105: , x_return_status => l_api_return_status

Line 129: x_return_status := fnd_api.g_ret_sts_error;

125: WHEN OTHERS THEN
126: IF (l_debug = 1) THEN
127: print_debug('Error: ' || SQLCODE || ', ' || SQLERRM, 'RELEASE_PICK_BATCH');
128: END IF;
129: x_return_status := fnd_api.g_ret_sts_error;
130: END release_pick_batch;
131:
132:
133:

Line 156: l_commit VARCHAR2(1) := fnd_api.g_false;

152: ) IS
153:
154: l_api_version_number NUMBER := 1.0;
155: l_api_return_status VARCHAR2(1);
156: l_commit VARCHAR2(1) := fnd_api.g_false;
157: l_temp BOOLEAN;
158: l_trohdr_val_rec inv_move_order_pub.trohdr_val_rec_type;
159: l_trolin_val_tbl inv_move_order_pub.trolin_val_tbl_type;
160: l_organization_id NUMBER;

Line 161: l_auto_pick_confirm VARCHAR2(1) := fnd_api.g_false;

157: l_temp BOOLEAN;
158: l_trohdr_val_rec inv_move_order_pub.trohdr_val_rec_type;
159: l_trolin_val_tbl inv_move_order_pub.trolin_val_tbl_type;
160: l_organization_id NUMBER;
161: l_auto_pick_confirm VARCHAR2(1) := fnd_api.g_false;
162: l_entity_type NUMBER;
163: l_max_batch NUMBER;
164: l_counter NUMBER;
165: l_last_rec NUMBER;

Line 209: IF fnd_api.to_boolean(p_init_msg_lst) THEN

205: SAVEPOINT inv_wip_pick_release;
206: l_savept_exists := TRUE;
207:
208: -- Initialize message list.
209: IF fnd_api.to_boolean(p_init_msg_lst) THEN
210: fnd_msg_pub.initialize;
211: END IF;
212:
213: -- Validate parameter for allowing partial pick release

Line 214: IF p_allow_partial_pick NOT IN (fnd_api.g_true, fnd_api.g_false) THEN

210: fnd_msg_pub.initialize;
211: END IF;
212:
213: -- Validate parameter for allowing partial pick release
214: IF p_allow_partial_pick NOT IN (fnd_api.g_true, fnd_api.g_false) THEN
215: IF (l_debug = 1) THEN
216: print_debug('Error: invalid partial pick parameter','RELEASE_PICK_BATCH');
217: END IF;
218: fnd_message.set_name('INV', 'INV_INVALID_PARTIAL_PICK_PARAM');

Line 220: RAISE fnd_api.g_exc_unexpected_error;

216: print_debug('Error: invalid partial pick parameter','RELEASE_PICK_BATCH');
217: END IF;
218: fnd_message.set_name('INV', 'INV_INVALID_PARTIAL_PICK_PARAM');
219: fnd_msg_pub.ADD;
220: RAISE fnd_api.g_exc_unexpected_error;
221: END IF;
222:
223: IF (l_debug = 1) THEN
224: print_debug('p_allow_partial_pick is '|| p_allow_partial_pick, 'RELEASE_PICK_BATCH');

Line 238: x_return_status := fnd_api.g_ret_sts_success;

234:
235: l_is_wms_org := inv_install.adv_inv_installed(l_organization_id);
236:
237: -- Initialize API return status to success
238: x_return_status := fnd_api.g_ret_sts_success;
239:
240: -- Determine whether or not to automatically pick confirm
241: IF p_auto_pick_confirm_flag <> fnd_api.g_miss_char THEN
242: IF (p_auto_pick_confirm_flag NOT IN (fnd_api.g_true, fnd_api.g_false) ) THEN

Line 241: IF p_auto_pick_confirm_flag <> fnd_api.g_miss_char THEN

237: -- Initialize API return status to success
238: x_return_status := fnd_api.g_ret_sts_success;
239:
240: -- Determine whether or not to automatically pick confirm
241: IF p_auto_pick_confirm_flag <> fnd_api.g_miss_char THEN
242: IF (p_auto_pick_confirm_flag NOT IN (fnd_api.g_true, fnd_api.g_false) ) THEN
243: IF (l_debug = 1) THEN
244: print_debug('Error: Invalid auto_pick_confirm flag', 'RELEASE_PICK_BATCH');
245: END IF;

Line 242: IF (p_auto_pick_confirm_flag NOT IN (fnd_api.g_true, fnd_api.g_false) ) THEN

238: x_return_status := fnd_api.g_ret_sts_success;
239:
240: -- Determine whether or not to automatically pick confirm
241: IF p_auto_pick_confirm_flag <> fnd_api.g_miss_char THEN
242: IF (p_auto_pick_confirm_flag NOT IN (fnd_api.g_true, fnd_api.g_false) ) THEN
243: IF (l_debug = 1) THEN
244: print_debug('Error: Invalid auto_pick_confirm flag', 'RELEASE_PICK_BATCH');
245: END IF;
246: fnd_message.set_name('INV', 'INV_AUTO_PICK_CONFIRM_PARAM');

Line 248: RAISE fnd_api.g_exc_unexpected_error;

244: print_debug('Error: Invalid auto_pick_confirm flag', 'RELEASE_PICK_BATCH');
245: END IF;
246: fnd_message.set_name('INV', 'INV_AUTO_PICK_CONFIRM_PARAM');
247: fnd_msg_pub.ADD;
248: RAISE fnd_api.g_exc_unexpected_error;
249: ELSE
250: l_auto_pick_confirm := p_auto_pick_confirm_flag;
251: END IF;
252: ELSE

Line 257: SELECT DECODE(NVL(mo_pick_confirm_required, 2), 1, fnd_api.g_false, 2, fnd_api.g_true, fnd_api.g_true)

253: -- Retrieve the org-level parameter for auto-pick confirm
254: BEGIN
255: -- The parameter is for whether pick confirm is required or not,
256: -- so the auto-pick confirm flag is the opposite of this.
257: SELECT DECODE(NVL(mo_pick_confirm_required, 2), 1, fnd_api.g_false, 2, fnd_api.g_true, fnd_api.g_true)
258: INTO l_auto_pick_confirm
259: FROM mtl_parameters
260: WHERE organization_id = l_organization_id;
261: EXCEPTION

Line 268: RAISE fnd_api.g_exc_unexpected_error;

264: print_debug('Error: Invalid auto_pick_confirm flag', 'RELEASE_PICK_BATCH');
265: END IF;
266: fnd_message.set_name('INV', 'INV-NO ORG INFORMATION');
267: fnd_msg_pub.ADD;
268: RAISE fnd_api.g_exc_unexpected_error;
269: END;
270: END IF;
271:
272: IF (l_debug = 1) THEN

Line 279: IF nvl(p_mo_header_rec.grouping_rule_id,fnd_api.g_miss_num) = fnd_api.g_miss_num THEN

275:
276: -- Bug 2666620: Grouping Rule ID has to be stamped
277: -- Bug 2844622: Skip this check if WIP patch level is below 11.5.9
278: IF g_wip_patch_level >= 1159 THEN
279: IF nvl(p_mo_header_rec.grouping_rule_id,fnd_api.g_miss_num) = fnd_api.g_miss_num THEN
280: IF (l_debug = 1) THEN
281: print_debug('No Pick Slip Grouping Rule ID specified', 'RELEASE_PICK_BATCH');
282: END IF;
283: fnd_message.set_name('INV', 'INV_NO_PICK_SLIP_NUMBER');

Line 285: RAISE fnd_api.g_exc_unexpected_error;

281: print_debug('No Pick Slip Grouping Rule ID specified', 'RELEASE_PICK_BATCH');
282: END IF;
283: fnd_message.set_name('INV', 'INV_NO_PICK_SLIP_NUMBER');
284: fnd_msg_pub.ADD;
285: RAISE fnd_api.g_exc_unexpected_error;
286: END IF;
287: ELSE
288: IF (l_debug = 1) THEN
289: print_debug('WIP patch level is ' || to_char(g_wip_patch_level) ||

Line 300: , p_init_msg_list => fnd_api.g_false

296: END IF;
297:
298: inv_move_order_pub.create_move_order_header(
299: p_api_version_number => l_api_version_number
300: , p_init_msg_list => fnd_api.g_false
301: , p_return_values => fnd_api.g_true
302: , p_commit => l_commit
303: , x_return_status => l_api_return_status
304: , x_msg_count => x_msg_count

Line 301: , p_return_values => fnd_api.g_true

297:
298: inv_move_order_pub.create_move_order_header(
299: p_api_version_number => l_api_version_number
300: , p_init_msg_list => fnd_api.g_false
301: , p_return_values => fnd_api.g_true
302: , p_commit => l_commit
303: , x_return_status => l_api_return_status
304: , x_msg_count => x_msg_count
305: , x_msg_data => x_msg_data

Line 312: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN

308: , x_trohdr_rec => p_mo_header_rec
309: , x_trohdr_val_rec => l_trohdr_val_rec
310: );
311:
312: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN
313: IF (l_debug = 1) THEN
314: print_debug('Error occurred in Create_Move_Order_Header', 'RELEASE_PICK_BATCH');
315: END IF;
316: RAISE fnd_api.g_exc_unexpected_error;

Line 316: RAISE fnd_api.g_exc_unexpected_error;

312: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN
313: IF (l_debug = 1) THEN
314: print_debug('Error occurred in Create_Move_Order_Header', 'RELEASE_PICK_BATCH');
315: END IF;
316: RAISE fnd_api.g_exc_unexpected_error;
317: ELSE
318: IF (l_debug = 1) THEN
319: print_debug('Created MO Header successfully: '|| p_mo_header_rec.header_id, 'RELEASE_PICK_BATCH');
320: END IF;

Line 331: RAISE fnd_api.g_exc_unexpected_error;

327: ELSE
328: IF (l_debug = 1) THEN
329: print_debug('No MO Lines to create!', 'RELEASE_PICK_BATCH');
330: END IF;
331: RAISE fnd_api.g_exc_unexpected_error;
332: END IF;
333:
334: --
335: -- Bug 2844622: Skip performance changes (breaking up move order lines

Line 404: , p_init_msg_list => fnd_api.g_true

400: END IF;
401:
402: inv_move_order_pub.create_move_order_lines(
403: p_api_version_number => l_api_version_number
404: , p_init_msg_list => fnd_api.g_true
405: , p_return_values => fnd_api.g_true
406: , p_commit => l_commit
407: , x_return_status => l_api_return_status
408: , x_msg_count => x_msg_count

Line 405: , p_return_values => fnd_api.g_true

401:
402: inv_move_order_pub.create_move_order_lines(
403: p_api_version_number => l_api_version_number
404: , p_init_msg_list => fnd_api.g_true
405: , p_return_values => fnd_api.g_true
406: , p_commit => l_commit
407: , x_return_status => l_api_return_status
408: , x_msg_count => x_msg_count
409: , x_msg_data => x_msg_data

Line 416: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN

412: , x_trolin_tbl => l_line_tbl
413: , x_trolin_val_tbl => l_trolin_val_tbl
414: );
415:
416: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN
417: IF (l_debug = 1) THEN
418: print_debug('Error occurred in Create_Move_Order_Lines = '||l_api_return_status
419: ,'RELEASE_PICK_BATCH');
420: END IF;

Line 422: IF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN

418: print_debug('Error occurred in Create_Move_Order_Lines = '||l_api_return_status
419: ,'RELEASE_PICK_BATCH');
420: END IF;
421: -- Bug 4288399, Filtering the errored records and continuing
422: IF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN
423: RAISE fnd_api.g_exc_unexpected_error;
424: ELSIF (g_conc_mode) THEN
425: l_wip_err_count := 0;
426: l_err_start_index := l_wip_error_table.COUNT;

Line 423: RAISE fnd_api.g_exc_unexpected_error;

419: ,'RELEASE_PICK_BATCH');
420: END IF;
421: -- Bug 4288399, Filtering the errored records and continuing
422: IF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN
423: RAISE fnd_api.g_exc_unexpected_error;
424: ELSIF (g_conc_mode) THEN
425: l_wip_err_count := 0;
426: l_err_start_index := l_wip_error_table.COUNT;
427: IF (l_debug = 1) THEN

Line 433: IF l_line_tbl(i).return_status = fnd_api.g_ret_sts_error THEN

429: print_debug('Number of records currently in error table: ' || l_err_start_index,
430: 'RELEASE_PICK_BATCH');
431: END IF;
432: FOR i in 1..l_line_tbl.COUNT LOOP
433: IF l_line_tbl(i).return_status = fnd_api.g_ret_sts_error THEN
434: IF (l_debug = 1) THEN
435: print_debug('Delete Line '||l_line_tbl(i).line_id, 'RELEASE_PICK_BATCH');
436: END IF;
437:

Line 439: IF l_line_tbl(i).line_id = fnd_api.g_miss_num THEN

435: print_debug('Delete Line '||l_line_tbl(i).line_id, 'RELEASE_PICK_BATCH');
436: END IF;
437:
438: -- Bug 5469486: handle the case where line ID is g_miss_num
439: IF l_line_tbl(i).line_id = fnd_api.g_miss_num THEN
440: g_mol_fail_count := g_mol_fail_count + 1;
441: ELSE
442: g_mo_line_stat_tbl(l_line_tbl(i).line_id) := g_not_allocated;
443: END IF;

Line 510: RAISE fnd_api.g_exc_unexpected_error;

506: ELSE
507: IF (l_debug = 1) THEN
508: print_debug('Conc_mode is False', 'RELEASE_PICK_BATCH');
509: END IF;
510: RAISE fnd_api.g_exc_unexpected_error;
511: END IF;
512: ELSE
513: IF (l_debug = 1) THEN
514: print_debug('Created MO Lines successfully', 'RELEASE_PICK_BATCH');

Line 523: IF p_auto_detail_flag = fnd_api.g_true AND l_line_tbl.COUNT > 0 THEN

519: print_debug('MO line creation complete, before calling pick release..',
520: 'RELEASE_PICK_BATCH');
521: END IF;
522:
523: IF p_auto_detail_flag = fnd_api.g_true AND l_line_tbl.COUNT > 0 THEN
524: IF (l_debug = 1) THEN
525: print_debug('Calling pick_release', 'RELEASE_PICK_BATCH');
526: END IF;
527: l_api_return_status := fnd_api.g_ret_sts_success;

Line 527: l_api_return_status := fnd_api.g_ret_sts_success;

523: IF p_auto_detail_flag = fnd_api.g_true AND l_line_tbl.COUNT > 0 THEN
524: IF (l_debug = 1) THEN
525: print_debug('Calling pick_release', 'RELEASE_PICK_BATCH');
526: END IF;
527: l_api_return_status := fnd_api.g_ret_sts_success;
528: pick_release(
529: x_return_status => l_api_return_status
530: , x_msg_count => x_msg_count
531: , x_msg_data => x_msg_data

Line 533: , p_init_msg_lst => fnd_api.g_true

529: x_return_status => l_api_return_status
530: , x_msg_count => x_msg_count
531: , x_msg_data => x_msg_data
532: , p_commit => l_commit
533: , p_init_msg_lst => fnd_api.g_true
534: , p_mo_line_tbl => l_line_tbl
535: , p_allow_partial_pick => p_allow_partial_pick
536: , p_grouping_rule_id => p_mo_header_rec.grouping_rule_id
537: , p_plan_tasks => p_plan_tasks

Line 541: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN

537: , p_plan_tasks => p_plan_tasks
538: , p_call_wip_api => TRUE
539: );
540:
541: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN
542: IF (l_debug = 1) THEN
543: print_debug('Error occurred in Pick_Release', 'RELEASE_PICK_BATCH');
544: END IF;
545: RAISE fnd_api.g_exc_unexpected_error;

Line 545: RAISE fnd_api.g_exc_unexpected_error;

541: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN
542: IF (l_debug = 1) THEN
543: print_debug('Error occurred in Pick_Release', 'RELEASE_PICK_BATCH');
544: END IF;
545: RAISE fnd_api.g_exc_unexpected_error;
546: END IF;
547: END IF; -- end if auto detail flag is true
548:
549: COMMIT;

Line 568: , p_init_msg_list => fnd_api.g_false

564: END LOOP;
565:
566: inv_move_order_pub.create_move_order_lines(
567: p_api_version_number => l_api_version_number
568: , p_init_msg_list => fnd_api.g_false
569: , p_return_values => fnd_api.g_true
570: , p_commit => l_commit
571: , x_return_status => l_api_return_status
572: , x_msg_count => x_msg_count

Line 569: , p_return_values => fnd_api.g_true

565:
566: inv_move_order_pub.create_move_order_lines(
567: p_api_version_number => l_api_version_number
568: , p_init_msg_list => fnd_api.g_false
569: , p_return_values => fnd_api.g_true
570: , p_commit => l_commit
571: , x_return_status => l_api_return_status
572: , x_msg_count => x_msg_count
573: , x_msg_data => x_msg_data

Line 580: IF l_api_return_status <> FND_API.G_RET_STS_SUCCESS THEN

576: , x_trolin_tbl => l_line_tbl
577: , x_trolin_val_tbl => l_trolin_val_tbl
578: );
579:
580: IF l_api_return_status <> FND_API.G_RET_STS_SUCCESS THEN
581: print_debug ('Error occurred in INV_Move_Order_PUB.Create_Move_Order_Lines', 'RELEASE_PICK_BATCH');
582: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
583: ELSE
584: print_debug ('Created MO Lines successfully', 'RELEASE_PICK_BATCH');

Line 582: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;

578: );
579:
580: IF l_api_return_status <> FND_API.G_RET_STS_SUCCESS THEN
581: print_debug ('Error occurred in INV_Move_Order_PUB.Create_Move_Order_Lines', 'RELEASE_PICK_BATCH');
582: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
583: ELSE
584: print_debug ('Created MO Lines successfully', 'RELEASE_PICK_BATCH');
585: END IF;
586:

Line 587: IF p_auto_detail_flag = FND_API.G_TRUE THEN

583: ELSE
584: print_debug ('Created MO Lines successfully', 'RELEASE_PICK_BATCH');
585: END IF;
586:
587: IF p_auto_detail_flag = FND_API.G_TRUE THEN
588: pick_release(
589: x_return_status => l_api_return_status
590: , x_msg_count => x_msg_count
591: , x_msg_data => x_msg_data

Line 593: , p_init_msg_lst => fnd_api.g_false

589: x_return_status => l_api_return_status
590: , x_msg_count => x_msg_count
591: , x_msg_data => x_msg_data
592: , p_commit => l_commit
593: , p_init_msg_lst => fnd_api.g_false
594: , p_mo_line_tbl => l_line_tbl
595: , p_allow_partial_pick => p_allow_partial_pick
596: , p_grouping_rule_id => NULL
597: , p_plan_tasks => p_plan_tasks

Line 601: IF l_api_return_status <> FND_API.G_RET_STS_SUCCESS AND

597: , p_plan_tasks => p_plan_tasks
598: , p_call_wip_api => TRUE
599: );
600:
601: IF l_api_return_status <> FND_API.G_RET_STS_SUCCESS AND
602: l_api_return_status <> 'P' THEN
603: print_debug ('Error occurred in Pick_Release', 'RELEASE_PICK_BATCH');
604: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
605: ELSIF l_api_return_status = 'P' THEN

Line 604: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;

600:
601: IF l_api_return_status <> FND_API.G_RET_STS_SUCCESS AND
602: l_api_return_status <> 'P' THEN
603: print_debug ('Error occurred in Pick_Release', 'RELEASE_PICK_BATCH');
604: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
605: ELSIF l_api_return_status = 'P' THEN
606: print_debug ('One or more lines failed to allocate fully', 'RELEASE_PICK_BATCH');
607: x_return_status := 'P';
608: ELSE

Line 624: IF p_print_pick_slip = FND_API.G_TRUE AND l_mo_allocation_status <> g_not_allocated THEN

620: l_savept_exists := TRUE;
621: END IF;
622:
623: -- Printing the Pick Slip
624: IF p_print_pick_slip = FND_API.G_TRUE AND l_mo_allocation_status <> g_not_allocated THEN
625: x_conc_req_id := inv_pr_pick_slip_number.print_pick_slip(
626: x_return_status => l_api_return_status
627: , x_msg_data => x_msg_data
628: , x_msg_count => x_msg_count

Line 634: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN

630: , p_mo_request_number => p_mo_header_rec.request_number
631: , p_plan_tasks => p_plan_tasks
632: );
633:
634: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN
635: IF (l_debug = 1) THEN
636: print_debug('Unable to submit Pick Slip Report Request','RELEASE_PICK_BATCH');
637: END IF;
638: RAISE fnd_api.g_exc_unexpected_error;

Line 638: RAISE fnd_api.g_exc_unexpected_error;

634: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN
635: IF (l_debug = 1) THEN
636: print_debug('Unable to submit Pick Slip Report Request','RELEASE_PICK_BATCH');
637: END IF;
638: RAISE fnd_api.g_exc_unexpected_error;
639: END IF;
640: IF (l_debug = 1) THEN
641: print_debug('Pick Slip Report Request ID = ' || x_conc_req_id,'RELEASE_PICK_BATCH');
642: END IF;

Line 676: IF p_commit = fnd_api.g_true THEN

672: END IF;
673: END IF;
674:
675: -- Standard call to commit
676: IF p_commit = fnd_api.g_true THEN
677: COMMIT;
678: l_savept_exists := FALSE;
679: END IF;
680:

Line 688: x_return_status := fnd_api.g_ret_sts_error;

684: x_mo_line_errrec_tbl := l_wip_error_table;
685:
686: EXCEPTION
687: WHEN OTHERS THEN
688: x_return_status := fnd_api.g_ret_sts_error;
689: IF l_debug = 1 THEN
690: print_debug ('Release_pick_batch Error: ' || SQLERRM, 'RELEASE_PICK_BATCH');
691: END IF;
692: fnd_msg_pub.count_and_get( p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);

Line 692: fnd_msg_pub.count_and_get( p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);

688: x_return_status := fnd_api.g_ret_sts_error;
689: IF l_debug = 1 THEN
690: print_debug ('Release_pick_batch Error: ' || SQLERRM, 'RELEASE_PICK_BATCH');
691: END IF;
692: fnd_msg_pub.count_and_get( p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);
693: IF (l_savept_exists) THEN
694: ROLLBACK TO inv_wip_pick_release;
695: END IF;
696: IF g_conc_mode THEN

Line 768: x_return_status := fnd_api.g_ret_sts_success;

764: print_debug('Inside Pick_Release', 'PICK_RELEASE');
765: END IF;
766: SAVEPOINT pick_release;
767: -- Initialize API return status to success
768: x_return_status := fnd_api.g_ret_sts_success;
769:
770: -- Initialize message list.
771: IF fnd_api.to_boolean(p_init_msg_lst) THEN
772: fnd_msg_pub.initialize;

Line 771: IF fnd_api.to_boolean(p_init_msg_lst) THEN

767: -- Initialize API return status to success
768: x_return_status := fnd_api.g_ret_sts_success;
769:
770: -- Initialize message list.
771: IF fnd_api.to_boolean(p_init_msg_lst) THEN
772: fnd_msg_pub.initialize;
773: END IF;
774:
775: --Added bug 4634522

Line 789: RAISE fnd_api.g_exc_unexpected_error;

785: print_debug('No Lines to pick', 'PICK_RELEASE');
786: END IF;
787: fnd_message.set_name('INV', 'INV_NO_LINES_TO_PICK');
788: fnd_msg_pub.ADD;
789: RAISE fnd_api.g_exc_unexpected_error;
790: END IF;
791:
792: -- Bug 2038564: Clearing Qty Tree
793: inv_quantity_tree_pvt.clear_quantity_cache;

Line 824: RAISE fnd_api.g_exc_unexpected_error;

820: END IF;
821: fnd_message.set_name('INV', 'INV_NO_HEADER_FOUND');
822: fnd_message.set_token('MO_LINE_ID', TO_CHAR(p_mo_line_tbl(l_line_index).line_id));
823: fnd_msg_pub.ADD;
824: RAISE fnd_api.g_exc_unexpected_error;
825: END;
826:
827: IF l_mo_type <> inv_globals.g_move_order_mfg_pick THEN
828: IF (l_debug = 1) THEN

Line 834: RAISE fnd_api.g_exc_unexpected_error;

830: END IF;
831: fnd_message.set_name('INV', 'INV_NOT_WIP_MOVE_ORDER');
832: fnd_message.set_token('MO_NUMBER', l_mo_number);
833: fnd_msg_pub.ADD;
834: RAISE fnd_api.g_exc_unexpected_error;
835: END IF;
836:
837: LOOP
838: l_mo_line := p_mo_line_tbl(l_line_index);

Line 840: IF (l_mo_line.return_status NOT IN (fnd_api.g_ret_sts_unexp_error, fnd_api.g_ret_sts_error) ) THEN

836:
837: LOOP
838: l_mo_line := p_mo_line_tbl(l_line_index);
839:
840: IF (l_mo_line.return_status NOT IN (fnd_api.g_ret_sts_unexp_error, fnd_api.g_ret_sts_error) ) THEN
841: -- Verify that the lines are all for the same organization
842: IF l_mo_line.organization_id <> l_organization_id THEN
843: IF (l_debug = 1) THEN
844: print_debug('Error: Trying to pick for different org', 'PICK_RELEASE');

Line 848: RAISE fnd_api.g_exc_unexpected_error;

844: print_debug('Error: Trying to pick for different org', 'PICK_RELEASE');
845: END IF;
846: fnd_message.set_name('INV', 'INV_PICK_DIFFERENT_ORG');
847: fnd_msg_pub.ADD;
848: RAISE fnd_api.g_exc_unexpected_error;
849: END IF;
850:
851: -- Verify that the line status is approved or pre-approved
852: IF (l_mo_line.line_status NOT IN (3,7)) THEN

Line 858: RAISE fnd_api.g_exc_unexpected_error;

854: print_debug('Error: Invalid Move Order Line Status', 'PICK_RELEASE');
855: END IF;
856: fnd_message.set_name('INV', 'INV_PICK_LINE_STATUS');
857: fnd_msg_pub.ADD;
858: RAISE fnd_api.g_exc_unexpected_error;
859: END IF;
860:
861: -- Carton Grouping ID has to be stamped.
862: -- Bug 2844622: Skip this check if WIP patch level is below 11.5.9

Line 864: IF (l_is_wms_org AND NVL(l_mo_line.carton_grouping_id, fnd_api.g_miss_num) = fnd_api.g_miss_num) THEN

860:
861: -- Carton Grouping ID has to be stamped.
862: -- Bug 2844622: Skip this check if WIP patch level is below 11.5.9
863: IF g_wip_patch_level >= 1159 THEN
864: IF (l_is_wms_org AND NVL(l_mo_line.carton_grouping_id, fnd_api.g_miss_num) = fnd_api.g_miss_num) THEN
865: IF (l_debug = 1) THEN
866: print_debug('Error: No Carton Grouping ID specified', 'PICK_RELEASE');
867: END IF;
868: fnd_message.set_name('WMS', 'WMS_NO_CARTON_GROUP_ID');

Line 870: RAISE fnd_api.g_exc_unexpected_error;

866: print_debug('Error: No Carton Grouping ID specified', 'PICK_RELEASE');
867: END IF;
868: fnd_message.set_name('WMS', 'WMS_NO_CARTON_GROUP_ID');
869: fnd_msg_pub.ADD;
870: RAISE fnd_api.g_exc_unexpected_error;
871: END IF;
872: ELSE
873: IF (l_debug = 1) THEN
874: print_debug('WIP Patch Level = ' || g_wip_patch_level ||' so skipping Carton Group ID check', 'PICK_RELEASE');

Line 906: RAISE fnd_api.g_exc_unexpected_error;

902: WHEN NO_DATA_FOUND THEN
903: IF (l_debug = 1) THEN
904: print_debug('No Item Info found', 'PICK_RELEASE');
905: END IF;
906: RAISE fnd_api.g_exc_unexpected_error;
907: END;
908:
909: inv_quantity_tree_pvt.create_tree
910: ( p_api_version_number => 1.0

Line 911: , p_init_msg_lst => fnd_api.g_false

907: END;
908:
909: inv_quantity_tree_pvt.create_tree
910: ( p_api_version_number => 1.0
911: , p_init_msg_lst => fnd_api.g_false
912: , x_return_status => l_api_return_status
913: , x_msg_count => x_msg_count
914: , x_msg_data => x_msg_data
915: , p_organization_id => l_organization_id

Line 934: IF l_api_return_status = fnd_api.g_ret_sts_error THEN

930: , p_exclusive => inv_quantity_tree_pvt.g_exclusive
931: , p_pick_release => inv_quantity_tree_pvt.g_pick_release_yes
932: );
933:
934: IF l_api_return_status = fnd_api.g_ret_sts_error THEN
935: RAISE fnd_api.g_exc_error;
936: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN
937: RAISE fnd_api.g_exc_unexpected_error;
938: END IF;

Line 935: RAISE fnd_api.g_exc_error;

931: , p_pick_release => inv_quantity_tree_pvt.g_pick_release_yes
932: );
933:
934: IF l_api_return_status = fnd_api.g_ret_sts_error THEN
935: RAISE fnd_api.g_exc_error;
936: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN
937: RAISE fnd_api.g_exc_unexpected_error;
938: END IF;
939:

Line 936: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN

932: );
933:
934: IF l_api_return_status = fnd_api.g_ret_sts_error THEN
935: RAISE fnd_api.g_exc_error;
936: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN
937: RAISE fnd_api.g_exc_unexpected_error;
938: END IF;
939:
940: l_quantity_tree_tbl(l_mo_line.inventory_item_id) := l_tree_id;

Line 937: RAISE fnd_api.g_exc_unexpected_error;

933:
934: IF l_api_return_status = fnd_api.g_ret_sts_error THEN
935: RAISE fnd_api.g_exc_error;
936: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN
937: RAISE fnd_api.g_exc_unexpected_error;
938: END IF;
939:
940: l_quantity_tree_tbl(l_mo_line.inventory_item_id) := l_tree_id;
941: END IF; -- not exist in quantity tree tbl

Line 961: IF (l_mo_line.return_status <> fnd_api.g_ret_sts_unexp_error

957: print_debug('Item : ' || TO_CHAR(l_mo_line.inventory_item_id), 'PICK_RELEASE');
958: print_debug('Quantity : ' || TO_CHAR(l_mo_line.quantity), 'PICK_RELEASE');
959: END IF;
960:
961: IF (l_mo_line.return_status <> fnd_api.g_ret_sts_unexp_error
962: AND l_mo_line.return_status <> fnd_api.g_ret_sts_error)
963: THEN
964: IF l_mo_line.ship_set_id IS NOT NULL
965: AND (l_cur_ship_set_id IS NULL OR l_cur_ship_set_id <> l_mo_line.ship_set_id)

Line 962: AND l_mo_line.return_status <> fnd_api.g_ret_sts_error)

958: print_debug('Quantity : ' || TO_CHAR(l_mo_line.quantity), 'PICK_RELEASE');
959: END IF;
960:
961: IF (l_mo_line.return_status <> fnd_api.g_ret_sts_unexp_error
962: AND l_mo_line.return_status <> fnd_api.g_ret_sts_error)
963: THEN
964: IF l_mo_line.ship_set_id IS NOT NULL
965: AND (l_cur_ship_set_id IS NULL OR l_cur_ship_set_id <> l_mo_line.ship_set_id)
966: THEN

Line 991: IF l_api_return_status = fnd_api.g_ret_sts_error THEN

987: END IF;
988: l_tree_id := l_quantity_tree_tbl(l_mo_line.inventory_item_id);
989: inv_quantity_tree_pvt.backup_tree(x_return_status => l_api_return_status, p_tree_id => l_tree_id);
990:
991: IF l_api_return_status = fnd_api.g_ret_sts_error THEN
992: RAISE fnd_api.g_exc_error;
993: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN
994: RAISE fnd_api.g_exc_unexpected_error;
995: END IF;

Line 992: RAISE fnd_api.g_exc_error;

988: l_tree_id := l_quantity_tree_tbl(l_mo_line.inventory_item_id);
989: inv_quantity_tree_pvt.backup_tree(x_return_status => l_api_return_status, p_tree_id => l_tree_id);
990:
991: IF l_api_return_status = fnd_api.g_ret_sts_error THEN
992: RAISE fnd_api.g_exc_error;
993: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN
994: RAISE fnd_api.g_exc_unexpected_error;
995: END IF;
996:

Line 993: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN

989: inv_quantity_tree_pvt.backup_tree(x_return_status => l_api_return_status, p_tree_id => l_tree_id);
990:
991: IF l_api_return_status = fnd_api.g_ret_sts_error THEN
992: RAISE fnd_api.g_exc_error;
993: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN
994: RAISE fnd_api.g_exc_unexpected_error;
995: END IF;
996:
997: l_qtree_backup_tbl(l_mo_line.inventory_item_id) := l_tree_id;

Line 994: RAISE fnd_api.g_exc_unexpected_error;

990:
991: IF l_api_return_status = fnd_api.g_ret_sts_error THEN
992: RAISE fnd_api.g_exc_error;
993: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN
994: RAISE fnd_api.g_exc_unexpected_error;
995: END IF;
996:
997: l_qtree_backup_tbl(l_mo_line.inventory_item_id) := l_tree_id;
998: END IF; -- Pick set NOT NULL

Line 1017: IF l_api_return_status <> fnd_api.g_ret_sts_success AND p_allow_partial_pick = fnd_api.g_false THEN

1013: print_debug('Process Line Return Status = '|| l_api_return_status ||
1014: ' : Detail Rec Count = ' || to_char(l_detail_rec_count), 'PICK_RELEASE');
1015: END IF;
1016:
1017: IF l_api_return_status <> fnd_api.g_ret_sts_success AND p_allow_partial_pick = fnd_api.g_false THEN
1018: fnd_message.set_name('INV', 'INV_COULD_NOT_PICK_FULL');
1019: fnd_msg_pub.ADD;
1020: RAISE fnd_api.g_exc_unexpected_error;
1021: END IF;

Line 1020: RAISE fnd_api.g_exc_unexpected_error;

1016:
1017: IF l_api_return_status <> fnd_api.g_ret_sts_success AND p_allow_partial_pick = fnd_api.g_false THEN
1018: fnd_message.set_name('INV', 'INV_COULD_NOT_PICK_FULL');
1019: fnd_msg_pub.ADD;
1020: RAISE fnd_api.g_exc_unexpected_error;
1021: END IF;
1022:
1023: g_mo_line_stat_tbl(l_mo_line.line_id) := l_api_return_status;
1024:

Line 1073: IF (l_api_return_status = fnd_api.g_ret_sts_error) THEN

1069: ( x_return_status => l_api_return_status
1070: , p_tree_id => l_tree_id
1071: );
1072:
1073: IF (l_api_return_status = fnd_api.g_ret_sts_error) THEN
1074: IF (l_debug = 1) THEN
1075: print_debug('Error in Restore_Tree', 'Pick_Release');
1076: END IF;
1077: RAISE fnd_api.g_exc_error;

Line 1077: RAISE fnd_api.g_exc_error;

1073: IF (l_api_return_status = fnd_api.g_ret_sts_error) THEN
1074: IF (l_debug = 1) THEN
1075: print_debug('Error in Restore_Tree', 'Pick_Release');
1076: END IF;
1077: RAISE fnd_api.g_exc_error;
1078: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN
1079: IF (l_debug = 1) THEN
1080: print_debug('Unexpected error in Restore_tree', 'PICK_RELEASE');
1081: END IF;

Line 1078: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN

1074: IF (l_debug = 1) THEN
1075: print_debug('Error in Restore_Tree', 'Pick_Release');
1076: END IF;
1077: RAISE fnd_api.g_exc_error;
1078: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN
1079: IF (l_debug = 1) THEN
1080: print_debug('Unexpected error in Restore_tree', 'PICK_RELEASE');
1081: END IF;
1082: RAISE fnd_api.g_exc_unexpected_error;

Line 1082: RAISE fnd_api.g_exc_unexpected_error;

1078: ELSIF l_api_return_status = fnd_api.g_ret_sts_unexp_error THEN
1079: IF (l_debug = 1) THEN
1080: print_debug('Unexpected error in Restore_tree', 'PICK_RELEASE');
1081: END IF;
1082: RAISE fnd_api.g_exc_unexpected_error;
1083: END IF;
1084:
1085: -- delete entry, so we don't restore tree more than once
1086: l_qtree_backup_tbl.DELETE(l_mo_line.inventory_item_id);

Line 1168: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN

1164: , x_return_status => l_api_return_status
1165: , x_msg_data => x_msg_data
1166: );
1167:
1168: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN
1169: IF (l_debug = 1) THEN
1170: print_debug('Error in wip_picking_pub.allocate_material', 'PICK_RELEASE');
1171: print_debug('WIP entity ID: ' || TO_CHAR(l_mo_line.txn_source_id), 'PICK_RELEASE');
1172: print_debug('Op seq num : ' || TO_CHAR(l_mo_line.txn_source_line_id), 'PICK_RELEASE');

Line 1176: RAISE fnd_api.g_exc_error;

1172: print_debug('Op seq num : ' || TO_CHAR(l_mo_line.txn_source_line_id), 'PICK_RELEASE');
1173: print_debug('Rep sch ID : ' || TO_CHAR(l_mo_line.reference_id), 'PICK_RELEASE');
1174: print_debug('Item ID : ' || TO_CHAR(l_mo_line.inventory_item_id), 'PICK_RELEASE');
1175: END IF;
1176: RAISE fnd_api.g_exc_error;
1177: END IF;
1178: END IF;
1179: END IF; -- mo line return status <> ERROR
1180:

Line 1204: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;

1200: IF (l_debug = 1) THEN
1201: print_debug('Error in Deleting Move Order Lines: ' || sqlerrm
1202: ,'PICK_RELEASE');
1203: END IF;
1204: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1205: END;
1206:
1207: IF l_is_wms_org THEN
1208: -- Call cartonization API to assign task types and split and merge tasks.

Line 1223: , p_init_msg_list => fnd_api.g_false

1219: END IF;
1220:
1221: wms_cartnzn_wrap.cartonize
1222: ( p_api_version => l_api_version_number
1223: , p_init_msg_list => fnd_api.g_false
1224: , p_commit => fnd_api.g_false
1225: , p_validation_level => fnd_api.g_valid_level_full
1226: , x_return_status => l_api_return_status
1227: , x_msg_count => x_msg_count

Line 1224: , p_commit => fnd_api.g_false

1220:
1221: wms_cartnzn_wrap.cartonize
1222: ( p_api_version => l_api_version_number
1223: , p_init_msg_list => fnd_api.g_false
1224: , p_commit => fnd_api.g_false
1225: , p_validation_level => fnd_api.g_valid_level_full
1226: , x_return_status => l_api_return_status
1227: , x_msg_count => x_msg_count
1228: , x_msg_data => x_msg_data

Line 1225: , p_validation_level => fnd_api.g_valid_level_full

1221: wms_cartnzn_wrap.cartonize
1222: ( p_api_version => l_api_version_number
1223: , p_init_msg_list => fnd_api.g_false
1224: , p_commit => fnd_api.g_false
1225: , p_validation_level => fnd_api.g_valid_level_full
1226: , x_return_status => l_api_return_status
1227: , x_msg_count => x_msg_count
1228: , x_msg_data => x_msg_data
1229: , p_out_bound => 'Y'

Line 1236: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN

1232: , p_disable_cartonization => l_disable_cartonization
1233: , p_packaging_mode => wms_cartnzn_wrap.mfg_pr_pkg_mode
1234: );
1235:
1236: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN
1237: IF (l_debug = 1) THEN
1238: print_debug('Cartonization returned with an error status: '||l_api_return_status, 'Pick_Release');
1239: END IF;
1240: RAISE fnd_api.g_exc_unexpected_error;

Line 1240: RAISE fnd_api.g_exc_unexpected_error;

1236: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN
1237: IF (l_debug = 1) THEN
1238: print_debug('Cartonization returned with an error status: '||l_api_return_status, 'Pick_Release');
1239: END IF;
1240: RAISE fnd_api.g_exc_unexpected_error;
1241: END IF;
1242: END IF;
1243:
1244: -- Standard call to commit

Line 1245: IF p_commit = fnd_api.g_true THEN

1241: END IF;
1242: END IF;
1243:
1244: -- Standard call to commit
1245: IF p_commit = fnd_api.g_true THEN
1246: COMMIT;
1247: END IF;
1248:
1249: IF (l_debug = 1) THEN

Line 1254: WHEN fnd_api.g_exc_error THEN

1250: print_debug('x_return_status = '|| x_return_status, 'PICK_RELEASE');
1251: END IF;
1252:
1253: EXCEPTION
1254: WHEN fnd_api.g_exc_error THEN
1255: ROLLBACK TO pick_release;
1256: inv_quantity_tree_pvt.clear_quantity_cache;
1257: x_return_status := fnd_api.g_ret_sts_error;
1258: fnd_msg_pub.count_and_get(p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);

Line 1257: x_return_status := fnd_api.g_ret_sts_error;

1253: EXCEPTION
1254: WHEN fnd_api.g_exc_error THEN
1255: ROLLBACK TO pick_release;
1256: inv_quantity_tree_pvt.clear_quantity_cache;
1257: x_return_status := fnd_api.g_ret_sts_error;
1258: fnd_msg_pub.count_and_get(p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);
1259: WHEN OTHERS THEN
1260: ROLLBACK TO pick_release;
1261: inv_quantity_tree_pvt.clear_quantity_cache;

Line 1258: fnd_msg_pub.count_and_get(p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);

1254: WHEN fnd_api.g_exc_error THEN
1255: ROLLBACK TO pick_release;
1256: inv_quantity_tree_pvt.clear_quantity_cache;
1257: x_return_status := fnd_api.g_ret_sts_error;
1258: fnd_msg_pub.count_and_get(p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);
1259: WHEN OTHERS THEN
1260: ROLLBACK TO pick_release;
1261: inv_quantity_tree_pvt.clear_quantity_cache;
1262: x_return_status := fnd_api.g_ret_sts_unexp_error;

Line 1262: x_return_status := fnd_api.g_ret_sts_unexp_error;

1258: fnd_msg_pub.count_and_get(p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);
1259: WHEN OTHERS THEN
1260: ROLLBACK TO pick_release;
1261: inv_quantity_tree_pvt.clear_quantity_cache;
1262: x_return_status := fnd_api.g_ret_sts_unexp_error;
1263: fnd_msg_pub.count_and_get(p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);
1264: END pick_release;
1265:
1266:

Line 1263: fnd_msg_pub.count_and_get(p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);

1259: WHEN OTHERS THEN
1260: ROLLBACK TO pick_release;
1261: inv_quantity_tree_pvt.clear_quantity_cache;
1262: x_return_status := fnd_api.g_ret_sts_unexp_error;
1263: fnd_msg_pub.count_and_get(p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);
1264: END pick_release;
1265:
1266:
1267:

Line 1291: -- FND_API.G_RET_STS_SUCCESS;

1287: --
1288: -- Output Parameters
1289: -- x_return_status
1290: -- if the process succeeds, the value is
1291: -- FND_API.G_RET_STS_SUCCESS;
1292: -- if there is an expected error, the value is
1293: -- fnd_api.g_ret_sts_error;
1294: -- if there is an unexpected error, the value is
1295: -- fnd_api.g_ret_sts_unexp_error;

Line 1293: -- fnd_api.g_ret_sts_error;

1289: -- x_return_status
1290: -- if the process succeeds, the value is
1291: -- FND_API.G_RET_STS_SUCCESS;
1292: -- if there is an expected error, the value is
1293: -- fnd_api.g_ret_sts_error;
1294: -- if there is an unexpected error, the value is
1295: -- fnd_api.g_ret_sts_unexp_error;
1296: -- x_msg_count
1297: -- if there is one or more errors, the number of error messages

Line 1295: -- fnd_api.g_ret_sts_unexp_error;

1291: -- FND_API.G_RET_STS_SUCCESS;
1292: -- if there is an expected error, the value is
1293: -- fnd_api.g_ret_sts_error;
1294: -- if there is an unexpected error, the value is
1295: -- fnd_api.g_ret_sts_unexp_error;
1296: -- x_msg_count
1297: -- if there is one or more errors, the number of error messages
1298: -- in the buffer
1299: -- x_msg_data

Line 1302: -- (See FND_API package for more details about the above output parameters)

1298: -- in the buffer
1299: -- x_msg_data
1300: -- if there is one and only one error, the error message
1301: --
1302: -- (See FND_API package for more details about the above output parameters)
1303: --
1304:
1305: PROCEDURE process_line
1306: ( p_mo_line_rec IN OUT NOCOPY inv_move_order_pub.trolin_rec_type

Line 1307: , p_allow_partial_pick IN VARCHAR2 DEFAULT fnd_api.g_true

1303: --
1304:
1305: PROCEDURE process_line
1306: ( p_mo_line_rec IN OUT NOCOPY inv_move_order_pub.trolin_rec_type
1307: , p_allow_partial_pick IN VARCHAR2 DEFAULT fnd_api.g_true
1308: , p_grouping_rule_id IN NUMBER
1309: , p_plan_tasks IN BOOLEAN
1310: , p_call_wip_api IN BOOLEAN --Added bug 4634522
1311: , x_return_status OUT NOCOPY VARCHAR2

Line 1347: x_return_status := fnd_api.g_ret_sts_success;

1343: SAVEPOINT process_line_pvt;
1344: x_detail_rec_count := 0;
1345: l_num_detail_recs := 0;
1346: -- Initialize API return status to success
1347: x_return_status := fnd_api.g_ret_sts_success;
1348:
1349: -- Bug 4880578: return if MO line has 0 qty
1350: IF NVL(p_mo_line_rec.quantity,0) = 0 THEN
1351: IF (l_debug = 1) THEN

Line 1396: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN

1392: , p_allocate_quantity => l_allocate_quantity
1393: , x_return_status => l_api_return_status
1394: , x_msg_data => x_msg_data
1395: );
1396: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN
1397: IF (l_debug = 1) THEN
1398: print_debug('Error in pre_allocate_material','PROCESS_LINE');
1399: END IF;
1400: RAISE fnd_api.g_exc_unexpected_error;

Line 1400: RAISE fnd_api.g_exc_unexpected_error;

1396: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN
1397: IF (l_debug = 1) THEN
1398: print_debug('Error in pre_allocate_material','PROCESS_LINE');
1399: END IF;
1400: RAISE fnd_api.g_exc_unexpected_error;
1401: END IF;
1402: ELSE
1403: IF (l_debug = 1) THEN
1404: print_debug('WIP Patch Level = ' || g_wip_patch_level || ', so skipping pre_allocate_material', 'PROCESS_LINE');

Line 1413: , p_init_msg_list => fnd_api.g_false

1409: print_debug('Calling Create Suggestions for MOLine: '|| p_mo_line_rec.line_id, 'PROCESS_LINE');
1410: END IF;
1411: inv_ppengine_pvt.create_suggestions
1412: ( p_api_version => 1.0
1413: , p_init_msg_list => fnd_api.g_false
1414: , p_commit => fnd_api.g_false
1415: , x_return_status => l_api_return_status
1416: , x_msg_count => x_msg_count
1417: , x_msg_data => x_msg_data

Line 1414: , p_commit => fnd_api.g_false

1410: END IF;
1411: inv_ppengine_pvt.create_suggestions
1412: ( p_api_version => 1.0
1413: , p_init_msg_list => fnd_api.g_false
1414: , p_commit => fnd_api.g_false
1415: , x_return_status => l_api_return_status
1416: , x_msg_count => x_msg_count
1417: , x_msg_data => x_msg_data
1418: , p_transaction_temp_id => p_mo_line_rec.line_id

Line 1424: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN

1420: , p_suggest_serial => 'T'
1421: , p_plan_tasks => p_plan_tasks
1422: );
1423:
1424: IF l_api_return_status <> fnd_api.g_ret_sts_success THEN
1425: IF (l_debug = 1) THEN
1426: print_debug('Ret stat: '|| l_api_return_status || ', INV detailing failed', 'PROCESS_LINE');
1427: END IF;
1428: fnd_msg_pub.count_and_get(p_count => l_count, p_data => l_message, p_encoded => 'F');

Line 1456: RAISE fnd_api.g_exc_unexpected_error;

1452: FROM mtl_txn_request_lines_v
1453: WHERE line_id = p_mo_line_rec.line_id;
1454: EXCEPTION
1455: WHEN NO_DATA_FOUND THEN
1456: RAISE fnd_api.g_exc_unexpected_error;
1457: END;
1458:
1459: fnd_message.set_name('INV', 'INV_DETAILING_FAILED');
1460: fnd_message.set_token('LINE_NUM', TO_CHAR(p_mo_line_rec.line_number));

Line 1463: RAISE fnd_api.g_exc_unexpected_error;

1459: fnd_message.set_name('INV', 'INV_DETAILING_FAILED');
1460: fnd_message.set_token('LINE_NUM', TO_CHAR(p_mo_line_rec.line_number));
1461: fnd_message.set_token('MO_NUMBER', l_request_number);
1462: fnd_msg_pub.ADD;
1463: RAISE fnd_api.g_exc_unexpected_error;
1464: END IF;
1465:
1466: IF (l_debug = 1) THEN
1467: print_debug('After calling Create Suggestions: Ret Status = '|| l_api_return_status, 'PROCESS_LINE');

Line 1481: IF l_quantity_detailed < p_mo_line_rec.primary_quantity AND p_allow_partial_pick = fnd_api.g_false THEN

1477: print_debug('Qty detailed = '|| l_quantity_detailed || ' : Num of Details = ' || l_num_detail_recs, 'PROCESS_LINE');
1478: END IF;
1479:
1480: -- If the move order line is not fully detailed, update the return status as appropriate.
1481: IF l_quantity_detailed < p_mo_line_rec.primary_quantity AND p_allow_partial_pick = fnd_api.g_false THEN
1482: fnd_message.set_name('INV', 'INV_COULD_NOT_PICK_FULL');
1483: fnd_msg_pub.ADD;
1484: RAISE fnd_api.g_exc_unexpected_error;
1485: END IF;

Line 1484: RAISE fnd_api.g_exc_unexpected_error;

1480: -- If the move order line is not fully detailed, update the return status as appropriate.
1481: IF l_quantity_detailed < p_mo_line_rec.primary_quantity AND p_allow_partial_pick = fnd_api.g_false THEN
1482: fnd_message.set_name('INV', 'INV_COULD_NOT_PICK_FULL');
1483: fnd_msg_pub.ADD;
1484: RAISE fnd_api.g_exc_unexpected_error;
1485: END IF;
1486:
1487: IF (l_num_detail_recs = 0) THEN
1488: p_mo_line_rec.quantity_detailed := NVL(l_quantity_detailed, 0) + NVL(p_mo_line_rec.quantity_delivered, 0);

Line 1526: RAISE fnd_api.g_exc_unexpected_error;

1522: fnd_message.set_name('INV', 'INV-CANNOT CONVERT');
1523: fnd_message.set_token('UOM', p_mo_line_rec.uom_code);
1524: fnd_message.set_token('ROUTINE', 'Pick Release process');
1525: fnd_msg_pub.ADD;
1526: RAISE fnd_api.g_exc_unexpected_error;
1527: END IF;
1528: ELSE
1529: l_quantity_detailed_conv := l_quantity_detailed;
1530: END IF;

Line 1563: IF x_return_status <> fnd_api.g_ret_sts_success THEN

1559: print_debug('Updating Move Order Line', 'PROCESS_LINE');
1560: END IF;
1561: inv_trolin_util.update_row(p_mo_line_rec);
1562: update_mmtt_for_wip(x_return_status, p_mo_line_rec, p_grouping_rule_id);
1563: IF x_return_status <> fnd_api.g_ret_sts_success THEN
1564: print_debug('Error occurred while updating MMTT with WIP Attributes','PROCESS_LINE');
1565: RAISE fnd_api.g_exc_unexpected_error;
1566: END IF;
1567: END IF; -- if l_num_detail_rec > 0

Line 1565: RAISE fnd_api.g_exc_unexpected_error;

1561: inv_trolin_util.update_row(p_mo_line_rec);
1562: update_mmtt_for_wip(x_return_status, p_mo_line_rec, p_grouping_rule_id);
1563: IF x_return_status <> fnd_api.g_ret_sts_success THEN
1564: print_debug('Error occurred while updating MMTT with WIP Attributes','PROCESS_LINE');
1565: RAISE fnd_api.g_exc_unexpected_error;
1566: END IF;
1567: END IF; -- if l_num_detail_rec > 0
1568:
1569: -- If the line was only partially detailed and the API was about to return success,

Line 1583: fnd_msg_pub.count_and_get(p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);

1579: IF l_debug = 1 THEN
1580: print_debug('Error in process line: ' || sqlcode || ', ' || sqlerrm,'PROCESS_LINE');
1581: END IF;
1582: x_return_status := g_not_allocated;
1583: fnd_msg_pub.count_and_get(p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);
1584: END process_line;
1585:
1586: PROCEDURE update_mol_for_wip
1587: ( x_return_status OUT NOCOPY VARCHAR2

Line 1595: x_return_status := fnd_api.g_ret_sts_success;

1591: , p_op_seq_num IN NUMBER
1592: ) IS
1593: l_debug number := NVL(FND_PROFILE.VALUE('INV_DEBUG_TRACE'),0);
1594: BEGIN
1595: x_return_status := fnd_api.g_ret_sts_success;
1596: IF (l_debug = 1) THEN
1597: print_debug('p_move_order_line_id => '|| p_move_order_line_id, 'update_mol_for_wip');
1598: print_debug('p_op_seq_num => '|| p_op_seq_num, 'update_mol_for_wip');
1599: END IF;

Line 1613: x_return_status := fnd_api.g_ret_sts_error;

1609: IF SQL%NOTFOUND THEN
1610: IF (l_debug = 1) THEN
1611: print_debug('No move order lines being updated', 'update_mol_for_wip');
1612: END IF;
1613: x_return_status := fnd_api.g_ret_sts_error;
1614: RETURN;
1615: END IF;
1616:
1617: UPDATE mtl_material_transactions_temp mmtt

Line 1627: x_return_status := fnd_api.g_ret_sts_unexp_error;

1623: AND mol.header_id = moh.header_id
1624: AND move_order_type = 5);
1625: EXCEPTION
1626: WHEN OTHERS THEN
1627: x_return_status := fnd_api.g_ret_sts_unexp_error;
1628: END update_mol_for_wip;
1629:
1630: PROCEDURE update_mmtt_for_wip(
1631: x_return_status OUT NOCOPY VARCHAR2

Line 1667: IF x_return_status <> fnd_api.g_ret_sts_success THEN

1663: , p_transaction_type_id => p_mo_line_rec.transaction_type_id
1664: , p_get_pick_slip_number => FALSE
1665: );
1666:
1667: IF x_return_status <> fnd_api.g_ret_sts_success THEN
1668: print_debug('Error Occurred while getting WIP Attributes','UPDATE_MMTT_FOR_WIP');
1669: RAISE fnd_api.g_exc_unexpected_error;
1670: END IF;
1671:

Line 1669: RAISE fnd_api.g_exc_unexpected_error;

1665: );
1666:
1667: IF x_return_status <> fnd_api.g_ret_sts_success THEN
1668: print_debug('Error Occurred while getting WIP Attributes','UPDATE_MMTT_FOR_WIP');
1669: RAISE fnd_api.g_exc_unexpected_error;
1670: END IF;
1671:
1672: FOR c_mmtt_rec IN c_mmtt LOOP
1673: l_index := l_index + 1;

Line 1699: IF x_return_status <> fnd_api.g_ret_sts_success THEN

1695: , x_api_status => x_return_status
1696: , x_error_message => l_msg_data
1697: );
1698:
1699: IF x_return_status <> fnd_api.g_ret_sts_success THEN
1700: IF (l_debug = 1) THEN
1701: print_debug('Error occurred in getting the Pick Slip Number: '|| l_msg_data, 'UPDATE_WITH_PICK_SLIP');
1702: END IF;
1703: fnd_message.set_name('INV','INV_NO_PICK_SLIP_NUMBER');

Line 1705: RAISE fnd_api.g_exc_unexpected_error;

1701: print_debug('Error occurred in getting the Pick Slip Number: '|| l_msg_data, 'UPDATE_WITH_PICK_SLIP');
1702: END IF;
1703: fnd_message.set_name('INV','INV_NO_PICK_SLIP_NUMBER');
1704: fnd_msg_pub.add;
1705: RAISE fnd_api.g_exc_unexpected_error;
1706: END IF;
1707: ELSE
1708: BEGIN
1709: SELECT WSH_PICK_SLIP_NUMBERS_S.NEXTVAL INTO l_pick_slip_number FROM DUAL;

Line 1714: RAISE fnd_api.g_exc_unexpected_error;

1710: EXCEPTION
1711: WHEN OTHERS THEN
1712: fnd_message.set_name('INV','INV_NO_PICK_SLIP_NUMBER');
1713: fnd_msg_pub.add;
1714: RAISE fnd_api.g_exc_unexpected_error;
1715: END;
1716: END IF;
1717: ELSE
1718: l_pick_slip_number := c_mmtt_rec.pick_slip_number;

Line 1762: x_return_status := fnd_api.g_ret_sts_unexp_error;

1758: WHEN OTHERS THEN
1759: IF (l_debug = 1) THEN
1760: print_debug('Exception Occurred: Code = ' || SQLCODE || ' : Error '|| SQLERRM, 'UPDATE_MMTT_FOR_WIP');
1761: END IF;
1762: x_return_status := fnd_api.g_ret_sts_unexp_error;
1763: END update_mmtt_for_wip;
1764:
1765: PROCEDURE get_wip_attributes(
1766: x_return_status OUT NOCOPY VARCHAR2

Line 1850: x_return_status := fnd_api.g_ret_sts_success;

1846:
1847: l_debug NUMBER := NVL(FND_PROFILE.VALUE('INV_DEBUG_TRACE'),0);
1848:
1849: BEGIN
1850: x_return_status := fnd_api.g_ret_sts_success;
1851:
1852: -- Entity type
1853: OPEN c_wip_entity_type;
1854: FETCH c_wip_entity_type INTO x_wip_entity_type;

Line 1860: RAISE fnd_api.g_exc_unexpected_error;

1856: IF (l_debug = 1) THEN
1857: print_debug('Couldnt determine Entity Type for EntityID = '|| p_wip_entity_id, 'UPDATE_MMTT_FOR_WIP');
1858: END IF;
1859: CLOSE c_wip_entity_type;
1860: RAISE fnd_api.g_exc_unexpected_error;
1861: END IF;
1862: CLOSE c_wip_entity_type;
1863:
1864: -- Departments

Line 1886: RAISE fnd_api.g_exc_unexpected_error;

1882: IF p_rep_schedule_id IS NULL THEN
1883: IF (l_debug = 1) THEN
1884: print_debug('Repetitive Schedule ID cannot be null for Entity Type 2', 'UPDATE_MMTT_FOR_WIP');
1885: END IF;
1886: RAISE fnd_api.g_exc_unexpected_error;
1887: ELSE
1888: OPEN c_repetitive_line_id;
1889: FETCH c_repetitive_line_id INTO x_repetitive_line_id;
1890: IF c_repetitive_line_id%NOTFOUND THEN

Line 1894: RAISE fnd_api.g_exc_unexpected_error;

1890: IF c_repetitive_line_id%NOTFOUND THEN
1891: IF (l_debug = 1) THEN
1892: print_debug('Unable to determine RepLineID for RepSchID '||p_rep_schedule_id, 'UPDATE_MMTT_FOR_WIP');
1893: END IF;
1894: RAISE fnd_api.g_exc_unexpected_error;
1895: END IF;
1896: CLOSE c_repetitive_line_id;
1897: END IF;
1898: END IF;

Line 1916: x_return_status := fnd_api.g_ret_sts_error;

1912: SELECT WSH_PICK_SLIP_NUMBERS_S.NEXTVAL INTO x_pick_slip_number FROM DUAL;
1913: END IF;
1914: EXCEPTION
1915: WHEN OTHERS THEN
1916: x_return_status := fnd_api.g_ret_sts_error;
1917: END get_wip_attributes;
1918:
1919: FUNCTION get_mo_alloc_stat RETURN VARCHAR2 IS
1920: l_mo_alloc_stat VARCHAR2(1) := g_not_allocated;