USP_DATAFORMTEMPLATE_EDITLOAD_GIFTSPONSORSHIP

The load procedure used by the edit dataform template "Financial Sponsor Edit 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.
@REVENUECONSTITUENTID uniqueidentifier INOUT Financial sponsor
@SPONSORSHIPCONSTITUENTID uniqueidentifier INOUT Corresponding sponsor
@GIFTRECIPIENT bit INOUT Gift sponsorship
@RESETRECOGNITIONCREDITS bit INOUT Recognition credit
@RESETSOLICITORS bit INOUT Solicitors

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_GIFTSPONSORSHIP(
    @ID uniqueidentifier,
    @DATALOADED bit = 0 output,
    @TSLONG bigint = 0 output,
    @REVENUECONSTITUENTID uniqueidentifier = null output,
    @SPONSORSHIPCONSTITUENTID uniqueidentifier = null output,
    @GIFTRECIPIENT bit = null output,
    @RESETRECOGNITIONCREDITS bit = null output,
    @RESETSOLICITORS bit = null output
)
as

    set nocount on;

    -- be sure to set these, in case the select returns no rows

    set @DATALOADED = 0
    set @TSLONG = 0

    -- populate the output parameters, which correspond to fields on the form.  Note that

    -- we set @DATALOADED = 1 to indicate that the load was successful.  Otherwise, the system

    -- will display a "no data loaded" message.  Also note that we fetch the TSLONG so that concurrency

    -- can be considered.

    select
        @DATALOADED = 1,
        @TSLONG = R.TSLONG,
        @REVENUECONSTITUENTID = R.CONSTITUENTID,
        @SPONSORSHIPCONSTITUENTID = S.CONSTITUENTID,
    @GIFTRECIPIENT = 
        case
        when S.CONSTITUENTID = @REVENUECONSTITUENTID
        then 0
        else 1
        end
    from dbo.REVENUE R
    left outer join REVENUESPLIT RS on RS.REVENUEID = R.ID
    left outer join SPONSORSHIP S on S.REVENUESPLITID = RS.ID
    where R.ID = @ID

    return 0;