USP_DATAFORMTEMPLATE_EDITLOAD_PAYMENTADJUST

The load procedure used by the edit dataform template "Posted Payment 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.
@CONSTITUENTID uniqueidentifier INOUT
@CONSTITUENTNAME nvarchar(255) INOUT Constituent
@DATE datetime INOUT Date
@AMOUNT money INOUT Amount
@APPLICATIONCODE tinyint INOUT Application
@RECEIPTAMOUNT money INOUT Receipt amount
@REVENUESTREAMS xml INOUT Revenue streams
@SOURCECODE nvarchar(50) INOUT Source code
@APPEALID uniqueidentifier INOUT Appeal
@BENEFITS xml INOUT Benefits
@BENEFITSWAIVED bit INOUT Benefits waived
@GIVENANONYMOUSLY bit INOUT Payment is anonymous
@MAILINGID uniqueidentifier INOUT Mailing
@CHANNELCODEID uniqueidentifier INOUT Channel
@DONOTRECEIPT bit INOUT Do not receipt
@DONOTACKNOWLEDGE bit INOUT Do not acknowledge
@REFERENCE nvarchar(255) INOUT Reference
@POSTSTATUSCODE tinyint INOUT Post status
@POSTDATE datetime INOUT Post date
@CANHAVEUNAPPLIEDMG bit INOUT
@ADJUSTMENTDATE datetime INOUT Adjustment date
@ADJUSTMENTPOSTDATE datetime INOUT Adjustment post date
@ADJUSTMENTPOSTSTATUSCODE tinyint INOUT Post status code
@ADJUSTMENTREASON nvarchar(300) INOUT Adjustment reason
@PENDINGADJUSTMENTCODE tinyint INOUT
@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.

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_PAYMENTADJUST
                    (
                        @ID uniqueidentifier,
                        @DATALOADED bit = 0 output,
                        @CONSTITUENTID uniqueidentifier = null output,    
                        @CONSTITUENTNAME nvarchar(255) = null output,
                        @DATE datetime = null output,
                        @AMOUNT money = null output,
                        @APPLICATIONCODE tinyint = null output,
                        @RECEIPTAMOUNT money = null output,
                        @REVENUESTREAMS xml = null output,
                        @SOURCECODE nvarchar(50) = null output,
                        @APPEALID uniqueidentifier = null output,
                        @BENEFITS xml = null output,
                        @BENEFITSWAIVED bit = null output,
                        @GIVENANONYMOUSLY bit = null output,
                        @MAILINGID uniqueidentifier = null output,
                        @CHANNELCODEID uniqueidentifier = null output,
                        @DONOTRECEIPT bit = null output,
                        @DONOTACKNOWLEDGE bit = null output,
                        @REFERENCE nvarchar(255) = null output,
                        @POSTSTATUSCODE tinyint = null output,
                        @POSTDATE datetime = null output,
                        @CANHAVEUNAPPLIEDMG bit = null output,
                        @ADJUSTMENTDATE datetime = null output,
                        @ADJUSTMENTPOSTDATE datetime = null output,
                        @ADJUSTMENTPOSTSTATUSCODE tinyint = null output,
                        @ADJUSTMENTREASON nvarchar(300) = null output,
                        @PENDINGADJUSTMENTCODE tinyint = null output,
                        @TSLONG bigint = 0 output
                    )
                    as
                    set nocount on;

                    select  
                        @ADJUSTMENTDATE = getdate(),
                        @ADJUSTMENTPOSTDATE = getdate(),
                        @ADJUSTMENTPOSTSTATUSCODE = 0;

                    select top 1
                        @ADJUSTMENTDATE = ADJUSTMENT.DATE,
                        @ADJUSTMENTPOSTDATE = ADJUSTMENT.POSTDATE,
                        @ADJUSTMENTPOSTSTATUSCODE = 1,
                        @ADJUSTMENTREASON = ADJUSTMENT.REASON
                    from dbo.ADJUSTMENT
                    where ADJUSTMENT.REVENUEID = @ID and ADJUSTMENT.POSTSTATUSCODE = 1;

                    exec dbo.USP_PAYMENT_LOAD 
                        @ID, @DATALOADED output, @CONSTITUENTID output,    @CONSTITUENTNAME output,
                        @DATE output, @AMOUNT output, @APPLICATIONCODE output, @RECEIPTAMOUNT output
                        @REVENUESTREAMS output, @SOURCECODE output, @POSTSTATUSCODE output, @POSTDATE output,
                        @APPEALID output, @BENEFITS output, @BENEFITSWAIVED output
                        @GIVENANONYMOUSLY output, @MAILINGID output, @CHANNELCODEID output
                        @DONOTRECEIPT output, @REFERENCE output, @TSLONG output, @DONOTACKNOWLEDGE output

                    select @CANHAVEUNAPPLIEDMG = ISORGANIZATION
                    from dbo.CONSTITUENT
                    where ID = @CONSTITUENTID;

                    set @PENDINGADJUSTMENTCODE = 0;

                    if @PENDINGADJUSTMENTCODE = 0
                        begin
                            if ((select count(STOCKSALEADJUSTMENT.ID) from dbo.STOCKSALEADJUSTMENT
                                    inner join dbo.STOCKSALE on STOCKSALEADJUSTMENT.ID = STOCKSALE.ID
                                    inner join dbo.REVENUEPAYMENTMETHOD on STOCKSALE.STOCKDETAILID = REVENUEPAYMENTMETHOD.ID
                                    where REVENUEPAYMENTMETHOD.REVENUEID = @ID and STOCKSALEADJUSTMENT.POSTSTATUSCODE <> 0) > 0)
                                set @PENDINGADJUSTMENTCODE = 1;    
                        end
                    if @PENDINGADJUSTMENTCODE = 0
                        begin
                            if ((select count(PROPERTYDETAILADJUSTMENT.ID) from dbo.PROPERTYDETAILADJUSTMENT 
                                    inner join dbo.REVENUEPAYMENTMETHOD on PROPERTYDETAILADJUSTMENT.PROPERTYDETAILID = REVENUEPAYMENTMETHOD.ID
                                    where REVENUEPAYMENTMETHOD.REVENUEID = @ID and PROPERTYDETAILADJUSTMENT.POSTSTATUSCODE <> 0) > 0)
                                set @PENDINGADJUSTMENTCODE = 1;    
                        end