USP_DISBURSEMENTPROCESS_CLEAR

Clears a disbursement process from all of its transactions

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN

Definition

Copy


create procedure dbo.USP_DISBURSEMENTPROCESS_CLEAR (
  @ID uniqueidentifier 
)
as
begin
  set nocount on;

  if exists
    select * 
    from dbo.DISBURSEMENTPROCESS as DP
    where
      DP.ID = @ID
      and DP.STATUSCODE > 0 )
    raiserror ('Cannot clear a process in a state other than created.',16,1)


  delete 
      dbo.FINANCIALTRANSACTIONAPPLICATION 
  from 
      dbo.FINANCIALTRANSACTIONAPPLICATION as FTA
      join dbo.FINANCIALTRANSACTION as FT on FT.ID = FTA.FINANCIALTRANSACTIONID
      join dbo.DISBURSEMENTPROCESSDISBURSEMENT as DPD on DPD.ID = FT.ID
  where 
      FT.TYPECODE = 255
    and DPD.DISBURSEMENTPROCESSID = @ID;

  delete 
    dbo.FINANCIALTRANSACTION 
  from 
    dbo.FINANCIALTRANSACTION as FT
    join dbo.DISBURSEMENTPROCESSDISBURSEMENT as DPD on DPD.ID = FT.ID  
  where 
    FT.TYPECODE = 255
    and DPD.DISBURSEMENTPROCESSID = @ID;    

end