USP_PAYMENT_ADJUST_POST
Stored procedure to save an adjustment info after changing revenue.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@ADJUSTMENTID | uniqueidentifier | IN | |
@STOCKSALEADJUSTMENTIDS | xml | IN | |
@PROPERTYDETAILADJUSTMENTID | uniqueidentifier | IN | |
@ORIGINALPAYMENTMETHODCODE | tinyint | IN | |
@ORIGINALREVENUEPAYMENTMETHODID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@CHANGEDATE | datetime | IN |
Definition
Copy
CREATE procedure dbo.USP_PAYMENT_ADJUST_POST
(
@ID uniqueidentifier,
@ADJUSTMENTID uniqueidentifier,
@STOCKSALEADJUSTMENTIDS xml,
@PROPERTYDETAILADJUSTMENTID uniqueidentifier,
@ORIGINALPAYMENTMETHODCODE tinyint,
@ORIGINALREVENUEPAYMENTMETHODID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier,
@CHANGEDATE datetime = null
)
as
set nocount on;
-- Get payment code
declare @PAYMENTMETHODCODE tinyint;
declare @REVENUEPAYMENTMETHODID uniqueidentifier;
-- Clear GL
delete from dbo.REVENUEGLDISTRIBUTION where REVENUEID = @ID and OUTDATED = 0;
delete from dbo.STOCKSALEGLDISTRIBUTION where REVENUEID = @ID and OUTDATED = 0;
delete from dbo.PROPERTYDETAILGLDISTRIBUTION where REVENUEID = @ID and OUTDATED = 0;
-- Add new GL distributions
if (select DONOTPOST from dbo.REVENUE where ID = @ID) = 0
begin
-- Add new GL distributions
exec dbo.USP_SAVE_REVENUEGLDISTRIBUTION @ID, @CHANGEAGENTID, @CHANGEDATE;
-- Add new stock detail GL distributions
if @ORIGINALPAYMENTMETHODCODE = 4 and exists(select ID from dbo.STOCKSALE where STOCKDETAILID = @ORIGINALREVENUEPAYMENTMETHODID)
exec dbo.USP_SAVE_STOCKDETAILGLDISTRIBUTION @ID, @CHANGEAGENTID, @CHANGEDATE;
-- Add new property detail GL distributions
if @ORIGINALPAYMENTMETHODCODE = 8
exec dbo.USP_SAVE_PROPERTYDETAILGLDISTRIBUTION @ID, @CHANGEAGENTID, @CHANGEDATE;
declare @DEPOSITID uniqueidentifier;
select @DEPOSITID = DEPOSITID
from dbo.BANKACCOUNTDEPOSITPAYMENT
where ID = @ID;
if @DEPOSITID is not null
exec dbo.USP_BANKACCOUNTDEPOSIT_OVERWRITEPAYMENTDEBITACCOUNTS @ID, @DEPOSITID, @CHANGEAGENTID, @CHANGEDATE;
end
if @ADJUSTMENTID is not null
exec dbo.USP_ADJUSTMENTHISTORY_REVENUE_SAVEHISTORY @ID, @CHANGEAGENTID, null, @ADJUSTMENTID
if @STOCKSALEADJUSTMENTIDS is not null
exec dbo.USP_ADJUSTMENTHISTORY_STOCK_SAVEHISTORY @REVENUEPAYMENTMETHODID, @CHANGEAGENTID, null, @STOCKSALEADJUSTMENTIDS;
if @PROPERTYDETAILADJUSTMENTID is not null
exec dbo.USP_ADJUSTMENTHISTORY_PROPERTY_SAVEHISTORY @REVENUEPAYMENTMETHODID, @CHANGEAGENTID, null, @PROPERTYDETAILADJUSTMENTID;