72: PROCEDURE Process_Ata_Sequences
73: (
74: -- Standard IN params
75: p_api_version IN NUMBER,
76: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
77: p_commit IN VARCHAR2 := FND_API.G_FALSE,
78: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
79: p_default IN VARCHAR2 := FND_API.G_FALSE,
80: p_module_type IN VARCHAR2 := NULL,
73: (
74: -- Standard IN params
75: p_api_version IN NUMBER,
76: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
77: p_commit IN VARCHAR2 := FND_API.G_FALSE,
78: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
79: p_default IN VARCHAR2 := FND_API.G_FALSE,
80: p_module_type IN VARCHAR2 := NULL,
81: -- Standard OUT params
74: -- Standard IN params
75: p_api_version IN NUMBER,
76: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
77: p_commit IN VARCHAR2 := FND_API.G_FALSE,
78: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
79: p_default IN VARCHAR2 := FND_API.G_FALSE,
80: p_module_type IN VARCHAR2 := NULL,
81: -- Standard OUT params
82: x_return_status OUT NOCOPY VARCHAR2,
75: p_api_version IN NUMBER,
76: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
77: p_commit IN VARCHAR2 := FND_API.G_FALSE,
78: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
79: p_default IN VARCHAR2 := FND_API.G_FALSE,
80: p_module_type IN VARCHAR2 := NULL,
81: -- Standard OUT params
82: x_return_status OUT NOCOPY VARCHAR2,
83: x_msg_count OUT NOCOPY NUMBER,
138: -- Standard start of API savepoint
139: SAVEPOINT Process_Ata_Sequences_SP;
140:
141: -- Initialize return status to success before any code logic/validation
142: x_return_status := FND_API.G_RET_STS_SUCCESS;
143:
144: -- Standard call to check for call compatibility
145: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
146: THEN
141: -- Initialize return status to success before any code logic/validation
142: x_return_status := FND_API.G_RET_STS_SUCCESS;
143:
144: -- Standard call to check for call compatibility
145: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
146: THEN
147: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
148: END IF;
149:
143:
144: -- Standard call to check for call compatibility
145: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
146: THEN
147: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
148: END IF;
149:
150: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
151: IF FND_API.TO_BOOLEAN(p_init_msg_list)
146: THEN
147: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
148: END IF;
149:
150: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
151: IF FND_API.TO_BOOLEAN(p_init_msg_list)
152: THEN
153: FND_MSG_PUB.INITIALIZE;
154: END IF;
147: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
148: END IF;
149:
150: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
151: IF FND_API.TO_BOOLEAN(p_init_msg_list)
152: THEN
153: FND_MSG_PUB.INITIALIZE;
154: END IF;
155:
178: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_COM_INVALID_DML_REC');
179: -- Invalid DML operation FIELD specified
180: FND_MESSAGE.SET_TOKEN('FIELD', p_x_ata_sequences_tbl(l_rec_idx).dml_operation);
181: FND_MSG_PUB.ADD;
182: RAISE FND_API.G_EXC_ERROR;
183: END IF;
184:
185: -- Verify MEL/CDL is in DRAFT status and change to DRAFT if APPROVAL_REJECTED; Also verify whether MEL/CDL information is provided
186: Check_Mel_Cdl_Status(p_x_ata_sequences_tbl(l_rec_idx).mel_cdl_header_id, p_x_ata_sequences_tbl(l_rec_idx).mel_cdl_ata_sequence_id);
203: l_msg_data
204: );
205:
206: -- Check Error Message stack.
207: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS)
208: THEN
209: IF (fnd_log.level_error >= fnd_log.g_current_runtime_level)
210: THEN
211: fnd_log.string
216: );
217: END IF;
218:
219: -- Throwing unexpected error since this delete should have happened without any hiccup
220: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
221: END IF;
222: END LOOP;
223: */
224:
268: -- Cannot modify System Sequence from "OLDATA" to "ATA" for existing record
269: FND_MESSAGE.SET_TOKEN('OLDATA', l_ata_code);
270: FND_MESSAGE.SET_TOKEN('ATA', p_x_ata_sequences_tbl(l_rec_idx).ata_code);
271: FND_MSG_PUB.ADD;
272: RAISE FND_API.G_EXC_ERROR;
273: END IF;
274: END IF;
275:
276: -- For C/U, verify ATA code is not null and correct, Repair Category is not null and correct, Installed Number and Dispatch Number are okay
277: Convert_Value_To_Id(p_x_ata_sequences_tbl(l_rec_idx));
278: --amsriniv. Begin
279: --amsriniv. Bug 6659422
280: /*
281: IF (p_x_ata_sequences_tbl(l_rec_idx).installed_number IS NULL OR p_x_ata_sequences_tbl(l_rec_idx).installed_number = FND_API.G_MISS_NUM)
282: THEN
283: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_INST_NUM_MAND');
284: -- Installed Number for System Sequence "ATA" is invalid
285: FND_MESSAGE.SET_TOKEN('ATA', p_x_ata_sequences_tbl(l_rec_idx).ata_code);
285: FND_MESSAGE.SET_TOKEN('ATA', p_x_ata_sequences_tbl(l_rec_idx).ata_code);
286: FND_MSG_PUB.ADD;
287: END IF;
288:
289: IF (p_x_ata_sequences_tbl(l_rec_idx).dispatch_number IS NULL OR p_x_ata_sequences_tbl(l_rec_idx).dispatch_number = FND_API.G_MISS_NUM)
290: THEN
291: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_DISP_NUM_MAND');
292: -- Dispatch Number for System Sequence "ATA" is invalid
293: FND_MESSAGE.SET_TOKEN('ATA', p_x_ata_sequences_tbl(l_rec_idx).ata_code);
333: -- Check Error Message stack.
334: x_msg_count := FND_MSG_PUB.count_msg;
335: IF (x_msg_count > 0)
336: THEN
337: RAISE FND_API.G_EXC_ERROR;
338: END IF;
339:
340: -- Default attributes for update
341: p_x_ata_sequences_tbl(l_rec_idx).object_version_number := p_x_ata_sequences_tbl(l_rec_idx).object_version_number + 1;
377: );
378: END IF;
379:
380: -- Update the JTF note for Remarks...
381: IF (p_x_ata_sequences_tbl(l_rec_idx).remarks_note IS NOT NULL AND p_x_ata_sequences_tbl(l_rec_idx).remarks_note <> FND_API.G_MISS_CHAR)
382: THEN
383: OPEN get_ata_notes(p_x_ata_sequences_tbl(l_rec_idx).mel_cdl_ata_sequence_id);
384: FETCH get_ata_notes INTO l_note_rec;
385: -- If the JTF note for Remarks already exists, update the same or create a new one...
389:
390: JTF_NOTES_PUB.Update_Note
391: (
392: p_api_version => 1.0,
393: p_init_msg_list => FND_API.G_FALSE,
394: p_commit => FND_API.G_FALSE,
395: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
396: x_return_status => l_return_status,
397: x_msg_count => l_msg_count,
390: JTF_NOTES_PUB.Update_Note
391: (
392: p_api_version => 1.0,
393: p_init_msg_list => FND_API.G_FALSE,
394: p_commit => FND_API.G_FALSE,
395: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
396: x_return_status => l_return_status,
397: x_msg_count => l_msg_count,
398: x_msg_data => l_msg_data,
391: (
392: p_api_version => 1.0,
393: p_init_msg_list => FND_API.G_FALSE,
394: p_commit => FND_API.G_FALSE,
395: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
396: x_return_status => l_return_status,
397: x_msg_count => l_msg_count,
398: x_msg_data => l_msg_data,
399: p_jtf_note_id => l_note_rec.jtf_note_id,
409: p_jtf_note_contexts_tab => l_note_contexts_tbl
410: );
411:
412: -- Check Error Message stack.
413: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS)
414: THEN
415: IF (fnd_log.level_error >= fnd_log.g_current_runtime_level)
416: THEN
417: fnd_log.string
422: );
423: END IF;
424:
425: -- Throwing unexpected error since this delete should have happened without any hiccup
426: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
427: END IF;
428:
429: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)
430: THEN
442: (
443: p_parent_note_id => null,
444: p_jtf_note_id => null,
445: p_api_version => 1.0,
446: p_init_msg_list => FND_API.G_FALSE,
447: p_commit => FND_API.G_FALSE,
448: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
449: x_return_status => l_return_status,
450: x_msg_count => l_msg_count,
443: p_parent_note_id => null,
444: p_jtf_note_id => null,
445: p_api_version => 1.0,
446: p_init_msg_list => FND_API.G_FALSE,
447: p_commit => FND_API.G_FALSE,
448: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
449: x_return_status => l_return_status,
450: x_msg_count => l_msg_count,
451: x_msg_data => l_msg_data,
444: p_jtf_note_id => null,
445: p_api_version => 1.0,
446: p_init_msg_list => FND_API.G_FALSE,
447: p_commit => FND_API.G_FALSE,
448: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
449: x_return_status => l_return_status,
450: x_msg_count => l_msg_count,
451: x_msg_data => l_msg_data,
452: p_org_id => null,
483: p_jtf_note_contexts_tab => l_note_contexts_tbl
484: );
485:
486: -- Check Error Message stack.
487: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS)
488: THEN
489: IF (fnd_log.level_error >= fnd_log.g_current_runtime_level)
490: THEN
491: fnd_log.string
496: );
497: END IF;
498:
499: -- Throwing unexpected error since this delete should have happened without any hiccup
500: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
501: END IF;
502:
503: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)
504: THEN
524:
525: --amsriniv. Begin
526: --amsriniv. Bug 6659422
527: /*
528: IF (p_x_ata_sequences_tbl(l_rec_idx).installed_number IS NULL OR p_x_ata_sequences_tbl(l_rec_idx).installed_number = FND_API.G_MISS_NUM)
529: THEN
530: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_INST_NUM_MAND');
531: -- Installed Number for System Sequence "ATA" is invalid
532: FND_MESSAGE.SET_TOKEN('ATA', p_x_ata_sequences_tbl(l_rec_idx).ata_code);
532: FND_MESSAGE.SET_TOKEN('ATA', p_x_ata_sequences_tbl(l_rec_idx).ata_code);
533: FND_MSG_PUB.ADD;
534: END IF;
535:
536: IF (p_x_ata_sequences_tbl(l_rec_idx).dispatch_number IS NULL OR p_x_ata_sequences_tbl(l_rec_idx).dispatch_number = FND_API.G_MISS_NUM)
537: THEN
538: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_DISP_NUM_MAND');
539: -- Dispatch Number for System Sequence "ATA" is invalid
540: FND_MESSAGE.SET_TOKEN('ATA', p_x_ata_sequences_tbl(l_rec_idx).ata_code);
594: -- Check Error Message stack.
595: x_msg_count := FND_MSG_PUB.count_msg;
596: IF (x_msg_count > 0)
597: THEN
598: RAISE FND_API.G_EXC_ERROR;
599: END IF;
600:
601: -- Default attributes for create
602: p_x_ata_sequences_tbl(l_rec_idx).object_version_number := 1;
680: );
681: END IF;
682:
683: -- Enter the JTF note for Remarks...
684: IF (p_x_ata_sequences_tbl(l_rec_idx).remarks_note IS NOT NULL AND p_x_ata_sequences_tbl(l_rec_idx).remarks_note <> FND_API.G_MISS_CHAR)
685: THEN
686: -- Create a new JTF note for Remarks, ofcourse it cannot exist before the ATA sequence is created...
687: JTF_NOTES_PUB.Create_Note
688: (
688: (
689: p_parent_note_id => null,
690: p_jtf_note_id => null,
691: p_api_version => 1.0,
692: p_init_msg_list => FND_API.G_FALSE,
693: p_commit => FND_API.G_FALSE,
694: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
695: x_return_status => l_return_status,
696: x_msg_count => l_msg_count,
689: p_parent_note_id => null,
690: p_jtf_note_id => null,
691: p_api_version => 1.0,
692: p_init_msg_list => FND_API.G_FALSE,
693: p_commit => FND_API.G_FALSE,
694: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
695: x_return_status => l_return_status,
696: x_msg_count => l_msg_count,
697: x_msg_data => l_msg_data,
690: p_jtf_note_id => null,
691: p_api_version => 1.0,
692: p_init_msg_list => FND_API.G_FALSE,
693: p_commit => FND_API.G_FALSE,
694: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
695: x_return_status => l_return_status,
696: x_msg_count => l_msg_count,
697: x_msg_data => l_msg_data,
698: p_org_id => null,
729: p_jtf_note_contexts_tab => l_note_contexts_tbl
730: );
731:
732: -- Check Error Message stack.
733: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS)
734: THEN
735: IF (fnd_log.level_error >= fnd_log.g_current_runtime_level)
736: THEN
737: fnd_log.string
742: );
743: END IF;
744:
745: -- Throwing unexpected error since this delete should have happened without any hiccup
746: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
747: END IF;
748:
749: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)
750: THEN
775: -- Check Error Message stack.
776: x_msg_count := FND_MSG_PUB.count_msg;
777: IF (x_msg_count > 0)
778: THEN
779: RAISE FND_API.G_EXC_ERROR;
780: END IF;
781:
782: -- Commit if p_commit = FND_API.G_TRUE
783: IF FND_API.TO_BOOLEAN(p_commit)
778: THEN
779: RAISE FND_API.G_EXC_ERROR;
780: END IF;
781:
782: -- Commit if p_commit = FND_API.G_TRUE
783: IF FND_API.TO_BOOLEAN(p_commit)
784: THEN
785: COMMIT WORK;
786: END IF;
779: RAISE FND_API.G_EXC_ERROR;
780: END IF;
781:
782: -- Commit if p_commit = FND_API.G_TRUE
783: IF FND_API.TO_BOOLEAN(p_commit)
784: THEN
785: COMMIT WORK;
786: END IF;
787:
789: FND_MSG_PUB.count_and_get
790: (
791: p_count => x_msg_count,
792: p_data => x_msg_data,
793: p_encoded => FND_API.G_FALSE
794: );
795:
796: EXCEPTION
797: WHEN FND_API.G_EXC_ERROR THEN
793: p_encoded => FND_API.G_FALSE
794: );
795:
796: EXCEPTION
797: WHEN FND_API.G_EXC_ERROR THEN
798: x_return_status := FND_API.G_RET_STS_ERROR;
799: Rollback to Process_Ata_Sequences_SP;
800: FND_MSG_PUB.count_and_get
801: (
794: );
795:
796: EXCEPTION
797: WHEN FND_API.G_EXC_ERROR THEN
798: x_return_status := FND_API.G_RET_STS_ERROR;
799: Rollback to Process_Ata_Sequences_SP;
800: FND_MSG_PUB.count_and_get
801: (
802: p_count => x_msg_count,
800: FND_MSG_PUB.count_and_get
801: (
802: p_count => x_msg_count,
803: p_data => x_msg_data,
804: p_encoded => FND_API.G_FALSE
805: );
806:
807: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
808: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
803: p_data => x_msg_data,
804: p_encoded => FND_API.G_FALSE
805: );
806:
807: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
808: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
809: Rollback to Process_Ata_Sequences_SP;
810: FND_MSG_PUB.count_and_get
811: (
804: p_encoded => FND_API.G_FALSE
805: );
806:
807: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
808: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
809: Rollback to Process_Ata_Sequences_SP;
810: FND_MSG_PUB.count_and_get
811: (
812: p_count => x_msg_count,
810: FND_MSG_PUB.count_and_get
811: (
812: p_count => x_msg_count,
813: p_data => x_msg_data,
814: p_encoded => FND_API.G_FALSE
815: );
816:
817: WHEN OTHERS THEN
818: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
814: p_encoded => FND_API.G_FALSE
815: );
816:
817: WHEN OTHERS THEN
818: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
819: Rollback to Process_Ata_Sequences_SP;
820: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
821: THEN
822: FND_MSG_PUB.add_exc_msg
829: FND_MSG_PUB.count_and_get
830: (
831: p_count => x_msg_count,
832: p_data => x_msg_data,
833: p_encoded => FND_API.G_FALSE
834: );
835: END Process_Ata_Sequences;
836:
837: ------------------------------------------
840: PROCEDURE Process_Mo_Procedures
841: (
842: -- Standard IN params
843: p_api_version IN NUMBER,
844: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
845: p_commit IN VARCHAR2 := FND_API.G_TRUE,
846: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
847: p_default IN VARCHAR2 := FND_API.G_FALSE,
848: p_module_type IN VARCHAR2 := NULL,
841: (
842: -- Standard IN params
843: p_api_version IN NUMBER,
844: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
845: p_commit IN VARCHAR2 := FND_API.G_TRUE,
846: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
847: p_default IN VARCHAR2 := FND_API.G_FALSE,
848: p_module_type IN VARCHAR2 := NULL,
849: -- Standard OUT params
842: -- Standard IN params
843: p_api_version IN NUMBER,
844: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
845: p_commit IN VARCHAR2 := FND_API.G_TRUE,
846: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
847: p_default IN VARCHAR2 := FND_API.G_FALSE,
848: p_module_type IN VARCHAR2 := NULL,
849: -- Standard OUT params
850: x_return_status OUT NOCOPY VARCHAR2,
843: p_api_version IN NUMBER,
844: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
845: p_commit IN VARCHAR2 := FND_API.G_TRUE,
846: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
847: p_default IN VARCHAR2 := FND_API.G_FALSE,
848: p_module_type IN VARCHAR2 := NULL,
849: -- Standard OUT params
850: x_return_status OUT NOCOPY VARCHAR2,
851: x_msg_count OUT NOCOPY NUMBER,
917: -- Standard start of API savepoint
918: SAVEPOINT Process_Mo_Procedures_SP;
919:
920: -- Initialize return status to success before any code logic/validation
921: x_return_status := FND_API.G_RET_STS_SUCCESS;
922:
923: -- Standard call to check for call compatibility
924: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
925: THEN
920: -- Initialize return status to success before any code logic/validation
921: x_return_status := FND_API.G_RET_STS_SUCCESS;
922:
923: -- Standard call to check for call compatibility
924: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
925: THEN
926: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
927: END IF;
928:
922:
923: -- Standard call to check for call compatibility
924: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
925: THEN
926: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
927: END IF;
928:
929: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
930: IF FND_API.TO_BOOLEAN(p_init_msg_list)
925: THEN
926: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
927: END IF;
928:
929: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
930: IF FND_API.TO_BOOLEAN(p_init_msg_list)
931: THEN
932: FND_MSG_PUB.INITIALIZE;
933: END IF;
926: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
927: END IF;
928:
929: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
930: IF FND_API.TO_BOOLEAN(p_init_msg_list)
931: THEN
932: FND_MSG_PUB.INITIALIZE;
933: END IF;
934:
956: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_COM_INVALID_DML_REC');
957: -- Invalid DML operation FIELD specified
958: FND_MESSAGE.SET_TOKEN('FIELD', p_x_mo_procedures_tbl(l_rec_idx).dml_operation);
959: FND_MSG_PUB.ADD;
960: RAISE FND_API.G_EXC_ERROR;
961: END IF;
962:
963: --Perform Deletion
964: IF (p_x_mo_procedures_tbl(l_rec_idx).dml_operation = 'D')
979: LOOP
980: IF (p_x_mo_procedures_tbl(l_rec_idx).dml_operation = 'C')
981: THEN
982: --Check if mr_header_id is of program type MO Procedure
983: IF (p_x_mo_procedures_tbl(l_rec_idx).mr_header_id IS NOT NULL or p_x_mo_procedures_tbl(l_rec_idx).mr_header_id <> FND_API.G_MISS_NUM)
984: THEN
985: OPEN validate_mr_header_id( p_x_mo_procedures_tbl(l_rec_idx).mr_header_id);
986: FETCH validate_mr_header_id INTO l_dummy_varchar;
987:
1004: FND_MSG_PUB.ADD;
1005: END IF;
1006: CLOSE validate_mr_header_status;
1007:
1008: ELSIF (p_x_mo_procedures_tbl(l_rec_idx).mr_header_id IS NULL or p_x_mo_procedures_tbl(l_rec_idx).mr_header_id = FND_API.G_MISS_NUM)
1009: THEN
1010: IF (p_x_mo_procedures_tbl(l_rec_idx).mr_title IS NULL OR p_x_mo_procedures_tbl(l_rec_idx).mr_version_number IS NULL )
1011: THEN
1012: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_MO_MR_MAND');
1049: THEN
1050: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_UPDATA_STS_INV');
1051: -- Cannot process if MEL/CDL is not in draft or approval rejected status
1052: FND_MSG_PUB.ADD;
1053: RAISE FND_API.G_EXC_ERROR;
1054: END IF;
1055: END IF;
1056:
1057: -- Check if the MO Procedure is already associated to the Ata Sequence
1075: -- Check Error Message stack.
1076: x_msg_count := FND_MSG_PUB.count_msg;
1077: IF (x_msg_count > 0)
1078: THEN
1079: RAISE FND_API.G_EXC_ERROR;
1080: END IF;
1081:
1082: -- Default attributes for create
1083: p_x_mo_procedures_tbl(l_rec_idx).object_version_number := 1;
1175: -- Check Error Message stack.
1176: x_msg_count := FND_MSG_PUB.count_msg;
1177: IF (x_msg_count > 0)
1178: THEN
1179: RAISE FND_API.G_EXC_ERROR;
1180: END IF;
1181:
1182: -- Commit if p_commit = FND_API.G_TRUE
1183: IF FND_API.TO_BOOLEAN(p_commit)
1178: THEN
1179: RAISE FND_API.G_EXC_ERROR;
1180: END IF;
1181:
1182: -- Commit if p_commit = FND_API.G_TRUE
1183: IF FND_API.TO_BOOLEAN(p_commit)
1184: THEN
1185: COMMIT WORK;
1186: END IF;
1179: RAISE FND_API.G_EXC_ERROR;
1180: END IF;
1181:
1182: -- Commit if p_commit = FND_API.G_TRUE
1183: IF FND_API.TO_BOOLEAN(p_commit)
1184: THEN
1185: COMMIT WORK;
1186: END IF;
1187:
1189: FND_MSG_PUB.count_and_get
1190: (
1191: p_count => x_msg_count,
1192: p_data => x_msg_data,
1193: p_encoded => FND_API.G_FALSE
1194: );
1195:
1196: EXCEPTION
1197: WHEN FND_API.G_EXC_ERROR THEN
1193: p_encoded => FND_API.G_FALSE
1194: );
1195:
1196: EXCEPTION
1197: WHEN FND_API.G_EXC_ERROR THEN
1198: x_return_status := FND_API.G_RET_STS_ERROR;
1199: Rollback to Process_Mo_Procedures_SP;
1200: FND_MSG_PUB.count_and_get
1201: (
1194: );
1195:
1196: EXCEPTION
1197: WHEN FND_API.G_EXC_ERROR THEN
1198: x_return_status := FND_API.G_RET_STS_ERROR;
1199: Rollback to Process_Mo_Procedures_SP;
1200: FND_MSG_PUB.count_and_get
1201: (
1202: p_count => x_msg_count,
1200: FND_MSG_PUB.count_and_get
1201: (
1202: p_count => x_msg_count,
1203: p_data => x_msg_data,
1204: p_encoded => FND_API.G_FALSE
1205: );
1206:
1207: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1208: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1203: p_data => x_msg_data,
1204: p_encoded => FND_API.G_FALSE
1205: );
1206:
1207: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1208: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1209: Rollback to Process_Mo_Procedures_SP;
1210: FND_MSG_PUB.count_and_get
1211: (
1204: p_encoded => FND_API.G_FALSE
1205: );
1206:
1207: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1208: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1209: Rollback to Process_Mo_Procedures_SP;
1210: FND_MSG_PUB.count_and_get
1211: (
1212: p_count => x_msg_count,
1210: FND_MSG_PUB.count_and_get
1211: (
1212: p_count => x_msg_count,
1213: p_data => x_msg_data,
1214: p_encoded => FND_API.G_FALSE
1215: );
1216:
1217: WHEN OTHERS THEN
1218: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1214: p_encoded => FND_API.G_FALSE
1215: );
1216:
1217: WHEN OTHERS THEN
1218: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1219: Rollback to Process_Mo_Procedures_SP;
1220: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1221: THEN
1222: FND_MSG_PUB.add_exc_msg
1229: FND_MSG_PUB.count_and_get
1230: (
1231: p_count => x_msg_count,
1232: p_data => x_msg_data,
1233: p_encoded => FND_API.G_FALSE
1234: );
1235: END Process_Mo_Procedures;
1236:
1237: ------------------------------------------
1240: PROCEDURE Process_Ata_Relations
1241: (
1242: -- Standard IN params
1243: p_api_version IN NUMBER,
1244: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
1245: p_commit IN VARCHAR2 := FND_API.G_TRUE,
1246: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1247: p_default IN VARCHAR2 := FND_API.G_FALSE,
1248: p_module_type IN VARCHAR2 := NULL,
1241: (
1242: -- Standard IN params
1243: p_api_version IN NUMBER,
1244: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
1245: p_commit IN VARCHAR2 := FND_API.G_TRUE,
1246: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1247: p_default IN VARCHAR2 := FND_API.G_FALSE,
1248: p_module_type IN VARCHAR2 := NULL,
1249: x_return_status OUT NOCOPY VARCHAR2,
1242: -- Standard IN params
1243: p_api_version IN NUMBER,
1244: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
1245: p_commit IN VARCHAR2 := FND_API.G_TRUE,
1246: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1247: p_default IN VARCHAR2 := FND_API.G_FALSE,
1248: p_module_type IN VARCHAR2 := NULL,
1249: x_return_status OUT NOCOPY VARCHAR2,
1250: x_msg_count OUT NOCOPY NUMBER,
1243: p_api_version IN NUMBER,
1244: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
1245: p_commit IN VARCHAR2 := FND_API.G_TRUE,
1246: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1247: p_default IN VARCHAR2 := FND_API.G_FALSE,
1248: p_module_type IN VARCHAR2 := NULL,
1249: x_return_status OUT NOCOPY VARCHAR2,
1250: x_msg_count OUT NOCOPY NUMBER,
1251: x_msg_data OUT NOCOPY VARCHAR2,
1307: -- Standard start of API savepoint
1308: SAVEPOINT Process_Ata_Relations_SP;
1309:
1310: -- Initialize return status to success before any code logic/validation
1311: x_return_status := FND_API.G_RET_STS_SUCCESS;
1312:
1313: -- Standard call to check for call compatibility
1314: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
1315: THEN
1310: -- Initialize return status to success before any code logic/validation
1311: x_return_status := FND_API.G_RET_STS_SUCCESS;
1312:
1313: -- Standard call to check for call compatibility
1314: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
1315: THEN
1316: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1317: END IF;
1318:
1312:
1313: -- Standard call to check for call compatibility
1314: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
1315: THEN
1316: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1317: END IF;
1318:
1319: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
1320: IF FND_API.TO_BOOLEAN(p_init_msg_list)
1315: THEN
1316: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1317: END IF;
1318:
1319: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
1320: IF FND_API.TO_BOOLEAN(p_init_msg_list)
1321: THEN
1322: FND_MSG_PUB.INITIALIZE;
1323: END IF;
1316: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1317: END IF;
1318:
1319: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
1320: IF FND_API.TO_BOOLEAN(p_init_msg_list)
1321: THEN
1322: FND_MSG_PUB.INITIALIZE;
1323: END IF;
1324:
1347: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_COM_INVALID_DML_REC');
1348: -- Invalid DML operation FIELD specified
1349: FND_MESSAGE.SET_TOKEN('FIELD', p_x_ata_relations_tbl(l_rec_idx).dml_operation);
1350: FND_MSG_PUB.ADD;
1351: RAISE FND_API.G_EXC_ERROR;
1352: END IF;
1353:
1354: --Perform Deletion
1355: IF (p_x_ata_relations_tbl(l_rec_idx).dml_operation = 'D')
1427: THEN
1428: FND_MESSAGE.SET_NAME(G_APP_NAME, ' AHL_MEL_CDL_UPDATA_STS_INV');
1429: -- Cannot process if MEL/CDL is not in draft or approval rejected status
1430: FND_MSG_PUB.ADD;
1431: RAISE FND_API.G_EXC_ERROR;
1432: END IF;
1433: END IF;
1434:
1435: --Validate the Related Ata Sequence Id
1490: -- Check for Cyclic Association (If the Ata Seq chosen for Association is same as the one to which it is getting associated
1491: -- In the above case, a cyclic relation existance.
1492:
1493: IF (p_x_ata_relations_tbl(l_rec_idx).ata_sequence_id IS NOT NULL AND p_x_ata_relations_tbl(l_rec_idx).related_ata_sequence_id IS NOT NULL AND
1494: p_x_ata_relations_tbl(l_rec_idx).ata_sequence_id <> FND_API.G_MISS_NUM AND p_x_ata_relations_tbl(l_rec_idx).related_ata_sequence_id <> FND_API.G_MISS_NUM )
1495: THEN
1496: IF (p_x_ata_relations_tbl(l_rec_idx).ata_sequence_id = p_x_ata_relations_tbl(l_rec_idx).related_ata_sequence_id )
1497: THEN
1498: FND_MESSAGE.Set_Name('AHL','AHL_MEL_CDL_RELN_CYCLIC');
1504: -- Check Error Message stack.
1505: x_msg_count := FND_MSG_PUB.count_msg;
1506: IF (x_msg_count > 0)
1507: THEN
1508: RAISE FND_API.G_EXC_ERROR;
1509: END IF;
1510:
1511: -- Default attributes for create
1512: p_x_ata_relations_tbl(l_rec_idx).object_version_number := 1;
1601: -- Check Error Message stack.
1602: x_msg_count := FND_MSG_PUB.count_msg;
1603: IF (x_msg_count > 0)
1604: THEN
1605: RAISE FND_API.G_EXC_ERROR;
1606: END IF;
1607:
1608: -- Commit if p_commit = FND_API.G_TRUE
1609: IF FND_API.TO_BOOLEAN(p_commit)
1604: THEN
1605: RAISE FND_API.G_EXC_ERROR;
1606: END IF;
1607:
1608: -- Commit if p_commit = FND_API.G_TRUE
1609: IF FND_API.TO_BOOLEAN(p_commit)
1610: THEN
1611: COMMIT WORK;
1612: END IF;
1605: RAISE FND_API.G_EXC_ERROR;
1606: END IF;
1607:
1608: -- Commit if p_commit = FND_API.G_TRUE
1609: IF FND_API.TO_BOOLEAN(p_commit)
1610: THEN
1611: COMMIT WORK;
1612: END IF;
1613:
1615: FND_MSG_PUB.count_and_get
1616: (
1617: p_count => x_msg_count,
1618: p_data => x_msg_data,
1619: p_encoded => FND_API.G_FALSE
1620: );
1621:
1622: EXCEPTION
1623: WHEN FND_API.G_EXC_ERROR THEN
1619: p_encoded => FND_API.G_FALSE
1620: );
1621:
1622: EXCEPTION
1623: WHEN FND_API.G_EXC_ERROR THEN
1624: x_return_status := FND_API.G_RET_STS_ERROR;
1625: Rollback to Process_Ata_Relations_SP;
1626: FND_MSG_PUB.count_and_get
1627: (
1620: );
1621:
1622: EXCEPTION
1623: WHEN FND_API.G_EXC_ERROR THEN
1624: x_return_status := FND_API.G_RET_STS_ERROR;
1625: Rollback to Process_Ata_Relations_SP;
1626: FND_MSG_PUB.count_and_get
1627: (
1628: p_count => x_msg_count,
1626: FND_MSG_PUB.count_and_get
1627: (
1628: p_count => x_msg_count,
1629: p_data => x_msg_data,
1630: p_encoded => FND_API.G_FALSE
1631: );
1632:
1633: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1634: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1629: p_data => x_msg_data,
1630: p_encoded => FND_API.G_FALSE
1631: );
1632:
1633: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1634: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1635: Rollback to Process_Ata_Relations_SP;
1636: FND_MSG_PUB.count_and_get
1637: (
1630: p_encoded => FND_API.G_FALSE
1631: );
1632:
1633: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1634: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1635: Rollback to Process_Ata_Relations_SP;
1636: FND_MSG_PUB.count_and_get
1637: (
1638: p_count => x_msg_count,
1636: FND_MSG_PUB.count_and_get
1637: (
1638: p_count => x_msg_count,
1639: p_data => x_msg_data,
1640: p_encoded => FND_API.G_FALSE
1641: );
1642:
1643: WHEN OTHERS THEN
1644: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1640: p_encoded => FND_API.G_FALSE
1641: );
1642:
1643: WHEN OTHERS THEN
1644: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1645: Rollback to Process_Ata_Relations_SP;
1646: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1647: THEN
1648: FND_MSG_PUB.add_exc_msg
1655: FND_MSG_PUB.count_and_get
1656: (
1657: p_count => x_msg_count,
1658: p_data => x_msg_data,
1659: p_encoded => FND_API.G_FALSE
1660: );
1661: END Process_Ata_Relations;
1662:
1663: ------------------------------------------
1666: PROCEDURE Copy_MO_Proc_Revision
1667: (
1668: -- Standard IN params
1669: p_api_version IN NUMBER,
1670: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
1671: p_commit IN VARCHAR2 := FND_API.G_TRUE,
1672: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1673: p_default IN VARCHAR2 := FND_API.G_FALSE,
1674: p_module_type IN VARCHAR2 := NULL,
1667: (
1668: -- Standard IN params
1669: p_api_version IN NUMBER,
1670: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
1671: p_commit IN VARCHAR2 := FND_API.G_TRUE,
1672: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1673: p_default IN VARCHAR2 := FND_API.G_FALSE,
1674: p_module_type IN VARCHAR2 := NULL,
1675: -- Standard OUT params
1668: -- Standard IN params
1669: p_api_version IN NUMBER,
1670: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
1671: p_commit IN VARCHAR2 := FND_API.G_TRUE,
1672: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1673: p_default IN VARCHAR2 := FND_API.G_FALSE,
1674: p_module_type IN VARCHAR2 := NULL,
1675: -- Standard OUT params
1676: x_return_status OUT NOCOPY VARCHAR2,
1669: p_api_version IN NUMBER,
1670: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
1671: p_commit IN VARCHAR2 := FND_API.G_TRUE,
1672: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1673: p_default IN VARCHAR2 := FND_API.G_FALSE,
1674: p_module_type IN VARCHAR2 := NULL,
1675: -- Standard OUT params
1676: x_return_status OUT NOCOPY VARCHAR2,
1677: x_msg_count OUT NOCOPY NUMBER,
1703: -- Standard start of API savepoint
1704: SAVEPOINT Copy_MO_Proc_Revision_SP;
1705:
1706: -- Initialize return status to success before any code logic/validation
1707: x_return_status := FND_API.G_RET_STS_SUCCESS;
1708:
1709: -- Standard call to check for call compatibility
1710: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
1711: THEN
1706: -- Initialize return status to success before any code logic/validation
1707: x_return_status := FND_API.G_RET_STS_SUCCESS;
1708:
1709: -- Standard call to check for call compatibility
1710: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
1711: THEN
1712: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1713: END IF;
1714:
1708:
1709: -- Standard call to check for call compatibility
1710: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
1711: THEN
1712: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1713: END IF;
1714:
1715: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
1716: IF FND_API.TO_BOOLEAN(p_init_msg_list)
1711: THEN
1712: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1713: END IF;
1714:
1715: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
1716: IF FND_API.TO_BOOLEAN(p_init_msg_list)
1717: THEN
1718: FND_MSG_PUB.INITIALIZE;
1719: END IF;
1712: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1713: END IF;
1714:
1715: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
1716: IF FND_API.TO_BOOLEAN(p_init_msg_list)
1717: THEN
1718: FND_MSG_PUB.INITIALIZE;
1719: END IF;
1720:
1729: );
1730: END IF;
1731:
1732: -- API body Begins
1733: IF (p_old_mr_header_id IS NOT NULL AND p_old_mr_header_id <> FND_API.G_MISS_NUM
1734: AND
1735: p_new_mr_header_id IS NOT NULL AND p_new_mr_header_id <> FND_API.G_MISS_NUM)
1736: THEN
1737: -- Fetch all ATA sequences which are associated to the old revision of the M and O Procedure
1731:
1732: -- API body Begins
1733: IF (p_old_mr_header_id IS NOT NULL AND p_old_mr_header_id <> FND_API.G_MISS_NUM
1734: AND
1735: p_new_mr_header_id IS NOT NULL AND p_new_mr_header_id <> FND_API.G_MISS_NUM)
1736: THEN
1737: -- Fetch all ATA sequences which are associated to the old revision of the M and O Procedure
1738: OPEN get_all_ata_for_mo_pro(p_old_mr_header_id);
1739: LOOP
1815: -- Check Error Message stack.
1816: x_msg_count := FND_MSG_PUB.count_msg;
1817: IF (x_msg_count > 0)
1818: THEN
1819: RAISE FND_API.G_EXC_ERROR;
1820: END IF;
1821:
1822: -- Commit if p_commit = FND_API.G_TRUE
1823: IF FND_API.TO_BOOLEAN(p_commit)
1818: THEN
1819: RAISE FND_API.G_EXC_ERROR;
1820: END IF;
1821:
1822: -- Commit if p_commit = FND_API.G_TRUE
1823: IF FND_API.TO_BOOLEAN(p_commit)
1824: THEN
1825: COMMIT WORK;
1826: END IF;
1819: RAISE FND_API.G_EXC_ERROR;
1820: END IF;
1821:
1822: -- Commit if p_commit = FND_API.G_TRUE
1823: IF FND_API.TO_BOOLEAN(p_commit)
1824: THEN
1825: COMMIT WORK;
1826: END IF;
1827:
1829: FND_MSG_PUB.count_and_get
1830: (
1831: p_count => x_msg_count,
1832: p_data => x_msg_data,
1833: p_encoded => FND_API.G_FALSE
1834: );
1835:
1836: EXCEPTION
1837: WHEN FND_API.G_EXC_ERROR THEN
1833: p_encoded => FND_API.G_FALSE
1834: );
1835:
1836: EXCEPTION
1837: WHEN FND_API.G_EXC_ERROR THEN
1838: x_return_status := FND_API.G_RET_STS_ERROR;
1839: Rollback to Copy_MO_Proc_Revision_SP;
1840: FND_MSG_PUB.count_and_get
1841: (
1834: );
1835:
1836: EXCEPTION
1837: WHEN FND_API.G_EXC_ERROR THEN
1838: x_return_status := FND_API.G_RET_STS_ERROR;
1839: Rollback to Copy_MO_Proc_Revision_SP;
1840: FND_MSG_PUB.count_and_get
1841: (
1842: p_count => x_msg_count,
1840: FND_MSG_PUB.count_and_get
1841: (
1842: p_count => x_msg_count,
1843: p_data => x_msg_data,
1844: p_encoded => FND_API.G_FALSE
1845: );
1846:
1847: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1848: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1843: p_data => x_msg_data,
1844: p_encoded => FND_API.G_FALSE
1845: );
1846:
1847: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1848: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1849: Rollback to Copy_MO_Proc_Revision_SP;
1850: FND_MSG_PUB.count_and_get
1851: (
1844: p_encoded => FND_API.G_FALSE
1845: );
1846:
1847: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1848: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1849: Rollback to Copy_MO_Proc_Revision_SP;
1850: FND_MSG_PUB.count_and_get
1851: (
1852: p_count => x_msg_count,
1850: FND_MSG_PUB.count_and_get
1851: (
1852: p_count => x_msg_count,
1853: p_data => x_msg_data,
1854: p_encoded => FND_API.G_FALSE
1855: );
1856:
1857: WHEN OTHERS THEN
1858: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1854: p_encoded => FND_API.G_FALSE
1855: );
1856:
1857: WHEN OTHERS THEN
1858: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1859: Rollback to Copy_MO_Proc_Revision_SP;
1860: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1861: THEN
1862: FND_MSG_PUB.add_exc_msg
1869: FND_MSG_PUB.count_and_get
1870: (
1871: p_count => x_msg_count,
1872: p_data => x_msg_data,
1873: p_encoded => FND_API.G_FALSE
1874: );
1875: END Copy_MO_Proc_Revision;
1876:
1877: ---------------------------------------------
1901: CLOSE check_exists;
1902: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_ATA_NOTFOUND');
1903: -- System Sequence is not found
1904: FND_MSG_PUB.ADD;
1905: RAISE FND_API.G_EXC_ERROR;
1906: ELSE
1907: CLOSE check_exists;
1908: IF (l_ovn <> p_ata_object_version)
1909: THEN
1909: THEN
1910: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_COM_RECORD_CHANGED');
1911: -- Record has been modified by another user
1912: FND_MSG_PUB.ADD;
1913: RAISE FND_API.G_EXC_ERROR;
1914: END IF;
1915: END IF;
1916:
1917: END Check_Ata_Seq_Exists;
1945:
1946: BEGIN
1947:
1948: -- Convert value-to-id for ata_code
1949: IF (p_x_ata_sequences_rec.ata_code IS NULL OR p_x_ata_sequences_rec.ata_code = FND_API.G_MISS_CHAR)
1950: THEN
1951: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_ATA_MAND');
1952: -- System Sequence is mandatory
1953: FND_MSG_PUB.ADD;
1958: FND_MSG_PUB.ADD;
1959: END IF;
1960:
1961: -- Convert value-to-id for sr_urgency
1962: IF (p_x_ata_sequences_rec.repair_category_id IS NULL OR p_x_ata_sequences_rec.repair_category_id = FND_API.G_MISS_NUM)
1963: THEN
1964: IF (p_x_ata_sequences_rec.repair_category_name IS NULL OR p_x_ata_sequences_rec.repair_category_name = FND_API.G_MISS_CHAR)
1965: THEN
1966: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_REPCAT_MAND');
1960:
1961: -- Convert value-to-id for sr_urgency
1962: IF (p_x_ata_sequences_rec.repair_category_id IS NULL OR p_x_ata_sequences_rec.repair_category_id = FND_API.G_MISS_NUM)
1963: THEN
1964: IF (p_x_ata_sequences_rec.repair_category_name IS NULL OR p_x_ata_sequences_rec.repair_category_name = FND_API.G_MISS_CHAR)
1965: THEN
1966: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_REPCAT_MAND');
1967: -- Repair Category for System Sequence "ATA" is mandatory
1968: FND_MESSAGE.SET_TOKEN('ATA', p_x_ata_sequences_rec.ata_code);
2034: ELSE
2035: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_HDR_MAND');
2036: -- MEL/CDL information is mandatory for processing System Sequence(s)
2037: FND_MSG_PUB.ADD;
2038: RAISE FND_API.G_EXC_ERROR;
2039: END IF;
2040:
2041: IF (l_status NOT IN ('DRAFT', 'APPROVAL_REJECTED'))
2042: THEN
2042: THEN
2043: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_NOT_DRAFT_ATA');
2044: -- Cannot process System Sequence(s) for MEL/CDL not in draft or approval rejected status
2045: FND_MSG_PUB.ADD;
2046: RAISE FND_API.G_EXC_ERROR;
2047: ELSIF (l_status = 'APPROVAL_REJECTED')
2048: THEN
2049: UPDATE ahl_mel_cdl_headers
2050: SET status_code = 'DRAFT'
2081: CLOSE check_exists;
2082: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_MO_PROC_NOTFOUND');
2083: -- MO Procedure is not found
2084: FND_MSG_PUB.ADD;
2085: RAISE FND_API.G_EXC_ERROR;
2086: ELSE
2087: CLOSE check_exists;
2088: IF (l_ovn <> p_mo_proc_object_version)
2089: THEN
2089: THEN
2090: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_COM_RECORD_CHANGED');
2091: -- Record has been modified by another user
2092: FND_MSG_PUB.ADD;
2093: RAISE FND_API.G_EXC_ERROR;
2094: END IF;
2095: END IF;
2096:
2097: END Check_MO_Proc_Exists;
2125:
2126: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_MEL_CDL_REL_NOTFOUND');
2127: -- MO Procedure is not found
2128: FND_MSG_PUB.ADD;
2129: RAISE FND_API.G_EXC_ERROR;
2130:
2131: ELSE
2132: CLOSE check_exists;
2133:
2135: THEN
2136: FND_MESSAGE.SET_NAME(G_APP_NAME, 'AHL_COM_RECORD_CHANGED');
2137: -- Record has been modified by another user
2138: FND_MSG_PUB.ADD;
2139: RAISE FND_API.G_EXC_ERROR;
2140: END IF;
2141:
2142: END IF;
2143: