USP_DATAFORMTEMPLATE_VIEW_AUCTIONITEMPAGEEXPRESSION

The load procedure used by the view dataform template "Auction Item Page Expression View 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.
@NAME nvarchar(100) INOUT NAME
@HASCOPIES bit INOUT HASCOPIES
@TYPECODE tinyint INOUT TYPECODE
@EVENTAUCTIONID uniqueidentifier INOUT EVENTAUCTIONID
@EVENTAUCTIONNAME nvarchar(100) INOUT EVENTAUCTIONNAME
@AUCTIONITEMID uniqueidentifier INOUT AUCTIONITEMID
@REVENUEAUCTIONDONATIONID uniqueidentifier INOUT REVENUEAUCTIONDONATIONID
@ISPOSTED bit INOUT ISPOSTED
@ISSOLD bit INOUT ISSOLD
@ISINAUCTION bit INOUT ISINAUCTION
@ISPENDING bit INOUT ISPENDING
@ISEMPTYPACKAGE bit INOUT ISEMPTYPACKAGE
@IMAGEKEY nvarchar(200) INOUT IMAGEKEY
@RESERVATIONID uniqueidentifier INOUT RESERVATIONID
@PURCHASEID uniqueidentifier INOUT PURCHASEID
@PURCHASEREVENUEID uniqueidentifier INOUT PURCHASEREVENUEID
@PACKAGEID uniqueidentifier INOUT PACKAGEID
@ISINPACKAGE bit INOUT ISINPACKAGE
@PARENTPACKAGEISSOLD bit INOUT PARENTPACKAGEISSOLD
@PARENTPACKAGEISPENDING bit INOUT PARENTPACKAGEISPENDING
@AUCTIONISACTIVE bit INOUT AUCTIONISACTIVE
@WRITTENOFF bit INOUT WRITTENOFF

Definition

Copy


                CREATE procedure dbo.USP_DATAFORMTEMPLATE_VIEW_AUCTIONITEMPAGEEXPRESSION
                (
                    @ID uniqueidentifier,
                    @DATALOADED bit = 0 output,
                    @NAME nvarchar(100) = null output,
                    @HASCOPIES bit = null output,
                    @TYPECODE tinyint = null output,
                    @EVENTAUCTIONID uniqueidentifier = null output,
                    @EVENTAUCTIONNAME nvarchar(100) = null output,
                    @AUCTIONITEMID uniqueidentifier = null output,
                    @REVENUEAUCTIONDONATIONID uniqueidentifier = null output,
                    @ISPOSTED bit = null output,
                    @ISSOLD bit = null output,
                    @ISINAUCTION bit = null output,
                    @ISPENDING bit = null output,
                    @ISEMPTYPACKAGE bit = null output,
                    @IMAGEKEY nvarchar(200) = null output,
                    @RESERVATIONID uniqueidentifier = null output,
                    @PURCHASEID uniqueidentifier = null output,
                    @PURCHASEREVENUEID uniqueidentifier = null output,
                    @PACKAGEID uniqueidentifier = null output,
                    @ISINPACKAGE bit = null output,
                    @PARENTPACKAGEISSOLD bit = null output,
                    @PARENTPACKAGEISPENDING bit = null output,
                    @AUCTIONISACTIVE bit = null output,
                    @WRITTENOFF bit = null output
                )
                as
                    set nocount on;

                    set @DATALOADED = 0;

                    select @DATALOADED = 1,
                           @NAME = AUCTIONITEM.NAME,
                           @HASCOPIES = 0,
                           @TYPECODE = AUCTIONITEM.TYPECODE,
                           @EVENTAUCTIONID = AUCTIONITEM.EVENTAUCTIONID,
                           @EVENTAUCTIONNAME = dbo.UFN_EVENT_GETNAME(EVENTAUCTIONID),
                           @AUCTIONITEMID = AUCTIONITEM.ID,
                           @REVENUEAUCTIONDONATIONID = AUCTIONITEM.REVENUEAUCTIONDONATIONID,
                           @ISSOLD = case when AUCTIONITEMREVENUEPURCHASE.REVENUEPURCHASEID is null then 0 else 1 end,
                           @ISINAUCTION = case when AUCTIONITEM.EVENTAUCTIONID is null then 0 else 1 end,
                           @IMAGEKEY = case
                               when AUCTIONITEM.TYPECODE = 0 then
                                   'catalog:Blackbaud.AppFx.Auction.Catalog.dll,Blackbaud.AppFx.Auction.Catalog.auction_item_32.png'
                               else
                                   'catalog:Blackbaud.AppFx.Auction.Catalog.dll,Blackbaud.AppFx.Auction.Catalog.auction_package_32.png'
                               end,
                           @RESERVATIONID = AUCTIONITEMRESERVATION.ID,
                           @PURCHASEID = AUCTIONITEMPURCHASE.PURCHASEID,
                           @PURCHASEREVENUEID = AUCTIONITEMREVENUEPURCHASE.REVENUEPURCHASEID,
                           @PACKAGEID = AUCTIONITEM.PACKAGEID,
                           @ISINPACKAGE = case
                                when AUCTIONITEM.PACKAGEID is null then
                                    0
                                else
                                    1
                                end,
                           @AUCTIONISACTIVE = EVENT.ISACTIVE,
                           @WRITTENOFF = case
                                        when WRITEOFF.ID is not null then 1
                                        else 0
                                        end
                    from dbo.AUCTIONITEM
                    left join dbo.AUCTIONITEMREVENUEPURCHASE on AUCTIONITEM.ID = AUCTIONITEMREVENUEPURCHASE.AUCTIONITEMID
                    left join dbo.AUCTIONITEMPURCHASE on AUCTIONITEM.ID = AUCTIONITEMPURCHASE.AUCTIONITEMID
                    left join dbo.AUCTIONITEMRESERVATION on AUCTIONITEM.ID = AUCTIONITEMRESERVATION.AUCTIONITEMID
                    left join dbo.REVENUESPLIT on AUCTIONITEMPURCHASE.PURCHASEID = REVENUESPLIT.ID
                    left join dbo.EVENT on AUCTIONITEM.EVENTAUCTIONID = EVENT.ID
                    left join dbo.WRITEOFF on AUCTIONITEM.REVENUEAUCTIONDONATIONID = WRITEOFF.REVENUEID
                    where AUCTIONITEM.ID = @ID

                    select @ISPENDING = count(*)
                    from dbo.AUCTIONITEMRESERVATION
                    where AUCTIONITEMRESERVATION.AUCTIONITEMID = @AUCTIONITEMID

                    if @ISSOLD = 0 and @ISPENDING > 0
                        set @ISPENDING = 1

                    if not @ISPENDING = 0
                        set @ISPENDING = 1

                    select @ISEMPTYPACKAGE = count(*)
                    from dbo.AUCTIONITEM
                    where AUCTIONITEM.PACKAGEID = @AUCTIONITEMID

                    select @PARENTPACKAGEISSOLD = case when AUCTIONITEMPURCHASE.PURCHASEID is null then 0 else 1 end
                    from dbo.AUCTIONITEM
                    left join dbo.AUCTIONITEMPURCHASE on AUCTIONITEM.ID = AUCTIONITEMPURCHASE.AUCTIONITEMID
                    where AUCTIONITEM.ID = @PACKAGEID

                    select @PARENTPACKAGEISPENDING = count(*)
                    from dbo.AUCTIONITEMRESERVATION
                    where AUCTIONITEMRESERVATION.AUCTIONITEMID = @PACKAGEID

                    if @TYPECODE = 1
                        if @ISEMPTYPACKAGE = 0
                            set @ISEMPTYPACKAGE = 1
                        else
                            set @ISEMPTYPACKAGE = 0

                    select @HASCOPIES = count(*)
                    from dbo.AUCTIONITEM
                    where AUCTIONITEM.COPIEDFROMID = @ID

                    if not @HASCOPIES = 0
                        set @HASCOPIES = 1

                    select
                        @ISPOSTED = case when REVENUEPOSTED.ID is null then 0 else 1 end
                    from dbo.AUCTIONITEM
                    left join dbo.REVENUEPOSTED
                        on REVENUEPOSTED.ID = AUCTIONITEM.REVENUEAUCTIONDONATIONID
                    where AUCTIONITEM.ID = @ID

                    return 0;