16:
17: ------------------------------------------------------------------------------
18: -- GLOBAL CONSTANTS
19: ------------------------------------------------------------------------------
20: G_FALSE CONSTANT VARCHAR2(1) := FND_API.G_FALSE;
21: G_TRUE CONSTANT VARCHAR2(1) := FND_API.G_TRUE;
22: G_RET_STS_SUCCESS CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
23: G_RET_STS_ERROR CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_ERROR;
24: G_RET_STS_UNEXP_ERROR CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_UNEXP_ERROR;
17: ------------------------------------------------------------------------------
18: -- GLOBAL CONSTANTS
19: ------------------------------------------------------------------------------
20: G_FALSE CONSTANT VARCHAR2(1) := FND_API.G_FALSE;
21: G_TRUE CONSTANT VARCHAR2(1) := FND_API.G_TRUE;
22: G_RET_STS_SUCCESS CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
23: G_RET_STS_ERROR CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_ERROR;
24: G_RET_STS_UNEXP_ERROR CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_UNEXP_ERROR;
25: G_UNEXPECTED_ERROR CONSTANT VARCHAR2(200) := 'OKC_UNEXPECTED_ERROR';
18: -- GLOBAL CONSTANTS
19: ------------------------------------------------------------------------------
20: G_FALSE CONSTANT VARCHAR2(1) := FND_API.G_FALSE;
21: G_TRUE CONSTANT VARCHAR2(1) := FND_API.G_TRUE;
22: G_RET_STS_SUCCESS CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
23: G_RET_STS_ERROR CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_ERROR;
24: G_RET_STS_UNEXP_ERROR CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_UNEXP_ERROR;
25: G_UNEXPECTED_ERROR CONSTANT VARCHAR2(200) := 'OKC_UNEXPECTED_ERROR';
26: G_SQLERRM_TOKEN CONSTANT VARCHAR2(200) := 'ERROR_MESSAGE';
19: ------------------------------------------------------------------------------
20: G_FALSE CONSTANT VARCHAR2(1) := FND_API.G_FALSE;
21: G_TRUE CONSTANT VARCHAR2(1) := FND_API.G_TRUE;
22: G_RET_STS_SUCCESS CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
23: G_RET_STS_ERROR CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_ERROR;
24: G_RET_STS_UNEXP_ERROR CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_UNEXP_ERROR;
25: G_UNEXPECTED_ERROR CONSTANT VARCHAR2(200) := 'OKC_UNEXPECTED_ERROR';
26: G_SQLERRM_TOKEN CONSTANT VARCHAR2(200) := 'ERROR_MESSAGE';
27: G_SQLCODE_TOKEN CONSTANT VARCHAR2(200) := 'ERROR_CODE';
20: G_FALSE CONSTANT VARCHAR2(1) := FND_API.G_FALSE;
21: G_TRUE CONSTANT VARCHAR2(1) := FND_API.G_TRUE;
22: G_RET_STS_SUCCESS CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
23: G_RET_STS_ERROR CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_ERROR;
24: G_RET_STS_UNEXP_ERROR CONSTANT VARCHAR2(1) := FND_API.G_RET_STS_UNEXP_ERROR;
25: G_UNEXPECTED_ERROR CONSTANT VARCHAR2(200) := 'OKC_UNEXPECTED_ERROR';
26: G_SQLERRM_TOKEN CONSTANT VARCHAR2(200) := 'ERROR_MESSAGE';
27: G_SQLCODE_TOKEN CONSTANT VARCHAR2(200) := 'ERROR_CODE';
28: G_SIGN_NOTIF_PROCESS CONSTANT VARCHAR2(200) := 'SIGN_NOTIFICATION';
1093: 'Calling OKC_REP_UTIL_PVT.add_signature_hist_record');
1094: END IF;
1095: OKC_REP_UTIL_PVT.add_signature_hist_record(
1096: p_api_version => 1.0,
1097: p_init_msg_list => FND_API.G_FALSE,
1098: p_contract_id => l_contract_id,
1099: p_sequence_id => l_sequence_id,
1100: p_contact_id => l_contact_id ,
1101: p_party_id => l_party_id,
1134: 'Calling OKC_REP_UTIL_PVT.add_signature_hist_record');
1135: END IF;
1136: OKC_REP_UTIL_PVT.add_signature_hist_record(
1137: p_api_version => 1.0,
1138: p_init_msg_list => FND_API.G_FALSE,
1139: p_contract_id => l_contract_id,
1140: p_sequence_id => l_sequence_id,
1141: p_contact_id => l_contact_id ,
1142: p_party_id => l_party_id,
1269: 'Calling OKC_REP_UTIL_PVT.add_signature_hist_record');
1270: END IF;
1271: OKC_REP_UTIL_PVT.add_signature_hist_record(
1272: p_api_version => 1.0,
1273: p_init_msg_list => FND_API.G_FALSE,
1274: p_contract_id => l_contract_id,
1275: p_sequence_id => l_sequence_id,
1276: p_contact_id => l_contact_id ,
1277: p_party_id => l_party_id,
1429: END IF;
1430: -- Update the contract status and add a record in OKC_REP_CON_STATUS_HIST table.
1431: OKC_REP_UTIL_PVT.change_contract_status(
1432: p_api_version => 1.0,
1433: p_init_msg_list => FND_API.G_FALSE,
1434: p_contract_id => l_contract_id,
1435: p_contract_version => l_contract_version,
1436: p_status_code => G_STATUS_SIGNED,
1437: p_user_id => fnd_global.user_id,
1462: 'Calling OKC_DELIVERABLE_PROCESS_PVT.version_deliverables');
1463: END IF;
1464: OKC_DELIVERABLE_PROCESS_PVT.version_deliverables (
1465: p_api_version => 1.0,
1466: p_init_msg_list => FND_API.G_FALSE,
1467: p_doc_id => l_contract_id,
1468: p_doc_version => contract_rec.contract_version_num,
1469: p_doc_type => contract_rec.contract_type,
1470: x_return_status => l_return_status,
1490: || contract_rec.latest_signed_ver_number);
1491: END IF;
1492: -- Now we need to activate deliverables
1493: if (contract_rec.latest_signed_ver_number IS NULL) THEN
1494: l_sync_flag := FND_API.G_FALSE;
1495: ELSE
1496: l_sync_flag := FND_API.G_TRUE;
1497: END IF;
1498:
1492: -- Now we need to activate deliverables
1493: if (contract_rec.latest_signed_ver_number IS NULL) THEN
1494: l_sync_flag := FND_API.G_FALSE;
1495: ELSE
1496: l_sync_flag := FND_API.G_TRUE;
1497: END IF;
1498:
1499: IF ( FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1500: FND_LOG.STRING( FND_LOG.LEVEL_STATEMENT ,G_MODULE||l_api_name,
1509: END IF;
1510:
1511: OKC_MANAGE_DELIVERABLES_GRP.activateDeliverables (
1512: p_api_version => 1.0,
1513: p_init_msg_list => FND_API.G_FALSE,
1514: p_commit => FND_API.G_FALSE,
1515: p_bus_doc_id => l_contract_id,
1516: p_bus_doc_type => contract_rec.contract_type,
1517: p_bus_doc_version => contract_rec.contract_version_num,
1510:
1511: OKC_MANAGE_DELIVERABLES_GRP.activateDeliverables (
1512: p_api_version => 1.0,
1513: p_init_msg_list => FND_API.G_FALSE,
1514: p_commit => FND_API.G_FALSE,
1515: p_bus_doc_id => l_contract_id,
1516: p_bus_doc_type => contract_rec.contract_type,
1517: p_bus_doc_version => contract_rec.contract_version_num,
1518: p_event_code => G_CONTRACT_EFFECTIVE_EVENT,
1536: END IF;
1537: --------------------------------------------------------
1538:
1539: -- Checking if we need to call deliverable's APIs for synch-ing
1540: IF (l_sync_flag = FND_API.G_TRUE) THEN
1541: -- Get the previous signed contract's expiration date
1542: -- Get effective dates and version of the contract.
1543: OPEN arch_contract_csr(contract_rec.latest_signed_ver_number,l_contract_id);
1544: FETCH arch_contract_csr INTO arch_contract_rec;
1551: Okc_Api.Set_Message(p_app_name => G_APP_NAME,
1552: p_msg_name => G_INVALID_CONTRACT_ID_MSG,
1553: p_token1 => G_CONTRACT_ID_TOKEN,
1554: p_token1_value => to_char(l_contract_id));
1555: RAISE FND_API.G_EXC_ERROR;
1556: -- RAISE NO_DATA_FOUND;
1557: END IF;
1558: l_prev_signed_effective_date := arch_contract_rec.contract_effective_date;
1559: l_prev_signed_expiration_date := arch_contract_rec.contract_expiration_date;
1574: -- If last signed version's expiration date is different from the current version's expiration date
1575: -- we need to call deliverables API for synching previous signed deliverables.
1576: -- This logic is executed to handle the null date scenarios
1577: IF (trunc(l_prev_signed_expiration_date)=trunc(contract_rec.contract_expiration_date)) THEN
1578: l_expiration_date_matches_flag := FND_API.G_TRUE;
1579: END IF;
1580:
1581: IF (trunc(l_prev_signed_effective_date)=trunc(contract_rec.contract_effective_date)) THEN
1582: l_effective_date_matches_flag := FND_API.G_TRUE;
1578: l_expiration_date_matches_flag := FND_API.G_TRUE;
1579: END IF;
1580:
1581: IF (trunc(l_prev_signed_effective_date)=trunc(contract_rec.contract_effective_date)) THEN
1582: l_effective_date_matches_flag := FND_API.G_TRUE;
1583: END IF;
1584:
1585: IF ((l_expiration_date_matches_flag = FND_API.G_FALSE ) OR (l_effective_date_matches_flag = FND_API.G_FALSE)) THEN
1586: IF ( FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1581: IF (trunc(l_prev_signed_effective_date)=trunc(contract_rec.contract_effective_date)) THEN
1582: l_effective_date_matches_flag := FND_API.G_TRUE;
1583: END IF;
1584:
1585: IF ((l_expiration_date_matches_flag = FND_API.G_FALSE ) OR (l_effective_date_matches_flag = FND_API.G_FALSE)) THEN
1586: IF ( FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
1587: FND_LOG.STRING( FND_LOG.LEVEL_STATEMENT ,G_MODULE||l_api_name,
1588: 'Calling OKC_MANAGE_DELIVERABLES_GRP.updateDeliverables');
1589: END IF;
1588: 'Calling OKC_MANAGE_DELIVERABLES_GRP.updateDeliverables');
1589: END IF;
1590: OKC_MANAGE_DELIVERABLES_GRP.updateDeliverables (
1591: p_api_version => 1.0,
1592: p_init_msg_list => FND_API.G_FALSE,
1593: p_commit => FND_API.G_FALSE,
1594: p_bus_doc_id => l_contract_id,
1595: p_bus_doc_type => contract_rec.contract_type,
1596: p_bus_doc_version => contract_rec.contract_version_num,
1589: END IF;
1590: OKC_MANAGE_DELIVERABLES_GRP.updateDeliverables (
1591: p_api_version => 1.0,
1592: p_init_msg_list => FND_API.G_FALSE,
1593: p_commit => FND_API.G_FALSE,
1594: p_bus_doc_id => l_contract_id,
1595: p_bus_doc_type => contract_rec.contract_type,
1596: p_bus_doc_version => contract_rec.contract_version_num,
1597: p_bus_doc_date_events_tbl => l_update_event_tbl,
1618: 'Calling OKC_MANAGE_DELIVERABLES_GRP.disableDeliverables');
1619: END IF;
1620: OKC_MANAGE_DELIVERABLES_GRP.disableDeliverables (
1621: p_api_version => 1.0,
1622: p_init_msg_list => FND_API.G_FALSE,
1623: p_commit => FND_API.G_FALSE,
1624: p_bus_doc_id => l_contract_id,
1625: p_bus_doc_type => contract_rec.contract_type,
1626: p_bus_doc_version => contract_rec.latest_signed_ver_number,
1619: END IF;
1620: OKC_MANAGE_DELIVERABLES_GRP.disableDeliverables (
1621: p_api_version => 1.0,
1622: p_init_msg_list => FND_API.G_FALSE,
1623: p_commit => FND_API.G_FALSE,
1624: p_bus_doc_id => l_contract_id,
1625: p_bus_doc_type => contract_rec.contract_type,
1626: p_bus_doc_version => contract_rec.latest_signed_ver_number,
1627: x_msg_data => l_msg_data,
1748:
1749: -- Update the contract status and add a record in OKC_REP_CON_STATUS_HIST table.
1750: OKC_REP_UTIL_PVT.change_contract_status(
1751: p_api_version => 1.0,
1752: p_init_msg_list => FND_API.G_FALSE,
1753: p_contract_id => l_contract_id,
1754: p_contract_version => l_contract_version,
1755: p_status_code => G_STATUS_REJECTED,
1756: p_user_id => fnd_global.user_id,