UFN_AUCTIONITEM_GETPURCHASEPRICES_INCURRENCY

Returns a table of purchase prices with their currency IDs for an auction item or package.

Return

Return Type
table

Parameters

Parameter Parameter Type Mode Description
@AUCTIONITEMID uniqueidentifier IN

Definition

Copy


            create function dbo.UFN_AUCTIONITEM_GETPURCHASEPRICES_INCURRENCY
            (
                @AUCTIONITEMID uniqueidentifier
            )
            returns @PURCHASEPRICEINFO table
            (
                PURCHASEPRICE money,
                BASECURRENCYID uniqueidentifier,
                TRANSACTIONPURCHASEPRICE money,
                TRANSACTIONCURRENCYID uniqueidentifier,
                ORGANIZATIONPURCHASEPRICE money
            )
            as begin
                declare @TYPECODE tinyint = 0;

                select @TYPECODE = TYPECODE from dbo.AUCTIONITEM where AUCTIONITEM.ID = @AUCTIONITEMID;

                if @TYPECODE = 0
                begin
                    insert into @PURCHASEPRICEINFO
                    (
                        PURCHASEPRICE,
                        BASECURRENCYID,
                        TRANSACTIONPURCHASEPRICE,
                        TRANSACTIONCURRENCYID,
                        ORGANIZATIONPURCHASEPRICE
                    )
                    select
                        sum(REVENUESPLIT.AMOUNT),
                        REVENUESPLIT.BASECURRENCYID,
                        sum(REVENUESPLIT.TRANSACTIONAMOUNT),
                        REVENUESPLIT.TRANSACTIONCURRENCYID,
                        sum(REVENUESPLIT.ORGANIZATIONAMOUNT)
                    from 
                        dbo.AUCTIONITEM
                        left join dbo.AUCTIONITEMPURCHASE on AUCTIONITEM.ID = AUCTIONITEMPURCHASE.AUCTIONITEMID
                        left join dbo.REVENUESPLIT on AUCTIONITEMPURCHASE.PURCHASEID = REVENUESPLIT.ID
                    where
                        AUCTIONITEMPURCHASE.AUCTIONITEMID = @AUCTIONITEMID
                    group by REVENUESPLIT.BASECURRENCYID,REVENUESPLIT.TRANSACTIONCURRENCYID
                end
                else
                begin
                    insert into @PURCHASEPRICEINFO
                    (
                        PURCHASEPRICE,
                        BASECURRENCYID,
                        TRANSACTIONPURCHASEPRICE,
                        TRANSACTIONCURRENCYID,
                        ORGANIZATIONPURCHASEPRICE
                    )
                    select 
                        sum(REVENUESPLIT.AMOUNT),
                        REVENUESPLIT.BASECURRENCYID,
                        sum(REVENUESPLIT.TRANSACTIONAMOUNT),
                        REVENUESPLIT.TRANSACTIONCURRENCYID,
                        sum(REVENUESPLIT.ORGANIZATIONAMOUNT)
                    from 
                        dbo.AUCTIONITEM [PACKAGEITEM]
                        left join dbo.AUCTIONITEMPURCHASE [ITEMPURCHASE] on PACKAGEITEM.ID = [ITEMPURCHASE].AUCTIONITEMID
                        left join dbo.REVENUESPLIT on [ITEMPURCHASE].PURCHASEID = REVENUESPLIT.ID
                    where 
                        [PACKAGEITEM].PACKAGEID = @AUCTIONITEMID
                    group by REVENUESPLIT.BASECURRENCYID,REVENUESPLIT.TRANSACTIONCURRENCYID

                end

                return
            end