USP_CURRENCYEXCHANGERATE_GETPROPERTIESFORLATEST

Loads properties for the given exchange rate.

Parameters

Parameter Parameter Type Mode Description
@FROMCURRENCYID uniqueidentifier INOUT
@TOCURRENCYID uniqueidentifier INOUT
@ASOFDATE datetime INOUT
@TYPECODE tinyint INOUT
@SOURCECODEID uniqueidentifier INOUT
@DATALOADED bit INOUT
@ID uniqueidentifier INOUT
@RATE decimal(20, 8) INOUT
@FROMCURRENCYDECIMALDIGITS tinyint INOUT
@FROMCURRENCYROUNDINGTYPECODE tinyint INOUT
@TOCURRENCYDECIMALDIGITS tinyint INOUT
@TOCURRENCYROUNDINGTYPECODE tinyint INOUT
@LOOKUPTYPECODE tinyint IN

Definition

Copy


CREATE procedure dbo.USP_CURRENCYEXCHANGERATE_GETPROPERTIESFORLATEST
(
    @FROMCURRENCYID uniqueidentifier output,
    @TOCURRENCYID uniqueidentifier output,
    @ASOFDATE datetime = null output,
    @TYPECODE tinyint = null output,
    @SOURCECODEID uniqueidentifier = null output,
    @DATALOADED bit = 0 output,
    @ID uniqueidentifier = null output,
    @RATE decimal(20,8) = null output,
    @FROMCURRENCYDECIMALDIGITS tinyint = null output,
    @FROMCURRENCYROUNDINGTYPECODE tinyint = null output,
    @TOCURRENCYDECIMALDIGITS tinyint = null output,
    @TOCURRENCYROUNDINGTYPECODE tinyint = null output,
    @LOOKUPTYPECODE tinyint = 1 -- 0 = latest corporate rate, 1 = latest daily/corporate rate

)
as
begin
    set nocount on;

    set @DATALOADED = 0;

    set @ID = dbo.UFN_CURRENCYEXCHANGERATE_GETLATEST(@FROMCURRENCYID, @TOCURRENCYID, @ASOFDATE, @LOOKUPTYPECODE, @SOURCECODEID);

    select
        @DATALOADED = 1,
        @RATE = CURRENCYEXCHANGERATE.RATE,
    @ASOFDATE = dbo.UFN_TIMEZONEENTRY_GETSYSTEMDEFAULTDATEWITHTIMEOFFSET(switchoffset(ASOFDATE, '+00:00'), 1),
        @TYPECODE = CURRENCYEXCHANGERATE.TYPECODE,
        @SOURCECODEID = CURRENCYEXCHANGERATE.SOURCECODEID,
        @FROMCURRENCYID = CURRENCYEXCHANGERATE.FROMCURRENCYID,
        @FROMCURRENCYDECIMALDIGITS = [FROMCURRENCY].DECIMALDIGITS,
        @FROMCURRENCYROUNDINGTYPECODE = [FROMCURRENCY].ROUNDINGTYPECODE,
        @TOCURRENCYID = CURRENCYEXCHANGERATE.TOCURRENCYID,
        @TOCURRENCYDECIMALDIGITS = [TOCURRENCY].DECIMALDIGITS,
        @TOCURRENCYROUNDINGTYPECODE = [TOCURRENCY].ROUNDINGTYPECODE
    from
        dbo.CURRENCYEXCHANGERATE
        left join dbo.CURRENCY as [FROMCURRENCY] on [FROMCURRENCY].ID = CURRENCYEXCHANGERATE.FROMCURRENCYID
        left join dbo.CURRENCY as [TOCURRENCY] on [TOCURRENCY].ID = CURRENCYEXCHANGERATE.TOCURRENCYID
    where
        CURRENCYEXCHANGERATE.ID = @ID;

    return 0;

end