[Home] [Help]
336: l_so_hdr_rec.target_periods := t_rec.target_periods;
337: END LOOP;
338: ELSIF p_so_type = 'SQ'
339: THEN
340: -- Code to be written for handling the Standard Quote
341: NULL;
342: ELSE
343: -- Code to be written for raising an exception
344: OKL_API.SET_MESSAGE( p_app_name => g_app_name,
4886: x_msg_data => x_msg_data,
4887: p_api_type => g_api_type);
4888: END get_lease_rate_factors;
4889:
4890: -- API which accepts the standard rate template version id and
4891: -- returns all the SRT details !
4892: PROCEDURE get_standard_rates(
4893: p_api_version IN NUMBER,
4894: p_init_msg_list IN VARCHAR2,
4888: END get_lease_rate_factors;
4889:
4890: -- API which accepts the standard rate template version id and
4891: -- returns all the SRT details !
4892: PROCEDURE get_standard_rates(
4893: p_api_version IN NUMBER,
4894: p_init_msg_list IN VARCHAR2,
4895: x_return_status OUT NOCOPY VARCHAR2,
4896: x_msg_count OUT NOCOPY NUMBER,
4941: AND hdr.index_id = indx.idx_id
4942: AND p_date BETWEEN indx.datetime_valid AND NVL(indx.datetime_invalid,p_date+1);
4943: -- Local Variables
4944: l_api_version CONSTANT NUMBER DEFAULT 1.0;
4945: l_api_name CONSTANT VARCHAR2(30) DEFAULT 'get_standard_rates';
4946: l_return_status VARCHAR2(1);
4947: l_module CONSTANT fnd_log_messages.module%TYPE := 'LEASE.ACCOUNTING.PRICING.'
4948: || G_PKG_NAME || '.' || UPPER(l_api_name);
4949: l_debug_enabled VARCHAR2(10);
4988: END IF;
4989: IF p_srt_id IS NULL
4990: THEN
4991: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
4992: 'Standard Rate Template ID is required !! ' );
4993: OKL_API.set_message(
4994: G_APP_NAME,
4995: OKL_API.G_REQUIRED_VALUE,
4996: OKL_API.G_COL_NAME_TOKEN,
4993: OKL_API.set_message(
4994: G_APP_NAME,
4995: OKL_API.G_REQUIRED_VALUE,
4996: OKL_API.G_COL_NAME_TOKEN,
4997: 'STANDARD RATE TEMPLATE ID');
4998: RAISE OKL_API.G_EXCEPTION_ERROR;
4999: END IF;
5000: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
5001: ': p_srt_id= ' || p_srt_id );
5099: p_exc_name => 'OTHERS',
5100: x_msg_count => x_msg_count,
5101: x_msg_data => x_msg_data,
5102: p_api_type => g_api_type);
5103: END get_standard_rates;
5104:
5105: PROCEDURE compute_bk_yield(
5106: p_api_version IN NUMBER,
5107: p_init_msg_list IN VARCHAR2,
6185: l_ac_rec_type.src_id := l_lrs_details.adj_mat_version_id; -- Pricing adjustment matrix ID
6186: l_ac_rec_type.source_name := NULL; -- NOT Mandatory Pricing Adjustment Matrix Name !
6187: l_ac_rec_type.target_id := p_qq_hdr_rec.ID ; -- Quote ID
6188: l_ac_rec_type.src_type := 'PAM'; -- Lookup Code
6189: l_ac_rec_type.target_type := 'QUOTE'; -- Same for both Quick Quote and Standard Quote
6190: l_ac_rec_type.target_eff_from := p_qq_hdr_rec.expected_start_date; -- Quote effective From
6191: l_ac_rec_type.term := p_qq_hdr_rec.term; -- Remaining four will be from teh business object like QQ / LQ
6192: l_ac_rec_type.territory := p_qq_hdr_rec.sales_territory_id;
6193: l_ac_rec_type.deal_size := l_sum_fin_amt; -- Not sure how to pass this value
6421: -- Lease Rate Factor Variables
6422: l_lrs_details lrs_details_rec_type;
6423: l_lrs_factor lrs_factor_rec_type;
6424: l_lrs_levels lrs_levels_tbl_type;
6425: -- Standard Rate Template Variables
6426: l_srt_details srt_details_rec_type;
6427: l_ac_rec_type OKL_EC_EVALUATE_PVT.okl_ac_rec_type;
6428: l_adj_factor NUMBER;
6429: l_deal_size NUMBER;
6457: l_adj_factor := 0;
6458:
6459: IF p_qq_hdr_rec.rate_template_id IS NOT NULL
6460: THEN
6461: -- Extract details from the Standard Rate Template
6462: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
6463: 'Fetching the Details from the Standard Rate Template ' );
6464: get_standard_rates(
6465: p_api_version => p_api_version,
6459: IF p_qq_hdr_rec.rate_template_id IS NOT NULL
6460: THEN
6461: -- Extract details from the Standard Rate Template
6462: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
6463: 'Fetching the Details from the Standard Rate Template ' );
6464: get_standard_rates(
6465: p_api_version => p_api_version,
6466: p_init_msg_list => p_init_msg_list,
6467: x_return_status => l_return_status,
6460: THEN
6461: -- Extract details from the Standard Rate Template
6462: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
6463: 'Fetching the Details from the Standard Rate Template ' );
6464: get_standard_rates(
6465: p_api_version => p_api_version,
6466: p_init_msg_list => p_init_msg_list,
6467: x_return_status => l_return_status,
6468: x_msg_count => x_msg_count,
6491: l_ac_rec_type.src_id := l_srt_details.adj_mat_version_id; -- Pricing adjustment matrix ID
6492: l_ac_rec_type.source_name := NULL; -- NOT Mandatory Pricing Adjustment Matrix Name !
6493: l_ac_rec_type.target_id := p_qq_hdr_rec.ID ; -- Quote ID
6494: l_ac_rec_type.src_type := 'PAM'; -- Lookup Code
6495: l_ac_rec_type.target_type := 'QUOTE'; -- Same for both Quick Quote and Standard Quote
6496: l_ac_rec_type.target_eff_from := p_qq_hdr_rec.expected_start_date; -- Quote effective From
6497: l_ac_rec_type.term := p_qq_hdr_rec.term; -- Remaining four will be from teh business object like QQ / LQ
6498: l_ac_rec_type.territory := p_qq_hdr_rec.sales_territory_id;
6499: l_ac_rec_type.deal_size := l_deal_size;
6786: l_cash_flow_det_tbl so_cash_flow_details_tbl_type;
6787: i NUMBER; -- Index for looping over the Cash Flow Details
6788: l_months_per_period NUMBER;
6789: l_months_after NUMBER;
6790: -- Standard Rate Template Variables
6791: l_srt_details srt_details_rec_type;
6792: l_ac_rec_type OKL_EC_EVALUATE_PVT.okl_ac_rec_type;
6793: l_adj_factor NUMBER;
6794: l_months_factor NUMBER;
6843: -- Fetch the target column values ..
6844: OPEN quote_csr(qteid => l_lq_id );
6845: FETCH quote_csr INTO quote_rec;
6846: CLOSE quote_csr;
6847: -- Extract details from the Standard Rate Template
6848: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
6849: 'Fetching the Details from the Standard Rate Template ' );
6850: get_standard_rates(
6851: p_api_version => p_api_version,
6845: FETCH quote_csr INTO quote_rec;
6846: CLOSE quote_csr;
6847: -- Extract details from the Standard Rate Template
6848: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
6849: 'Fetching the Details from the Standard Rate Template ' );
6850: get_standard_rates(
6851: p_api_version => p_api_version,
6852: p_init_msg_list => p_init_msg_list,
6853: x_return_status => l_return_status,
6846: CLOSE quote_csr;
6847: -- Extract details from the Standard Rate Template
6848: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
6849: 'Fetching the Details from the Standard Rate Template ' );
6850: get_standard_rates(
6851: p_api_version => p_api_version,
6852: p_init_msg_list => p_init_msg_list,
6853: x_return_status => l_return_status,
6854: x_msg_count => x_msg_count,
6874: l_ac_rec_type.src_id := l_srt_details.adj_mat_version_id; -- Pricing adjustment matrix ID
6875: l_ac_rec_type.source_name := NULL; -- NOT Mandatory Pricing Adjustment Matrix Name !
6876: l_ac_rec_type.target_id := l_lq_id; -- Quote ID
6877: l_ac_rec_type.src_type := 'PAM'; -- Lookup Code
6878: l_ac_rec_type.target_type := 'QUOTE'; -- Same for both Quick Quote and Standard Quote
6879: l_ac_rec_type.target_eff_from := p_adj_mat_cat_rec.target_eff_from; -- Quote effective From
6880: l_ac_rec_type.term := p_adj_mat_cat_rec.term; -- Remaining four will be from teh business object like QQ / LQ
6881: l_ac_rec_type.territory := p_adj_mat_cat_rec.territory;
6882: l_ac_rec_type.deal_size := p_adj_mat_cat_rec.deal_size; -- Not sure how to pass this value
8795: END distribute_fin_amount_lq;
8796:
8797: --------------------------------------------------------------------------------
8798: -- Start of Commnets
8799: -- Procedure Name : price_standard_quote_asset
8800: -- Description : This API would have been called once for each asset
8801: -- which has overridden the Quote Level Pricing Structure !
8802: -- Business Rules :
8803: -- Parameters :
8814: -- to be overriding the payment structure defined at the LQ level.
8815: -- Hence, the Asset Level Cash flow Details will be fetched/defined ( incase of SRT )
8816: -- and the asset will be priced based on such information.
8817: -- 2/ Added, x_pricing_parameter_rec as an output parameter, because
8818: -- the price_standard_quote api can use the already built streams for this asset
8819: -- directly instead of it generating them again.
8820: -- 3/ Bug 7445154: Param p_line_type has been added.
8821: -- Pass FREE_FORM1 in case of Line Type = Asset
8822: -- If Line is a Fee, expected values are FINANCED/ROLLOVER
8821: -- Pass FREE_FORM1 in case of Line Type = Asset
8822: -- If Line is a Fee, expected values are FINANCED/ROLLOVER
8823: -- End of Commnets
8824: --------------------------------------------------------------------------------
8825: PROCEDURE price_standard_quote_asset(
8826: x_return_status OUT NOCOPY VARCHAR2,
8827: x_msg_count OUT NOCOPY NUMBER,
8828: x_msg_data OUT NOCOPY VARCHAR2,
8829: p_api_version IN NUMBER,
8835: p_line_type IN VARCHAR2,
8836: x_pricing_parameter_rec IN OUT NOCOPY pricing_parameter_rec_type)
8837: IS
8838: l_api_version CONSTANT NUMBER DEFAULT 1.0;
8839: l_api_name CONSTANT VARCHAR2(30) DEFAULT 'price_standard_quote_asset';
8840: l_return_status VARCHAR2(1);
8841: l_module CONSTANT fnd_log_messages.module%TYPE := 'LEASE.ACCOUNTING.PRICING.'
8842: || G_PKG_NAME || '.' || UPPER(l_api_name);
8843:
9634: l_ac_rec_type.src_id := l_lrs_details.adj_mat_version_id; -- Pricing adjustment matrix ID
9635: l_ac_rec_type.source_name := NULL; -- NOT Mandatory Pricing Adjustment Matrix Name !
9636: l_ac_rec_type.target_id := quote_rec.ID ; -- Quote ID
9637: l_ac_rec_type.src_type := 'PAM'; -- Lookup Code
9638: l_ac_rec_type.target_type := 'QUOTE'; -- Same for both Quick Quote and Standard Quote
9639: l_ac_rec_type.target_eff_from := quote_rec.expected_start_date; -- Quote effective From
9640: l_ac_rec_type.term := quote_rec.term; -- Remaining four will be from teh business object like QQ / LQ
9641: l_ac_rec_type.territory := l_adj_mat_cat_rec.territory;
9642: l_ac_rec_type.deal_size := lx_pricing_parameter_rec.financed_amount; -- Not sure how to pass this value
10247: p_exc_name => 'OTHERS',
10248: x_msg_count => x_msg_count,
10249: x_msg_data => x_msg_data,
10250: p_api_type => g_api_type);
10251: END price_standard_quote_asset;
10252: --------------------------------------------------------------------------------
10253: -- Start of Commnets
10254: -- Procedure Name : is_asset_overriding
10255: -- Description :
10554: END get_lq_srvc_cash_flows;
10555: --end bkatraga
10556: --------------------------------------------------------------------------------
10557: -- Start of Commnets
10558: -- Procedure Name : Price_Standard_Quote
10559: -- Description :
10560: -- Business Rules :
10561: -- Parameters :
10562: -- Version : 1.0
11451: END insert_quote_streams;
11452: -- Bug 7440199: Quote Streams ER: RGOOTY: End
11453: --------------------------------------------------------------------------------
11454: -- Start of Commnets
11455: -- Procedure Name : Price_Standard_Quote
11456: -- Description :
11457: -- Business Rules :
11458: -- Parameters :
11459: -- Version : 1.0
11459: -- Version : 1.0
11460: -- History : ssiruvol 22-May-2005 - created
11461: -- End of Commnets
11462: --------------------------------------------------------------------------------
11463: PROCEDURE price_standard_quote(x_return_status OUT NOCOPY VARCHAR2,
11464: x_msg_count OUT NOCOPY NUMBER,
11465: x_msg_data OUT NOCOPY VARCHAR2,
11466: p_api_version IN NUMBER,
11467: p_init_msg_list IN VARCHAR2,
11467: p_init_msg_list IN VARCHAR2,
11468: p_qte_id IN NUMBER)
11469: IS
11470: l_api_version CONSTANT NUMBER DEFAULT 1.0;
11471: l_api_name CONSTANT VARCHAR2(30) DEFAULT 'price_standard_quote';
11472: l_return_status VARCHAR2(1);
11473: l_module CONSTANT fnd_log_messages.module%TYPE := 'LEASE.ACCOUNTING.PRICING.'
11474: || G_PKG_NAME || '.' || UPPER(l_api_name);
11475:
12256: IF assets_rec.fee_type = 'FREE_FORM1'
12257: THEN
12258: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
12259: ' Asset with ID '|| assets_rec.ast_id || ' overrides the payment structure @ LQ level' );
12260: price_standard_quote_asset(
12261: x_return_status => l_return_status,
12262: x_msg_count => x_msg_count,
12263: x_msg_data => x_msg_data,
12264: p_api_version => p_api_version,
12269: p_target_rate => NULL,
12270: p_line_type => assets_rec.fee_type,
12271: x_pricing_parameter_rec => l_tmp_pricing_parameter_rec );
12272: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
12273: 'After price_standard_quote_asset ' || l_return_status );
12274: IF (l_return_status = okl_api.g_ret_sts_unexp_error) THEN
12275: RAISE okl_api.g_exception_unexpected_error;
12276: ELSIF (l_return_status = okl_api.g_ret_sts_error) THEN
12277: RAISE okl_api.g_exception_error;
12415: LOOP
12416: IF assets_rec.fee_type IN ( 'ROLLOVER', 'FINANCED')
12417: THEN
12418: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
12419: ' Calling price_standard_quote_asset for ' || assets_rec.fee_type || ' with ID ' || assets_rec.fee_id );
12420: -- Price the fees ROLLOVER OR FINANCED
12421: price_standard_quote_asset(
12422: x_return_status => l_return_status,
12423: x_msg_count => x_msg_count,
12417: THEN
12418: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
12419: ' Calling price_standard_quote_asset for ' || assets_rec.fee_type || ' with ID ' || assets_rec.fee_id );
12420: -- Price the fees ROLLOVER OR FINANCED
12421: price_standard_quote_asset(
12422: x_return_status => l_return_status,
12423: x_msg_count => x_msg_count,
12424: x_msg_data => x_msg_data,
12425: p_api_version => p_api_version,
12430: p_target_rate => NULL,
12431: p_line_type => assets_rec.fee_type,
12432: x_pricing_parameter_rec => l_tmp_pricing_parameter_rec );
12433: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
12434: 'After price_standard_quote_asset ' || l_return_status );
12435: IF (l_return_status = okl_api.g_ret_sts_unexp_error) THEN
12436: RAISE okl_api.g_exception_unexpected_error;
12437: ELSIF (l_return_status = okl_api.g_ret_sts_error) THEN
12438: RAISE okl_api.g_exception_error;
12832: IF assets_rec.fee_type = 'FREE_FORM1' --, 'ROLLOVER', 'FINANCED' )
12833: THEN
12834: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
12835: ' Asset Overrides the Payment Structure defined @ Lease Quote level ' || assets_rec.asset_number );
12836: price_standard_quote_asset(
12837: x_return_status => l_return_status,
12838: x_msg_count => x_msg_count,
12839: x_msg_data => x_msg_data,
12840: p_api_version => p_api_version,
12845: p_target_rate => NULL,
12846: p_line_type => assets_rec.fee_type,
12847: x_pricing_parameter_rec => l_tmp_pricing_parameter_rec );
12848: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
12849: 'PM = SF | After price_Standard_quote_asset l_return_Status = '|| l_return_status );
12850: IF (l_return_status = okl_api.g_ret_sts_unexp_error) THEN
12851: RAISE okl_api.g_exception_unexpected_error;
12852: ELSIF (l_return_status = okl_api.g_ret_sts_error) THEN
12853: RAISE okl_api.g_exception_error;
13049: LOOP
13050: IF assets_rec.fee_type IN ( 'ROLLOVER', 'FINANCED')
13051: THEN
13052: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
13053: ' Calling price_standard_quote_asset for ' || assets_rec.fee_type || ' with ID ' || assets_rec.fee_id );
13054: -- Price the fees ROLLOVER OR FINANCED
13055: price_standard_quote_asset(
13056: x_return_status => l_return_status,
13057: x_msg_count => x_msg_count,
13051: THEN
13052: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
13053: ' Calling price_standard_quote_asset for ' || assets_rec.fee_type || ' with ID ' || assets_rec.fee_id );
13054: -- Price the fees ROLLOVER OR FINANCED
13055: price_standard_quote_asset(
13056: x_return_status => l_return_status,
13057: x_msg_count => x_msg_count,
13058: x_msg_data => x_msg_data,
13059: p_api_version => p_api_version,
13064: p_target_rate => NULL,
13065: p_line_type => assets_rec.fee_type,
13066: x_pricing_parameter_rec => l_tmp_pricing_parameter_rec );
13067: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
13068: 'After price_standard_quote_asset ' || l_return_status );
13069: IF (l_return_status = okl_api.g_ret_sts_unexp_error) THEN
13070: RAISE okl_api.g_exception_unexpected_error;
13071: ELSIF (l_return_status = okl_api.g_ret_sts_error) THEN
13072: RAISE okl_api.g_exception_error;
13463: IF assets_rec.fee_type = 'FREE_FORM1'
13464: THEN
13465: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
13466: 'Asset with ID ' || assets_rec.ast_id || ' is overriding the payment structure defined @ LQ level !!' );
13467: price_standard_quote_asset(
13468: x_return_status => l_return_status,
13469: x_msg_count => x_msg_count,
13470: x_msg_data => x_msg_data,
13471: p_api_version => p_api_version,
13476: p_target_rate => NULL,
13477: p_line_type => assets_rec.fee_type,
13478: x_pricing_parameter_rec => l_tmp_pricing_parameter_rec );
13479: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
13480: 'Pricing method = ' || quote_rec.pricing_method || ' | After price_standard_quote_asset l_return_status = ' || l_return_status ||
13481: ' | assets_rec.ast_id = ' || assets_rec.ast_id );
13482: IF (l_return_status = okl_api.g_ret_sts_unexp_error) THEN
13483: RAISE okl_api.g_exception_unexpected_error;
13484: ELSIF (l_return_status = okl_api.g_ret_sts_error) THEN
13682: IF assets_rec.fee_type IN ( 'ROLLOVER', 'FINANCED' )
13683: THEN
13684: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
13685: ' Pricing for fee type ' || assets_rec.fee_type );
13686: price_standard_quote_asset(
13687: x_return_status => l_return_status,
13688: x_msg_count => x_msg_count,
13689: x_msg_data => x_msg_data,
13690: p_api_version => p_api_version,
13696: p_line_type => assets_rec.fee_type,
13697: x_pricing_parameter_rec => l_tmp_pricing_parameter_rec );
13698: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
13699: 'Pricing method = ' || quote_rec.pricing_method ||
13700: ' | After price_standard_quote_asset l_return_status = ' || l_return_status ||
13701: ' | assets_rec.ast_id = ' || assets_rec.ast_id );
13702: IF (l_return_status = okl_api.g_ret_sts_unexp_error) THEN
13703: RAISE okl_api.g_exception_unexpected_error;
13704: ELSIF (l_return_status = okl_api.g_ret_sts_error) THEN
14102: LOOP
14103: IF assets_rec.fee_type IN ( 'ROLLOVER', 'FINANCED')
14104: THEN
14105: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
14106: ' Calling price_standard_quote_asset for ' || assets_rec.fee_type || ' with ID ' || assets_rec.fee_id );
14107: -- Price the fees ROLLOVER OR FINANCED
14108: price_standard_quote_asset(
14109: x_return_status => l_return_status,
14110: x_msg_count => x_msg_count,
14104: THEN
14105: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
14106: ' Calling price_standard_quote_asset for ' || assets_rec.fee_type || ' with ID ' || assets_rec.fee_id );
14107: -- Price the fees ROLLOVER OR FINANCED
14108: price_standard_quote_asset(
14109: x_return_status => l_return_status,
14110: x_msg_count => x_msg_count,
14111: x_msg_data => x_msg_data,
14112: p_api_version => p_api_version,
14117: p_target_rate => quote_rec.target_rate / 100,
14118: p_line_type => assets_rec.fee_type,
14119: x_pricing_parameter_rec => l_tmp_pricing_parameter_rec );
14120: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
14121: 'After price_standard_quote_asset ' || l_return_status );
14122: IF (l_return_status = okl_api.g_ret_sts_unexp_error) THEN
14123: RAISE okl_api.g_exception_unexpected_error;
14124: ELSIF (l_return_status = okl_api.g_ret_sts_error) THEN
14125: RAISE okl_api.g_exception_error;
14590: FOR assets_rec IN assets_csr(p_qte_id)
14591: LOOP
14592: IF assets_rec.fee_type = 'FREE_FORM1'
14593: THEN
14594: -- For Rate Card Pricing the price_standard_quote_asset api will
14595: -- a/ Create Cash flows for each configuration line
14596: -- Checks whether to pick the RC from Header of configuration level itself.
14597: -- b/ builds and return the pricing parameter record
14598: price_standard_quote_asset(
14594: -- For Rate Card Pricing the price_standard_quote_asset api will
14595: -- a/ Create Cash flows for each configuration line
14596: -- Checks whether to pick the RC from Header of configuration level itself.
14597: -- b/ builds and return the pricing parameter record
14598: price_standard_quote_asset(
14599: x_return_status => l_return_status,
14600: x_msg_count => x_msg_count,
14601: x_msg_data => x_msg_data,
14602: p_api_version => p_api_version,
14607: p_target_rate => NULL,
14608: p_line_type => assets_rec.fee_type,
14609: x_pricing_parameter_rec => l_tmp_pricing_parameter_rec );
14610: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
14611: 'After price_standard_quote_asset ' || l_return_status );
14612: IF (l_return_status = okl_api.g_ret_sts_unexp_error) THEN
14613: RAISE okl_api.g_exception_unexpected_error;
14614: ELSIF (l_return_status = okl_api.g_ret_sts_error) THEN
14615: RAISE okl_api.g_exception_error;
14624: FOR assets_rec IN assets_csr(p_qte_id)
14625: LOOP
14626: IF assets_rec.fee_type in ('ROLLOVER', 'FINANCED')
14627: THEN
14628: -- For Rate Card Pricing the price_standard_quote_asset api will
14629: -- a/ Create Cash flows for each configuration line
14630: -- Checks whether to pick the RC from Header of configuration level itself.
14631: -- b/ builds and return the pricing parameter record
14632: price_standard_quote_asset(
14628: -- For Rate Card Pricing the price_standard_quote_asset api will
14629: -- a/ Create Cash flows for each configuration line
14630: -- Checks whether to pick the RC from Header of configuration level itself.
14631: -- b/ builds and return the pricing parameter record
14632: price_standard_quote_asset(
14633: x_return_status => l_return_status,
14634: x_msg_count => x_msg_count,
14635: x_msg_data => x_msg_data,
14636: p_api_version => p_api_version,
14641: p_target_rate => NULL,
14642: p_line_type => assets_rec.fee_type,
14643: x_pricing_parameter_rec => l_tmp_pricing_parameter_rec );
14644: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
14645: 'After price_standard_quote_asset ' || l_return_status );
14646: IF (l_return_status = okl_api.g_ret_sts_unexp_error) THEN
14647: RAISE okl_api.g_exception_unexpected_error;
14648: ELSIF (l_return_status = okl_api.g_ret_sts_error) THEN
14649: RAISE okl_api.g_exception_error;
15049: IF assets_rec.fee_type = 'FREE_FORM1'
15050: THEN
15051: -- Price this Asset which has overridden the payment strcuture defined on the LQ !
15052: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
15053: ' Calling price_standard_quote_asset ' || 'p_qte_id ' || p_qte_id
15054: || ' | assets_rec.ast_id ' || nvl(assets_rec.ast_id, assets_rec.fee_id) ||
15055: ' | p_price_at_lq_level = FALSE | p_target_rate = NULL' );
15056: price_standard_quote_asset(
15057: x_return_status => l_return_status,
15052: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
15053: ' Calling price_standard_quote_asset ' || 'p_qte_id ' || p_qte_id
15054: || ' | assets_rec.ast_id ' || nvl(assets_rec.ast_id, assets_rec.fee_id) ||
15055: ' | p_price_at_lq_level = FALSE | p_target_rate = NULL' );
15056: price_standard_quote_asset(
15057: x_return_status => l_return_status,
15058: x_msg_count => x_msg_count,
15059: x_msg_data => x_msg_data,
15060: p_api_version => p_api_version,
15065: p_target_rate => NULL,
15066: p_line_type => assets_rec.fee_type,
15067: x_pricing_parameter_rec => l_tmp_pricing_parameter_rec );
15068: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
15069: 'After price_standard_quote_asset ' || l_return_status );
15070: IF (l_return_status = okl_api.g_ret_sts_unexp_error) THEN
15071: RAISE okl_api.g_exception_unexpected_error;
15072: ELSIF (l_return_status = okl_api.g_ret_sts_error) THEN
15073: RAISE okl_api.g_exception_error;
15104: LOOP
15105: IF assets_rec.fee_type IN ( 'ROLLOVER', 'FINANCED')
15106: THEN
15107: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
15108: ' Calling price_standard_quote_asset for ' || assets_rec.fee_type || ' with ID ' || assets_rec.fee_id );
15109: -- Price the fees ROLLOVER OR FINANCED
15110: price_standard_quote_asset(
15111: x_return_status => l_return_status,
15112: x_msg_count => x_msg_count,
15106: THEN
15107: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
15108: ' Calling price_standard_quote_asset for ' || assets_rec.fee_type || ' with ID ' || assets_rec.fee_id );
15109: -- Price the fees ROLLOVER OR FINANCED
15110: price_standard_quote_asset(
15111: x_return_status => l_return_status,
15112: x_msg_count => x_msg_count,
15113: x_msg_data => x_msg_data,
15114: p_api_version => p_api_version,
15119: p_target_rate => NULL,
15120: p_line_type => assets_rec.fee_type,
15121: x_pricing_parameter_rec => l_tmp_pricing_parameter_rec );
15122: put_in_log(l_debug_enabled,is_debug_procedure_on,is_debug_statement_on,l_module, 'S',
15123: 'After price_standard_quote_asset ' || l_return_status );
15124: IF (l_return_status = okl_api.g_ret_sts_unexp_error) THEN
15125: RAISE okl_api.g_exception_unexpected_error;
15126: ELSIF (l_return_status = okl_api.g_ret_sts_error) THEN
15127: RAISE okl_api.g_exception_error;
16031: p_exc_name => 'OTHERS',
16032: x_msg_count => x_msg_count,
16033: x_msg_data => x_msg_data,
16034: p_api_type => g_api_type);
16035: END price_standard_quote;
16036: END OKL_PRICING_UTILS_PVT;