27: v_limit_log_return NUMBER;
28:
29: cursor c_deal_no is
30: select xtr_deals_s.nextval
31: from dual;
32:
33: BEGIN
34:
35: -------------------------
39: G_User_Id := fnd_global.user_id;
40: g_currency_first := null;
41: g_currency_second := null;
42: G_Pricing_Model := null;
43: Select Trunc(sysdate) Into G_Curr_Date From Dual;
44:
45: --------------------------------------------------------------------------------------------------------
46: --* Perform the following to purge all the related data in the error table before processing the record
47: --------------------------------------------------------------------------------------------------------
489: 'XTR_INV_DEALER_CODE');
490: l_error := l_error +1;
491: end if;
492:
493: if ARec_Interface.dual_authorization_by is not null and
494: not ( val_dealer_code(ARec_Interface.dual_authorization_by)) then
495: xtr_import_deal_data.log_interface_errors( ARec_Interface.External_Deal_Id,
496: ARec_Interface.Deal_Type,
497: 'DualAuthorizationBy',
490: l_error := l_error +1;
491: end if;
492:
493: if ARec_Interface.dual_authorization_by is not null and
494: not ( val_dealer_code(ARec_Interface.dual_authorization_by)) then
495: xtr_import_deal_data.log_interface_errors( ARec_Interface.External_Deal_Id,
496: ARec_Interface.Deal_Type,
497: 'DualAuthorizationBy',
498: 'XTR_INV_DUAL_AUTH_BY');
493: if ARec_Interface.dual_authorization_by is not null and
494: not ( val_dealer_code(ARec_Interface.dual_authorization_by)) then
495: xtr_import_deal_data.log_interface_errors( ARec_Interface.External_Deal_Id,
496: ARec_Interface.Deal_Type,
497: 'DualAuthorizationBy',
498: 'XTR_INV_DUAL_AUTH_BY');
499: l_error := l_error +1;
500: end if;
501:
494: not ( val_dealer_code(ARec_Interface.dual_authorization_by)) then
495: xtr_import_deal_data.log_interface_errors( ARec_Interface.External_Deal_Id,
496: ARec_Interface.Deal_Type,
497: 'DualAuthorizationBy',
498: 'XTR_INV_DUAL_AUTH_BY');
499: l_error := l_error +1;
500: end if;
501:
502: if not ( val_deal_date(ARec_Interface.date_a)) then
1154: G_Fx_Main_Rec.BUY_HCE_AMOUNT := NULL;
1155: G_Fx_Main_Rec.SELL_HCE_AMOUNT := NULL;
1156: G_Fx_Main_Rec.FORWARD_HCE_AMOUNT := NULL;
1157: G_Fx_Main_Rec.PORTFOLIO_AMOUNT := NULL;
1158: G_Fx_Main_Rec.DUAL_AUTHORISATION_BY := NULL;
1159: G_Fx_Main_Rec.DUAL_AUTHORISATION_ON := to_date(NULL);
1160: G_Fx_Main_Rec.STATUS_CODE := NULL;
1161: G_Fx_Main_Rec.ATTRIBUTE_CATEGORY := NULL;
1162: G_Fx_Main_Rec.ATTRIBUTE1 := NULL;
1155: G_Fx_Main_Rec.SELL_HCE_AMOUNT := NULL;
1156: G_Fx_Main_Rec.FORWARD_HCE_AMOUNT := NULL;
1157: G_Fx_Main_Rec.PORTFOLIO_AMOUNT := NULL;
1158: G_Fx_Main_Rec.DUAL_AUTHORISATION_BY := NULL;
1159: G_Fx_Main_Rec.DUAL_AUTHORISATION_ON := to_date(NULL);
1160: G_Fx_Main_Rec.STATUS_CODE := NULL;
1161: G_Fx_Main_Rec.ATTRIBUTE_CATEGORY := NULL;
1162: G_Fx_Main_Rec.ATTRIBUTE1 := NULL;
1163: G_Fx_Main_Rec.ATTRIBUTE2 := NULL;
1229: G_Fx_Main_Rec.BROKERAGE_RATE := null;
1230: G_FX_Main_Rec.BROKERAGE_AMOUNT := null;
1231: G_Fx_Main_Rec.BROKERAGE_CURRENCY := null;
1232: end if;
1233: G_Fx_Main_Rec.DUAL_AUTHORISATION_BY := ARec_Interface.DUAL_AUTHORIZATION_BY;
1234: G_Fx_Main_Rec.DUAL_AUTHORISATION_ON := ARec_Interface.DUAL_AUTHORIZATION_ON;
1235: G_Fx_Main_Rec.STATUS_CODE := 'CURRENT';
1236:
1237: /*--------------------------------------------------------------------*/
1230: G_FX_Main_Rec.BROKERAGE_AMOUNT := null;
1231: G_Fx_Main_Rec.BROKERAGE_CURRENCY := null;
1232: end if;
1233: G_Fx_Main_Rec.DUAL_AUTHORISATION_BY := ARec_Interface.DUAL_AUTHORIZATION_BY;
1234: G_Fx_Main_Rec.DUAL_AUTHORISATION_ON := ARec_Interface.DUAL_AUTHORIZATION_ON;
1235: G_Fx_Main_Rec.STATUS_CODE := 'CURRENT';
1236:
1237: /*--------------------------------------------------------------------*/
1238: /* Flexfields will be implemented in Patchset G. */
1667: from xtr_dealer_codes_v
1668: where user_id = p_fnd_user;
1669:
1670: l_user xtr_dealer_codes.dealer_code%TYPE;
1671: l_dual_user xtr_dealer_codes.dealer_code%TYPE;
1672: l_dual_date DATE;
1673:
1674: Begin
1675:
1668: where user_id = p_fnd_user;
1669:
1670: l_user xtr_dealer_codes.dealer_code%TYPE;
1671: l_dual_user xtr_dealer_codes.dealer_code%TYPE;
1672: l_dual_date DATE;
1673:
1674: Begin
1675:
1676: open FIND_USER(G_User_Id);
1676: open FIND_USER(G_User_Id);
1677: fetch FIND_USER into l_user;
1678: close FIND_USER;
1679:
1680: l_dual_user := ARec_Fx.DUAL_AUTHORISATION_BY;
1681: l_dual_date := ARec_Fx.DUAL_AUTHORISATION_ON;
1682: if ((l_dual_user is not null and l_dual_date is null) or
1683: (l_dual_user is null and l_dual_date is not null)) then
1684: if l_dual_date is null then
1677: fetch FIND_USER into l_user;
1678: close FIND_USER;
1679:
1680: l_dual_user := ARec_Fx.DUAL_AUTHORISATION_BY;
1681: l_dual_date := ARec_Fx.DUAL_AUTHORISATION_ON;
1682: if ((l_dual_user is not null and l_dual_date is null) or
1683: (l_dual_user is null and l_dual_date is not null)) then
1684: if l_dual_date is null then
1685: l_dual_date := trunc(sysdate);
1678: close FIND_USER;
1679:
1680: l_dual_user := ARec_Fx.DUAL_AUTHORISATION_BY;
1681: l_dual_date := ARec_Fx.DUAL_AUTHORISATION_ON;
1682: if ((l_dual_user is not null and l_dual_date is null) or
1683: (l_dual_user is null and l_dual_date is not null)) then
1684: if l_dual_date is null then
1685: l_dual_date := trunc(sysdate);
1686: elsif l_dual_user is null then
1679:
1680: l_dual_user := ARec_Fx.DUAL_AUTHORISATION_BY;
1681: l_dual_date := ARec_Fx.DUAL_AUTHORISATION_ON;
1682: if ((l_dual_user is not null and l_dual_date is null) or
1683: (l_dual_user is null and l_dual_date is not null)) then
1684: if l_dual_date is null then
1685: l_dual_date := trunc(sysdate);
1686: elsif l_dual_user is null then
1687: l_dual_user := l_user;
1680: l_dual_user := ARec_Fx.DUAL_AUTHORISATION_BY;
1681: l_dual_date := ARec_Fx.DUAL_AUTHORISATION_ON;
1682: if ((l_dual_user is not null and l_dual_date is null) or
1683: (l_dual_user is null and l_dual_date is not null)) then
1684: if l_dual_date is null then
1685: l_dual_date := trunc(sysdate);
1686: elsif l_dual_user is null then
1687: l_dual_user := l_user;
1688: end if;
1681: l_dual_date := ARec_Fx.DUAL_AUTHORISATION_ON;
1682: if ((l_dual_user is not null and l_dual_date is null) or
1683: (l_dual_user is null and l_dual_date is not null)) then
1684: if l_dual_date is null then
1685: l_dual_date := trunc(sysdate);
1686: elsif l_dual_user is null then
1687: l_dual_user := l_user;
1688: end if;
1689: end if;
1682: if ((l_dual_user is not null and l_dual_date is null) or
1683: (l_dual_user is null and l_dual_date is not null)) then
1684: if l_dual_date is null then
1685: l_dual_date := trunc(sysdate);
1686: elsif l_dual_user is null then
1687: l_dual_user := l_user;
1688: end if;
1689: end if;
1690:
1683: (l_dual_user is null and l_dual_date is not null)) then
1684: if l_dual_date is null then
1685: l_dual_date := trunc(sysdate);
1686: elsif l_dual_user is null then
1687: l_dual_user := l_user;
1688: end if;
1689: end if;
1690:
1691: INSERT INTO xtr_deals
1730: SELL_HCE_AMOUNT ,
1731: FORWARD_HCE_AMOUNT ,
1732: PORTFOLIO_AMOUNT ,
1733: STATUS_CODE ,
1734: DUAL_AUTHORISATION_BY ,
1735: DUAL_AUTHORISATION_ON ,
1736: CREATED_BY ,
1737: CREATED_ON ,
1738: ATTRIBUTE_CATEGORY ,
1731: FORWARD_HCE_AMOUNT ,
1732: PORTFOLIO_AMOUNT ,
1733: STATUS_CODE ,
1734: DUAL_AUTHORISATION_BY ,
1735: DUAL_AUTHORISATION_ON ,
1736: CREATED_BY ,
1737: CREATED_ON ,
1738: ATTRIBUTE_CATEGORY ,
1739: ATTRIBUTE1 ,
1797: ARec_Fx.SELL_HCE_AMOUNT ,
1798: ARec_Fx.FORWARD_HCE_AMOUNT ,
1799: ARec_Fx.PORTFOLIO_AMOUNT ,
1800: ARec_Fx.STATUS_CODE ,
1801: l_dual_user ,
1802: l_dual_date ,
1803: nvl(l_user,G_User_Id) ,
1804: g_curr_date ,
1805: --decode(ARec_Fx.ATTRIBUTE_CATEGORY,'Global Data Elements','',ARec_Fx.ATTRIBUTE_CATEGORY) ,
1798: ARec_Fx.FORWARD_HCE_AMOUNT ,
1799: ARec_Fx.PORTFOLIO_AMOUNT ,
1800: ARec_Fx.STATUS_CODE ,
1801: l_dual_user ,
1802: l_dual_date ,
1803: nvl(l_user,G_User_Id) ,
1804: g_curr_date ,
1805: --decode(ARec_Fx.ATTRIBUTE_CATEGORY,'Global Data Elements','',ARec_Fx.ATTRIBUTE_CATEGORY) ,
1806: ARec_Fx.ATTRIBUTE_CATEGORY ,
1826: );
1827:
1828: xtr_reval_process_p.xtr_ins_init_fv(ARec_Fx.COMPANY_CODE,p_deal_no,ARec_Fx.DEAL_TYPE,NULL);
1829:
1830: if l_dual_user is not null then
1831: UPDATE xtr_deal_date_amounts
1832: SET dual_authorisation_by = l_dual_user,
1833: dual_authorisation_on = l_dual_date
1834: WHERE deal_number = p_deal_no;
1828: xtr_reval_process_p.xtr_ins_init_fv(ARec_Fx.COMPANY_CODE,p_deal_no,ARec_Fx.DEAL_TYPE,NULL);
1829:
1830: if l_dual_user is not null then
1831: UPDATE xtr_deal_date_amounts
1832: SET dual_authorisation_by = l_dual_user,
1833: dual_authorisation_on = l_dual_date
1834: WHERE deal_number = p_deal_no;
1835:
1836: UPDATE xtr_confirmation_details
1829:
1830: if l_dual_user is not null then
1831: UPDATE xtr_deal_date_amounts
1832: SET dual_authorisation_by = l_dual_user,
1833: dual_authorisation_on = l_dual_date
1834: WHERE deal_number = p_deal_no;
1835:
1836: UPDATE xtr_confirmation_details
1837: SET confirmation_validated_by = l_dual_user,
1833: dual_authorisation_on = l_dual_date
1834: WHERE deal_number = p_deal_no;
1835:
1836: UPDATE xtr_confirmation_details
1837: SET confirmation_validated_by = l_dual_user,
1838: confirmation_validated_on = l_dual_date
1839: WHERE deal_no = p_deal_no;
1840:
1841: UPDATE xtr_deals
1834: WHERE deal_number = p_deal_no;
1835:
1836: UPDATE xtr_confirmation_details
1837: SET confirmation_validated_by = l_dual_user,
1838: confirmation_validated_on = l_dual_date
1839: WHERE deal_no = p_deal_no;
1840:
1841: UPDATE xtr_deals
1842: SET dual_authorisation_on = l_dual_date
1838: confirmation_validated_on = l_dual_date
1839: WHERE deal_no = p_deal_no;
1840:
1841: UPDATE xtr_deals
1842: SET dual_authorisation_on = l_dual_date
1843: WHERE deal_no = p_deal_no;
1844: end if;
1845:
1846: END CREATE_FX_DEAL;