442:
443: PROCEDURE CREATE_DOCUMENT
444: (
445: p_api_version IN NUMBER := 1.0 ,
446: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
447: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
448: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
449: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
450: p_x_document_tbl IN OUT NOCOPY Document_Tbl ,
443: PROCEDURE CREATE_DOCUMENT
444: (
445: p_api_version IN NUMBER := 1.0 ,
446: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
447: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
448: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
449: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
450: p_x_document_tbl IN OUT NOCOPY Document_Tbl ,
451: p_x_supplier_tbl IN OUT NOCOPY Supplier_Tbl ,
444: (
445: p_api_version IN NUMBER := 1.0 ,
446: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
447: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
448: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
449: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
450: p_x_document_tbl IN OUT NOCOPY Document_Tbl ,
451: p_x_supplier_tbl IN OUT NOCOPY Supplier_Tbl ,
452: p_x_recipient_tbl IN OUT NOCOPY Recipient_Tbl ,
445: p_api_version IN NUMBER := 1.0 ,
446: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
447: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
448: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
449: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
450: p_x_document_tbl IN OUT NOCOPY Document_Tbl ,
451: p_x_supplier_tbl IN OUT NOCOPY Supplier_Tbl ,
452: p_x_recipient_tbl IN OUT NOCOPY Recipient_Tbl ,
453: x_return_status OUT NOCOPY VARCHAR2 ,
485:
486: END IF;
487: END IF;
488: -- Standard call to check for call compatibility.
489: IF FND_API.to_boolean(p_init_msg_list)
490: THEN
491: FND_MSG_PUB.initialize;
492: END IF;
493: -- Initialize API return status to success
492: END IF;
493: -- Initialize API return status to success
494: x_return_status := 'S';
495: -- Initialize message list if p_init_msg_list is set to TRUE.
496: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
497: p_api_version,
498: l_api_name,G_PKG_NAME)
499: THEN
500: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
496: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
497: p_api_version,
498: l_api_name,G_PKG_NAME)
499: THEN
500: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
501: END IF;
502: --Starts API Body
503: IF p_x_document_tbl.COUNT > 0
504: THEN
523: l_msg_count := FND_MSG_PUB.count_msg;
524:
525: IF l_msg_count > 0 THEN
526: X_msg_count := l_msg_count;
527: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
528: RAISE FND_API.G_EXC_ERROR;
529: END IF;
530:
531: FOR i IN p_x_document_tbl.FIRST..p_x_document_tbl.LAST
524:
525: IF l_msg_count > 0 THEN
526: X_msg_count := l_msg_count;
527: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
528: RAISE FND_API.G_EXC_ERROR;
529: END IF;
530:
531: FOR i IN p_x_document_tbl.FIRST..p_x_document_tbl.LAST
532: LOOP
559: FETCH unique_rec INTO l_dummy;
560: IF unique_rec%FOUND THEN
561: FND_MESSAGE.SET_NAME('AHL','AHL_DI_DOCUMENT_DUP_RECORD');
562: FND_MSG_PUB.ADD;
563: RAISE FND_API.G_EXC_ERROR;
564: END IF;
565: CLOSE unique_rec;
566: -- Get the sequence number
567:
615: l_msg_count := FND_MSG_PUB.count_msg;
616:
617: IF l_msg_count > 0 THEN
618: X_msg_count := l_msg_count;
619: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
620: RAISE FND_API.G_EXC_ERROR;
621: END IF;
622: --
623: END IF;
616:
617: IF l_msg_count > 0 THEN
618: X_msg_count := l_msg_count;
619: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
620: RAISE FND_API.G_EXC_ERROR;
621: END IF;
622: --
623: END IF;
624: END LOOP;
633: -- Checks for any suppliers exists for the document index
634: IF p_x_supplier_tbl.COUNT > 0 THEN
635: create_supplier
636: ( p_api_version => p_api_version ,
637: p_init_msg_list => FND_API.G_TRUE ,
638: p_commit => FND_API.G_FALSE ,
639: p_validate_only => FND_API.G_TRUE ,
640: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
641: p_x_supplier_tbl => p_x_supplier_tbl ,
634: IF p_x_supplier_tbl.COUNT > 0 THEN
635: create_supplier
636: ( p_api_version => p_api_version ,
637: p_init_msg_list => FND_API.G_TRUE ,
638: p_commit => FND_API.G_FALSE ,
639: p_validate_only => FND_API.G_TRUE ,
640: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
641: p_x_supplier_tbl => p_x_supplier_tbl ,
642: x_return_status => x_return_status ,
635: create_supplier
636: ( p_api_version => p_api_version ,
637: p_init_msg_list => FND_API.G_TRUE ,
638: p_commit => FND_API.G_FALSE ,
639: p_validate_only => FND_API.G_TRUE ,
640: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
641: p_x_supplier_tbl => p_x_supplier_tbl ,
642: x_return_status => x_return_status ,
643: x_msg_count => x_msg_count ,
636: ( p_api_version => p_api_version ,
637: p_init_msg_list => FND_API.G_TRUE ,
638: p_commit => FND_API.G_FALSE ,
639: p_validate_only => FND_API.G_TRUE ,
640: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
641: p_x_supplier_tbl => p_x_supplier_tbl ,
642: x_return_status => x_return_status ,
643: x_msg_count => x_msg_count ,
644: x_msg_data => x_msg_data
654: -- Checks for any Recipients exists for the document index
655: IF p_x_recipient_tbl.COUNT > 0 THEN
656: create_recipient
657: ( p_api_version => p_api_version ,
658: p_init_msg_list => FND_API.G_TRUE ,
659: p_commit => FND_API.G_FALSE ,
660: p_validate_only => FND_API.G_TRUE ,
661: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
662: p_x_recipient_tbl => p_x_recipient_tbl ,
655: IF p_x_recipient_tbl.COUNT > 0 THEN
656: create_recipient
657: ( p_api_version => p_api_version ,
658: p_init_msg_list => FND_API.G_TRUE ,
659: p_commit => FND_API.G_FALSE ,
660: p_validate_only => FND_API.G_TRUE ,
661: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
662: p_x_recipient_tbl => p_x_recipient_tbl ,
663: x_return_status => x_return_status ,
656: create_recipient
657: ( p_api_version => p_api_version ,
658: p_init_msg_list => FND_API.G_TRUE ,
659: p_commit => FND_API.G_FALSE ,
660: p_validate_only => FND_API.G_TRUE ,
661: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
662: p_x_recipient_tbl => p_x_recipient_tbl ,
663: x_return_status => x_return_status ,
664: x_msg_count => x_msg_count ,
657: ( p_api_version => p_api_version ,
658: p_init_msg_list => FND_API.G_TRUE ,
659: p_commit => FND_API.G_FALSE ,
660: p_validate_only => FND_API.G_TRUE ,
661: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
662: p_x_recipient_tbl => p_x_recipient_tbl ,
663: x_return_status => x_return_status ,
664: x_msg_count => x_msg_count ,
665: x_msg_data => x_msg_data
669: l_msg_count := FND_MSG_PUB.count_msg;
670:
671: IF l_msg_count > 0 THEN
672: X_msg_count := l_msg_count;
673: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
674: RAISE FND_API.G_EXC_ERROR;
675: END IF;
676: --Standard check for commit;
677: IF FND_API.TO_BOOLEAN(p_commit) THEN
670:
671: IF l_msg_count > 0 THEN
672: X_msg_count := l_msg_count;
673: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
674: RAISE FND_API.G_EXC_ERROR;
675: END IF;
676: --Standard check for commit;
677: IF FND_API.TO_BOOLEAN(p_commit) THEN
678: COMMIT;
673: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
674: RAISE FND_API.G_EXC_ERROR;
675: END IF;
676: --Standard check for commit;
677: IF FND_API.TO_BOOLEAN(p_commit) THEN
678: COMMIT;
679: --DBMS_OUTPUT.PUT_LINE('THE RECORD IS NOT COMMITTED .THE TEST RUN HAS BEEN SUCESSFUL');
680: --ROLLBACK;
681: END IF;
680: --ROLLBACK;
681: END IF;
682:
683: EXCEPTION
684: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
685: ROLLBACK TO create_document;
686: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
687: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
688: p_count => x_msg_count,
682:
683: EXCEPTION
684: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
685: ROLLBACK TO create_document;
686: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
687: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
688: p_count => x_msg_count,
689: p_data => x_msg_data);
690:
683: EXCEPTION
684: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
685: ROLLBACK TO create_document;
686: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
687: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
688: p_count => x_msg_count,
689: p_data => x_msg_data);
690:
691: IF G_DEBUG='Y' THEN
697:
698: AHL_DEBUG_PUB.disable_debug;
699:
700: END IF;
701: WHEN FND_API.G_EXC_ERROR THEN
702: ROLLBACK TO create_document;
703: X_return_status := FND_API.G_RET_STS_ERROR;
704: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
705: p_count => x_msg_count,
699:
700: END IF;
701: WHEN FND_API.G_EXC_ERROR THEN
702: ROLLBACK TO create_document;
703: X_return_status := FND_API.G_RET_STS_ERROR;
704: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
705: p_count => x_msg_count,
706: p_data => X_msg_data);
707: -- Debug info.
700: END IF;
701: WHEN FND_API.G_EXC_ERROR THEN
702: ROLLBACK TO create_document;
703: X_return_status := FND_API.G_RET_STS_ERROR;
704: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
705: p_count => x_msg_count,
706: p_data => X_msg_data);
707: -- Debug info.
708: IF G_DEBUG='Y' THEN
717:
718: END IF;
719: WHEN OTHERS THEN
720: ROLLBACK TO create_document;
721: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
722: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
723: THEN
724: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
725: p_procedure_name => 'CREATE_DOCUMENT',
724: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
725: p_procedure_name => 'CREATE_DOCUMENT',
726: p_error_text => SUBSTR(SQLERRM,1,240));
727: END IF;
728: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
729: p_count => x_msg_count,
730: p_data => X_msg_data);
731:
732: -- Debug info.
751:
752: PROCEDURE MODIFY_DOCUMENT
753: (
754: p_api_version IN NUMBER := 1.0 ,
755: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
756: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
757: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
758: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
759: p_x_document_tbl IN OUT NOCOPY document_tbl ,
752: PROCEDURE MODIFY_DOCUMENT
753: (
754: p_api_version IN NUMBER := 1.0 ,
755: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
756: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
757: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
758: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
759: p_x_document_tbl IN OUT NOCOPY document_tbl ,
760: p_x_supplier_tbl IN OUT NOCOPY Supplier_Tbl ,
753: (
754: p_api_version IN NUMBER := 1.0 ,
755: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
756: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
757: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
758: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
759: p_x_document_tbl IN OUT NOCOPY document_tbl ,
760: p_x_supplier_tbl IN OUT NOCOPY Supplier_Tbl ,
761: p_x_recipient_tbl IN OUT NOCOPY Recipient_Tbl ,
754: p_api_version IN NUMBER := 1.0 ,
755: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
756: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
757: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
758: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
759: p_x_document_tbl IN OUT NOCOPY document_tbl ,
760: p_x_supplier_tbl IN OUT NOCOPY Supplier_Tbl ,
761: p_x_recipient_tbl IN OUT NOCOPY Recipient_Tbl ,
762: x_return_status OUT NOCOPY VARCHAR2 ,
825:
826: END IF;
827: END IF;
828: -- Standard call to check for call compatibility.
829: IF FND_API.to_boolean(p_init_msg_list)
830: THEN
831: FND_MSG_PUB.initialize;
832: END IF;
833: -- Initialize API return status to success
832: END IF;
833: -- Initialize API return status to success
834: x_return_status := 'S';
835: -- Initialize message list if p_init_msg_list is set to TRUE.
836: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
837: p_api_version,
838: l_api_name,G_PKG_NAME)
839: THEN
840: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
836: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
837: p_api_version,
838: l_api_name,G_PKG_NAME)
839: THEN
840: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
841: END IF;
842:
843:
844: --Start API Body
867: l_msg_count := FND_MSG_PUB.count_msg;
868:
869: IF l_msg_count > 0 THEN
870: X_msg_count := l_msg_count;
871: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
872: RAISE FND_API.G_EXC_ERROR;
873: END IF;
874:
875:
868:
869: IF l_msg_count > 0 THEN
870: X_msg_count := l_msg_count;
871: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
872: RAISE FND_API.G_EXC_ERROR;
873: END IF;
874:
875:
876: FOR i IN p_x_document_tbl.FIRST..p_x_document_tbl.LAST
883:
884: --pekambar changes for bug # 9226988 --start
885: if (p_x_document_tbl(i).attribute1 IS NULL ) THEN
886: p_x_document_tbl(i).attribute1 := l_document_info.attribute1;
887: ELSIF(p_x_document_tbl(i).attribute1 = FND_API.G_MISS_CHAR ) THEN
888: p_x_document_tbl(i).attribute1 := NULL;
889: END IF;
890: if (p_x_document_tbl(i).attribute2 IS NULL ) THEN
891: p_x_document_tbl(i).attribute2 := l_document_info.attribute2;
888: p_x_document_tbl(i).attribute1 := NULL;
889: END IF;
890: if (p_x_document_tbl(i).attribute2 IS NULL ) THEN
891: p_x_document_tbl(i).attribute2 := l_document_info.attribute2;
892: ELSIF(p_x_document_tbl(i).attribute2 = FND_API.G_MISS_CHAR) THEN
893: p_x_document_tbl(i).attribute2 := NULL;
894: END IF;
895: if (p_x_document_tbl(i).attribute3 IS NULL ) THEN
896: p_x_document_tbl(i).attribute3 := l_document_info.attribute3;
893: p_x_document_tbl(i).attribute2 := NULL;
894: END IF;
895: if (p_x_document_tbl(i).attribute3 IS NULL ) THEN
896: p_x_document_tbl(i).attribute3 := l_document_info.attribute3;
897: ELSIF(p_x_document_tbl(i).attribute3 = FND_API.G_MISS_CHAR ) THEN
898: p_x_document_tbl(i).attribute3 := l_document_info.attribute1;
899: END IF;
900: if (p_x_document_tbl(i).attribute4 IS NULL ) THEN
901: p_x_document_tbl(i).attribute4 := l_document_info.attribute4;
898: p_x_document_tbl(i).attribute3 := l_document_info.attribute1;
899: END IF;
900: if (p_x_document_tbl(i).attribute4 IS NULL ) THEN
901: p_x_document_tbl(i).attribute4 := l_document_info.attribute4;
902: ELSIF(p_x_document_tbl(i).attribute4 = FND_API.G_MISS_CHAR ) THEN
903: p_x_document_tbl(i).attribute4 := NULL;
904: END IF;
905: if (p_x_document_tbl(i).attribute5 IS NULL ) THEN
906: p_x_document_tbl(i).attribute5 := l_document_info.attribute5;
903: p_x_document_tbl(i).attribute4 := NULL;
904: END IF;
905: if (p_x_document_tbl(i).attribute5 IS NULL ) THEN
906: p_x_document_tbl(i).attribute5 := l_document_info.attribute5;
907: ELSIF(p_x_document_tbl(i).attribute5 = FND_API.G_MISS_CHAR ) THEN
908: p_x_document_tbl(i).attribute5 := NULL;
909: END IF;
910: if (p_x_document_tbl(i).attribute6 IS NULL ) THEN
911: p_x_document_tbl(i).attribute6:= l_document_info.attribute6;
908: p_x_document_tbl(i).attribute5 := NULL;
909: END IF;
910: if (p_x_document_tbl(i).attribute6 IS NULL ) THEN
911: p_x_document_tbl(i).attribute6:= l_document_info.attribute6;
912: ELSIF(p_x_document_tbl(i).attribute6 = FND_API.G_MISS_CHAR ) THEN
913: p_x_document_tbl(i).attribute6 := NULL;
914: END IF;
915: if (p_x_document_tbl(i).attribute7 IS NULL ) THEN
916: p_x_document_tbl(i).attribute7:= l_document_info.attribute7;
913: p_x_document_tbl(i).attribute6 := NULL;
914: END IF;
915: if (p_x_document_tbl(i).attribute7 IS NULL ) THEN
916: p_x_document_tbl(i).attribute7:= l_document_info.attribute7;
917: ELSIF(p_x_document_tbl(i).attribute7 = FND_API.G_MISS_CHAR ) THEN
918: p_x_document_tbl(i).attribute7 := NULL;
919: END IF;
920: if (p_x_document_tbl(i).attribute8 IS NULL ) THEN
921: p_x_document_tbl(i).attribute8 := l_document_info.attribute8;
918: p_x_document_tbl(i).attribute7 := NULL;
919: END IF;
920: if (p_x_document_tbl(i).attribute8 IS NULL ) THEN
921: p_x_document_tbl(i).attribute8 := l_document_info.attribute8;
922: ELSIF(p_x_document_tbl(i).attribute8 = FND_API.G_MISS_CHAR ) THEN
923: p_x_document_tbl(i).attribute8 := NULL;
924: END IF;
925: if (p_x_document_tbl(i).attribute9 IS NULL ) THEN
926: p_x_document_tbl(i).attribute9 := l_document_info.attribute9;
923: p_x_document_tbl(i).attribute8 := NULL;
924: END IF;
925: if (p_x_document_tbl(i).attribute9 IS NULL ) THEN
926: p_x_document_tbl(i).attribute9 := l_document_info.attribute9;
927: ELSIF(p_x_document_tbl(i).attribute9 = FND_API.G_MISS_CHAR ) THEN
928: p_x_document_tbl(i).attribute9 := NULL;
929: END IF;
930: if (p_x_document_tbl(i).attribute10 IS NULL ) THEN
931: p_x_document_tbl(i).attribute10 := l_document_info.attribute10;
928: p_x_document_tbl(i).attribute9 := NULL;
929: END IF;
930: if (p_x_document_tbl(i).attribute10 IS NULL ) THEN
931: p_x_document_tbl(i).attribute10 := l_document_info.attribute10;
932: ELSIF(p_x_document_tbl(i).attribute10 = FND_API.G_MISS_CHAR ) THEN
933: p_x_document_tbl(i).attribute10 := NULL;
934: END IF;
935: if (p_x_document_tbl(i).attribute11 IS NULL ) THEN
936: p_x_document_tbl(i).attribute11 := l_document_info.attribute11;
933: p_x_document_tbl(i).attribute10 := NULL;
934: END IF;
935: if (p_x_document_tbl(i).attribute11 IS NULL ) THEN
936: p_x_document_tbl(i).attribute11 := l_document_info.attribute11;
937: ELSIF(p_x_document_tbl(i).attribute11 = FND_API.G_MISS_CHAR) THEN
938: p_x_document_tbl(i).attribute11 := NULL;
939: END IF;
940: if (p_x_document_tbl(i).attribute12 IS NULL ) THEN
941: p_x_document_tbl(i).attribute12 := l_document_info.attribute12;
938: p_x_document_tbl(i).attribute11 := NULL;
939: END IF;
940: if (p_x_document_tbl(i).attribute12 IS NULL ) THEN
941: p_x_document_tbl(i).attribute12 := l_document_info.attribute12;
942: ELSIF(p_x_document_tbl(i).attribute12 = FND_API.G_MISS_CHAR) THEN
943: p_x_document_tbl(i).attribute12 := NULL;
944: END IF;
945: if (p_x_document_tbl(i).attribute13 IS NULL ) THEN
946: p_x_document_tbl(i).attribute13 := l_document_info.attribute13;
943: p_x_document_tbl(i).attribute12 := NULL;
944: END IF;
945: if (p_x_document_tbl(i).attribute13 IS NULL ) THEN
946: p_x_document_tbl(i).attribute13 := l_document_info.attribute13;
947: ELSIF(p_x_document_tbl(i).attribute13 = FND_API.G_MISS_CHAR ) THEN
948: p_x_document_tbl(i).attribute13 := NULL;
949: END IF;
950: if (p_x_document_tbl(i).attribute14 IS NULL ) THEN
951: p_x_document_tbl(i).attribute14 := l_document_info.attribute14;
948: p_x_document_tbl(i).attribute13 := NULL;
949: END IF;
950: if (p_x_document_tbl(i).attribute14 IS NULL ) THEN
951: p_x_document_tbl(i).attribute14 := l_document_info.attribute14;
952: ELSIF(p_x_document_tbl(i).attribute14 = FND_API.G_MISS_CHAR ) THEN
953: p_x_document_tbl(i).attribute14 := NULL;
954: END IF;
955: if (p_x_document_tbl(i).attribute15 IS NULL ) THEN
956: p_x_document_tbl(i).attribute15 := l_document_info.attribute15;
953: p_x_document_tbl(i).attribute14 := NULL;
954: END IF;
955: if (p_x_document_tbl(i).attribute15 IS NULL ) THEN
956: p_x_document_tbl(i).attribute15 := l_document_info.attribute15;
957: ELSIF(p_x_document_tbl(i).attribute15 = FND_API.G_MISS_CHAR) THEN
958: p_x_document_tbl(i).attribute15 := NULL;
959: END IF;
960: --pekambar changes for bug # 9226988 --end
961:
965: if (l_document_info.object_version_number <>p_x_document_tbl(i).object_version_number)
966: then
967: FND_MESSAGE.SET_NAME('AHL','AHL_COM_RECORD_CHANGED');
968: FND_MSG_PUB.ADD;
969: RAISE FND_API.G_EXC_ERROR;
970: end if;
971: -- The following conditions compare the new record value with old record
972: -- value, if its different then assign the new value else continue
973: IF p_x_document_tbl(i).document_id IS NOT NULL
1026: -- Checks for any suppliers modifications exists for the document index
1027: IF p_x_supplier_tbl.COUNT > 0 THEN
1028: modify_supplier
1029: ( p_api_version => p_api_version ,
1030: p_init_msg_list => FND_API.G_TRUE ,
1031: p_commit => FND_API.G_FALSE ,
1032: p_validate_only => FND_API.G_TRUE ,
1033: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1034: p_supplier_tbl => p_x_supplier_tbl ,
1027: IF p_x_supplier_tbl.COUNT > 0 THEN
1028: modify_supplier
1029: ( p_api_version => p_api_version ,
1030: p_init_msg_list => FND_API.G_TRUE ,
1031: p_commit => FND_API.G_FALSE ,
1032: p_validate_only => FND_API.G_TRUE ,
1033: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1034: p_supplier_tbl => p_x_supplier_tbl ,
1035: x_return_status => x_return_status ,
1028: modify_supplier
1029: ( p_api_version => p_api_version ,
1030: p_init_msg_list => FND_API.G_TRUE ,
1031: p_commit => FND_API.G_FALSE ,
1032: p_validate_only => FND_API.G_TRUE ,
1033: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1034: p_supplier_tbl => p_x_supplier_tbl ,
1035: x_return_status => x_return_status ,
1036: x_msg_count => x_msg_count ,
1029: ( p_api_version => p_api_version ,
1030: p_init_msg_list => FND_API.G_TRUE ,
1031: p_commit => FND_API.G_FALSE ,
1032: p_validate_only => FND_API.G_TRUE ,
1033: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1034: p_supplier_tbl => p_x_supplier_tbl ,
1035: x_return_status => x_return_status ,
1036: x_msg_count => x_msg_count ,
1037: x_msg_data => x_msg_data
1048: -- Checks for any Recipients exists for the document index
1049: IF p_x_recipient_tbl.COUNT > 0 THEN
1050: modify_recipient
1051: ( p_api_version => p_api_version ,
1052: p_init_msg_list => FND_API.G_TRUE ,
1053: p_commit => FND_API.G_FALSE ,
1054: p_validate_only => FND_API.G_TRUE ,
1055: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1056: p_recipient_tbl => p_x_recipient_tbl ,
1049: IF p_x_recipient_tbl.COUNT > 0 THEN
1050: modify_recipient
1051: ( p_api_version => p_api_version ,
1052: p_init_msg_list => FND_API.G_TRUE ,
1053: p_commit => FND_API.G_FALSE ,
1054: p_validate_only => FND_API.G_TRUE ,
1055: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1056: p_recipient_tbl => p_x_recipient_tbl ,
1057: x_return_status => x_return_status ,
1050: modify_recipient
1051: ( p_api_version => p_api_version ,
1052: p_init_msg_list => FND_API.G_TRUE ,
1053: p_commit => FND_API.G_FALSE ,
1054: p_validate_only => FND_API.G_TRUE ,
1055: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1056: p_recipient_tbl => p_x_recipient_tbl ,
1057: x_return_status => x_return_status ,
1058: x_msg_count => x_msg_count ,
1051: ( p_api_version => p_api_version ,
1052: p_init_msg_list => FND_API.G_TRUE ,
1053: p_commit => FND_API.G_FALSE ,
1054: p_validate_only => FND_API.G_TRUE ,
1055: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1056: p_recipient_tbl => p_x_recipient_tbl ,
1057: x_return_status => x_return_status ,
1058: x_msg_count => x_msg_count ,
1059: x_msg_data => x_msg_data
1063: l_msg_count := FND_MSG_PUB.count_msg;
1064:
1065: IF l_msg_count > 0 THEN
1066: X_msg_count := l_msg_count;
1067: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1068: RAISE FND_API.G_EXC_ERROR;
1069: END IF;
1070: --Standard check for commit
1071: IF FND_API.TO_BOOLEAN(p_commit) THEN
1064:
1065: IF l_msg_count > 0 THEN
1066: X_msg_count := l_msg_count;
1067: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1068: RAISE FND_API.G_EXC_ERROR;
1069: END IF;
1070: --Standard check for commit
1071: IF FND_API.TO_BOOLEAN(p_commit) THEN
1072: COMMIT;
1067: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1068: RAISE FND_API.G_EXC_ERROR;
1069: END IF;
1070: --Standard check for commit
1071: IF FND_API.TO_BOOLEAN(p_commit) THEN
1072: COMMIT;
1073: END IF;
1074: -- Debug info
1075: IF G_DEBUG='Y' THEN
1082:
1083: END IF;
1084:
1085: EXCEPTION
1086: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1087: ROLLBACK TO modify_document;
1088: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1089: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1090: p_count => x_msg_count,
1084:
1085: EXCEPTION
1086: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1087: ROLLBACK TO modify_document;
1088: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1089: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1090: p_count => x_msg_count,
1091: p_data => x_msg_data);
1092:
1085: EXCEPTION
1086: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1087: ROLLBACK TO modify_document;
1088: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1089: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1090: p_count => x_msg_count,
1091: p_data => x_msg_data);
1092:
1093: IF G_DEBUG='Y' THEN
1101: AHL_DEBUG_PUB.disable_debug;
1102:
1103: END IF;
1104:
1105: WHEN FND_API.G_EXC_ERROR THEN
1106: ROLLBACK TO modify_document;
1107: X_return_status := FND_API.G_RET_STS_ERROR;
1108: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1109: p_count => x_msg_count,
1103: END IF;
1104:
1105: WHEN FND_API.G_EXC_ERROR THEN
1106: ROLLBACK TO modify_document;
1107: X_return_status := FND_API.G_RET_STS_ERROR;
1108: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1109: p_count => x_msg_count,
1110: p_data => X_msg_data);
1111: -- Debug info.
1104:
1105: WHEN FND_API.G_EXC_ERROR THEN
1106: ROLLBACK TO modify_document;
1107: X_return_status := FND_API.G_RET_STS_ERROR;
1108: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1109: p_count => x_msg_count,
1110: p_data => X_msg_data);
1111: -- Debug info.
1112: IF G_DEBUG='Y' THEN
1121: END IF;
1122:
1123: WHEN OTHERS THEN
1124: ROLLBACK TO modify_document;
1125: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1126: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1127: THEN
1128: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
1129: p_procedure_name => 'MODIFY_DOCUMENT',
1128: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
1129: p_procedure_name => 'MODIFY_DOCUMENT',
1130: p_error_text => SUBSTR(SQLERRM,1,240));
1131: END IF;
1132: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1133: p_count => x_msg_count,
1134: p_data => X_msg_data);
1135:
1136: -- Debug info.
1347: /*--------------------------------------------------*/
1348: PROCEDURE CREATE_SUPPLIER
1349: (
1350: p_api_version IN NUMBER := 1.0 ,
1351: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
1352: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1353: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
1354: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1355: p_x_supplier_tbl IN OUT NOCOPY supplier_tbl ,
1348: PROCEDURE CREATE_SUPPLIER
1349: (
1350: p_api_version IN NUMBER := 1.0 ,
1351: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
1352: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1353: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
1354: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1355: p_x_supplier_tbl IN OUT NOCOPY supplier_tbl ,
1356: x_return_status OUT NOCOPY VARCHAR2 ,
1349: (
1350: p_api_version IN NUMBER := 1.0 ,
1351: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
1352: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1353: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
1354: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1355: p_x_supplier_tbl IN OUT NOCOPY supplier_tbl ,
1356: x_return_status OUT NOCOPY VARCHAR2 ,
1357: x_msg_count OUT NOCOPY NUMBER ,
1350: p_api_version IN NUMBER := 1.0 ,
1351: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
1352: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1353: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
1354: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1355: p_x_supplier_tbl IN OUT NOCOPY supplier_tbl ,
1356: x_return_status OUT NOCOPY VARCHAR2 ,
1357: x_msg_count OUT NOCOPY NUMBER ,
1358: x_msg_data OUT NOCOPY VARCHAR2)
1409: AHL_DEBUG_PUB.debug( 'enter ahl_di_doc_index_pvt.Create Supplier','+SUP+');
1410: END IF;
1411:
1412: -- Standard call to check for call compatibility.
1413: IF FND_API.to_boolean(p_init_msg_list)
1414: THEN
1415: FND_MSG_PUB.initialize;
1416: END IF;
1417: -- Initialize API return status to success
1416: END IF;
1417: -- Initialize API return status to success
1418: x_return_status := 'S';
1419: -- Initialize message list if p_init_msg_list is set to TRUE.
1420: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
1421: p_api_version,
1422: l_api_name,G_PKG_NAME)
1423: THEN
1424: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1420: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
1421: p_api_version,
1422: l_api_name,G_PKG_NAME)
1423: THEN
1424: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1425: END IF;
1426:
1427: -- Perf Bug Fix 4919011.
1428: BEGIN
1452: l_msg_count := FND_MSG_PUB.count_msg;
1453:
1454: IF l_msg_count > 0 THEN
1455: X_msg_count := l_msg_count;
1456: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1457: RAISE FND_API.G_EXC_ERROR;
1458: END IF;
1459:
1460: FOR i IN p_x_supplier_tbl.FIRST..p_x_supplier_tbl.LAST
1453:
1454: IF l_msg_count > 0 THEN
1455: X_msg_count := l_msg_count;
1456: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1457: RAISE FND_API.G_EXC_ERROR;
1458: END IF;
1459:
1460: FOR i IN p_x_supplier_tbl.FIRST..p_x_supplier_tbl.LAST
1461: LOOP
1502: FND_MESSAGE.SET_NAME('AHL','AHL_DI_SUPPLIER_DUP_RECORD');
1503: FND_MESSAGE.SET_TOKEN('SUPNAME',l_supplier_name);
1504: FND_MSG_PUB.ADD;
1505:
1506: --AD RAISE FND_API.G_EXC_ERROR;
1507: --AD END IF;
1508: --ad CLOSE dup_rec;
1509:
1510: ELSE
1578: --{{adharia comment
1579: l_msg_count := FND_MSG_PUB.count_msg;
1580: IF l_msg_count > 0 THEN
1581: X_msg_count := l_msg_count;
1582: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1583: RAISE FND_API.G_EXC_ERROR;
1584: END IF;
1585: --{{adharia comment
1586: */
1579: l_msg_count := FND_MSG_PUB.count_msg;
1580: IF l_msg_count > 0 THEN
1581: X_msg_count := l_msg_count;
1582: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1583: RAISE FND_API.G_EXC_ERROR;
1584: END IF;
1585: --{{adharia comment
1586: */
1587: END IF;
1591: --{{adharia added
1592: l_msg_count := FND_MSG_PUB.count_msg;
1593: IF l_msg_count > 0 THEN
1594: X_msg_count := l_msg_count;
1595: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1596: RAISE FND_API.G_EXC_ERROR;
1597: END IF;
1598: --{{adharia
1599:
1592: l_msg_count := FND_MSG_PUB.count_msg;
1593: IF l_msg_count > 0 THEN
1594: X_msg_count := l_msg_count;
1595: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1596: RAISE FND_API.G_EXC_ERROR;
1597: END IF;
1598: --{{adharia
1599:
1600: -- Standard check of p_commit.
1597: END IF;
1598: --{{adharia
1599:
1600: -- Standard check of p_commit.
1601: IF FND_API.TO_BOOLEAN(p_commit) THEN
1602: COMMIT;
1603: END IF;
1604: -- Debug info
1605: IF G_DEBUG='Y' THEN
1612:
1613: END IF;
1614:
1615: EXCEPTION
1616: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1617: ROLLBACK TO create_supplier;
1618: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1619: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1620: p_count => x_msg_count,
1614:
1615: EXCEPTION
1616: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1617: ROLLBACK TO create_supplier;
1618: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1619: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1620: p_count => x_msg_count,
1621: p_data => x_msg_data);
1622:
1615: EXCEPTION
1616: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1617: ROLLBACK TO create_supplier;
1618: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1619: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1620: p_count => x_msg_count,
1621: p_data => x_msg_data);
1622:
1623: IF G_DEBUG='Y' THEN
1630: AHL_DEBUG_PUB.disable_debug;
1631:
1632: END IF;
1633:
1634: WHEN FND_API.G_EXC_ERROR THEN
1635: ROLLBACK TO create_supplier;
1636: X_return_status := FND_API.G_RET_STS_ERROR;
1637: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1638: p_count => x_msg_count,
1632: END IF;
1633:
1634: WHEN FND_API.G_EXC_ERROR THEN
1635: ROLLBACK TO create_supplier;
1636: X_return_status := FND_API.G_RET_STS_ERROR;
1637: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1638: p_count => x_msg_count,
1639: p_data => X_msg_data);
1640: -- Debug info.
1633:
1634: WHEN FND_API.G_EXC_ERROR THEN
1635: ROLLBACK TO create_supplier;
1636: X_return_status := FND_API.G_RET_STS_ERROR;
1637: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1638: p_count => x_msg_count,
1639: p_data => X_msg_data);
1640: -- Debug info.
1641: IF G_DEBUG='Y' THEN
1649: END IF;
1650:
1651: WHEN OTHERS THEN
1652: ROLLBACK TO create_supplier;
1653: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1654: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1655: THEN
1656: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
1657: p_procedure_name => 'CREATE_SUPPLIER',
1656: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
1657: p_procedure_name => 'CREATE_SUPPLIER',
1658: p_error_text => SUBSTR(SQLERRM,1,240));
1659: END IF;
1660: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1661: p_count => x_msg_count,
1662: p_data => X_msg_data);
1663:
1664: -- Debug info.
1682:
1683: PROCEDURE MODIFY_SUPPLIER
1684: (
1685: p_api_version IN NUMBER := 1.0 ,
1686: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
1687: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1688: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
1689: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1690: p_supplier_tbl IN supplier_tbl ,
1683: PROCEDURE MODIFY_SUPPLIER
1684: (
1685: p_api_version IN NUMBER := 1.0 ,
1686: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
1687: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1688: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
1689: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1690: p_supplier_tbl IN supplier_tbl ,
1691: x_return_status OUT NOCOPY VARCHAR2 ,
1684: (
1685: p_api_version IN NUMBER := 1.0 ,
1686: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
1687: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1688: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
1689: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1690: p_supplier_tbl IN supplier_tbl ,
1691: x_return_status OUT NOCOPY VARCHAR2 ,
1692: x_msg_count OUT NOCOPY NUMBER ,
1685: p_api_version IN NUMBER := 1.0 ,
1686: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
1687: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1688: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
1689: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1690: p_supplier_tbl IN supplier_tbl ,
1691: x_return_status OUT NOCOPY VARCHAR2 ,
1692: x_msg_count OUT NOCOPY NUMBER ,
1693: x_msg_data OUT NOCOPY VARCHAR2
1766: AHL_DEBUG_PUB.debug( 'anand enter ahl_di_doc_index_pvt.Modify Supplier','+SUP+');
1767: END IF;
1768:
1769: -- Standard call to check for call compatibility.
1770: IF FND_API.to_boolean(p_init_msg_list)
1771: THEN
1772: FND_MSG_PUB.initialize;
1773: END IF;
1774: -- Initialize API return status to success
1773: END IF;
1774: -- Initialize API return status to success
1775: x_return_status := 'S';
1776: -- Initialize message list if p_init_msg_list is set to TRUE.
1777: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
1778: p_api_version,
1779: l_api_name,G_PKG_NAME)
1780: THEN
1781: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1777: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
1778: p_api_version,
1779: l_api_name,G_PKG_NAME)
1780: THEN
1781: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1782: END IF;
1783: -- Start API Body
1784:
1785: -- Perf Bug Fix 4919011.
1828:
1829:
1830: IF l_msg_count > 0 THEN
1831: X_msg_count := l_msg_count;
1832: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1833: RAISE FND_API.G_EXC_ERROR;
1834: END IF;
1835: FOR i IN p_supplier_tbl.FIRST..p_supplier_tbl.LAST
1836: LOOP
1829:
1830: IF l_msg_count > 0 THEN
1831: X_msg_count := l_msg_count;
1832: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1833: RAISE FND_API.G_EXC_ERROR;
1834: END IF;
1835: FOR i IN p_supplier_tbl.FIRST..p_supplier_tbl.LAST
1836: LOOP
1837: --Retrieve the existing supplier record
1844: IF l_supplier_info.object_version_number <>p_supplier_tbl(i).object_version_number
1845: THEN
1846: FND_MESSAGE.SET_NAME('AHL','AHL_COM_RECORD_CHANGED');
1847: FND_MSG_PUB.ADD;
1848: --AD RAISE FND_API.G_EXC_ERROR;
1849: ELSE --AD
1850: -- The following conditions compare the new record value with old record
1851: -- value, if its different then assign the new value else continue
1852: IF p_supplier_tbl(i).supplier_document_id IS NOT NULL
1922: THEN
1923: DELETE_SUPPLIER
1924: (
1925: p_api_version => 1.0 ,
1926: p_init_msg_list => FND_API.G_FALSE ,
1927: p_commit => FND_API.G_FALSE ,
1928: p_validate_only => FND_API.G_TRUE ,
1929: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1930: p_supplier_rec => p_supplier_tbl(i) ,
1923: DELETE_SUPPLIER
1924: (
1925: p_api_version => 1.0 ,
1926: p_init_msg_list => FND_API.G_FALSE ,
1927: p_commit => FND_API.G_FALSE ,
1928: p_validate_only => FND_API.G_TRUE ,
1929: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1930: p_supplier_rec => p_supplier_tbl(i) ,
1931: x_return_status => x_return_status ,
1924: (
1925: p_api_version => 1.0 ,
1926: p_init_msg_list => FND_API.G_FALSE ,
1927: p_commit => FND_API.G_FALSE ,
1928: p_validate_only => FND_API.G_TRUE ,
1929: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1930: p_supplier_rec => p_supplier_tbl(i) ,
1931: x_return_status => x_return_status ,
1932: x_msg_count => x_msg_count ,
1925: p_api_version => 1.0 ,
1926: p_init_msg_list => FND_API.G_FALSE ,
1927: p_commit => FND_API.G_FALSE ,
1928: p_validate_only => FND_API.G_TRUE ,
1929: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
1930: p_supplier_rec => p_supplier_tbl(i) ,
1931: x_return_status => x_return_status ,
1932: x_msg_count => x_msg_count ,
1933: x_msg_data => x_msg_data
1951: END IF;
1952: --ad
1953: IF l_msg_count > 0 THEN
1954: X_msg_count := l_msg_count;
1955: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1956: RAISE FND_API.G_EXC_ERROR;
1957: END IF;
1958: --{{ADHARIA
1959:
1952: --ad
1953: IF l_msg_count > 0 THEN
1954: X_msg_count := l_msg_count;
1955: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1956: RAISE FND_API.G_EXC_ERROR;
1957: END IF;
1958: --{{ADHARIA
1959:
1960: -- Standard check of p_commit.
1957: END IF;
1958: --{{ADHARIA
1959:
1960: -- Standard check of p_commit.
1961: IF FND_API.TO_BOOLEAN(p_commit) THEN
1962: COMMIT;
1963: END IF;
1964:
1965: -- Debug info
1973:
1974: END IF;
1975:
1976: EXCEPTION
1977: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1978: ROLLBACK TO modify_supplier;
1979: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1980: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1981: p_count => x_msg_count,
1975:
1976: EXCEPTION
1977: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1978: ROLLBACK TO modify_supplier;
1979: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1980: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1981: p_count => x_msg_count,
1982: p_data => x_msg_data);
1983:
1976: EXCEPTION
1977: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1978: ROLLBACK TO modify_supplier;
1979: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1980: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1981: p_count => x_msg_count,
1982: p_data => x_msg_data);
1983:
1984: IF G_DEBUG='Y' THEN
1991: AHL_DEBUG_PUB.disable_debug;
1992:
1993: END IF;
1994:
1995: WHEN FND_API.G_EXC_ERROR THEN
1996: ROLLBACK TO modify_supplier;
1997: X_return_status := FND_API.G_RET_STS_ERROR;
1998: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1999: p_count => x_msg_count,
1993: END IF;
1994:
1995: WHEN FND_API.G_EXC_ERROR THEN
1996: ROLLBACK TO modify_supplier;
1997: X_return_status := FND_API.G_RET_STS_ERROR;
1998: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1999: p_count => x_msg_count,
2000: p_data => X_msg_data);
2001: -- Debug info.
1994:
1995: WHEN FND_API.G_EXC_ERROR THEN
1996: ROLLBACK TO modify_supplier;
1997: X_return_status := FND_API.G_RET_STS_ERROR;
1998: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1999: p_count => x_msg_count,
2000: p_data => X_msg_data);
2001: -- Debug info.
2002: IF G_DEBUG='Y' THEN
2011: END IF;
2012:
2013: WHEN DUP_VAL_ON_INDEX THEN
2014: ROLLBACK TO modify_supplier;
2015: X_return_status := FND_API.G_RET_STS_ERROR;
2016: FND_MESSAGE.SET_NAME('AHL','AHL_DI_SUPPLIER_DUP_RECORD');
2017: FND_MESSAGE.SET_TOKEN('SUPNAME',l_supplier_name);
2018: FND_MSG_PUB.ADD;
2019: -- Check if API is called in debug mode. If yes, disable debug.
2023: END IF;
2024:
2025: WHEN OTHERS THEN
2026: ROLLBACK TO modify_supplier;
2027: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2028: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
2029: THEN
2030: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
2031: p_procedure_name => 'MODIFY_SUPPLIER',
2030: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
2031: p_procedure_name => 'MODIFY_SUPPLIER',
2032: p_error_text => SUBSTR(SQLERRM,1,240));
2033: END IF;
2034: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2035: p_count => x_msg_count,
2036: p_data => X_msg_data);
2037:
2038: -- Debug info.
2057:
2058: PROCEDURE DELETE_SUPPLIER
2059: (
2060: p_api_version IN NUMBER := 1.0 ,
2061: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
2062: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2063: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
2064: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2065: p_supplier_rec IN supplier_rec ,
2058: PROCEDURE DELETE_SUPPLIER
2059: (
2060: p_api_version IN NUMBER := 1.0 ,
2061: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
2062: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2063: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
2064: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2065: p_supplier_rec IN supplier_rec ,
2066: x_return_status OUT NOCOPY VARCHAR2 ,
2059: (
2060: p_api_version IN NUMBER := 1.0 ,
2061: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
2062: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2063: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
2064: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2065: p_supplier_rec IN supplier_rec ,
2066: x_return_status OUT NOCOPY VARCHAR2 ,
2067: x_msg_count OUT NOCOPY NUMBER ,
2060: p_api_version IN NUMBER := 1.0 ,
2061: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
2062: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2063: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
2064: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2065: p_supplier_rec IN supplier_rec ,
2066: x_return_status OUT NOCOPY VARCHAR2 ,
2067: x_msg_count OUT NOCOPY NUMBER ,
2068: x_msg_data OUT NOCOPY VARCHAR2)
2134: IF G_DEBUG='Y' THEN
2135: AHL_DEBUG_PUB.debug( 'enter ahl_di_doc_index_pvt.Delete Supplier','+SUP+');
2136: END IF;
2137: -- Standard call to check for call compatibility.
2138: IF FND_API.to_boolean(p_init_msg_list)
2139: THEN
2140: FND_MSG_PUB.initialize;
2141: END IF;
2142: -- Initialize API return status to success
2141: END IF;
2142: -- Initialize API return status to success
2143: x_return_status := 'S';
2144: -- Initialize message list if p_init_msg_list is set to TRUE.
2145: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
2146: p_api_version,
2147: l_api_name,G_PKG_NAME)
2148: THEN
2149: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2145: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
2146: p_api_version,
2147: l_api_name,G_PKG_NAME)
2148: THEN
2149: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2150: END IF;
2151:
2152: -- Perf Bug Fix 4919011.
2153: BEGIN
2218: l_msg_count := FND_MSG_PUB.count_msg;
2219:
2220: IF l_msg_count > 0 THEN
2221: X_msg_count := l_msg_count;
2222: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2223: --AD RAISE FND_API.G_EXC_ERROR;
2224: END IF;
2225:
2226: -- Standard check of p_commit.
2219:
2220: IF l_msg_count > 0 THEN
2221: X_msg_count := l_msg_count;
2222: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2223: --AD RAISE FND_API.G_EXC_ERROR;
2224: END IF;
2225:
2226: -- Standard check of p_commit.
2227: IF FND_API.TO_BOOLEAN(p_commit) THEN
2223: --AD RAISE FND_API.G_EXC_ERROR;
2224: END IF;
2225:
2226: -- Standard check of p_commit.
2227: IF FND_API.TO_BOOLEAN(p_commit) THEN
2228: COMMIT;
2229: END IF;
2230: -- Debug info
2231: IF G_DEBUG='Y' THEN
2238:
2239: END IF;
2240:
2241: EXCEPTION
2242: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2243: ROLLBACK TO delete_supplier;
2244: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2245: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2246: p_count => x_msg_count,
2240:
2241: EXCEPTION
2242: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2243: ROLLBACK TO delete_supplier;
2244: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2245: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2246: p_count => x_msg_count,
2247: p_data => x_msg_data);
2248:
2241: EXCEPTION
2242: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2243: ROLLBACK TO delete_supplier;
2244: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2245: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2246: p_count => x_msg_count,
2247: p_data => x_msg_data);
2248:
2249: IF G_DEBUG='Y' THEN
2255: AHL_DEBUG_PUB.disable_debug;
2256:
2257: END IF;
2258:
2259: WHEN FND_API.G_EXC_ERROR THEN
2260: ROLLBACK TO delete_supplier;
2261: X_return_status := FND_API.G_RET_STS_ERROR;
2262: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2263: p_count => x_msg_count,
2257: END IF;
2258:
2259: WHEN FND_API.G_EXC_ERROR THEN
2260: ROLLBACK TO delete_supplier;
2261: X_return_status := FND_API.G_RET_STS_ERROR;
2262: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2263: p_count => x_msg_count,
2264: p_data => X_msg_data);
2265: -- Debug info.
2258:
2259: WHEN FND_API.G_EXC_ERROR THEN
2260: ROLLBACK TO delete_supplier;
2261: X_return_status := FND_API.G_RET_STS_ERROR;
2262: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2263: p_count => x_msg_count,
2264: p_data => X_msg_data);
2265: -- Debug info.
2266: IF G_DEBUG='Y' THEN
2274: END IF;
2275:
2276: WHEN OTHERS THEN
2277: ROLLBACK TO delete_supplier;
2278: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2279: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
2280: THEN
2281: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
2282: p_procedure_name => 'DELETE_SUPPLIER',
2281: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
2282: p_procedure_name => 'DELETE_SUPPLIER',
2283: p_error_text => SUBSTR(SQLERRM,1,240));
2284: END IF;
2285: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2286: p_count => x_msg_count,
2287: p_data => X_msg_data);
2288:
2289: -- Debug info.
2434:
2435: PROCEDURE CREATE_RECIPIENT
2436: (
2437: p_api_version IN NUMBER := 1.0 ,
2438: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
2439: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2440: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
2441: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2442: p_x_recipient_tbl IN OUT NOCOPY recipient_tbl ,
2435: PROCEDURE CREATE_RECIPIENT
2436: (
2437: p_api_version IN NUMBER := 1.0 ,
2438: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
2439: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2440: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
2441: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2442: p_x_recipient_tbl IN OUT NOCOPY recipient_tbl ,
2443: x_return_status OUT NOCOPY VARCHAR2 ,
2436: (
2437: p_api_version IN NUMBER := 1.0 ,
2438: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
2439: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2440: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
2441: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2442: p_x_recipient_tbl IN OUT NOCOPY recipient_tbl ,
2443: x_return_status OUT NOCOPY VARCHAR2 ,
2444: x_msg_count OUT NOCOPY NUMBER ,
2437: p_api_version IN NUMBER := 1.0 ,
2438: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
2439: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2440: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
2441: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2442: p_x_recipient_tbl IN OUT NOCOPY recipient_tbl ,
2443: x_return_status OUT NOCOPY VARCHAR2 ,
2444: x_msg_count OUT NOCOPY NUMBER ,
2445: x_msg_data OUT NOCOPY VARCHAR2)
2482:
2483: END IF;
2484: END IF;
2485: -- Standard call to check for call compatibility.
2486: IF FND_API.to_boolean(p_init_msg_list)
2487: THEN
2488: FND_MSG_PUB.initialize;
2489: END IF;
2490: -- Initialize API return status to success
2489: END IF;
2490: -- Initialize API return status to success
2491: x_return_status := 'S';
2492: -- Initialize message list if p_init_msg_list is set to TRUE.
2493: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
2494: p_api_version,
2495: l_api_name,G_PKG_NAME)
2496: THEN
2497: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2493: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
2494: p_api_version,
2495: l_api_name,G_PKG_NAME)
2496: THEN
2497: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2498: END IF;
2499: --Start API Body
2500: IF p_x_recipient_tbl.COUNT > 0
2501: THEN
2513: l_msg_count := FND_MSG_PUB.count_msg;
2514:
2515: IF l_msg_count > 0 THEN
2516: X_msg_count := l_msg_count;
2517: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2518: RAISE FND_API.G_EXC_ERROR;
2519: END IF;
2520:
2521: FOR i IN p_x_recipient_tbl.FIRST..p_x_recipient_tbl.LAST
2514:
2515: IF l_msg_count > 0 THEN
2516: X_msg_count := l_msg_count;
2517: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2518: RAISE FND_API.G_EXC_ERROR;
2519: END IF;
2520:
2521: FOR i IN p_x_recipient_tbl.FIRST..p_x_recipient_tbl.LAST
2522: LOOP
2550: FND_MESSAGE.SET_NAME('AHL','AHL_DI_RECIPIENT_DUP_RECORD');
2551: FND_MESSAGE.SET_TOKEN('RECPTID',l_DUP_REC_NAME);
2552: FND_MSG_PUB.ADD;
2553: CLOSE DUP_REC_NAME;
2554: --ad RAISE FND_API.G_EXC_ERROR;
2555: --ad END IF;
2556: --ad CLOSE dup_rec;
2557: else --ad
2558: --Retrieves the sequence number
2621: l_msg_count := FND_MSG_PUB.count_msg;
2622:
2623: IF l_msg_count > 0 THEN
2624: X_msg_count := l_msg_count;
2625: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2626: RAISE FND_API.G_EXC_ERROR;
2627: END IF;--ad
2628: adharia*/
2629: END IF;
2622:
2623: IF l_msg_count > 0 THEN
2624: X_msg_count := l_msg_count;
2625: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2626: RAISE FND_API.G_EXC_ERROR;
2627: END IF;--ad
2628: adharia*/
2629: END IF;
2630: CLOSE dup_rec;--ad
2635: l_msg_count := FND_MSG_PUB.count_msg;
2636:
2637: IF l_msg_count > 0 THEN
2638: X_msg_count := l_msg_count;
2639: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2640: RAISE FND_API.G_EXC_ERROR;
2641: end if;
2642: --adharia
2643:
2636:
2637: IF l_msg_count > 0 THEN
2638: X_msg_count := l_msg_count;
2639: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2640: RAISE FND_API.G_EXC_ERROR;
2641: end if;
2642: --adharia
2643:
2644: -- Standard check of p_commit.
2641: end if;
2642: --adharia
2643:
2644: -- Standard check of p_commit.
2645: IF FND_API.TO_BOOLEAN(p_commit) THEN
2646: COMMIT;
2647: END IF;
2648: -- Debug info
2649: IF G_DEBUG='Y' THEN
2656:
2657: END IF;
2658:
2659: EXCEPTION
2660: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2661: ROLLBACK TO create_recipient;
2662: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2663: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2664: p_count => x_msg_count,
2658:
2659: EXCEPTION
2660: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2661: ROLLBACK TO create_recipient;
2662: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2663: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2664: p_count => x_msg_count,
2665: p_data => x_msg_data);
2666:
2659: EXCEPTION
2660: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2661: ROLLBACK TO create_recipient;
2662: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2663: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2664: p_count => x_msg_count,
2665: p_data => x_msg_data);
2666:
2667: IF G_DEBUG='Y' THEN
2673: AHL_DEBUG_PUB.disable_debug;
2674:
2675: END IF;
2676:
2677: WHEN FND_API.G_EXC_ERROR THEN
2678: ROLLBACK TO create_recipient;
2679: X_return_status := FND_API.G_RET_STS_ERROR;
2680: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2681: p_count => x_msg_count,
2675: END IF;
2676:
2677: WHEN FND_API.G_EXC_ERROR THEN
2678: ROLLBACK TO create_recipient;
2679: X_return_status := FND_API.G_RET_STS_ERROR;
2680: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2681: p_count => x_msg_count,
2682: p_data => X_msg_data);
2683: -- Debug info.
2676:
2677: WHEN FND_API.G_EXC_ERROR THEN
2678: ROLLBACK TO create_recipient;
2679: X_return_status := FND_API.G_RET_STS_ERROR;
2680: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2681: p_count => x_msg_count,
2682: p_data => X_msg_data);
2683: -- Debug info.
2684: IF G_DEBUG='Y' THEN
2692: END IF;
2693:
2694: WHEN OTHERS THEN
2695: ROLLBACK TO create_recipient;
2696: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2697: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
2698: THEN
2699: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
2700: p_procedure_name => 'CREATE_RECIPIENT',
2699: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
2700: p_procedure_name => 'CREATE_RECIPIENT',
2701: p_error_text => SUBSTR(SQLERRM,1,240));
2702: END IF;
2703: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2704: p_count => x_msg_count,
2705: p_data => X_msg_data);
2706:
2707: -- Debug info.
2725:
2726: PROCEDURE MODIFY_RECIPIENT
2727: (
2728: p_api_version IN NUMBER := 1.0 ,
2729: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
2730: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2731: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
2732: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2733: p_recipient_tbl IN OUT NOCOPY recipient_tbl ,
2726: PROCEDURE MODIFY_RECIPIENT
2727: (
2728: p_api_version IN NUMBER := 1.0 ,
2729: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
2730: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2731: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
2732: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2733: p_recipient_tbl IN OUT NOCOPY recipient_tbl ,
2734: x_return_status OUT NOCOPY VARCHAR2 ,
2727: (
2728: p_api_version IN NUMBER := 1.0 ,
2729: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
2730: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2731: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
2732: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2733: p_recipient_tbl IN OUT NOCOPY recipient_tbl ,
2734: x_return_status OUT NOCOPY VARCHAR2 ,
2735: x_msg_count OUT NOCOPY NUMBER ,
2728: p_api_version IN NUMBER := 1.0 ,
2729: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
2730: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2731: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
2732: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
2733: p_recipient_tbl IN OUT NOCOPY recipient_tbl ,
2734: x_return_status OUT NOCOPY VARCHAR2 ,
2735: x_msg_count OUT NOCOPY NUMBER ,
2736: x_msg_data OUT NOCOPY VARCHAR2)
2786:
2787: END IF;
2788: END IF;
2789: -- Standard call to check for call compatibility.
2790: IF FND_API.to_boolean(p_init_msg_list)
2791: THEN
2792: FND_MSG_PUB.initialize;
2793: END IF;
2794: -- Initialize API return status to success
2793: END IF;
2794: -- Initialize API return status to success
2795: x_return_status := 'S';
2796: -- Initialize message list if p_init_msg_list is set to TRUE.
2797: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
2798: p_api_version,
2799: l_api_name,G_PKG_NAME)
2800: THEN
2801: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2797: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
2798: p_api_version,
2799: l_api_name,G_PKG_NAME)
2800: THEN
2801: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2802: END IF;
2803: -- Start API Body
2804: IF p_recipient_tbl.COUNT > 0
2805: THEN
2818: l_msg_count := FND_MSG_PUB.count_msg;
2819:
2820: IF l_msg_count > 0 THEN
2821: X_msg_count := l_msg_count;
2822: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2823: RAISE FND_API.G_EXC_ERROR;
2824: END IF;
2825:
2826: FOR i IN p_recipient_tbl.FIRST..p_recipient_tbl.LAST
2819:
2820: IF l_msg_count > 0 THEN
2821: X_msg_count := l_msg_count;
2822: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2823: RAISE FND_API.G_EXC_ERROR;
2824: END IF;
2825:
2826: FOR i IN p_recipient_tbl.FIRST..p_recipient_tbl.LAST
2827: LOOP
2837: if (l_recipient_info.object_version_number <>p_recipient_tbl(i).object_version_number)
2838: then
2839: FND_MESSAGE.SET_NAME('AHL','AHL_COM_RECORD_CHANGED');
2840: FND_MSG_PUB.ADD;
2841: --ad RAISE FND_API.G_EXC_ERROR;
2842: --ad end if;
2843: else --ad
2844:
2845: -- The following conditions compare the new record value with old record
2897: p_recipient_tbl(i).delete_flag = 'Y')
2898: THEN
2899: DELETE_RECIPIENT
2900: ( p_api_version => 1.0 ,
2901: p_init_msg_list => FND_API.G_FALSE ,
2902: p_commit => FND_API.G_FALSE ,
2903: p_validate_only => FND_API.G_TRUE ,
2904: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2905: p_recipient_rec => p_recipient_tbl(i) ,
2898: THEN
2899: DELETE_RECIPIENT
2900: ( p_api_version => 1.0 ,
2901: p_init_msg_list => FND_API.G_FALSE ,
2902: p_commit => FND_API.G_FALSE ,
2903: p_validate_only => FND_API.G_TRUE ,
2904: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2905: p_recipient_rec => p_recipient_tbl(i) ,
2906: x_return_status => x_return_status ,
2899: DELETE_RECIPIENT
2900: ( p_api_version => 1.0 ,
2901: p_init_msg_list => FND_API.G_FALSE ,
2902: p_commit => FND_API.G_FALSE ,
2903: p_validate_only => FND_API.G_TRUE ,
2904: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2905: p_recipient_rec => p_recipient_tbl(i) ,
2906: x_return_status => x_return_status ,
2907: x_msg_count => x_msg_count ,
2900: ( p_api_version => 1.0 ,
2901: p_init_msg_list => FND_API.G_FALSE ,
2902: p_commit => FND_API.G_FALSE ,
2903: p_validate_only => FND_API.G_TRUE ,
2904: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2905: p_recipient_rec => p_recipient_tbl(i) ,
2906: x_return_status => x_return_status ,
2907: x_msg_count => x_msg_count ,
2908: x_msg_data => x_msg_data);
2910: end if;--ad
2911: END LOOP;
2912: END IF;
2913: -- Standard check of p_commit.
2914: IF FND_API.TO_BOOLEAN(p_commit) THEN
2915: COMMIT;
2916: END IF;
2917: -- Debug info
2918: IF G_DEBUG='Y' THEN
2925:
2926: END IF;
2927:
2928: EXCEPTION
2929: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2930: ROLLBACK TO modify_recipient;
2931: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2932: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2933: p_count => x_msg_count,
2927:
2928: EXCEPTION
2929: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2930: ROLLBACK TO modify_recipient;
2931: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2932: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2933: p_count => x_msg_count,
2934: p_data => x_msg_data);
2935: IF G_DEBUG='Y' THEN
2928: EXCEPTION
2929: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2930: ROLLBACK TO modify_recipient;
2931: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2932: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2933: p_count => x_msg_count,
2934: p_data => x_msg_data);
2935: IF G_DEBUG='Y' THEN
2936: AHL_DEBUG_PUB.log_app_messages (x_msg_count, x_msg_data, 'ERROR' );
2940: AHL_DEBUG_PUB.disable_debug;
2941:
2942: END IF;
2943:
2944: WHEN FND_API.G_EXC_ERROR THEN
2945: ROLLBACK TO modify_recipient;
2946: X_return_status := FND_API.G_RET_STS_ERROR;
2947: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2948: p_count => x_msg_count,
2942: END IF;
2943:
2944: WHEN FND_API.G_EXC_ERROR THEN
2945: ROLLBACK TO modify_recipient;
2946: X_return_status := FND_API.G_RET_STS_ERROR;
2947: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2948: p_count => x_msg_count,
2949: p_data => X_msg_data);
2950: -- Debug info.
2943:
2944: WHEN FND_API.G_EXC_ERROR THEN
2945: ROLLBACK TO modify_recipient;
2946: X_return_status := FND_API.G_RET_STS_ERROR;
2947: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2948: p_count => x_msg_count,
2949: p_data => X_msg_data);
2950: -- Debug info.
2951: IF G_DEBUG='Y' THEN
2959: END IF;
2960:
2961: WHEN DUP_VAL_ON_INDEX THEN
2962: ROLLBACK TO modify_recipient;
2963: X_return_status := FND_API.G_RET_STS_ERROR;
2964: FND_MESSAGE.SET_NAME('AHL','AHL_DI_RECIPIENT_DUP_RECORD');
2965: FND_MSG_PUB.ADD;
2966: -- Check if API is called in debug mode. If yes, disable debug.
2967: IF G_DEBUG='Y' THEN
2969:
2970: END IF;
2971: WHEN OTHERS THEN
2972: ROLLBACK TO modify_recipient;
2973: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2974: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
2975: THEN
2976: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
2977: p_procedure_name => 'MODIFY_RECIPIENT',
2976: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
2977: p_procedure_name => 'MODIFY_RECIPIENT',
2978: p_error_text => SUBSTR(SQLERRM,1,240));
2979: END IF;
2980: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2981: p_count => x_msg_count,
2982: p_data => X_msg_data);
2983:
2984: -- Debug info.
3002:
3003: PROCEDURE DELETE_RECIPIENT
3004: (
3005: p_api_version IN NUMBER := 1.0 ,
3006: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
3007: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
3008: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
3009: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
3010: p_recipient_rec IN recipient_rec ,
3003: PROCEDURE DELETE_RECIPIENT
3004: (
3005: p_api_version IN NUMBER := 1.0 ,
3006: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
3007: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
3008: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
3009: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
3010: p_recipient_rec IN recipient_rec ,
3011: x_return_status OUT NOCOPY VARCHAR2 ,
3004: (
3005: p_api_version IN NUMBER := 1.0 ,
3006: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
3007: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
3008: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
3009: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
3010: p_recipient_rec IN recipient_rec ,
3011: x_return_status OUT NOCOPY VARCHAR2 ,
3012: x_msg_count OUT NOCOPY NUMBER ,
3005: p_api_version IN NUMBER := 1.0 ,
3006: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE ,
3007: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
3008: p_validate_only IN VARCHAR2 := FND_API.G_TRUE ,
3009: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
3010: p_recipient_rec IN recipient_rec ,
3011: x_return_status OUT NOCOPY VARCHAR2 ,
3012: x_msg_count OUT NOCOPY NUMBER ,
3013: x_msg_data OUT NOCOPY VARCHAR2)
3044:
3045: END IF;
3046: END IF;
3047: -- Standard call to check for call compatibility.
3048: IF FND_API.to_boolean(p_init_msg_list)
3049: THEN
3050: FND_MSG_PUB.initialize;
3051: END IF;
3052: -- Initialize API return status to success
3051: END IF;
3052: -- Initialize API return status to success
3053: x_return_status := 'S';
3054: -- Initialize message list if p_init_msg_list is set to TRUE.
3055: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
3056: p_api_version,
3057: l_api_name,G_PKG_NAME)
3058: THEN
3059: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3055: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
3056: p_api_version,
3057: l_api_name,G_PKG_NAME)
3058: THEN
3059: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
3060: END IF;
3061: -- IF p_recipient_tbl.COUNT > 0
3062: -- THEN
3063: -- FOR i IN p_recipient_tbl.FIRST..p_recipient_tbl.LAST
3070: --FND_MESSAGE.SET_NAME('AHL','AHL_DI_RECIP_PTY_ID_INVALID');
3071: FND_MESSAGE.SET_NAME('AHL','AHL_DI_RECIPIENT_DELETED');
3072: FND_MESSAGE.SET_TOKEN('RECPNAME',p_recipient_rec.recipient_party_number);
3073: FND_MSG_PUB.ADD;
3074: RAISE FND_API.G_EXC_ERROR;
3075: --Modified pjha 24-Jul-2002 for bug#2473425: End
3076: END IF;
3077: CLOSE get_recipient_rec_info;
3078: --Commented pjha 24-Jul-2002 no need of this check since record can only be
3091: WHERE ROWID = l_rowid;
3092: -- END LOOP;
3093: -- END IF;
3094: --Standarad check for commit
3095: IF FND_API.TO_BOOLEAN(p_commit) THEN
3096: COMMIT;
3097: END IF;
3098: -- Debug info
3099: IF G_DEBUG='Y' THEN
3106:
3107: END IF;
3108:
3109: EXCEPTION
3110: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3111: ROLLBACK TO delete_recipient;
3112: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3113: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
3114: p_count => x_msg_count,
3108:
3109: EXCEPTION
3110: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3111: ROLLBACK TO delete_recipient;
3112: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3113: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
3114: p_count => x_msg_count,
3115: p_data => x_msg_data);
3116: IF G_DEBUG='Y' THEN
3109: EXCEPTION
3110: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3111: ROLLBACK TO delete_recipient;
3112: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3113: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
3114: p_count => x_msg_count,
3115: p_data => x_msg_data);
3116: IF G_DEBUG='Y' THEN
3117: AHL_DEBUG_PUB.log_app_messages (x_msg_count, x_msg_data, 'ERROR' );
3122: AHL_DEBUG_PUB.disable_debug;
3123:
3124: END IF;
3125:
3126: WHEN FND_API.G_EXC_ERROR THEN
3127: ROLLBACK TO delete_recipient;
3128: X_return_status := FND_API.G_RET_STS_ERROR;
3129: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
3130: p_count => x_msg_count,
3124: END IF;
3125:
3126: WHEN FND_API.G_EXC_ERROR THEN
3127: ROLLBACK TO delete_recipient;
3128: X_return_status := FND_API.G_RET_STS_ERROR;
3129: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
3130: p_count => x_msg_count,
3131: p_data => X_msg_data);
3132: -- Debug info.
3125:
3126: WHEN FND_API.G_EXC_ERROR THEN
3127: ROLLBACK TO delete_recipient;
3128: X_return_status := FND_API.G_RET_STS_ERROR;
3129: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
3130: p_count => x_msg_count,
3131: p_data => X_msg_data);
3132: -- Debug info.
3133: IF G_DEBUG='Y' THEN
3141: END IF;
3142:
3143: WHEN OTHERS THEN
3144: ROLLBACK TO delete_recipient;
3145: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3146: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
3147: THEN
3148: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
3149: p_procedure_name => 'DELETE_RECIPIENT',
3148: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_DI_DOC_INDEX_PVT',
3149: p_procedure_name => 'DELETE_RECIPIENT',
3150: p_error_text => SUBSTR(SQLERRM,1,240));
3151: END IF;
3152: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
3153: p_count => x_msg_count,
3154: p_data => X_msg_data);
3155:
3156: -- Debug info.