USP_DATAFORMTEMPLATE_EDITLOAD_PAYMENTMETHOD

The load procedure used by the edit dataform template "Payment Method 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
@AMOUNT money INOUT Payment amount
@REFERENCE nvarchar(255) INOUT Description
@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.
@PAYMENTMETHODCODE tinyint INOUT Payment method
@OTHERPAYMENTMETHODCODEID uniqueidentifier INOUT Other method
@CHECKDATE UDT_FUZZYDATE INOUT Check date
@CHECKNUMBER nvarchar(20) INOUT Check number
@REFERENCEDATE UDT_FUZZYDATE INOUT Reference date
@REFERENCENUMBER nvarchar(20) INOUT Reference number
@CARDHOLDERNAME nvarchar(255) INOUT Name on card
@CREDITCARDNUMBER nvarchar(4) INOUT Card number
@CREDITTYPECODEID uniqueidentifier INOUT Card type
@AUTHORIZATIONCODE nvarchar(20) INOUT Authorization code
@EXPIRESON UDT_FUZZYDATE INOUT Expires on
@ISSUER nvarchar(100) INOUT Issuer
@NUMBEROFUNITS int INOUT Number of units
@SYMBOL nvarchar(25) INOUT Symbol
@MEDIANPRICE decimal(19, 4) INOUT Median price
@GIFTINKINDSUBTYPECODEID uniqueidentifier INOUT Subtype
@PROPERTYSUBTYPECODEID uniqueidentifier INOUT Subtype
@CONSTITUENTACCOUNTID uniqueidentifier INOUT Account
@DIRECTDEBITRESULTCODE nvarchar(10) INOUT Result code
@LOWPRICE decimal(19, 4) INOUT Low price
@HIGHPRICE decimal(19, 4) INOUT High price
@HASSOLDSTOCK bit INOUT Has sold stock
@HASSOLDPROPERTY bit INOUT Has sold property

Definition

Copy

                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_PAYMENTMETHOD
                    (
                        @ID uniqueidentifier,
                        @DATALOADED bit = 0 output,
                        @CONSTITUENTID uniqueidentifier = null output,    
                        @CONSTITUENTNAME nvarchar(255) = null output,
                        @AMOUNT money = null output,
                        @REFERENCE nvarchar(255) = null output,
                        @TSLONG bigint = 0 output,
                        @PAYMENTMETHODCODE tinyint = null output,
                        @OTHERPAYMENTMETHODCODEID uniqueidentifier = null output,
                        @CHECKDATE dbo.UDT_FUZZYDATE = null output,
                        @CHECKNUMBER nvarchar(20) = null output,
                        @REFERENCEDATE dbo.UDT_FUZZYDATE = null output,
                        @REFERENCENUMBER nvarchar(20) = null output,                    
                        @CARDHOLDERNAME nvarchar(255) = null output,
                        @CREDITCARDNUMBER nvarchar(4) = null output,
                        @CREDITTYPECODEID uniqueidentifier = null output,
                        @AUTHORIZATIONCODE nvarchar(20) = null output,
                        @EXPIRESON dbo.UDT_FUZZYDATE = null output,
                        @ISSUER nvarchar(100) = null output,
                        @NUMBEROFUNITS integer = null output,
                        @SYMBOL nvarchar(25) = null output,
                        @MEDIANPRICE decimal(19,4) = null output,
                        @GIFTINKINDSUBTYPECODEID uniqueidentifier = null output,
                        @PROPERTYSUBTYPECODEID uniqueidentifier = null output,                    
                        @CONSTITUENTACCOUNTID uniqueidentifier = null output,
                        @DIRECTDEBITRESULTCODE nvarchar(10) = null output,
                        @LOWPRICE decimal(19,4) = null output,
                        @HIGHPRICE decimal(19,4) = null output,
                        @HASSOLDSTOCK bit = null output,
                        @HASSOLDPROPERTY bit = null output
                    )
                    as
                    set nocount on;

          set @DATALOADED = 0;
                set @TSLONG = 0;

                    select
                    @DATALOADED = 1,
                    @CONSTITUENTID = REVENUE.CONSTITUENTID,
                    @CONSTITUENTNAME = CONSTITUENT.NAME,
                    @AMOUNT = REVENUE.AMOUNT,
                    @TSLONG = REVENUE.TSLONG,
                    @REFERENCE = REVENUEREFERENCE.REFERENCE
                from dbo.REVENUE
                inner join dbo.CONSTITUENT on CONSTITUENT.ID = REVENUE.CONSTITUENTID
                left join dbo.REVENUEREFERENCE on REVENUE.ID = REVENUEREFERENCE.ID
                where 
                    REVENUE.ID = @ID and 
                    REVENUE.TRANSACTIONTYPECODE = 0

                    exec dbo.USP_REVENUE_GETPAYMENTDETAILS
                        @REVENUEID = @ID,
                        @PAYMENTMETHODCODE = @PAYMENTMETHODCODE output,
                        @CHECKDATE = @CHECKDATE output,
                        @CHECKNUMBER = @CHECKNUMBER output,
                        @REFERENCEDATE = @REFERENCEDATE output,
                        @REFERENCENUMBER = @REFERENCENUMBER output,                    
                        @CARDHOLDERNAME = @CARDHOLDERNAME output,
                        @CREDITCARDNUMBER = @CREDITCARDNUMBER output,
                        @CREDITTYPECODEID = @CREDITTYPECODEID output,
                        @AUTHORIZATIONCODE = @AUTHORIZATIONCODE output,
                        @EXPIRESON = @EXPIRESON output,
                        @ISSUER = @ISSUER output,
                        @NUMBEROFUNITS = @NUMBEROFUNITS output,
                        @SYMBOL = @SYMBOL output,
                        @MEDIANPRICE = @MEDIANPRICE output,
                        @GIFTINKINDSUBTYPECODEID = @GIFTINKINDSUBTYPECODEID output,
                        @PROPERTYSUBTYPECODEID = @PROPERTYSUBTYPECODEID output,                    
                        @CONSTITUENTACCOUNTID = @CONSTITUENTACCOUNTID output,
                        @OTHERPAYMENTMETHODCODEID = @OTHERPAYMENTMETHODCODEID output,
                        @DIRECTDEBITRESULTCODE = @DIRECTDEBITRESULTCODE output,
                        @LOWPRICE = @LOWPRICE output,
                        @HIGHPRICE = @HIGHPRICE output

                    set @HASSOLDSTOCK = 0
                    if @PAYMENTMETHODCODE = 4
                    begin
                        if exists (    select 1 from dbo.STOCKSALE 
                                    inner join dbo.REVENUEPAYMENTMETHOD on STOCKSALE.STOCKDETAILID = REVENUEPAYMENTMETHOD.ID
                                    where REVENUEPAYMENTMETHOD.REVENUEID = @ID)
                            set @HASSOLDSTOCK = 1
                    end

                    set @HASSOLDPROPERTY = 0
                    if @PAYMENTMETHODCODE = 5
                    begin
                        if exists (    select 1 from dbo.PROPERTYDETAIL 
                                    inner join dbo.REVENUEPAYMENTMETHOD on PROPERTYDETAIL.ID = REVENUEPAYMENTMETHOD.ID
                                    where PROPERTYDETAIL.ISSOLD = 1 and REVENUEPAYMENTMETHOD.REVENUEID = @ID)
                            set @HASSOLDPROPERTY = 1                    
                    end