USP_CREDITMEMO_VALIDATE
Validates saving a credit memo
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@REMITADDRESSID | uniqueidentifier | IN | |
@BANKACCOUNTID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_CREDITMEMO_VALIDATE(
@ID uniqueidentifier
,@REMITADDRESSID uniqueidentifier
,@BANKACCOUNTID uniqueidentifier
)
as
begin
declare @PAID bit = 0;
if exists (
select I.ID
from dbo.CREDITMEMO I
join dbo.FINANCIALTRANSACTION FT on FT.ID = I.ID
join dbo.FINANCIALTRANSACTIONAPPLICATION FTA on FTA.FINANCIALTRANSACTIONSCHEDULEID = FT.ID
where FTA.STATUSCODE <> 2 and FT.ID = I.ID)
set @PAID = 1;
if @PAID = 1
begin
IF EXISTS (
SELECT I.ID
FROM dbo.CREDITMEMO I
WHERE I.ID = @ID and I.REMITADDRESSID <> @REMITADDRESSID
)
BEGIN
RAISERROR ('ERR_INVOICE_LOCKEDREMITADDRESSID', 16, 1)
END
IF EXISTS (
SELECT I.ID
FROM dbo.CREDITMEMO I
WHERE I.ID = @ID and I.BANKACCOUNTID <> @BANKACCOUNTID
)
BEGIN
RAISERROR ('ERR_INVOICE_LOCKEDBANKACCOUNTID', 16, 1)
END
end
end