TR_RECONCILIATION_APPROVEDDURINGSALESDEPOSITPROCESS
Definition
Copy
CREATE trigger dbo.TR_RECONCILIATION_APPROVEDDURINGSALESDEPOSITPROCESS
on dbo.[RECONCILIATION]
for insert, update
not for replication
as begin
if update(STATUSCODE)
begin
if exists (
select 1
from dbo.[BUSINESSPROCESSSTATUS]
inner join dbo.[SALESDEPOSITPROCESS]
on [BUSINESSPROCESSSTATUS].[BUSINESSPROCESSPARAMETERSETID] = [SALESDEPOSITPROCESS].[ID]
where
[SALESDEPOSITPROCESS].[ISRECONCILEDPROCESS] = 1 and
[BUSINESSPROCESSSTATUS].[STATUSCODE] = 1
)
begin
if exists (
select 1
from inserted
left join deleted
on inserted.[ID] = deleted.[ID]
where
inserted.[STATUSCODE] = 2 and
--Just incase they are approving something that was already approved
(deleted.[ID] is null or deleted.[STATUSCODE] <> 2)
)
begin
raiserror('ERR_RECONCILIATION_APPROVEDDURINGSALESDEPOSITPROCESS', 13, 1)
end
if exists (
select 1
from deleted
inner join inserted
on deleted.[ID] = inserted.[ID]
where
deleted.[STATUSCODE] = 2 and
inserted.[STATUSCODE] not in (2,3)
)
begin
raiserror('ERR_RECONCILIATION_UNAPPROVEDDURINGSALESDEPOSITPROCESS', 13, 1)
end
end
end
end