107: RETURN 0;
108: EXCEPTION
109: WHEN duplicate_routing THEN
110: IF (pcalledby_form = 'T') THEN
111: FND_MESSAGE.SET_NAME('GMD', 'GMD_DUP_ROUTING');
112: APP_EXCEPTION.RAISE_EXCEPTION;
113: ELSE
114: RETURN GMD_ROUTING_EXISTS;
115: END IF;
160: RETURN 0;
161: EXCEPTION
162: WHEN inv_routing_class THEN
163: IF (pcalledby_form = 'T') THEN
164: FND_MESSAGE.SET_NAME('GMD', 'FM_INVROUTCLASS');
165: APP_EXCEPTION.RAISE_EXCEPTION;
166: ELSE
167: RETURN GMD_INV_ROUTING_CLASS;
168: END IF;
215: RETURN 0;
216: EXCEPTION
217: WHEN dup_routingstep_no THEN
218: IF (pcalledby_form = 'T') THEN
219: FND_MESSAGE.SET_NAME('GMD', 'FM_RTSTEPERR');
220: APP_EXCEPTION.RAISE_EXCEPTION;
221: ELSE
222: RETURN GMD_DUP_ROUTINGSTEP_NO;
223: END IF;
273: xrouting_id := l_return_val;
274:
275: EXCEPTION
276: WHEN OTHERS THEN
277: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
278: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
279: FND_MSG_PUB.ADD;
280: xReturn_status := FND_API.G_RET_STS_UNEXP_ERROR;
281: END check_routing;
274:
275: EXCEPTION
276: WHEN OTHERS THEN
277: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
278: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
279: FND_MSG_PUB.ADD;
280: xReturn_status := FND_API.G_RET_STS_UNEXP_ERROR;
281: END check_routing;
282:
333: END IF;
334: CLOSE Cur_get_oprn;
335:
336: IF (l_rec.effective_start_date > prouting_start_date) THEN
337: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUTING_FROM_DATE');
338: FND_MESSAGE.SET_TOKEN('OPRN_NO', l_rec.oprn_no);
339: FND_MESSAGE.SET_TOKEN('VERSION_NO', l_rec.oprn_vers);
340: FND_MESSAGE.SET_TOKEN('OPRN_DATE', l_rec.effective_start_date);
341: IF pcalledby_form = 'T' THEN
334: CLOSE Cur_get_oprn;
335:
336: IF (l_rec.effective_start_date > prouting_start_date) THEN
337: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUTING_FROM_DATE');
338: FND_MESSAGE.SET_TOKEN('OPRN_NO', l_rec.oprn_no);
339: FND_MESSAGE.SET_TOKEN('VERSION_NO', l_rec.oprn_vers);
340: FND_MESSAGE.SET_TOKEN('OPRN_DATE', l_rec.effective_start_date);
341: IF pcalledby_form = 'T' THEN
342: APP_EXCEPTION.RAISE_EXCEPTION;
335:
336: IF (l_rec.effective_start_date > prouting_start_date) THEN
337: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUTING_FROM_DATE');
338: FND_MESSAGE.SET_TOKEN('OPRN_NO', l_rec.oprn_no);
339: FND_MESSAGE.SET_TOKEN('VERSION_NO', l_rec.oprn_vers);
340: FND_MESSAGE.SET_TOKEN('OPRN_DATE', l_rec.effective_start_date);
341: IF pcalledby_form = 'T' THEN
342: APP_EXCEPTION.RAISE_EXCEPTION;
343: ELSE
336: IF (l_rec.effective_start_date > prouting_start_date) THEN
337: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUTING_FROM_DATE');
338: FND_MESSAGE.SET_TOKEN('OPRN_NO', l_rec.oprn_no);
339: FND_MESSAGE.SET_TOKEN('VERSION_NO', l_rec.oprn_vers);
340: FND_MESSAGE.SET_TOKEN('OPRN_DATE', l_rec.effective_start_date);
341: IF pcalledby_form = 'T' THEN
342: APP_EXCEPTION.RAISE_EXCEPTION;
343: ELSE
344: FND_MSG_PUB.ADD;
347: END IF;
348:
349: IF (l_rec.effective_end_date IS NOT NULL) AND
350: (l_rec.effective_end_date < NVL(prouting_end_date, l_rec.effective_end_date + 1)) THEN
351: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUTING_TO_DATE');
352: FND_MESSAGE.SET_TOKEN('OPRN_NO', l_rec.oprn_no);
353: FND_MESSAGE.SET_TOKEN('VERSION_NO', l_rec.oprn_vers);
354: FND_MESSAGE.SET_TOKEN('OPRN_DATE', l_rec.effective_end_date);
355: IF pcalledby_form = 'T' THEN
348:
349: IF (l_rec.effective_end_date IS NOT NULL) AND
350: (l_rec.effective_end_date < NVL(prouting_end_date, l_rec.effective_end_date + 1)) THEN
351: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUTING_TO_DATE');
352: FND_MESSAGE.SET_TOKEN('OPRN_NO', l_rec.oprn_no);
353: FND_MESSAGE.SET_TOKEN('VERSION_NO', l_rec.oprn_vers);
354: FND_MESSAGE.SET_TOKEN('OPRN_DATE', l_rec.effective_end_date);
355: IF pcalledby_form = 'T' THEN
356: APP_EXCEPTION.RAISE_EXCEPTION;
349: IF (l_rec.effective_end_date IS NOT NULL) AND
350: (l_rec.effective_end_date < NVL(prouting_end_date, l_rec.effective_end_date + 1)) THEN
351: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUTING_TO_DATE');
352: FND_MESSAGE.SET_TOKEN('OPRN_NO', l_rec.oprn_no);
353: FND_MESSAGE.SET_TOKEN('VERSION_NO', l_rec.oprn_vers);
354: FND_MESSAGE.SET_TOKEN('OPRN_DATE', l_rec.effective_end_date);
355: IF pcalledby_form = 'T' THEN
356: APP_EXCEPTION.RAISE_EXCEPTION;
357: ELSE
350: (l_rec.effective_end_date < NVL(prouting_end_date, l_rec.effective_end_date + 1)) THEN
351: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUTING_TO_DATE');
352: FND_MESSAGE.SET_TOKEN('OPRN_NO', l_rec.oprn_no);
353: FND_MESSAGE.SET_TOKEN('VERSION_NO', l_rec.oprn_vers);
354: FND_MESSAGE.SET_TOKEN('OPRN_DATE', l_rec.effective_end_date);
355: IF pcalledby_form = 'T' THEN
356: APP_EXCEPTION.RAISE_EXCEPTION;
357: ELSE
358: FND_MSG_PUB.ADD;
362:
363: RETURN 0;
364: EXCEPTION
365: WHEN inv_oprn THEN
366: FND_MESSAGE.SET_NAME('GMD', 'QC_INVOPRN');
367: IF (pcalledby_form = 'T') THEN
368: APP_EXCEPTION.RAISE_EXCEPTION;
369: ELSE
370: FND_MSG_PUB.ADD;
553: CLOSE Cur_get_routing_steps;
554: x_return_status := FND_API.G_RET_STS_SUCCESS;
555: EXCEPTION
556: WHEN missing_details THEN
557: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUT_DETAILS_MISSING');
558: FND_MSG_PUB.ADD;
559: x_return_status := FND_API.G_RET_STS_ERROR;
560: WHEN INSERT_FAILURE THEN
561: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
557: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUT_DETAILS_MISSING');
558: FND_MSG_PUB.ADD;
559: x_return_status := FND_API.G_RET_STS_ERROR;
560: WHEN INSERT_FAILURE THEN
561: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
562: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
563: FND_MSG_PUB.ADD;
564: x_return_status := FND_API.G_RET_STS_ERROR;
565: WHEN OTHERS THEN
558: FND_MSG_PUB.ADD;
559: x_return_status := FND_API.G_RET_STS_ERROR;
560: WHEN INSERT_FAILURE THEN
561: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
562: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
563: FND_MSG_PUB.ADD;
564: x_return_status := FND_API.G_RET_STS_ERROR;
565: WHEN OTHERS THEN
566: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
562: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
563: FND_MSG_PUB.ADD;
564: x_return_status := FND_API.G_RET_STS_ERROR;
565: WHEN OTHERS THEN
566: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
567: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
568: FND_MSG_PUB.ADD;
569: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
570: END generate_step_dependencies;
563: FND_MSG_PUB.ADD;
564: x_return_status := FND_API.G_RET_STS_ERROR;
565: WHEN OTHERS THEN
566: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
567: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
568: FND_MSG_PUB.ADD;
569: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
570: END generate_step_dependencies;
571:
672: CLOSE Cur_get_routing_steps;
673: x_return_status := FND_API.G_RET_STS_SUCCESS;
674: EXCEPTION
675: WHEN missing_details THEN
676: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUT_DETAILS_MISSING');
677: FND_MSG_PUB.ADD;
678: x_return_status := FND_API.G_RET_STS_ERROR;
679: WHEN INSERT_FAILURE THEN
680: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
676: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUT_DETAILS_MISSING');
677: FND_MSG_PUB.ADD;
678: x_return_status := FND_API.G_RET_STS_ERROR;
679: WHEN INSERT_FAILURE THEN
680: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
681: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
682: FND_MSG_PUB.ADD;
683: x_return_status := FND_API.G_RET_STS_ERROR;
684: WHEN OTHERS THEN
677: FND_MSG_PUB.ADD;
678: x_return_status := FND_API.G_RET_STS_ERROR;
679: WHEN INSERT_FAILURE THEN
680: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
681: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
682: FND_MSG_PUB.ADD;
683: x_return_status := FND_API.G_RET_STS_ERROR;
684: WHEN OTHERS THEN
685: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
681: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
682: FND_MSG_PUB.ADD;
683: x_return_status := FND_API.G_RET_STS_ERROR;
684: WHEN OTHERS THEN
685: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
686: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
687: FND_MSG_PUB.ADD;
688: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
689: END generate_step_dependencies;
682: FND_MSG_PUB.ADD;
683: x_return_status := FND_API.G_RET_STS_ERROR;
684: WHEN OTHERS THEN
685: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
686: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
687: FND_MSG_PUB.ADD;
688: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
689: END generate_step_dependencies;
690:
721: END LOOP;
722:
723: EXCEPTION
724: WHEN OTHERS THEN
725: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
726: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
727: FND_MSG_PUB.ADD;
728: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
729:
722:
723: EXCEPTION
724: WHEN OTHERS THEN
725: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
726: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
727: FND_MSG_PUB.ADD;
728: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
729:
730: END Get_process_loss_max_qtys;
750: OPEN check_oprn_count;
751: FETCH check_oprn_count INTO l_oprn_count;
752: IF (check_oprn_count%NOTFOUND) THEN
753: x_return_status := 'E';
754: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUT_DTL_REQD');
755: FND_MSG_PUB.ADD;
756: END IF;
757: CLOSE check_oprn_count;
758:
757: CLOSE check_oprn_count;
758:
759: IF (l_oprn_count = 0) THEN
760: x_return_status := 'E';
761: FND_MESSAGE.SET_NAME('GMD', 'GMD_ROUT_DTL_REQD');
762: FND_MSG_PUB.ADD;
763: END IF;
764:
765: FND_MSG_PUB.COUNT_AND_GET (P_count => x_msg_count,
766: P_data => x_msg_stack);
767: EXCEPTION
768: WHEN OTHERS THEN
769: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
770: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
771: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
772: FND_MSG_PUB.ADD;
773: FND_MSG_PUB.COUNT_AND_GET (P_count => x_msg_count,
774: P_data => x_msg_stack);
767: EXCEPTION
768: WHEN OTHERS THEN
769: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
770: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
771: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
772: FND_MSG_PUB.ADD;
773: FND_MSG_PUB.COUNT_AND_GET (P_count => x_msg_count,
774: P_data => x_msg_stack);
775:
803: OPEN check_VR_Rout_dates;
804: FETCH check_VR_Rout_dates INTO l_vr_count;
805: IF (check_VR_Rout_dates%FOUND) THEN
806: x_return_status := 'E';
807: FND_MESSAGE.SET_NAME('GMD', 'GMD_UPD_RECP_VR');
808: FND_MSG_PUB.ADD;
809: END IF;
810: CLOSE check_VR_Rout_dates;
811:
813: P_data => x_msg_stack);
814: EXCEPTION
815: WHEN OTHERS THEN
816: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
817: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
818: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
819: FND_MSG_PUB.ADD;
820: FND_MSG_PUB.COUNT_AND_GET (P_count => x_msg_count,
821: P_data => x_msg_stack);
814: EXCEPTION
815: WHEN OTHERS THEN
816: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
817: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
818: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
819: FND_MSG_PUB.ADD;
820: FND_MSG_PUB.COUNT_AND_GET (P_count => x_msg_count,
821: P_data => x_msg_stack);
822:
856:
857: EXCEPTION
858: WHEN OTHERS THEN
859: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
860: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
861: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
862: FND_MSG_PUB.ADD;
863: FND_MSG_PUB.COUNT_AND_GET (P_count => x_msg_count,
864: P_data => x_msg_stack);
857: EXCEPTION
858: WHEN OTHERS THEN
859: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
860: FND_MESSAGE.SET_NAME('GMD', 'GMD_UNEXPECTED_ERROR');
861: FND_MESSAGE.SET_TOKEN('ERROR', sqlerrm);
862: FND_MSG_PUB.ADD;
863: FND_MSG_PUB.COUNT_AND_GET (P_count => x_msg_count,
864: P_data => x_msg_stack);
865:
958: OPEN Cur_check_step(p_routingstep_id);
959: FETCH Cur_check_step INTO X_temp;
960: IF (Cur_check_step%FOUND) THEN
961: CLOSE Cur_check_step;
962: FND_MESSAGE.SET_NAME('GMD', 'GMD_STEP_USED_IN_RECIPE');
963: RETURN TRUE;
964: END IF;
965: CLOSE Cur_check_step;
966:
973: OPEN Cur_check_step2(p_routingstep_id);
974: FETCH Cur_check_step2 INTO X_temp;
975: IF (Cur_check_step2%FOUND) THEN
976: CLOSE Cur_check_step2;
977: FND_MESSAGE.SET_NAME('GMD', 'GMD_STEP_USED_IN_RECIPE');
978: RETURN TRUE;
979: END IF;
980: CLOSE Cur_check_step2;
981:
1014: END IF;
1015: EXCEPTION
1016: WHEN inv_delete_mark THEN
1017: x_return_status := 'E';
1018: FND_MESSAGE.SET_NAME('GMA', 'SY_BADDELETEMARK');
1019: FND_MSG_PUB.ADD;
1020: END check_delete_mark;
1021:
1022: /* ==================================================================== */
1062: CLOSE Cur_ownerorgn_code;
1063: EXCEPTION
1064: WHEN inv_owner_orgn_code THEN
1065: x_return_status := 'E';
1066: FND_MESSAGE.SET_NAME('GMD', 'GMD_INV_USER_ORGANIZATION');
1067: FND_MSG_PUB.ADD;
1068: END check_ownerorgn_code;
1069:
1070: /* ==================================================================== */
1113: CLOSE Cur_step_no;
1114: EXCEPTION
1115: WHEN inv_dep_step THEN
1116: x_return_status := 'E';
1117: FND_MESSAGE.SET_NAME('GME', 'PC_RECORD_EXISTS');
1118: FND_MSG_PUB.ADD;
1119: END check_deprouting;
1120:
1121: /* ==================================================================== */