USP_DATAFORMTEMPLATE_EDITLOAD_DESIGNATIONLEVELGIFTFEESTRUCTURE

The load procedure used by the edit dataform template "Fundraising Purpose Gift Fee Structure Edit Data Form"

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter used to load the fields defined on the form.
@DATALOADED bit INOUT Output parameter indicating whether or not data was actually loaded.
@TSLONG bigint INOUT Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record.
@GIFTFEESTRUCTURE xml INOUT Gift fees
@BASECURRENCYID uniqueidentifier INOUT Base currency
@ORGANIZATIONCURRENCYID uniqueidentifier INOUT Organization currency
@DISPLAYINORGANIZATIONCURRENCY tinyint INOUT Currency:
@BASECURRENCYISOCODE nvarchar(3) INOUT Base currency ISO code
@ORGANIZATIONCURRENCYISOCODE nvarchar(3) INOUT Organization currency ISO code

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_DESIGNATIONLEVELGIFTFEESTRUCTURE(
    @ID uniqueidentifier,
    @DATALOADED bit = 0 output,
    @TSLONG bigint = 0 output,
    @GIFTFEESTRUCTURE xml = null output,
    @BASECURRENCYID uniqueidentifier = null output,
    @ORGANIZATIONCURRENCYID uniqueidentifier = null output,
    @DISPLAYINORGANIZATIONCURRENCY tinyint = null output,
    @BASECURRENCYISOCODE nvarchar(3) = null output,
    @ORGANIZATIONCURRENCYISOCODE nvarchar(3) = null output
)
as

    set nocount on;

    set @DATALOADED = 1;
    set @TSLONG = 0;

    set @ORGANIZATIONCURRENCYID = dbo.UFN_CURRENCY_GETORGANIZATIONCURRENCY();    
    select @BASECURRENCYID = BASECURRENCYID from dbo.DESIGNATIONLEVEL where ID = @ID;

    select @BASECURRENCYISOCODE = ISO4217 from dbo.CURRENCY where ID = @BASECURRENCYID;
    select @ORGANIZATIONCURRENCYISOCODE = ISO4217 from dbo.CURRENCY where ID = @ORGANIZATIONCURRENCYID;

    if dbo.UFN_DESIGNATIONLEVELGIFTFEE_OVERRIDESTRUCTURE(@ID) = 1
    begin 
        select top 1
            @TSLONG = max(TSLONG)
        from dbo.DESIGNATIONLEVELGIFTFEESTRUCTURE;

        set @GIFTFEESTRUCTURE = dbo.UFN_DESIGNATIONLEVELGIFTFEE_GETGIFTFEESTRUCTURE_2_TOITEMLISTXML(@ID);

        set @DISPLAYINORGANIZATIONCURRENCY = 
            case when (select top 1 USEORGANIZATIONCURRENCY from dbo.UFN_DESIGNATIONLEVELGIFTFEE_GETGIFTFEESTRUCTURE_2(@ID)) = 1 then 1 else 0 end
    end
    else
    begin
        select top 1
            @TSLONG = max(TSLONG)
        from dbo.GIFTFEESTRUCTURE;

        set @GIFTFEESTRUCTURE = (SELECT [BASECURRENCYID], [FEE], [FROMAMOUNT], newid() [ID]
                                 FROM dbo.[UFN_GIFTFEE_GETGIFTFEESTRUCTURE_2]()  
                                 for xml raw('ITEM'),type,elements,root('GIFTFEESTRUCTURE'),BINARY BASE64);

        set @DISPLAYINORGANIZATIONCURRENCY = 1;
    end

    return 0;