DBA Data[Home] [Help]

APPS.XTR_REVAL_PROCESS_P dependencies on GL_CURRENCY_API

Line 1271: when GL_CURRENCY_API.no_rate then

1267: t_log_dump;
1268:
1269:
1270: EXCEPTION
1271: when GL_CURRENCY_API.no_rate then
1272: if g_call_by_form = true then
1273: FND_MESSAGE.set_name('XTR', 'XTR_NO_GL_RATE');
1274: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
1275: APP_EXCEPTION.raise_exception;

Line 1285: when GL_CURRENCY_API.invalid_currency then

1281: FND_MESSAGE.SET_TOKEN('TRANS_NO', rec.trans_no);
1282: l_buf := FND_MESSAGE.GET;
1283: FND_FILE.put_line(fnd_file.log, l_buf);
1284: end if;
1285: when GL_CURRENCY_API.invalid_currency then
1286: if g_call_by_form = true then
1287: FND_MESSAGE.set_name('XTR', 'XTR_INVALID_CURRENCY');
1288: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
1289: FND_MESSAGE.set_token('CURRENCY', rec.currencya);

Line 1673: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, l_contra_ccy,

1669: l_base_ccy := rec.currencya;
1670: l_contra_ccy := rec.currencyb;
1671: xtr_get_base_contra(l_base_ccy, l_contra_ccy, l_reverse);
1672:
1673: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, l_contra_ccy,
1674: rec.revldate, rec.ex_rate_type,l_deno, l_numer, gl_end_rate);
1675: rec.reval_rate := gl_end_rate;
1676: r_fx_rate.fx_forward_rate := gl_end_rate;
1677: xtr_revl_fv_fx(rec, r_fx_rate, l_hedge_flag, fair_value, l_sob_curr_rate);

Line 2275: GL_CURRENCY_API.get_triangulation_rate

2271: rec.reval_ex_rate_two :=NULL;
2272:
2273: -- Get XTR_DEALS table exchange_rate_one and exchange_rate_two
2274: If rec.deal_type = 'FX' then
2275: GL_CURRENCY_API.get_triangulation_rate
2276: (l_base_ccy, rec.sob_ccy, rec.eligible_date, rec.ex_rate_type,
2277: l_deno, l_numer, rec.deal_ex_rate_one);
2278: GL_CURRENCY_API.get_triangulation_rate
2279: (l_contra_ccy, rec.sob_ccy, rec.eligible_date, rec.ex_rate_type,

Line 2278: GL_CURRENCY_API.get_triangulation_rate

2274: If rec.deal_type = 'FX' then
2275: GL_CURRENCY_API.get_triangulation_rate
2276: (l_base_ccy, rec.sob_ccy, rec.eligible_date, rec.ex_rate_type,
2277: l_deno, l_numer, rec.deal_ex_rate_one);
2278: GL_CURRENCY_API.get_triangulation_rate
2279: (l_contra_ccy, rec.sob_ccy, rec.eligible_date, rec.ex_rate_type,
2280: l_deno, l_numer, rec.deal_ex_rate_two);
2281:
2282: Else -- for other deal types, only exchange_rate_one is used

Line 2283: GL_CURRENCY_API.get_triangulation_rate

2279: (l_contra_ccy, rec.sob_ccy, rec.eligible_date, rec.ex_rate_type,
2280: l_deno, l_numer, rec.deal_ex_rate_two);
2281:
2282: Else -- for other deal types, only exchange_rate_one is used
2283: GL_CURRENCY_API.get_triangulation_rate
2284: (rec.reval_ccy, rec.sob_ccy, rec.eligible_date, rec.ex_rate_type,
2285: l_deno, l_numer, rec.deal_ex_rate_one);
2286: rec.deal_ex_rate_two := null;
2287: End If;

Line 2303: GL_CURRENCY_API.get_triangulation_rate

2299:
2300: -- Get XTR_REVALUATION_DETAILS table exchange_rate_one, exchange_rate_two, and Fx forwad rate
2301: If rec.effective_date <= rec.revldate then -- deal is realized. Used maturity date rate
2302: If rec.deal_type = 'FX' then
2303: GL_CURRENCY_API.get_triangulation_rate
2304: (l_base_ccy, rec.sob_ccy, rec.effective_date, rec.ex_rate_type,
2305: l_deno, l_numer, rec.reval_ex_rate_one);
2306: GL_CURRENCY_API.get_triangulation_rate
2307: (l_contra_ccy, rec.sob_ccy, rec.effective_date, rec.ex_rate_type,

Line 2306: GL_CURRENCY_API.get_triangulation_rate

2302: If rec.deal_type = 'FX' then
2303: GL_CURRENCY_API.get_triangulation_rate
2304: (l_base_ccy, rec.sob_ccy, rec.effective_date, rec.ex_rate_type,
2305: l_deno, l_numer, rec.reval_ex_rate_one);
2306: GL_CURRENCY_API.get_triangulation_rate
2307: (l_contra_ccy, rec.sob_ccy, rec.effective_date, rec.ex_rate_type,
2308: l_deno, l_numer, rec.reval_ex_rate_two);
2309: Else
2310: GL_CURRENCY_API.get_triangulation_rate

Line 2310: GL_CURRENCY_API.get_triangulation_rate

2306: GL_CURRENCY_API.get_triangulation_rate
2307: (l_contra_ccy, rec.sob_ccy, rec.effective_date, rec.ex_rate_type,
2308: l_deno, l_numer, rec.reval_ex_rate_two);
2309: Else
2310: GL_CURRENCY_API.get_triangulation_rate
2311: (rec.reval_ccy, rec.sob_ccy, rec.effective_date, rec.ex_rate_type,
2312: l_deno, l_numer, rec.reval_ex_rate_one);
2313: rec.reval_ex_rate_two := null;
2314: IF xtr_risk_debug_pkg.g_Debug THEN

Line 2329: GL_CURRENCY_API.get_triangulation_rate

2325:
2326: End If;
2327: Else -- deal is unrealized. Use reval date's G/L rate
2328: If rec.deal_type = 'FX' then
2329: GL_CURRENCY_API.get_triangulation_rate
2330: (l_base_ccy, rec.sob_ccy, rec.revldate, rec.ex_rate_type,
2331: l_deno, l_numer, rec.reval_ex_rate_one);
2332: GL_CURRENCY_API.get_triangulation_rate
2333: (l_contra_ccy, rec.sob_ccy, rec.revldate, rec.ex_rate_type,

Line 2332: GL_CURRENCY_API.get_triangulation_rate

2328: If rec.deal_type = 'FX' then
2329: GL_CURRENCY_API.get_triangulation_rate
2330: (l_base_ccy, rec.sob_ccy, rec.revldate, rec.ex_rate_type,
2331: l_deno, l_numer, rec.reval_ex_rate_one);
2332: GL_CURRENCY_API.get_triangulation_rate
2333: (l_contra_ccy, rec.sob_ccy, rec.revldate, rec.ex_rate_type,
2334: l_deno, l_numer, rec.reval_ex_rate_two);
2335: Else
2336: GL_CURRENCY_API.get_triangulation_rate

Line 2336: GL_CURRENCY_API.get_triangulation_rate

2332: GL_CURRENCY_API.get_triangulation_rate
2333: (l_contra_ccy, rec.sob_ccy, rec.revldate, rec.ex_rate_type,
2334: l_deno, l_numer, rec.reval_ex_rate_two);
2335: Else
2336: GL_CURRENCY_API.get_triangulation_rate
2337: (rec.reval_ccy, rec.sob_ccy, rec.revldate, rec.ex_rate_type,
2338: l_deno, l_numer, rec.reval_ex_rate_one);
2339: rec.reval_ex_rate_two := null;
2340: End If;

Line 2355: when GL_CURRENCY_API.no_rate then

2351: xtr_risk_debug_pkg.dpop('xtr_revl_exchange_rate: ' || 'reval_date exchange rate');
2352: END IF;
2353:
2354: EXCEPTION
2355: when GL_CURRENCY_API.no_rate then
2356: if g_call_by_form = true then
2357: FND_MESSAGE.set_name('XTR', 'XTR_NO_GL_RATE');
2358: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
2359: APP_EXCEPTION.raise_exception;

Line 2369: when GL_CURRENCY_API.invalid_currency then

2365: FND_MESSAGE.SET_TOKEN('TRANS_NO', rec.trans_no);
2366: l_buf := FND_MESSAGE.GET;
2367: FND_FILE.put_line(fnd_file.log, l_buf);
2368: end if;
2369: when GL_CURRENCY_API.invalid_currency then
2370: if g_call_by_form = true then
2371: FND_MESSAGE.set_name('XTR', 'XTR_INVALID_CURRENCY');
2372: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
2373: FND_MESSAGE.set_token('CURRENCY', rec.currencya);

Line 2594: GL_CURRENCY_API.get_triangulation_rate (rec.reval_ccy, rec.sob_ccy,

2590: return;
2591: end if;
2592:
2593: -- Obtain GL exchange rate on the batch end date
2594: GL_CURRENCY_API.get_triangulation_rate (rec.reval_ccy, rec.sob_ccy,
2595: rec.revldate, rec.ex_rate_type, l_deno, l_numer, l_batch_end_rate);
2596:
2597: -- Calculate pair
2598: open C_PAIR_PRINCIPAL;

Line 2606: GL_CURRENCY_API.get_triangulation_rate (rec.reval_ccy, rec.sob_ccy,

2602:
2603: while C_PAIR_PRINCIPAL%FOUND loop
2604: -- Determine the 'Previous exchange rate'
2605: if l_first_batch0 is null then -- transaction been first revaled
2606: GL_CURRENCY_API.get_triangulation_rate (rec.reval_ccy, rec.sob_ccy,
2607: l_start_date0, rec.ex_rate_type, l_deno, l_numer, l_trans_ex_rate0);
2608:
2609: l_unrel_start_rate := l_trans_ex_rate0;
2610: l_first_batch_id := rec.batch_id;

Line 2622: GL_CURRENCY_API.get_triangulation_rate(rec.reval_ccy, rec.sob_ccy,

2618: and nvl(realized_flag, 'N') = 'N';
2619: end if;
2620:
2621: -- Determine the 'Ending exchange rate'
2622: GL_CURRENCY_API.get_triangulation_rate(rec.reval_ccy, rec.sob_ccy,
2623: l_start_date1, rec.ex_rate_type, l_deno, l_numer, l_trans_ex_rate1);
2624: l_unrel_end_rate := l_trans_ex_rate1;
2625:
2626: -- Calculate UCGL = balance_out * (ending ex rate - start ex rate)

Line 2707: GL_CURRENCY_API.get_triangulation_rate (rec.reval_ccy, rec.sob_ccy,

2703: l_principal0, l_prin_action0, l_balance_out0, l_first_batch0;
2704: if C_LAST_PRIN_ADJ%FOUND then
2705: -- Determine the 'Previous exchange rate'
2706: if l_first_batch0 is null then -- transaction been first revaled
2707: GL_CURRENCY_API.get_triangulation_rate (rec.reval_ccy, rec.sob_ccy,
2708: l_start_date0, rec.ex_rate_type, l_deno, l_numer, l_trans_ex_rate0);
2709:
2710: l_unrel_start_rate := l_trans_ex_rate0;
2711: l_first_batch_id := rec.batch_id;

Line 2790: when GL_CURRENCY_API.no_rate then

2786: end if;
2787: close C_LAST_PRIN_ADJ;
2788:
2789: EXCEPTION
2790: when GL_CURRENCY_API.no_rate then
2791: if g_call_by_form = true then
2792: FND_MESSAGE.set_name('XTR', 'XTR_NO_GL_RATE');
2793: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
2794: APP_EXCEPTION.raise_exception;

Line 2804: when GL_CURRENCY_API.invalid_currency then

2800: FND_MESSAGE.SET_TOKEN('TRANS_NO', rec.trans_no);
2801: l_buf := FND_MESSAGE.GET;
2802: FND_FILE.put_line(fnd_file.log, l_buf);
2803: end if;
2804: when GL_CURRENCY_API.invalid_currency then
2805: if g_call_by_form = true then
2806: FND_MESSAGE.set_name('XTR', 'XTR_INVALID_CURRENCY');
2807: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
2808: FND_MESSAGE.set_token('CURRENCY', rec.currencya);

Line 2940: GL_CURRENCY_API.get_triangulation_rate (rec.currencya, rec.sob_ccy,

2936:
2937: ----------------------------------------------------------------------
2938: -- Obtain GL exchange rate on the batch end date
2939: ----------------------------------------------------------------------
2940: GL_CURRENCY_API.get_triangulation_rate (rec.currencya, rec.sob_ccy,
2941: rec.revldate, rec.ex_rate_type, l_deno, l_numer, l_bed_rate);
2942:
2943: ----------------------------------------------------------------------
2944: -- Calculate pair records (un)realized currency G/L

Line 2955: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,

2951: -- Get date and rate information for 1st record of the pair
2952: ----------------------------------------------------------------------
2953: if l_first_batch_id is null then
2954:
2955: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,
2956: l_bal_date0, rec.ex_rate_type, l_deno, l_numer, l_ex_rate0);
2957: xtr_risk_debug_pkg.dpush('FIRST_BATCH_CA');
2958: xtr_risk_debug_pkg.dlog('l_ex_rate0', l_ex_rate0);
2959: xtr_risk_debug_pkg.dpop('FIRST_BATCH_CA');

Line 2993: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,

2989: xtr_risk_debug_pkg.dlog('l_pre_batch_id', l_pre_batch_id);
2990: xtr_risk_debug_pkg.dpop('SEC_BATCH_CA');
2991:
2992: else
2993: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,
2994: l_bal_date0, rec.ex_rate_type, l_deno, l_numer, l_ex_rate0);
2995: l_last_unrel_date := l_bal_date0;
2996: l_avg_rate0 := nvl(l_avg_rate0, l_ex_rate0);
2997: l_unrel_start_rate:= l_ex_rate0;

Line 3011: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,

3007:
3008: ----------------------------------------------------------------------
3009: -- Get date and rate information for 2nd record of the pair
3010: ----------------------------------------------------------------------
3011: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,
3012: l_bal_date1, rec.ex_rate_type, l_deno, l_numer, l_ex_rate1);
3013: l_unrel_end_rate := l_ex_rate1;
3014:
3015: ----------------------------------------------------------------------

Line 3179: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,

3175: Fetch C_LAST_BALANCE into l_bal_date0, l_bal_amt0, l_first_batch_id, l_trans_rate0;
3176:
3177: if C_LAST_BALANCE%FOUND then
3178: if l_first_batch_id is null then
3179: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,
3180: l_bal_date0, rec.ex_rate_type, l_deno, l_numer, l_ex_rate0);
3181: l_last_unrel_date := l_bal_date0;
3182: l_avg_rate0 := l_ex_rate0;
3183: l_unrel_start_rate:= l_ex_rate0;

Line 3199: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,

3195: -------- AW 25/10/01 ------------
3196: l_ex_rate0 := l_unrel_start_rate;
3197: ---------------------------------
3198: else
3199: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,
3200: l_bal_date0, rec.ex_rate_type, l_deno, l_numer, l_ex_rate0);
3201: l_last_unrel_date := l_bal_date0;
3202: l_avg_rate0 := l_ex_rate0;
3203: l_unrel_start_rate:= l_ex_rate0;

Line 3253: when GL_CURRENCY_API.no_rate then

3249: Close C_LAST_BALANCE;
3250: retcode := 0;
3251:
3252: EXCEPTION
3253: when GL_CURRENCY_API.no_rate then
3254: if g_call_by_form = true then
3255: FND_MESSAGE.set_name('XTR', 'XTR_NO_GL_RATE');
3256: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
3257: APP_EXCEPTION.raise_exception;

Line 3267: when GL_CURRENCY_API.invalid_currency then

3263: FND_MESSAGE.SET_TOKEN('TRANS_NO', rec.trans_no);
3264: l_buf := FND_MESSAGE.GET;
3265: FND_FILE.put_line(fnd_file.log, l_buf);
3266: end if;
3267: when GL_CURRENCY_API.invalid_currency then
3268: if g_call_by_form = true then
3269: FND_MESSAGE.set_name('XTR', 'XTR_INVALID_CURRENCY');
3270: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
3271: FND_MESSAGE.set_token('CURRENCY', rec.currencya);

Line 3440: GL_CURRENCY_API.get_triangulation_rate (rec.currencya, rec.sob_ccy,

3436:
3437: -------------------------------------------------
3438: -- Obtain GL exchange rate on the batch end date
3439: -------------------------------------------------
3440: GL_CURRENCY_API.get_triangulation_rate (rec.currencya, rec.sob_ccy,
3441: rec.revldate, rec.ex_rate_type, l_deno, l_numer, l_bed_rate);
3442:
3443: ----------------------------------------------------
3444: -- Calculate pair records (un)realized currency G/L

Line 3458: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy, l_bal_date0,

3454: FETCH C_PREV_BALANCE into l_bal_date0, l_bal_amt0, l_trans_no0,
3455: l_first_batch_id, l_product0, l_port0;
3456: if C_PREV_BALANCE%FOUND then
3457: if l_first_batch_id is null then
3458: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy, l_bal_date0,
3459: rec.ex_rate_type, l_deno, l_numer, l_ex_rate0);
3460: l_last_unrel_date := l_bal_date0;
3461: l_avg_rate0 := nvl(l_avg_rate0, l_ex_rate0);
3462: l_unrel_start_rate:= l_ex_rate0;

Line 3485: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,

3481: l_avg_rate0 := nvl(l_avg_rate0, l_ex_rate0);
3482: -------------------------------------------
3483:
3484: else
3485: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,
3486: l_bal_date0, rec.ex_rate_type, l_deno, l_numer, l_ex_rate0);
3487: l_last_unrel_date := l_bal_date0;
3488: l_avg_rate0 := nvl(l_avg_rate0, l_ex_rate0);
3489: l_unrel_start_rate:= l_ex_rate0;

Line 3498: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy, l_bal_date1,

3494:
3495: ------------------------------------------------------------
3496: -- Get date and rate information for 2nd record of the pair
3497: ------------------------------------------------------------
3498: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy, l_bal_date1,
3499: rec.ex_rate_type, l_deno, l_numer, l_ex_rate1);
3500: l_unrel_end_rate := l_ex_rate1;
3501:
3502: ------------------------------------------------------------

Line 3654: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,

3650: l_product0, l_port0;
3651:
3652: if C_LAST_BALANCE%FOUND then
3653: if l_first_batch_id is null then
3654: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,
3655: l_bal_date0, rec.ex_rate_type, l_deno, l_numer, l_ex_rate0);
3656: l_last_unrel_date := l_bal_date0;
3657: l_avg_rate0 := l_ex_rate0;
3658: l_unrel_start_rate:= l_ex_rate0;

Line 3676: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,

3672: l_ex_rate0 := l_unrel_start_rate;
3673: ---------------------------------
3674:
3675: else
3676: GL_CURRENCY_API.get_triangulation_rate(rec.currencya, rec.sob_ccy,
3677: l_bal_date0, rec.ex_rate_type, l_deno, l_numer, l_ex_rate0);
3678: l_last_unrel_date := l_bal_date0;
3679: l_avg_rate0 := l_ex_rate0;
3680: l_unrel_start_rate:= l_ex_rate0;

Line 3725: when GL_CURRENCY_API.no_rate then

3721: Close C_LAST_BALANCE;
3722:
3723: retcode := 0;
3724: EXCEPTION
3725: when GL_CURRENCY_API.no_rate then
3726: if g_call_by_form = true then
3727: FND_MESSAGE.set_name('XTR', 'XTR_NO_GL_RATE');
3728: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
3729: APP_EXCEPTION.raise_exception;

Line 3739: when GL_CURRENCY_API.invalid_currency then

3735: FND_MESSAGE.SET_TOKEN('TRANS_NO', rec.trans_no);
3736: l_buf := FND_MESSAGE.GET;
3737: FND_FILE.put_line(fnd_file.log, l_buf);
3738: end if;
3739: when GL_CURRENCY_API.invalid_currency then
3740: if g_call_by_form = true then
3741: FND_MESSAGE.set_name('XTR', 'XTR_INVALID_CURRENCY');
3742: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
3743: FND_MESSAGE.set_token('CURRENCY', rec.currencya);

Line 3849: GL_CURRENCY_API.get_triangulation_rate

3845: into l_round
3846: from xtr_master_currencies_v
3847: where currency = rec.sob_ccy;
3848:
3849: GL_CURRENCY_API.get_triangulation_rate
3850: (rec.reval_ccy, rec.sob_ccy, rec.revldate, rec.ex_rate_type,
3851: l_deno, l_numer, l_batch_end_rate);
3852:
3853: for l_tmp in c_eligi_roll loop

Line 3878: GL_CURRENCY_API.get_triangulation_rate

3874: l_accum_int := l_tmp.accum_interest_bf;
3875:
3876: If l_first_batch_id is null then -- First time reval Section A
3877: -- Get GL rate on start date
3878: GL_CURRENCY_API.get_triangulation_rate
3879: (rec.reval_ccy, rec.sob_ccy, rec.effective_date, rec.ex_rate_type,
3880: l_deno, l_numer, l_trans_gl_rate);
3881: --FND_FILE.put_line(fnd_file.log, 'l_trans_gl_rate = '||l_trans_gl_rate);
3882: l_unrel_start_rate := l_trans_gl_rate;

Line 3973: GL_CURRENCY_API.get_triangulation_rate

3969: l_unrel_end_rate := l_batch_end_rate;
3970: l_unrel_end_date := rec.revldate;
3971: end if;
3972: else
3973: GL_CURRENCY_API.get_triangulation_rate
3974: (rec.reval_ccy, rec.sob_ccy, rec.maturity_date,
3975: rec.ex_rate_type, l_deno, l_numer, l_unrel_end_rate);
3976: l_unrel_end_date := rec.maturity_date;
3977: l_trans_last_batch := rec.batch_id;

Line 4042: when GL_CURRENCY_API.no_rate then

4038: end loop;
4039:
4040: retcode := 0;
4041: EXCEPTION
4042: when GL_CURRENCY_API.no_rate then
4043: if g_call_by_form = true then
4044: FND_MESSAGE.set_name('XTR', 'XTR_NO_GL_RATE');
4045: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
4046: APP_EXCEPTION.raise_exception;

Line 4056: when GL_CURRENCY_API.invalid_currency then

4052: FND_MESSAGE.SET_TOKEN('TRANS_NO', rec.trans_no);
4053: l_buf := FND_MESSAGE.GET;
4054: FND_FILE.put_line(fnd_file.log, l_buf);
4055: end if;
4056: when GL_CURRENCY_API.invalid_currency then
4057: if g_call_by_form = true then
4058: FND_MESSAGE.set_name('XTR', 'XTR_INVALID_CURRENCY');
4059: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
4060: FND_MESSAGE.set_token('CURRENCY', rec.currencya);

Line 4712: when GL_CURRENCY_API.no_rate then

4708: end if;
4709: end_fv := round(end_fv, l_round);
4710:
4711: EXCEPTION
4712: when GL_CURRENCY_API.no_rate then
4713: if g_call_by_form = true then
4714: FND_MESSAGE.set_name('XTR', 'XTR_NO_GL_RATE');
4715: APP_EXCEPTION.raise_exception;
4716: else

Line 4725: when GL_CURRENCY_API.invalid_currency then

4721: FND_MESSAGE.SET_TOKEN('TRANS_NO', rec.trans_no);
4722: l_buff := FND_MESSAGE.GET;
4723: FND_FILE.put_line(fnd_file.log, l_buff);
4724: end if;
4725: when GL_CURRENCY_API.invalid_currency then
4726: if g_call_by_form = true then
4727: FND_MESSAGE.set_name('XTR', 'XTR_INVALID_CURRENCY');
4728: APP_EXCEPTION.raise_exception;
4729: else

Line 5361: GL_CURRENCY_API.get_triangulation_rate(l_base1, l_contra1,

5357: -- use GL daily rate between SOB and Contra ccy instead of forward rate
5358: l_base1 := l_contra_ccy;
5359: l_contra1 := rec.sob_ccy;
5360: xtr_get_base_contra(l_base1, l_contra1, l_reverse);
5361: GL_CURRENCY_API.get_triangulation_rate(l_base1, l_contra1,
5362: l_spot_date, rec.ex_rate_type,l_deno, l_numer, p_sob_curr_rate);
5363: elsif l_contra_ccy = rec.sob_ccy and rec.pricing_model = 'FX_GL' then
5364: p_sob_curr_rate := 1;
5365: end if;

Line 5412: when GL_CURRENCY_API.no_rate then

5408: END IF; */
5409: end if;
5410:
5411: EXCEPTION
5412: when GL_CURRENCY_API.no_rate then
5413: if g_call_by_form = true then
5414: FND_MESSAGE.set_name('XTR', 'XTR_NO_GL_RATE');
5415: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
5416: APP_EXCEPTION.raise_exception;

Line 5426: when GL_CURRENCY_API.invalid_currency then

5422: FND_MESSAGE.SET_TOKEN('TRANS_NO', rec.trans_no);
5423: l_buff := FND_MESSAGE.GET;
5424: FND_FILE.put_line(fnd_file.log, l_buff);
5425: end if;
5426: when GL_CURRENCY_API.invalid_currency then
5427: if g_call_by_form = true then
5428: FND_MESSAGE.set_name('XTR', 'XTR_INVALID_CURRENCY');
5429: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
5430: FND_MESSAGE.set_token('CURRENCY', rec.currencya);

Line 5582: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, l_contra_ccy,

5578: ------------------------------------------------------------
5579: -- Get exchange rate between base and contra, contra ccy and sob ccy in
5580: -- min(batch end date, deal value date) as end rate
5581: ------------------------------------------------------------
5582: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, l_contra_ccy,
5583: l_end_date, rec.ex_rate_type,l_deno, l_numer, l_end_base_contra_rate);
5584:
5585: GL_CURRENCY_API.get_triangulation_rate(l_contra_ccy, rec.sob_ccy,
5586: l_end_date, rec.ex_rate_type,l_deno, l_numer, l_end_contra_sob_rate);

Line 5585: GL_CURRENCY_API.get_triangulation_rate(l_contra_ccy, rec.sob_ccy,

5581: ------------------------------------------------------------
5582: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, l_contra_ccy,
5583: l_end_date, rec.ex_rate_type,l_deno, l_numer, l_end_base_contra_rate);
5584:
5585: GL_CURRENCY_API.get_triangulation_rate(l_contra_ccy, rec.sob_ccy,
5586: l_end_date, rec.ex_rate_type,l_deno, l_numer, l_end_contra_sob_rate);
5587:
5588: rec.reval_ex_rate_one := l_end_base_contra_rate;
5589: rec.reval_ex_rate_two := l_end_contra_sob_rate;

Line 5597: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, rec.sob_ccy,

5593: ------------------------------------------------------------
5594: -- Store base-> SOB currency as exchange_rate_one and
5595: -- store contra -> SOB currency as exchange_rate_two in reval table
5596: ------------------------------------------------------------
5597: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, rec.sob_ccy,
5598: l_end_date, rec.ex_rate_type,l_deno, l_numer, rec.reval_ex_rate_one);
5599:
5600: GL_CURRENCY_API.get_triangulation_rate(l_contra_ccy, rec.sob_ccy,
5601: l_end_date, rec.ex_rate_type,l_deno, l_numer, rec.reval_ex_rate_two);

Line 5600: GL_CURRENCY_API.get_triangulation_rate(l_contra_ccy, rec.sob_ccy,

5596: ------------------------------------------------------------
5597: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, rec.sob_ccy,
5598: l_end_date, rec.ex_rate_type,l_deno, l_numer, rec.reval_ex_rate_one);
5599:
5600: GL_CURRENCY_API.get_triangulation_rate(l_contra_ccy, rec.sob_ccy,
5601: l_end_date, rec.ex_rate_type,l_deno, l_numer, rec.reval_ex_rate_two);
5602: ---------------------------------------------------------------------------------
5603: */
5604:

Line 5612: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, l_contra_ccy,

5608: ------------------------------------------------------------
5609: -- Get exchange rate between base and contra, contra and sob ccy in
5610: -- nvl(last batch end date, deal.deal_date) as begin rate
5611: ------------------------------------------------------------
5612: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, l_contra_ccy,
5613: l_begin_date, rec.ex_rate_type,l_deno, l_numer, l_begin_base_contra_rate);
5614:
5615: GL_CURRENCY_API.get_triangulation_rate(l_contra_ccy, rec.sob_ccy,
5616: l_begin_date, rec.ex_rate_type,l_deno, l_numer, l_begin_contra_sob_rate);

Line 5615: GL_CURRENCY_API.get_triangulation_rate(l_contra_ccy, rec.sob_ccy,

5611: ------------------------------------------------------------
5612: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, l_contra_ccy,
5613: l_begin_date, rec.ex_rate_type,l_deno, l_numer, l_begin_base_contra_rate);
5614:
5615: GL_CURRENCY_API.get_triangulation_rate(l_contra_ccy, rec.sob_ccy,
5616: l_begin_date, rec.ex_rate_type,l_deno, l_numer, l_begin_contra_sob_rate);
5617:
5618: rec.deal_ex_rate_one := l_begin_base_contra_rate;
5619: rec.deal_ex_rate_two := l_begin_contra_sob_rate;

Line 5627: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, rec.sob_ccy,

5623: ------------------------------------------------------------
5624: -- Store base-> SOB currency as exchange_rate_one and
5625: -- store contra -> SOB currency as exchange_rate_two in xtr_deals table
5626: ------------------------------------------------------------
5627: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, rec.sob_ccy,
5628: l_begin_date, rec.ex_rate_type,l_deno, l_numer, rec.deal_ex_rate_one);
5629:
5630: GL_CURRENCY_API.get_triangulation_rate(l_contra_ccy, rec.sob_ccy,
5631: l_begin_date, rec.ex_rate_type,l_deno, l_numer, rec.deal_ex_rate_two);

Line 5630: GL_CURRENCY_API.get_triangulation_rate(l_contra_ccy, rec.sob_ccy,

5626: ------------------------------------------------------------
5627: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, rec.sob_ccy,
5628: l_begin_date, rec.ex_rate_type,l_deno, l_numer, rec.deal_ex_rate_one);
5629:
5630: GL_CURRENCY_API.get_triangulation_rate(l_contra_ccy, rec.sob_ccy,
5631: l_begin_date, rec.ex_rate_type,l_deno, l_numer, rec.deal_ex_rate_two);
5632: ------------------------------------------------------------------------
5633: */
5634:

Line 5661: when GL_CURRENCY_API.no_rate then

5657: xtr_risk_debug_pkg.dpop('xtr_revl_fv_fx: ' || 'xtr_fx_currency_gl');
5658: END IF;
5659:
5660: EXCEPTION
5661: when GL_CURRENCY_API.no_rate then
5662: if g_call_by_form = true then
5663: FND_MESSAGE.set_name('XTR', 'XTR_NO_GL_RATE');
5664: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
5665: APP_EXCEPTION.raise_exception;

Line 5675: when GL_CURRENCY_API.invalid_currency then

5671: FND_MESSAGE.SET_TOKEN('TRANS_NO', rec.trans_no);
5672: l_buff := FND_MESSAGE.GET;
5673: FND_FILE.put_line(fnd_file.log, l_buff);
5674: end if;
5675: when GL_CURRENCY_API.invalid_currency then
5676: if g_call_by_form = true then
5677: FND_MESSAGE.set_name('XTR', 'XTR_INVALID_CURRENCY');
5678: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
5679: FND_MESSAGE.set_token('CURRENCY', rec.currencya);

Line 5791: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, l_contra_ccy,

5787: /* Introduce new FX pricing model, if GL-deal, then use either */
5788: /* batch end date or maturity date G/L rate as fx rate to reval */
5789: /*******************************************************************/
5790: if rec.pricing_model = 'FX_GL' then
5791: GL_CURRENCY_API.get_triangulation_rate(l_base_ccy, l_contra_ccy,
5792: l_spot_date, rec.ex_rate_type,l_deno, l_numer, l_gl_rate);
5793: r_fx_rate.fx_forward_rate := l_gl_rate;
5794:
5795: else

Line 5934: when GL_CURRENCY_API.no_rate then

5930:
5931: end if;
5932:
5933: EXCEPTION
5934: when GL_CURRENCY_API.no_rate then
5935: if g_call_by_form = true then
5936: FND_MESSAGE.set_name('XTR', 'XTR_NO_GL_RATE');
5937: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
5938: APP_EXCEPTION.raise_exception;

Line 5948: when GL_CURRENCY_API.invalid_currency then

5944: FND_MESSAGE.SET_TOKEN('TRANS_NO', rec.trans_no);
5945: l_buff := FND_MESSAGE.GET;
5946: FND_FILE.put_line(fnd_file.log, l_buff);
5947: end if;
5948: when GL_CURRENCY_API.invalid_currency then
5949: if g_call_by_form = true then
5950: FND_MESSAGE.set_name('XTR', 'XTR_INVALID_CURRENCY');
5951: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
5952: FND_MESSAGE.set_token('CURRENCY', rec.currencya);

Line 6408: GL_CURRENCY_API.get_triangulation_rate

6404:
6405: -- Find beginning GL rate
6406: xtr_first_reval(rec, l_first);
6407: if l_first = TRUE then -- first time reval
6408: GL_CURRENCY_API.get_triangulation_rate
6409: (rec.reval_ccy, rec.sob_ccy, rec.period_start, rec.ex_rate_type,
6410: l_deno, l_numer, l_begin_rate);
6411:
6412: rec.deal_ex_rate_one := l_begin_rate;

Line 6417: GL_CURRENCY_API.get_triangulation_rate

6413: else
6414: XTR_GET_PREV_FV_RATE(rec, r_prev_hedge);
6415: l_begin_rate := r_prev_hedge.rate;
6416: if l_begin_rate is NULL then
6417: GL_CURRENCY_API.get_triangulation_rate
6418: (rec.reval_ccy, rec.sob_ccy, rec.period_start, rec.ex_rate_type,
6419: l_deno, l_numer, l_begin_rate);
6420: end if;
6421: end if;

Line 6424: GL_CURRENCY_API.get_triangulation_rate

6420: end if;
6421: end if;
6422:
6423: -- Find ending GL rate
6424: GL_CURRENCY_API.get_triangulation_rate
6425: (rec.reval_ccy, rec.sob_ccy, rec.period_end, rec.ex_rate_type,
6426: l_deno, l_numer, l_end_rate);
6427:
6428: l_begin_fv := round(rec.fair_value * l_begin_rate, l_round);

Line 6443: when GL_CURRENCY_API.no_rate then

6439: currency_gl, r_rd, retcode, l_hedge_flag );
6440:
6441:
6442: EXCEPTION
6443: when GL_CURRENCY_API.no_rate then
6444: if g_call_by_form = true then
6445: FND_MESSAGE.set_name('XTR', 'XTR_NO_GL_RATE');
6446: APP_EXCEPTION.raise_exception;
6447: else

Line 6456: when GL_CURRENCY_API.invalid_currency then

6452: FND_MESSAGE.SET_TOKEN('TRANS_NO', rec.trans_no);
6453: l_buff := FND_MESSAGE.GET;
6454: FND_FILE.put_line(fnd_file.log, l_buff);
6455: end if;
6456: when GL_CURRENCY_API.invalid_currency then
6457: if g_call_by_form = true then
6458: FND_MESSAGE.set_name('XTR', 'XTR_INVALID_CURRENCY');
6459: APP_EXCEPTION.raise_exception;
6460: else

Line 8005: GL_CURRENCY_API.get_triangulation_rate

8001:
8002: -- End bug 2990046 - Issue #1 fix.
8003:
8004:
8005: GL_CURRENCY_API.get_triangulation_rate
8006: (rec.reval_ccy, rec.sob_ccy, rec.effective_date, rec.ex_rate_type,
8007: l_deno, l_numer, rec.reval_ex_rate_one);
8008:
8009: Else -- UNREAL record is not result of resale

Line 8105: when GL_CURRENCY_API.no_rate then

8101: unrel_sob_gl, currency_gl, r_rd, retcode);
8102: end if;
8103:
8104: EXCEPTION
8105: when GL_CURRENCY_API.no_rate then
8106: if g_call_by_form = true then
8107: FND_MESSAGE.set_name('XTR', 'XTR_NO_GL_RATE');
8108: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
8109: APP_EXCEPTION.raise_exception;

Line 8119: when GL_CURRENCY_API.invalid_currency then

8115: FND_MESSAGE.SET_TOKEN('TRANS_NO', rec.trans_no);
8116: l_buf := FND_MESSAGE.GET;
8117: FND_FILE.put_line(fnd_file.log, l_buf);
8118: end if;
8119: when GL_CURRENCY_API.invalid_currency then
8120: if g_call_by_form = true then
8121: FND_MESSAGE.set_name('XTR', 'XTR_INVALID_CURRENCY');
8122: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
8123: FND_MESSAGE.set_token('CURRENCY', rec.currencya);

Line 8900: GL_CURRENCY_API.get_triangulation_rate

8896: and nvl(realized_flag, 'N') = 'N'
8897: and batch_id = l_pre_batch;
8898:
8899: else
8900: GL_CURRENCY_API.get_triangulation_rate
8901: (rec.reval_ccy, rec.sob_ccy, rec.eligible_date, rec.ex_rate_type,
8902: l_deno, l_numer, rec.deal_ex_rate_one);
8903: end if;
8904:

Line 8905: GL_CURRENCY_API.get_triangulation_rate

8901: (rec.reval_ccy, rec.sob_ccy, rec.eligible_date, rec.ex_rate_type,
8902: l_deno, l_numer, rec.deal_ex_rate_one);
8903: end if;
8904:
8905: GL_CURRENCY_API.get_triangulation_rate
8906: (rec.reval_ccy, rec.sob_ccy, rec.effective_date, rec.ex_rate_type,
8907: l_deno, l_numer, rec.reval_ex_rate_one);
8908:
8909: fv_sob_amt := round((rec.fair_value * rec.reval_ex_rate_one), l_round);

Line 9008: when GL_CURRENCY_API.no_rate then

9004: unrel_sob_gl, currency_gl, r_rd, retcode);
9005: end if;
9006:
9007: EXCEPTION
9008: when GL_CURRENCY_API.no_rate then
9009: if g_call_by_form = true then
9010: FND_MESSAGE.set_name('XTR', 'XTR_NO_GL_RATE');
9011: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
9012: APP_EXCEPTION.raise_exception;

Line 9022: when GL_CURRENCY_API.invalid_currency then

9018: FND_MESSAGE.SET_TOKEN('TRANS_NO', rec.trans_no);
9019: l_buf := FND_MESSAGE.GET;
9020: FND_FILE.put_line(fnd_file.log, l_buf);
9021: end if;
9022: when GL_CURRENCY_API.invalid_currency then
9023: if g_call_by_form = true then
9024: FND_MESSAGE.set_name('XTR', 'XTR_INVALID_CURRENCY');
9025: FND_MESSAGE.set_token('DEAL_NO', rec.deal_no);
9026: FND_MESSAGE.set_token('CURRENCY', rec.currencya);