438:
439:
440: BEGIN
441:
442: l_return_status := OKC_API.G_RET_STS_SUCCESS;
443:
444:
445: DBMS_TRANSACTION.SAVEPOINT('BEFORE_TRANSACTION');
446:
623: l_temp_bcl_id_ri := bcl_rec.bcl_bcl_id;
624: --- the temp variable assignment holds the current credit bcl
625: l_temp_bcl_id_tr := l_bclv_tbl_out(1).ID;
626:
627: IF not l_return_status = OKC_API.G_RET_STS_SUCCESS THEN
628: x_return_status := l_return_status;
629: Raise G_EXCEPTION_HALT_VALIDATION;
630: END IF;
631:
779: x_bslv_tbl => l_bslv_tbl_out
780: );
781:
782:
783: IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
784: x_return_status := l_return_status;
785: Raise G_EXCEPTION_HALT_VALIDATION;
786: END IF;
787:
843: );
844:
845:
846:
847: IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
848: x_return_status := l_return_status;
849: Raise G_EXCEPTION_HALT_VALIDATION;
850: END IF;
851: END LOOP; --bsd cursor loop
873: x_return_status := l_return_status;
874:
875: EXCEPTION
876: WHEN G_EXCEPTION_HALT_VALIDATION THEN
877: x_return_status := OKC_API.G_RET_STS_ERROR ;
878: WHEN OTHERS THEN
879: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN, SQLCODE, G_SQLERRM_TOKEN,SQLERRM);
880:
881: END Create_trx_records;
875: EXCEPTION
876: WHEN G_EXCEPTION_HALT_VALIDATION THEN
877: x_return_status := OKC_API.G_RET_STS_ERROR ;
878: WHEN OTHERS THEN
879: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN, SQLCODE, G_SQLERRM_TOKEN,SQLERRM);
880:
881: END Create_trx_records;
882:
883:
1063: ------------------------------------------------------------------------
1064: PROCEDURE pre_vol_based_terminate(
1065: P_CALLEDFROM IN NUMBER DEFAULT Null ,
1066: P_API_VERSION IN NUMBER ,
1067: P_INIT_MSG_LIST IN VARCHAR2 DEFAULT OKC_API.G_FALSE ,
1068: X_RETURN_STATUS OUT NOCOPY VARCHAR2 ,
1069: X_MSG_COUNT OUT NOCOPY NUMBER ,
1070: X_MSG_DATA OUT NOCOPY VARCHAR2 ,
1071: P_K_LINE_ID IN NUMBER ,
1392: fnd_log.string(fnd_log.level_procedure,G_MODULE_CURRENT||'.pre_terminate_amount.p_flag',
1393: 'Entering pre_terminate_amount with input parameters p_flag ' ||p_flag||' ,p_id '||p_id||' ,p_terminate_date '||to_char(p_terminate_date));
1394: END IF;
1395:
1396: x_return_status := OKC_API.G_RET_STS_SUCCESS ;
1397: l_billed := FALSE;
1398: l_term_method := 'AMOUNT';
1399: IF (p_flag in (1,3)) THEN -- p_id is line_id
1400:
1848: EXCEPTION
1849: WHEN G_EXCEPTION_HALT_VALIDATION THEN
1850: x_return_status := l_return_status ;
1851: WHEN OTHERS THEN
1852: x_return_status := OKC_API.G_RET_STS_ERROR ;
1853:
1854: END pre_terminate_amount;
1855:
1856:
1885: l_amount NUMBER;
1886:
1887:
1888: BEGIN
1889: x_return_status := OKC_API.G_RET_STS_SUCCESS ;
1890:
1891: IF (p_billed_amount <= p_shipped_amount ) THEN
1892: X_amount := 0;
1893: ELSE
2052:
2053: BEGIN
2054: final_amount := 0;
2055:
2056: x_return_status := OKC_API.G_RET_STS_SUCCESS ;
2057:
2058:
2059: OPEN line_lse_id_cur(p_line_id);
2060: FETCH line_lse_id_cur into l_lse_id;
2255:
2256:
2257: EXCEPTION
2258: WHEN G_EXCEPTION_HALT_VALIDATION THEN
2259: x_return_status := OKC_API.G_RET_STS_ERROR ;
2260: WHEN OTHERS THEN
2261: x_return_status := OKC_API.G_RET_STS_ERROR ;
2262: END;
2263:
2257: EXCEPTION
2258: WHEN G_EXCEPTION_HALT_VALIDATION THEN
2259: x_return_status := OKC_API.G_RET_STS_ERROR ;
2260: WHEN OTHERS THEN
2261: x_return_status := OKC_API.G_RET_STS_ERROR ;
2262: END;
2263:
2264:
2265:
2416: l_msg_cnt NUMBER;
2417: l_stat NUMBER;
2418: l_amount NUMBER ;
2419: l_round_amt NUMBER ;
2420: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2421:
2422: BEGIN
2423:
2424:
2549:
2550: --errorout('SERVICE :- CREATE TERM RECS INSERT BSL' || l_return_status);
2551:
2552:
2553: IF not l_return_status = OKC_API.G_RET_STS_SUCCESS THEN
2554: x_return_status := l_return_status;
2555: Raise G_EXCEPTION_HALT_VALIDATION;
2556: END IF;
2557:
2609: );
2610:
2611: --errorout('SERVICE :- CREATE TERM RECS INSERT BSL DET ' || l_return_status);
2612:
2613: IF not l_return_status = OKC_API.G_RET_STS_SUCCESS THEN
2614: x_return_status := l_return_status;
2615: Raise G_EXCEPTION_HALT_VALIDATION;
2616: END IF;
2617:
2629: EXCEPTION
2630: WHEN G_EXCEPTION_HALT_VALIDATION THEN
2631: x_return_status := l_return_status;
2632: WHEN OTHERS THEN
2633: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2634: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
2635:
2636: END create_term_recs;
2637:
2630: WHEN G_EXCEPTION_HALT_VALIDATION THEN
2631: x_return_status := l_return_status;
2632: WHEN OTHERS THEN
2633: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2634: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
2635:
2636: END create_term_recs;
2637:
2638:
2789:
2790:
2791: EXCEPTION
2792: WHEN G_EXCEPTION_HALT_VALIDATION THEN
2793: l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2794: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
2795: WHEN OTHERS THEN
2796: l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2797: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
2790:
2791: EXCEPTION
2792: WHEN G_EXCEPTION_HALT_VALIDATION THEN
2793: l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2794: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
2795: WHEN OTHERS THEN
2796: l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2797: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
2798:
2792: WHEN G_EXCEPTION_HALT_VALIDATION THEN
2793: l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2794: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
2795: WHEN OTHERS THEN
2796: l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2797: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
2798:
2799: END create_bank_Account;
2800: ***/
2793: l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2794: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
2795: WHEN OTHERS THEN
2796: l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2797: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
2798:
2799: END create_bank_Account;
2800: ***/
2801:
2940: L_TOP_LINE_ID NUMBER;
2941: L_COV_LINE_ID NUMBER;
2942: --L_MANUAL_CREDIT NUMBER;
2943: L_PROCESS_FLAG BOOLEAN;
2944: L_RETURN_STATUS VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2945: QTY_UOM_REC QTY_UOM_CSR%ROWTYPE;
2946: L_TERMINATION_DATE DATE;
2947: L_MAX_DATE_BILLED_FROM DATE;
2948: L_MAX_DATE_BILLED_TO DATE;
3039: FETCH cur_lineno into l_line_number,l_contract_number;
3040: CLOSE cur_lineno;
3041:
3042:
3043: OKC_API.set_message(p_app_name => g_app_name,
3044: p_msg_name => 'OKC_SR_PENDING',
3045: p_token1 => 'NUMBER',
3046: p_token1_value => l_contract_number,
3047: p_token2 => 'LINENO',
3046: p_token1_value => l_contract_number,
3047: p_token2 => 'LINENO',
3048: p_token2_value => l_line_number);
3049:
3050: l_return_status := okc_api.g_ret_sts_error;
3051: raise G_EXCEPTION_HALT_VALIDATION;
3052: END IF;
3053:
3054: END IF; --FOR P_CALLEDFROM
3157: EXCEPTION
3158: WHEN G_EXCEPTION_HALT_VALIDATION THEN
3159: x_return_status := l_return_status;
3160: WHEN OTHERS THEN
3161: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
3162: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
3163: END;
3164:
3165:
3158: WHEN G_EXCEPTION_HALT_VALIDATION THEN
3159: x_return_status := l_return_status;
3160: WHEN OTHERS THEN
3161: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
3162: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
3163: END;
3164:
3165:
3166:
3262:
3263: BEGIN
3264:
3265:
3266: x_return_status := OKC_API.G_RET_STS_SUCCESS;
3267: x_amount := 0;
3268:
3269: OPEN l_hdr_csr(p_k_line_id);
3270: FETCH l_hdr_csr into l_hdr_id;
3428: EXCEPTION
3429: WHEN G_EXCEPTION_HALT_VALIDATION THEN
3430: x_return_status := l_return_status;
3431: WHEN OTHERS THEN
3432: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
3433: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
3434:
3435: END pre_terminate_srvc;
3436:
3429: WHEN G_EXCEPTION_HALT_VALIDATION THEN
3430: x_return_status := l_return_status;
3431: WHEN OTHERS THEN
3432: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
3433: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
3434:
3435: END pre_terminate_srvc;
3436:
3437: PROCEDURE terminate_subscribtion_line
3437: PROCEDURE terminate_subscribtion_line
3438: (
3439: P_CALLEDFROM IN NUMBER DEFAULT NULL,
3440: p_api_version IN NUMBER,
3441: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
3442: x_return_status OUT NOCOPY VARCHAR2,
3443: x_msg_count OUT NOCOPY NUMBER,
3444: x_msg_data OUT NOCOPY VARCHAR2,
3445: p_line_id IN NUMBER,
3888: p_bslv_tbl => l_bslv_tbl_in,
3889: x_bslv_tbl => l_bslv_tbl_out
3890: );
3891:
3892: IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
3893: x_return_status := l_return_status;
3894: Raise G_EXCEPTION_HALT_VALIDATION;
3895: END IF;
3896: g_credit_amount := nvl(g_credit_amount,0) + (-1*l_amount);
3941: x_bsdv_tbl => l_bsdv_tbl_out
3942: );
3943:
3944:
3945: IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
3946: x_return_status := l_return_status;
3947: Raise G_EXCEPTION_HALT_VALIDATION;
3948: END IF;
3949:
4350: SKIP_THIS_LINE EXCEPTION;
4351: /* End Addition for bug fix 6012384 (FP for 5990067) */
4352: BEGIN
4353: DBMS_TRANSACTION.SAVEPOINT('BEFORE_PRE_TERMINATE');
4354: x_return_status := OKC_API.G_RET_STS_SUCCESS ;
4355: l_billed := FALSE;
4356: l_terminate := FALSE;
4357: l_termination_amount := p_termination_amount;
4358: l_con_termination_amount := p_con_termination_amount;
4378: OPEN cur_lineno(p_id);
4379: FETCH cur_lineno into l_lineno,l_contract_number;
4380: CLOSE cur_lineno;
4381:
4382: OKC_API.set_message(p_app_name => g_app_name,
4383: p_msg_name => 'OKC_SR_PENDING',
4384: p_token1 => 'NUMBER',
4385: p_token1_value => l_contract_number,
4386: p_token2 => 'LINENO',
4385: p_token1_value => l_contract_number,
4386: p_token2 => 'LINENO',
4387: p_token2_value => l_lineno);
4388:
4389: x_return_status := okc_api.g_ret_sts_error;
4390: raise G_EXCEPTION_HALT_VALIDATION;
4391: end if;
4392:
4393: -- END BUG#3312595 mchoudha
4516: X_AMOUNT => l_sub_termn_amount ,
4517: --X_MANUAL_CREDIT => l_manual_credit,
4518: X_RETURN_STATUS => l_return_status );
4519:
4520: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
4521: raise G_EXCEPTION_HALT_VALIDATION;
4522: END IF;
4523:
4524: OKC_TERMINATE_PVT.terminate_cle
4522: END IF;
4523:
4524: OKC_TERMINATE_PVT.terminate_cle
4525: ( P_API_VERSION => 1.0,
4526: P_INIT_MSG_LIST => OKC_API.G_FALSE,
4527: X_RETURN_STATUS => x_return_status,
4528: X_MSG_COUNT => l_msg_count,
4529: X_MSG_DATA => l_msg_data,
4530: P_TERMINATE_IN_PARAMETERS_REC => l_line_parameter_rec);
4531:
4532: ---For BUG#3372535 check for status S and W
4533: l_okc_status := x_return_status;
4534:
4535: IF x_return_status NOT IN ( OKC_API.G_RET_STS_SUCCESS, 'W') Then
4536: raise G_EXCEPTION_HALT_VALIDATION;
4537: END IF;
4538:
4539: terminate_subscribtion_line
4538:
4539: terminate_subscribtion_line
4540: (P_CALLEDFROM => p_calledfrom,
4541: P_API_VERSION => 1,
4542: P_INIT_MSG_LIST => OKC_API.G_FALSE,
4543: X_RETURN_STATUS => x_return_status,
4544: X_MSG_COUNT => l_msg_count,
4545: X_MSG_DATA => l_msg_data,
4546: P_LINE_ID => p_id,
4554: P_SUPPRESS_CREDIT => p_suppress_credit ,
4555: P_TANG => l_tang,
4556: P_FULL_CREDIT => P_FULL_CREDIT );
4557:
4558: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
4559: raise G_EXCEPTION_HALT_VALIDATION;
4560: END IF;
4561: IF ((l_termination_amount is NOT NULL) and (g_credit_amount <> l_termination_amount)) THEN
4562: OPEN bsl_amount(g_bsl_id);
4617: l_true_value_tbl(1).p_suppress_credit := p_suppress_credit;
4618: l_true_valUe_tbl(1).p_full_credit := p_full_credit ;
4619: True_value(l_true_value_tbl , x_return_status );
4620:
4621: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
4622: raise G_EXCEPTION_HALT_VALIDATION;
4623: END IF;
4624:
4625: ELSE
4638: P_SUPPRESS_CREDIT => p_suppress_credit,
4639: P_FULL_CREDIT => P_FULL_CREDIT,
4640: X_AMOUNT => l_amount);
4641:
4642: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
4643: raise G_EXCEPTION_HALT_VALIDATION;
4644: END IF;
4645:
4646: IF ((l_termination_amount is NOT NULL) AND
4776: l_true_value_tbl(1).p_suppress_credit := p_suppress_credit;
4777: l_true_valUe_tbl(1).p_full_credit := p_full_credit ;
4778: True_value(l_true_value_tbl , x_return_status );
4779:
4780: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
4781: raise G_EXCEPTION_HALT_VALIDATION;
4782: END IF;
4783:
4784:
4783:
4784:
4785: OKC_TERMINATE_PVT.terminate_cle
4786: ( P_API_VERSION => 1.0,
4787: P_INIT_MSG_LIST => OKC_API.G_FALSE,
4788: X_RETURN_STATUS => x_return_status,
4789: X_MSG_COUNT => l_msg_count,
4790: X_MSG_DATA => l_msg_data,
4791: P_TERMINATE_IN_PARAMETERS_REC => l_line_parameter_rec
4792: );
4793: -----for bug#3377509 check for S and W
4794: l_okc_status := x_return_status;
4795:
4796: IF x_return_status NOT IN (OKC_API.G_RET_STS_SUCCESS,'W') Then
4797: RAISE G_EXCEPTION_HALT_VALIDATION;
4798: END IF;
4799: END IF;
4800: CLOSE check_all_sublines_terminated;
4829: OPEN cur_contract_num;
4830: FETCH cur_contract_num into l_contract_number;
4831: CLOSE cur_contract_num;
4832:
4833: OKC_API.set_message(p_app_name => g_app_name,
4834: p_msg_name => 'OKC_SR_PENDING',
4835: p_token1 => 'NUMBER',
4836: p_token1_value => l_contract_number);
4837: x_return_status := okc_api.g_ret_sts_error;
4833: OKC_API.set_message(p_app_name => g_app_name,
4834: p_msg_name => 'OKC_SR_PENDING',
4835: p_token1 => 'NUMBER',
4836: p_token1_value => l_contract_number);
4837: x_return_status := okc_api.g_ret_sts_error;
4838: raise G_EXCEPTION_HALT_VALIDATION;
4839: end if;
4840: -- Bug 4354983 End
4841:
4945: x_amount => l_sub_termn_amount ,
4946: --x_manual_credit => l_manual_credit,
4947: x_return_status => l_return_status );
4948:
4949: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
4950: raise G_EXCEPTION_HALT_VALIDATION;
4951: END IF;
4952:
4953: OPEN line_det(line_rec.id);
4975: END IF;
4976:
4977: OKC_TERMINATE_PVT.terminate_cle
4978: ( P_API_VERSION => 1.0,
4979: P_INIT_MSG_LIST => OKC_API.G_FALSE,
4980: X_RETURN_STATUS => x_return_status,
4981: X_MSG_COUNT => l_msg_count,
4982: X_MSG_DATA => l_msg_data,
4983: P_TERMINATE_IN_PARAMETERS_REC => l_line_parameter_rec
4985:
4986: ---For BUG#3372535 check for status S and W
4987: l_okc_status := x_return_status;
4988:
4989: IF x_return_status NOT IN ( OKC_API.G_RET_STS_SUCCESS, 'W') Then
4990: raise G_EXCEPTION_HALT_VALIDATION;
4991: END IF;
4992:
4993: terminate_subscribtion_line
4992:
4993: terminate_subscribtion_line
4994: ( P_CALLEDFROM => p_calledfrom,
4995: P_API_VERSION => 1,
4996: P_INIT_MSG_LIST => OKC_API.G_FALSE,
4997: X_RETURN_STATUS => x_return_status,
4998: X_MSG_COUNT => l_msg_count,
4999: X_MSG_DATA => l_msg_data,
5000: P_LINE_ID => line_rec.id,
5020: l_true_value_tbl(1).p_suppress_credit := p_suppress_credit;
5021: l_true_valUe_tbl(1).p_full_credit := p_full_credit ;
5022: True_value(l_true_value_tbl , x_return_status );
5023:
5024: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
5025: raise G_EXCEPTION_HALT_VALIDATION;
5026: END IF;
5027:
5028: --ELSE
5031: pre_terminate_service
5032: (
5033: P_CALLEDFROM => p_calledfrom,
5034: P_API_VERSION => 1,
5035: P_INIT_MSG_LIST => OKC_API.G_FALSE,
5036: X_RETURN_STATUS => x_return_status,
5037: X_MSG_COUNT => l_msg_count,
5038: X_MSG_DATA => l_msg_data,
5039: P_K_LINE_ID => line_rec.id,
5044: P_SUPPRESS_CREDIT => p_suppress_credit,
5045: P_FULL_CREDIT => P_FULL_CREDIT,
5046: X_AMOUNT => l_amount
5047: );
5048: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
5049: raise G_EXCEPTION_HALT_VALIDATION;
5050: END IF;
5051:
5052: l_true_value_tbl(1).p_cp_line_id := 0;
5059: l_true_value_tbl(1).p_termination_amount := l_termination_amount;
5060: l_true_value_tbl(1).p_suppress_credit := p_suppress_credit;
5061: l_true_valUe_tbl(1).p_full_credit := p_full_credit ;
5062: True_value(l_true_value_tbl , x_return_status );
5063: IF (x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
5064: raise G_EXCEPTION_HALT_VALIDATION;
5065: END IF;
5066:
5067: END IF;
5159: close sub_line_tax;
5160: If l_sub_line_tax_amount > 0 then
5161: OKS_TAX_UTIL_PVT.Get_Tax
5162: ( p_api_version => 1.0,
5163: p_init_msg_list => OKC_API.G_TRUE,
5164: p_chr_id => p_id,
5165: p_cle_id => l_bsl_cle_id,
5166: px_rail_rec => G_RAIL_REC,
5167: x_msg_count => l_msg_count,
5166: px_rail_rec => G_RAIL_REC,
5167: x_msg_count => l_msg_count,
5168: x_msg_data => l_msg_data,
5169: x_return_status => l_return_status);
5170: IF ( x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
5171: RAISE G_EXCEPTION_HALT_VALIDATION;
5172: END IF;
5173: If G_RAIL_REC.AMOUNT_INCLUDES_TAX_FLAG = 'N' then
5174: update oks_k_lines_b
5234: close sub_line_tax;
5235: If l_sub_line_tax_amount > 0 then
5236: OKS_TAX_UTIL_PVT.Get_Tax
5237: ( p_api_version => 1.0,
5238: p_init_msg_list => OKC_API.G_TRUE,
5239: p_chr_id => p_id,
5240: p_cle_id => l_bsl_cle_id,
5241: px_rail_rec => G_RAIL_REC,
5242: x_msg_count => l_msg_count,
5241: px_rail_rec => G_RAIL_REC,
5242: x_msg_count => l_msg_count,
5243: x_msg_data => l_msg_data,
5244: x_return_status => l_return_status);
5245: IF ( x_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
5246: RAISE G_EXCEPTION_HALT_VALIDATION;
5247: END IF;
5248: If G_RAIL_REC.AMOUNT_INCLUDES_TAX_FLAG = 'N' then
5249: update oks_k_lines_b
5295:
5296: --dbms_output.put_line ('before terminate_hdr ');
5297: OKC_TERMINATE_PVT.terminate_chr
5298: ( p_api_version => 1.0,
5299: p_init_msg_list => OKC_API.G_FALSE,
5300: x_return_status => x_return_status,
5301: x_msg_count => l_msg_count,
5302: x_msg_data => l_msg_data,
5303: p_terminate_in_parameters_rec => l_hdr_parameter_rec
5305:
5306: ---For BUG#3372535 check for status S and W
5307: l_okc_status := x_return_status;
5308:
5309: IF x_return_status NOT IN ( OKC_API.G_RET_STS_SUCCESS, 'W') Then
5310: raise G_EXCEPTION_HALT_VALIDATION;
5311: END IF;
5312:
5313: l_true_value_tbl(1).p_cp_line_id := 0;
5322: l_true_valUe_tbl(1).p_full_credit := p_full_credit ;
5323:
5324: True_value(l_true_value_tbl , x_return_status );
5325:
5326: IF x_return_status <> OKC_API.G_RET_STS_SUCCESS Then
5327: raise G_EXCEPTION_HALT_VALIDATION;
5328: END IF;
5329:
5330: END IF ; -- l_terminate = TRUE|| ((l_terminate = FALSE) AND (check_all_lines_terminated%NOTFOUND)))
5349: EXCEPTION
5350: WHEN G_EXCEPTION_HALT_VALIDATION THEN
5351: DBMS_TRANSACTION.ROLLBACK_SAVEPOINT('BEFORE_PRE_TERMINATE');
5352: WHEN OTHERS THEN
5353: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
5354: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
5355: END;
5356:
5357:
5350: WHEN G_EXCEPTION_HALT_VALIDATION THEN
5351: DBMS_TRANSACTION.ROLLBACK_SAVEPOINT('BEFORE_PRE_TERMINATE');
5352: WHEN OTHERS THEN
5353: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
5354: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
5355: END;
5356:
5357:
5358: PROCEDURE pre_terminate_service
5357:
5358: PROCEDURE pre_terminate_service
5359: ( P_CALLEDFROM IN NUMBER DEFAULT Null,
5360: p_api_version IN NUMBER,
5361: p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
5362: x_return_status OUT NOCOPY VARCHAR2,
5363: x_msg_count OUT NOCOPY NUMBER,
5364: x_msg_data OUT NOCOPY VARCHAR2,
5365: p_k_line_id IN NUMBER,
5402: l_id NUMBER;
5403: l_msg_cnt NUMBER;
5404: l_msg_data VARCHAR2(2000);
5405: l_termination_method VARCHAR2(20);
5406: l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
5407: l_usage_type VARCHAR2(10);
5408: l_usage_period VARCHAR2(10);
5409: l_termination_date DATE;
5410: l_sub_line_id NUMBER ;
5470: IF ( l_termination_method = 'VOLUME') THEN
5471: pre_vol_based_terminate(
5472: P_CALLEDFROM => p_calledfrom,
5473: P_API_VERSION => 1,
5474: P_INIT_MSG_LIST => OKC_API.G_FALSE,
5475: X_RETURN_STATUS => l_return_status,
5476: X_MSG_COUNT => l_msg_cnt,
5477: X_MSG_DATA => l_msg_data,
5478: P_K_LINE_ID => p_k_line_id,
5552: EXCEPTION
5553: WHEN G_EXCEPTION_HALT_VALIDATION THEN
5554: x_return_status := l_return_status;
5555: WHEN Others THEN
5556: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
5557: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
5558:
5559: END ;
5560:
5553: WHEN G_EXCEPTION_HALT_VALIDATION THEN
5554: x_return_status := l_return_status;
5555: WHEN Others THEN
5556: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
5557: OKC_API.set_message(G_APP_NAME,G_UNEXPECTED_ERROR, G_SQLCODE_TOKEN, SQLCODE,G_SQLERRM_TOKEN, SQLERRM);
5558:
5559: END ;
5560:
5561: /* Procedure to calculate AMCV */
5608:
5609: BEGIN
5610: x_Volume := 0;
5611: l_totvol := 0;
5612: x_Return_Status := OKC_API.G_RET_STS_SUCCESS;
5613:
5614: IF ((p_calledfrom <> 3) OR
5615: ((p_calledfrom = 3) AND ( p_counter_date IS NULL))) THEN -- Ignore for termination if counter is captured
5616: OPEN l_tot_csr;
5662:
5663: EXCEPTION
5664: WHEN G_EXCEPTION_HALT_VALIDATION THEN
5665: FND_FILE.PUT_LINE( FND_FILE.LOG, 'Error in OKS_REG_GET_AMCV -- G_Exception_halt_validation raised' );
5666: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
5667: WHEN OTHERS THEN
5668: FND_FILE.PUT_LINE( FND_FILE.LOG, 'Error in OKS_REG_GET_AMCV -- Others Exception raised' );
5669: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,
5670: G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
5665: FND_FILE.PUT_LINE( FND_FILE.LOG, 'Error in OKS_REG_GET_AMCV -- G_Exception_halt_validation raised' );
5666: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
5667: WHEN OTHERS THEN
5668: FND_FILE.PUT_LINE( FND_FILE.LOG, 'Error in OKS_REG_GET_AMCV -- Others Exception raised' );
5669: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,
5670: G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
5671: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
5672:
5673: END OKS_REG_GET_AMCV;
5667: WHEN OTHERS THEN
5668: FND_FILE.PUT_LINE( FND_FILE.LOG, 'Error in OKS_REG_GET_AMCV -- Others Exception raised' );
5669: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,
5670: G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
5671: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
5672:
5673: END OKS_REG_GET_AMCV;
5674:
5675: --------------------------------------------------------------------------------
6356: x_base_reading := nvl(l_base_Reading,0);
6357:
6358: EXCEPTION
6359: WHEN G_EXCEPTION_HALT_VALIDATION THEN
6360: x_return_status := OKC_API.G_RET_STS_ERROR ;
6361: WHEN OTHERS THEN
6362: x_return_status := OKC_API.G_RET_STS_ERROR ;
6363: END Usage_qty_to_bill;
6364:
6358: EXCEPTION
6359: WHEN G_EXCEPTION_HALT_VALIDATION THEN
6360: x_return_status := OKC_API.G_RET_STS_ERROR ;
6361: WHEN OTHERS THEN
6362: x_return_status := OKC_API.G_RET_STS_ERROR ;
6363: END Usage_qty_to_bill;
6364:
6365: --------------------------------------------------------------------------------
6366: -- COunter_values
6537: l_counter_validate_flag VARCHAR2(4);
6538: l_billing_based_on VARCHAR2(15);
6539: l_value_timestamp DATE;
6540: BEGIN
6541: X_return_status := OKC_API.G_RET_STS_SUCCESS;
6542:
6543: l_counter_validate_flag := fnd_profile.value('OKS_COUNTER_VALIDATE');
6544: l_billing_based_on := fnd_profile.value('OKS_USAGE_BILLING_BASED_ON');
6545:
6782:
6783: END IF;
6784: EXCEPTION
6785: WHEN OTHERS THEN
6786: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
6787: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,
6788: G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
6789: END counter_values;
6790:
6783: END IF;
6784: EXCEPTION
6785: WHEN OTHERS THEN
6786: x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
6787: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,
6788: G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
6789: END counter_values;
6790:
6791:
6881:
6882: EXCEPTION
6883: WHEN OTHERS THEN
6884: Null;
6885: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN, SQLCODE, G_SQLERRM_TOKEN,SQLERRM);
6886: END get_bill_amount_period;
6887:
6888:
6889: ------------------------------------------------------------------------
7012: WHEN cvn_not_found THEN
7013: x_ret_stat := 'E';
7014: WHEN OTHERS THEN
7015: x_ret_stat := 'E';
7016: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE, G_SQLERRM_TOKEN,SQLERRM);
7017:
7018: END update_bsl;
7019:
7020:
7096: x_ret_stat := l_ret_stat;
7097: EXCEPTION
7098: When Others Then
7099: Null;
7100: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE, G_SQLERRM_TOKEN,SQLERRM);
7101: END update_bcl;
7102:
7103:
7104: ------------------------------------------------------------------------
7255:
7256: x_return_stat := l_ret_stat;
7257: EXCEPTION
7258: When Others Then
7259: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE, G_SQLERRM_TOKEN,SQLERRM);
7260:
7261: END insert_bcl;
7262:
7263:
7317: Fetch l_bcl_pr_csr into x_bcl_id,x_bcl_amount;
7318: close l_bcl_pr_csr;
7319: END IF;
7320:
7321: x_return_stat := OKC_API.G_RET_STS_SUCCESS;
7322: EXCEPTION
7323: When Others Then
7324: Null;
7325: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE, G_SQLERRM_TOKEN,SQLERRM);
7321: x_return_stat := OKC_API.G_RET_STS_SUCCESS;
7322: EXCEPTION
7323: When Others Then
7324: Null;
7325: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE, G_SQLERRM_TOKEN,SQLERRM);
7326: x_return_stat := OKC_API.G_RET_STS_ERROR;
7327: END get_bcl_id;
7328:
7329:
7322: EXCEPTION
7323: When Others Then
7324: Null;
7325: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE, G_SQLERRM_TOKEN,SQLERRM);
7326: x_return_stat := OKC_API.G_RET_STS_ERROR;
7327: END get_bcl_id;
7328:
7329:
7330:
7374: l_bsd_pr_tbl_in l_bsd_pr_tbl_type;
7375: l_bsd_pr_tbl_out l_bsd_pr_tbl_type;
7376:
7377:
7378: l_ret_stat Varchar2(20) := OKC_API.G_RET_STS_SUCCESS;
7379: l_msg_cnt Number;
7380: l_msg_data Varchar2(2000);
7381:
7382: l_amount NUMBER := 0;
7669: WHEN cvn_not_found THEN
7670: x_return_stat := 'E';
7671: WHEN OTHERS THEN
7672: Null;
7673: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE, G_SQLERRM_TOKEN,SQLERRM);
7674:
7675: END insert_all_subline;
7676:
7677: ---------------------------------------------------------------------------------------
7708:
7709: EXCEPTION
7710: When Others Then
7711: Null;
7712: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE, G_SQLERRM_TOKEN,SQLERRM);
7713:
7714: END Get_Bill_profile;
7715:
7716:
7867: l_okl_flag NUMBER := 0;
7868: l_bcl_id NUMBER;
7869: l_line_cnt NUMBER := 1;
7870: l_ptr NUMBER := 1;
7871: l_return_status Varchar2(1) := OKC_API.G_RET_STS_SUCCESS;
7872: l_api_name CONSTANT VARCHAR2(30) := 'Adjust_Negotiated_Price';
7873:
7874: BEGIN
7875:
7955: );
7956:
7957: x_return_status := l_return_status;
7958:
7959: If (l_return_status <> OKC_API.G_RET_STS_SUCCESS) Then
7960: If (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) Then
7961: x_return_status := l_return_status;
7962: raise G_EXCEPTION_HALT_VALIDATION;
7963: ELSE
7956:
7957: x_return_status := l_return_status;
7958:
7959: If (l_return_status <> OKC_API.G_RET_STS_SUCCESS) Then
7960: If (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) Then
7961: x_return_status := l_return_status;
7962: raise G_EXCEPTION_HALT_VALIDATION;
7963: ELSE
7964: x_return_status := l_return_status;
7966: LOOP
7967: FND_FILE.PUT_LINE( FND_FILE.LOG,(FND_MSG_PUB.Get(p_encoded =>FND_API.G_FALSE )));
7968: END LOOP;
7969: END If;
7970: ELSIf l_return_status = OKC_API.G_RET_STS_SUCCESS Then
7971: Open get_bcl_id_cur(l_billed_cle_id, l_date_billed_to) ;
7972: Fetch get_bcl_id_cur into l_st_bcl_id;
7973: Close get_bcl_id_cur;
7974: END If;
8033: );
8034:
8035: FND_FILE.PUT_LINE( FND_FILE.LOG, 'after insert into sublines '||' '||l_return_status );
8036:
8037: If (l_return_status <> OKC_API.G_RET_STS_SUCCESS) Then
8038: If (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) Then
8039: x_return_status := l_return_status;
8040: FND_FILE.PUT_LINE( FND_FILE.LOG, 'insert into table failed Contract line id :'||' '||l_bill_rec.id);
8041: l_error := 'T';
8034:
8035: FND_FILE.PUT_LINE( FND_FILE.LOG, 'after insert into sublines '||' '||l_return_status );
8036:
8037: If (l_return_status <> OKC_API.G_RET_STS_SUCCESS) Then
8038: If (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) Then
8039: x_return_status := l_return_status;
8040: FND_FILE.PUT_LINE( FND_FILE.LOG, 'insert into table failed Contract line id :'||' '||l_bill_rec.id);
8041: l_error := 'T';
8042: DBMS_TRANSACTION.ROLLBACK_SAVEPOINT('BEFORE_TRANSACTION');
8059: END LOOP;
8060:
8061: EXCEPTION
8062:
8063: WHEN OKC_API.G_EXCEPTION_ERROR Then
8064: x_return_status := OKC_API.HANDLE_EXCEPTIONS
8065: (
8066: l_api_name,
8067: G_PKG_NAME,
8060:
8061: EXCEPTION
8062:
8063: WHEN OKC_API.G_EXCEPTION_ERROR Then
8064: x_return_status := OKC_API.HANDLE_EXCEPTIONS
8065: (
8066: l_api_name,
8067: G_PKG_NAME,
8068: 'OKC_API.G_RET_STS_ERROR',
8064: x_return_status := OKC_API.HANDLE_EXCEPTIONS
8065: (
8066: l_api_name,
8067: G_PKG_NAME,
8068: 'OKC_API.G_RET_STS_ERROR',
8069: x_msg_count,
8070: x_msg_data,
8071: '_PUB'
8072: );
8070: x_msg_data,
8071: '_PUB'
8072: );
8073:
8074: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR Then
8075: x_return_status := OKC_API.HANDLE_EXCEPTIONS
8076: (
8077: l_api_name,
8078: G_PKG_NAME,
8071: '_PUB'
8072: );
8073:
8074: WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR Then
8075: x_return_status := OKC_API.HANDLE_EXCEPTIONS
8076: (
8077: l_api_name,
8078: G_PKG_NAME,
8079: 'OKC_API.G_RET_STS_UNEXP_ERROR',
8075: x_return_status := OKC_API.HANDLE_EXCEPTIONS
8076: (
8077: l_api_name,
8078: G_PKG_NAME,
8079: 'OKC_API.G_RET_STS_UNEXP_ERROR',
8080: x_msg_count,
8081: x_msg_data,
8082: '_PUB');
8083: WHEN OTHERS Then
8080: x_msg_count,
8081: x_msg_data,
8082: '_PUB');
8083: WHEN OTHERS Then
8084: x_return_status := OKC_API.HANDLE_EXCEPTIONS
8085: (
8086: l_api_name,
8087: G_PKG_NAME,
8088: 'OTHERS',
8400: l_clev_tbl_in( 1 ).term_cancel_source := P_Term_Cancel_source;
8401: okc_contract_pub.update_contract_line(
8402: p_api_version => l_api_version,
8403: p_init_msg_list => l_init_msg_list,
8404: p_restricted_update => okc_api.g_true,
8405: x_return_status => l_return_status,
8406: x_msg_count => l_msg_cnt,
8407: x_msg_data => l_msg_data,
8408: p_clev_tbl => l_clev_tbl_in,
8689: FETCH cur_lineno into l_line_number,l_contract_number;
8690: CLOSE cur_lineno;
8691:
8692:
8693: OKC_API.set_message(p_app_name => g_app_name,
8694: p_msg_name => 'OKC_SR_PENDING',
8695: p_token1 => 'NUMBER',
8696: p_token1_value => l_contract_number,
8697: p_token2 => 'LINENO',
8696: p_token1_value => l_contract_number,
8697: p_token2 => 'LINENO',
8698: p_token2_value => l_line_number);
8699:
8700: l_return_status := okc_api.g_ret_sts_error;
8701: raise G_EXCEPTION_HALT_VALIDATION;
8702: end if;
8703:
8704: END IF; -- if lse_id in(9,18,25)
8750: ELSIF (p_full_credit = 'N') THEN
8751: l_termination_date := p_termination_date;
8752: END IF;
8753:
8754: l_return_status := OKC_API.G_RET_STS_SUCCESS;
8755:
8756: IF (p_term_method = 'VOLUME') THEN
8757: pre_vol_based_terminate(
8758: P_CALLEDFROM => 1 ,
8858: X_RETURN_STATUS => l_return_status,
8859: X_MSG_COUNT => l_msg_cnt,
8860: X_MSG_DATA => l_msg_data);
8861:
8862: IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
8863: x_return_status := l_return_status;
8864: Raise G_EXCEPTION_HALT_VALIDATION;
8865: END IF;
8866:
8908: l_clev_tbl_in( 1 ).term_cancel_source := P_Term_Cancel_source;
8909: okc_contract_pub.update_contract_line(
8910: p_api_version => l_api_version,
8911: p_init_msg_list => l_init_msg_list,
8912: p_restricted_update => okc_api.g_true,
8913: x_return_status => l_return_status,
8914: x_msg_count => l_msg_cnt,
8915: x_msg_data => l_msg_data,
8916: p_clev_tbl => l_clev_tbl_in,
8989: EXCEPTION
8990: WHEN G_EXCEPTION_HALT_VALIDATION THEN
8991: x_return_status := l_return_status;
8992: WHEN OTHERS THEN
8993: OKC_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN, SQLCODE, G_SQLERRM_TOKEN,SQLERRM);
8994: END terminate_cp;
8995:
8996: Procedure get_termination_details ( p_level IN VARCHAR2 ,
8997: p_id IN NUMBER ,
9422: G_RAIL_REC.AMOUNT_INCLUDES_TAX_FLAG := null;
9423:
9424: OKS_TAX_UTIL_PVT.Get_Tax
9425: ( p_api_version => 1.0,
9426: p_init_msg_list => OKC_API.G_TRUE,
9427: p_chr_id => l_hdr_id,
9428: p_cle_id => p_true_value_tbl(1).p_cp_line_id,
9429: px_rail_rec => G_RAIL_REC,
9430: x_msg_count => x_msg_count,
9430: x_msg_count => x_msg_count,
9431: x_msg_data => x_msg_data,
9432: x_return_status => l_return_status);
9433: /* Modified by sjanakir for Bug#6912454 */
9434: IF ( l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
9435: RAISE G_EXCEPTION_HALT_VALIDATION;
9436: END IF;
9437:
9438: If G_RAIL_REC.AMOUNT_INCLUDES_TAX_FLAG = 'N' then
9575: G_RAIL_REC.AMOUNT_INCLUDES_TAX_FLAG := null;
9576:
9577: OKS_TAX_UTIL_PVT.Get_Tax
9578: ( p_api_version => 1.0,
9579: p_init_msg_list => OKC_API.G_TRUE,
9580: p_chr_id => l_hdr_id,
9581: p_cle_id => l_top_line_rec.sub_line_id,
9582: px_rail_rec => G_RAIL_REC,
9583: x_msg_count => x_msg_count,
9583: x_msg_count => x_msg_count,
9584: x_msg_data => x_msg_data,
9585: x_return_status => l_return_status);
9586: /* Modified by sjanakir for Bug#6912454 */
9587: IF ( l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
9588: RAISE G_EXCEPTION_HALT_VALIDATION;
9589: END IF;
9590:
9591: If G_RAIL_REC.AMOUNT_INCLUDES_TAX_FLAG = 'N' then
9712: G_RAIL_REC.AMOUNT_INCLUDES_TAX_FLAG := null;
9713:
9714: OKS_TAX_UTIL_PVT.Get_Tax
9715: ( p_api_version => 1.0,
9716: p_init_msg_list => OKC_API.G_TRUE,
9717: p_chr_id => l_hdr_id,
9718: p_cle_id => p_true_value_tbl(1).p_top_line_id,
9719: px_rail_rec => G_RAIL_REC,
9720: x_msg_count => x_msg_count,
9720: x_msg_count => x_msg_count,
9721: x_msg_data => x_msg_data,
9722: x_return_status => l_return_status);
9723: /* Modified by sjanakir for Bug#6912454 */
9724: IF ( l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
9725: RAISE G_EXCEPTION_HALT_VALIDATION;
9726: END IF;
9727:
9728: If G_RAIL_REC.AMOUNT_INCLUDES_TAX_FLAG = 'N' then
9793: EXCEPTION
9794: WHEN G_EXCEPTION_HALT_VALIDATION THEN
9795: NULL;
9796: WHEN OTHERS THEN
9797: x_return_status := OKC_API.G_RET_STS_ERROR ;
9798:
9799: END TRUE_VALUE ;
9800:
9801: Procedure prorate_price_breaks ( P_BSL_ID IN NUMBER,
10290: END IF; --p_override_amount is not null
10291:
10292: EXCEPTION
10293: WHEN G_EXCEPTION_HALT_VALIDATION THEN
10294: x_return_status := OKC_API.G_RET_STS_ERROR ;
10295: WHEN OTHERS THEN
10296: OKC_API.SET_MESSAGE(p_app_name => G_APP_NAME,
10297: p_msg_name => G_UNEXPECTED_ERROR,
10298: p_token1 => G_SQLCODE_TOKEN,
10292: EXCEPTION
10293: WHEN G_EXCEPTION_HALT_VALIDATION THEN
10294: x_return_status := OKC_API.G_RET_STS_ERROR ;
10295: WHEN OTHERS THEN
10296: OKC_API.SET_MESSAGE(p_app_name => G_APP_NAME,
10297: p_msg_name => G_UNEXPECTED_ERROR,
10298: p_token1 => G_SQLCODE_TOKEN,
10299: p_token1_value => sqlcode,
10300: p_token2 => G_SQLERRM_TOKEN,
10730: END IF;
10731:
10732: EXCEPTION
10733: WHEN G_EXCEPTION_HALT_VALIDATION THEN
10734: x_return_status := OKC_API.G_RET_STS_ERROR ;
10735: WHEN OTHERS THEN
10736: OKC_API.SET_MESSAGE(p_app_name => G_APP_NAME,
10737: p_msg_name => G_UNEXPECTED_ERROR,
10738: p_token1 => G_SQLCODE_TOKEN,
10732: EXCEPTION
10733: WHEN G_EXCEPTION_HALT_VALIDATION THEN
10734: x_return_status := OKC_API.G_RET_STS_ERROR ;
10735: WHEN OTHERS THEN
10736: OKC_API.SET_MESSAGE(p_app_name => G_APP_NAME,
10737: p_msg_name => G_UNEXPECTED_ERROR,
10738: p_token1 => G_SQLCODE_TOKEN,
10739: p_token1_value => sqlcode,
10740: p_token2 => G_SQLERRM_TOKEN,
10970: EXCEPTION
10971: WHEN G_EXCEPTION_HALT_VALIDATION THEN
10972: RETURN NULL;
10973: WHEN INVALID_UOM_EXCEPTION THEN
10974: OKC_API.SET_MESSAGE(p_app_name => 'OKS',
10975: p_msg_name => 'OKS_INVD_UOM_CODE',
10976: p_token1 => 'OKS_API_NAME',
10977: p_token1_value => 'OKS_BILL_REC_PUB.Get_partial_term_amount',
10978: p_token2 => 'UOM_CODE',
10981: CLOSE cs_validate_uom;
10982: END IF;
10983: return NULL;
10984: WHEN INVALID_DATE_EXCEPTION THEN
10985: OKC_API.set_message('OKS','OKS_INVALID_START_END_DATES');
10986: return NULL;
10987: WHEN OTHERS THEN
10988: --set the error message and return with NULL to notify the
10989: --caller of error
10986: return NULL;
10987: WHEN OTHERS THEN
10988: --set the error message and return with NULL to notify the
10989: --caller of error
10990: OKC_API.SET_MESSAGE(p_app_name => G_APP_NAME,
10991: p_msg_name => G_UNEXPECTED_ERROR,
10992: p_token1 => G_SQLCODE_TOKEN,
10993: p_token1_value => sqlcode,
10994: p_token2 => G_SQLERRM_TOKEN,