USP_DATAFORMTEMPLATE_ADJUSTLOAD_REVENUEPAYMENT
The load procedure used by the edit dataform template "Revenue Payment Adjust 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 | Constituent |
@DATE | datetime | INOUT | Date |
@AMOUNT | money | INOUT | Amount |
@PAYMENTMETHODCODE | tinyint | INOUT | Payment 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 | Cardholder name |
@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 | decimal(20, 3) | 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 |
@POSTSTATUSCODE | tinyint | INOUT | Post status |
@POSTDATE | datetime | INOUT | Post date |
@FINDERNUMBER | bigint | INOUT | Finder number |
@GIVENANONYMOUSLY | bit | INOUT | Payment is anonymous |
@DONOTRECEIPT | bit | INOUT | Do not receipt |
@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 | |
@RECEIPTGENERATED | bit | INOUT | Receipt generated |
@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_ADJUSTLOAD_REVENUEPAYMENT
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@CONSTITUENTID uniqueidentifier = null output,
@DATE datetime = null output,
@AMOUNT money = null output,
@PAYMENTMETHODCODE tinyint = 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 decimal(20, 3) = 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,
@POSTSTATUSCODE tinyint = null output,
@POSTDATE datetime = null output,
@FINDERNUMBER bigint = null output,
@GIVENANONYMOUSLY bit = null output,
@DONOTRECEIPT bit = null output,
@ADJUSTMENTDATE datetime = null output,
@ADJUSTMENTPOSTDATE datetime = null output,
@ADJUSTMENTPOSTSTATUSCODE tinyint = null output,
@ADJUSTMENTREASON nvarchar(300) = null output,
@PENDINGADJUSTMENTCODE tinyint = null output,
@RECEIPTGENERATED bit = 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_REVENUEPAYMENT_LOAD @ID, @DATALOADED output, @CONSTITUENTID output, @DATE output, @AMOUNT output,
@PAYMENTMETHODCODE output, @CHECKDATE output, @CHECKNUMBER output, @REFERENCEDATE output,
@REFERENCENUMBER output, @CARDHOLDERNAME output, @CREDITCARDNUMBER output, @CREDITTYPECODEID output,
@AUTHORIZATIONCODE output, @EXPIRESON output, @ISSUER output, @NUMBEROFUNITS output, @SYMBOL output,
@MEDIANPRICE output, @GIFTINKINDSUBTYPECODEID output, @PROPERTYSUBTYPECODEID output, @CONSTITUENTACCOUNTID output,
@POSTSTATUSCODE output, @POSTDATE output, @FINDERNUMBER output, @GIVENANONYMOUSLY output,
@DONOTRECEIPT output, @RECEIPTGENERATED output, @TSLONG output;
set @PENDINGADJUSTMENTCODE = 0;
if @PAYMENTMETHODCODE = 4 and exists ( select 1 from dbo.STOCKSALE
inner join dbo.REVENUEPAYMENTMETHOD on STOCKSALE.STOCKDETAILID = REVENUEPAYMENTMETHOD.ID
where REVENUEPAYMENTMETHOD.REVENUEID = @ID)
begin
if exists ( select 1 from dbo.STOCKSALEADJUSTMENT
inner join dbo.STOCKSALE on STOCKSALEADJUSTMENT.STOCKSALEID = STOCKSALE.ID
inner join dbo.REVENUEPAYMENTMETHOD on STOCKSALE.STOCKDETAILID = REVENUEPAYMENTMETHOD.ID
where REVENUEPAYMENTMETHOD.REVENUEID = @ID and POSTSTATUSCODE <> 0)
set @PENDINGADJUSTMENTCODE = 1;
end
else if @PAYMENTMETHODCODE = 5
begin
if ((select count(ID) from dbo.PROPERTYDETAILADJUSTMENT where PROPERTYDETAILID = @ID and POSTSTATUSCODE <> 0) > 0)
set @PENDINGADJUSTMENTCODE = 2;
end
return 0;