USP_ADJUSTMENTHISTORY_REVENUE_WRITEDESIGNATIONS

Stores changed designations for an adjustment history record.

Parameters

Parameter Parameter Type Mode Description
@ADJUSTMENTHISTORYID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN
@CHANGEDATE datetime IN

Definition

Copy


            CREATE procedure dbo.USP_ADJUSTMENTHISTORY_REVENUE_WRITEDESIGNATIONS
            (
                @ADJUSTMENTHISTORYID uniqueidentifier,
                @CHANGEAGENTID uniqueidentifier,
                @CHANGEDATE datetime
            )
            as 
            set nocount on;

            declare @REVENUEID uniqueidentifier;            

            select
                @REVENUEID = ADJUSTMENT.REVENUEID
            from dbo.ADJUSTMENT 
            inner join dbo.ADJUSTMENTHISTORY on ADJUSTMENTHISTORY.ADJUSTMENTID = ADJUSTMENT.ID
            where ADJUSTMENTHISTORY.ID = @ADJUSTMENTHISTORYID;

            if @REVENUEID is null
                return;

            if dbo.UFN_ADJUSTMENTHISTORY_SPLITSCHANGED(@REVENUEID, @ADJUSTMENTHISTORYID) = 1
                if exists(select top 1 1 
                    from dbo.FINANCIALTRANSACTIONLINEITEM LI 
                    inner join dbo.REVENUESPLIT_EXT RSE on RSE.ID = LI.ID 
                    where LI.FINANCIALTRANSACTIONID = @REVENUEID 
                        and LI.DELETEDON is null 
                        and RSE.DESIGNATIONID is not null)
                begin
                    declare @BASECURRENCYID uniqueidentifier;

                    select @BASECURRENCYID = BASE.BASECURRENCYID
                    from dbo.V_BASECURRENCYFORFINANCIALTRANSACTION_I BASE
                    where BASE.FINANCIALTRANSACTIONID = @REVENUEID;

                    insert into dbo.ADJUSTMENTHISTORYDETAIL(ADJUSTMENTHISTORYID, ADJUSTEDFIELD, ADJUSTEDFIELDPREVIOUSVALUE, ADJUSTEDFIELDADJUSTEDVALUE, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED, TRANSACTIONADJUSTEDFIELDPREVIOUSVALUE, TRANSACTIONADJUSTEDFIELDADJUSTEDVALUE, ORGANIZATIONADJUSTEDFIELDPREVIOUSVALUE, ORGANIZATIONADJUSTEDFIELDADJUSTEDVALUE, BASECURRENCYID, TRANSACTIONCURRENCYID)
                        select
                            @ADJUSTMENTHISTORYID,
                            FINANCIALTRANSACTION.TYPE + ' Designations',
                            dbo.UFN_ADJUSTMENTHISTORY_GETPREVIOUSSPLITS_2(@ADJUSTMENTHISTORYID, cast(@REVENUEID as nvarchar(36)), 0),
                            dbo.UFN_ADJUSTMENTHISTORY_GETADJUSTEDSPLITS_2(@REVENUEID, 0),
                            @CHANGEAGENTID,
                            @CHANGEAGENTID,
                            @CHANGEDATE,
                            @CHANGEDATE,
                            dbo.UFN_ADJUSTMENTHISTORY_GETPREVIOUSSPLITS_2(@ADJUSTMENTHISTORYID, cast(@REVENUEID as nvarchar(36)), 2),
                            dbo.UFN_ADJUSTMENTHISTORY_GETADJUSTEDSPLITS_2(@REVENUEID, 2),
                            dbo.UFN_ADJUSTMENTHISTORY_GETPREVIOUSSPLITS_2(@ADJUSTMENTHISTORYID, cast(@REVENUEID as nvarchar(36)), 1),
                            dbo.UFN_ADJUSTMENTHISTORY_GETADJUSTEDSPLITS_2(@REVENUEID, 1),
                            isnull(REVENUE_EXT.NONPOSTABLEBASECURRENCYID, @BASECURRENCYID),
                            FINANCIALTRANSACTION.TRANSACTIONCURRENCYID
                        from dbo.FINANCIALTRANSACTION
                        inner join dbo.REVENUE_EXT on FINANCIALTRANSACTION.ID = REVENUE_EXT.ID
                        where FINANCIALTRANSACTION.ID = @REVENUEID;
                end