USP_DATAFORMTEMPLATE_EDITLOAD_RECURRINGGIFTINSTALLMENTWRITEOFF

Parameters

Parameter Parameter Type Mode Description
@ID nvarchar(42) IN
@INSTALLMENTDATE datetime INOUT
@INSTALLMENTNUMBER int INOUT
@INSTALLMENTAMOUNT money INOUT
@INSTALLMENTBALANCE money INOUT
@INSTALLMENTWRITEOFFS xml INOUT
@TRANSACTIONCURRENCYID uniqueidentifier INOUT
@DATALOADED bit INOUT
@TSLONG bigint INOUT
@AMOUNTPAID money INOUT

Definition

Copy

                CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_RECURRINGGIFTINSTALLMENTWRITEOFF
                (
                @ID nvarchar(42),
                @INSTALLMENTDATE datetime = null output,
                @INSTALLMENTNUMBER integer = null output,
                @INSTALLMENTAMOUNT money = null output,
                @INSTALLMENTBALANCE money = null output,
                @INSTALLMENTWRITEOFFS xml = null output,
                @TRANSACTIONCURRENCYID uniqueidentifier = null output,
                @DATALOADED bit = 0 output,
                @TSLONG bigint = 0 output,
                @AMOUNTPAID money = null output
                )
                as
                    set nocount on;

                    -- be sure to set these, in case the select returns no rows
                    set @DATALOADED = 0
                    set @TSLONG = 0

                    declare @INSTALLMENTID uniqueidentifier = cast(substring(@ID,1,36) as uniqueidentifier);  
                    set @INSTALLMENTNUMBER = cast(substring(@ID,38,5) as integer);

                    select 
                        @DATALOADED = 1,
                        @TSLONG = TSLONG,
                        @INSTALLMENTDATE = DATE,
                        @INSTALLMENTAMOUNT = TRANSACTIONAMOUNT,
                        @INSTALLMENTBALANCE = dbo.UFN_RECURRINGGIFTINSTALLMENT_GETINSTALLMENTBALANCE(ID),
                        @INSTALLMENTWRITEOFFS = dbo.UFN_RECURRINGGIFTINSTALLMENT_GETWRITEOFFS_TOITEMLISTXML(ID),
                        @TRANSACTIONCURRENCYID = TRANSACTIONCURRENCYID
                    from dbo.RECURRINGGIFTINSTALLMENT
                    where ID = @INSTALLMENTID

                    select @AMOUNTPAID = sum(AMOUNT) from RECURRINGGIFTINSTALLMENTPAYMENT where RECURRINGGIFTINSTALLMENTID = @ID
                    return 0;