272: END IF;
273: IF ( FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
274: FND_LOG.STRING( FND_LOG.LEVEL_PROCEDURE ,g_module||l_api_name,statement);
275: END IF;
276: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
277:
278: END version_table;
279:
280:
279:
280:
281: PROCEDURE restore_table
282: ( p_api_version IN NUMBER
283: , p_commit IN VARCHAR2 := FND_API.G_FALSE
284: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
285: , x_msg_count OUT NOCOPY NUMBER
286: , x_msg_data OUT NOCOPY VARCHAR2
287: , x_return_status OUT NOCOPY VARCHAR2
280:
281: PROCEDURE restore_table
282: ( p_api_version IN NUMBER
283: , p_commit IN VARCHAR2 := FND_API.G_FALSE
284: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
285: , x_msg_count OUT NOCOPY NUMBER
286: , x_msg_data OUT NOCOPY VARCHAR2
287: , x_return_status OUT NOCOPY VARCHAR2
288: , p_header_id IN NUMBER
472: END IF;
473: IF ( FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
474: FND_LOG.STRING( FND_LOG.LEVEL_PROCEDURE ,g_module||l_api_name,statement);
475: END IF;
476: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
477:
478: END restore_table;
479:
480:
482: -- Private Procedures
483: --
484: PROCEDURE version_contract
485: ( p_api_version IN NUMBER
486: , p_commit IN VARCHAR2 := FND_API.G_FALSE
487: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
488: , x_msg_count OUT NOCOPY NUMBER
489: , x_msg_data OUT NOCOPY VARCHAR2
490: , x_return_status OUT NOCOPY VARCHAR2
483: --
484: PROCEDURE version_contract
485: ( p_api_version IN NUMBER
486: , p_commit IN VARCHAR2 := FND_API.G_FALSE
487: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
488: , x_msg_count OUT NOCOPY NUMBER
489: , x_msg_data OUT NOCOPY VARCHAR2
490: , x_return_status OUT NOCOPY VARCHAR2
491: , p_chr_id IN NUMBER
526:
527: --
528: -- Set API return status to success
529: --
530: x_return_status := FND_API.G_RET_STS_SUCCESS;
531: l_return_status := FND_API.G_RET_STS_SUCCESS;
532:
533: --
534: -- Check API incompatibility
527: --
528: -- Set API return status to success
529: --
530: x_return_status := FND_API.G_RET_STS_SUCCESS;
531: l_return_status := FND_API.G_RET_STS_SUCCESS;
532:
533: --
534: -- Check API incompatibility
535: --
536:
537: --
538: -- Initialize the message table if requested.
539: --
540: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
541: FND_MSG_PUB.initialize;
542: END IF;
543:
544: --
563: IF FND_MSG_PUB.Check_Msg_Level( FND_MSG_PUB.G_MSG_LVL_ERROR ) THEN
564: FND_MESSAGE.set_name('OKE','OKE_VERS_INVALID_CONTRACT');
565: FND_MSG_PUB.add;
566: END IF;
567: x_return_status := FND_API.G_RET_STS_ERROR;
568: RAISE FND_API.G_EXC_ERROR;
569: END IF;
570: CLOSE cvmv;
571:
564: FND_MESSAGE.set_name('OKE','OKE_VERS_INVALID_CONTRACT');
565: FND_MSG_PUB.add;
566: END IF;
567: x_return_status := FND_API.G_RET_STS_ERROR;
568: RAISE FND_API.G_EXC_ERROR;
569: END IF;
570: CLOSE cvmv;
571:
572: progress := 2;
581: -- Version OKC side of contract components
582: --
583: OKC_VERSION_PVT.Version_Contract
584: ( p_api_version => p_api_version
585: , p_commit => FND_API.G_FALSE
586: , p_init_msg_list => p_init_msg_list
587: , x_return_status => l_return_status
588: , x_msg_count => x_msg_count
589: , x_msg_data => x_msg_data
594: --
595:
596: progress := 3;
597:
598: IF ( l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
599: ROLLBACK TO version_contract_pvt;
600: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
602: ELSIF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
596: progress := 3;
597:
598: IF ( l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
599: ROLLBACK TO version_contract_pvt;
600: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
602: ELSIF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
603: ROLLBACK TO version_contract_pvt;
604: x_return_status := FND_API.G_RET_STS_ERROR;
597:
598: IF ( l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
599: ROLLBACK TO version_contract_pvt;
600: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
602: ELSIF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
603: ROLLBACK TO version_contract_pvt;
604: x_return_status := FND_API.G_RET_STS_ERROR;
605: RAISE FND_API.G_EXC_ERROR;
598: IF ( l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
599: ROLLBACK TO version_contract_pvt;
600: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
602: ELSIF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
603: ROLLBACK TO version_contract_pvt;
604: x_return_status := FND_API.G_RET_STS_ERROR;
605: RAISE FND_API.G_EXC_ERROR;
606: END IF;
600: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
602: ELSIF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
603: ROLLBACK TO version_contract_pvt;
604: x_return_status := FND_API.G_RET_STS_ERROR;
605: RAISE FND_API.G_EXC_ERROR;
606: END IF;
607:
608: progress := 4;
601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
602: ELSIF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
603: ROLLBACK TO version_contract_pvt;
604: x_return_status := FND_API.G_RET_STS_ERROR;
605: RAISE FND_API.G_EXC_ERROR;
606: END IF;
607:
608: progress := 4;
609:
668:
669: --
670: -- Standard commit check
671: --
672: IF FND_API.TO_BOOLEAN( p_commit ) THEN
673: COMMIT;
674: END IF;
675:
676: progress := 8;
684:
685: TimeStamp('version_contract() >>');
686:
687: EXCEPTION
688: WHEN FND_API.G_EXC_ERROR THEN
689: ROLLBACK TO version_contract_pvt;
690: x_return_status := FND_API.G_RET_STS_ERROR;
691: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count
692: , p_data => x_msg_data );
686:
687: EXCEPTION
688: WHEN FND_API.G_EXC_ERROR THEN
689: ROLLBACK TO version_contract_pvt;
690: x_return_status := FND_API.G_RET_STS_ERROR;
691: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count
692: , p_data => x_msg_data );
693:
694: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
690: x_return_status := FND_API.G_RET_STS_ERROR;
691: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count
692: , p_data => x_msg_data );
693:
694: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
695: ROLLBACK TO version_contract_pvt;
696: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
697: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count
698: , p_data => x_msg_data );
692: , p_data => x_msg_data );
693:
694: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
695: ROLLBACK TO version_contract_pvt;
696: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
697: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count
698: , p_data => x_msg_data );
699:
700: WHEN OTHERS THEN
698: , p_data => x_msg_data );
699:
700: WHEN OTHERS THEN
701: ROLLBACK TO version_contract_pvt;
702: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
703: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
704: FND_MSG_PUB.add_exc_msg
705: ( p_pkg_name => G_PKG_NAME
706: , p_procedure_name => 'VERSION_CONTRACT(' || progress || ')');
714:
715:
716: PROCEDURE restore_contract_version
717: ( p_api_version IN NUMBER
718: , p_commit IN VARCHAR2 := FND_API.G_FALSE
719: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
720: , x_msg_count OUT NOCOPY NUMBER
721: , x_msg_data OUT NOCOPY VARCHAR2
722: , x_return_status OUT NOCOPY VARCHAR2
715:
716: PROCEDURE restore_contract_version
717: ( p_api_version IN NUMBER
718: , p_commit IN VARCHAR2 := FND_API.G_FALSE
719: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
720: , x_msg_count OUT NOCOPY NUMBER
721: , x_msg_data OUT NOCOPY VARCHAR2
722: , x_return_status OUT NOCOPY VARCHAR2
723: , p_chr_id IN NUMBER
759:
760: --
761: -- Set API return status to success
762: --
763: x_return_status := FND_API.G_RET_STS_SUCCESS;
764: l_return_status := FND_API.G_RET_STS_SUCCESS;
765:
766: --
767: -- Check API incompatibility
760: --
761: -- Set API return status to success
762: --
763: x_return_status := FND_API.G_RET_STS_SUCCESS;
764: l_return_status := FND_API.G_RET_STS_SUCCESS;
765:
766: --
767: -- Check API incompatibility
768: --
769:
770: --
771: -- Initialize the message table if requested.
772: --
773: IF FND_API.TO_BOOLEAN( p_init_msg_list ) THEN
774: FND_MSG_PUB.initialize;
775: END IF;
776: /* bug#4451971
777: --
777: --
778: -- First version the current state of the contract
779: --
780: version_contract( p_api_version => p_api_version
781: , p_commit => FND_API.G_FALSE
782: , p_init_msg_list => FND_API.G_FALSE
783: , x_msg_count => x_msg_count
784: , x_msg_data => x_msg_data
785: , x_return_status => l_return_status
778: -- First version the current state of the contract
779: --
780: version_contract( p_api_version => p_api_version
781: , p_commit => FND_API.G_FALSE
782: , p_init_msg_list => FND_API.G_FALSE
783: , x_msg_count => x_msg_count
784: , x_msg_data => x_msg_data
785: , x_return_status => l_return_status
786: , p_chr_id => p_chr_id
792:
793: --
794: -- If anything happens, abort API
795: --
796: IF ( l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
797: ROLLBACK TO rstr_contract_version_pvt;
798: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
799: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
800: ELSIF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
794: -- If anything happens, abort API
795: --
796: IF ( l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
797: ROLLBACK TO rstr_contract_version_pvt;
798: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
799: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
800: ELSIF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
801: ROLLBACK TO rstr_contract_version_pvt;
802: x_return_status := FND_API.G_RET_STS_ERROR;
795: --
796: IF ( l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
797: ROLLBACK TO rstr_contract_version_pvt;
798: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
799: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
800: ELSIF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
801: ROLLBACK TO rstr_contract_version_pvt;
802: x_return_status := FND_API.G_RET_STS_ERROR;
803: RAISE FND_API.G_EXC_ERROR;
796: IF ( l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
797: ROLLBACK TO rstr_contract_version_pvt;
798: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
799: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
800: ELSIF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
801: ROLLBACK TO rstr_contract_version_pvt;
802: x_return_status := FND_API.G_RET_STS_ERROR;
803: RAISE FND_API.G_EXC_ERROR;
804: END IF;
798: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
799: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
800: ELSIF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
801: ROLLBACK TO rstr_contract_version_pvt;
802: x_return_status := FND_API.G_RET_STS_ERROR;
803: RAISE FND_API.G_EXC_ERROR;
804: END IF;
805:
806: x_new_vers := l_new_vers_num;
799: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
800: ELSIF ( l_return_status = FND_API.G_RET_STS_ERROR ) THEN
801: ROLLBACK TO rstr_contract_version_pvt;
802: x_return_status := FND_API.G_RET_STS_ERROR;
803: RAISE FND_API.G_EXC_ERROR;
804: END IF;
805:
806: x_new_vers := l_new_vers_num;
807: end of bug#4451971 */
839:
840: --
841: -- Standard commit check
842: --
843: IF FND_API.TO_BOOLEAN( p_commit ) THEN
844: COMMIT;
845: END IF;
846:
847: --
853:
854: TimeStamp('restore_contract_version() >>');
855:
856: EXCEPTION
857: WHEN FND_API.G_EXC_ERROR THEN
858: ROLLBACK TO rstr_contract_version_pvt;
859: x_return_status := FND_API.G_RET_STS_ERROR;
860: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count
861: , p_data => x_msg_data );
855:
856: EXCEPTION
857: WHEN FND_API.G_EXC_ERROR THEN
858: ROLLBACK TO rstr_contract_version_pvt;
859: x_return_status := FND_API.G_RET_STS_ERROR;
860: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count
861: , p_data => x_msg_data );
862:
863: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
859: x_return_status := FND_API.G_RET_STS_ERROR;
860: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count
861: , p_data => x_msg_data );
862:
863: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
864: ROLLBACK TO rstr_contract_version_pvt;
865: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
866: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count
867: , p_data => x_msg_data );
861: , p_data => x_msg_data );
862:
863: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
864: ROLLBACK TO rstr_contract_version_pvt;
865: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
866: FND_MSG_PUB.Count_And_Get( p_count => x_msg_count
867: , p_data => x_msg_data );
868:
869: WHEN OTHERS THEN
867: , p_data => x_msg_data );
868:
869: WHEN OTHERS THEN
870: ROLLBACK TO rstr_contract_version_pvt;
871: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
872: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
873: FND_MSG_PUB.add_exc_msg
874: ( p_pkg_name => G_PKG_NAME
875: , p_procedure_name => 'RESTORE_CONTRACT_VERSION' );