USP_DATAFORMTEMPLATE_EDITLOAD_DISBURSEMENTPROCESS_FINALIZE_EDIT

The load procedure used by the edit dataform template "Disbursement Process Review And Commit Checks Edit Data 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.
@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.
@PRENUMBEREDSTOCK bit INOUT Pre-numbered stock
@CHECKS_DISBURSEMENTDATE date INOUT Disbursement date
@CHECKS_NUMBEROFCHECKSPRINTED int INOUT Number of checks printed
@CHECKS_NUMBERRANGEPRINTED varchar(30) INOUT Number range printed
@CHECKS_TOTALAMOUNT money INOUT Total amount
@UNSUCESSFULACTION tinyint INOUT Action
@SUCCESSFULCHECKPRINTINGCODE tinyint INOUT Successful check printing value
@RANGESGRID xml INOUT

Definition

Copy

CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_DISBURSEMENTPROCESS_FINALIZE_EDIT(
  @ID uniqueidentifier
  ,@DATALOADED bit = 0 output
  ,@TSLONG bigint = 0 output
  ,@PRENUMBEREDSTOCK bit = null output
  ,@CHECKS_DISBURSEMENTDATE date = null output
  ,@CHECKS_NUMBEROFCHECKSPRINTED int = null output
  ,@CHECKS_NUMBERRANGEPRINTED varchar(30) = null output 
  ,@CHECKS_TOTALAMOUNT money = null output  
  ,@UNSUCESSFULACTION tinyint = null output
  ,@SUCCESSFULCHECKPRINTINGCODE tinyint = null output
  ,@RANGESGRID xml = null output
)
as

    set nocount on;

    -- be sure to set these, in case the select returns no rows 
    set @DATALOADED = 0
    set @TSLONG = 0

    select 
        @DATALOADED = 1
    ,@PRENUMBEREDSTOCK = DF.PRENUMBERED
        ,@CHECKS_DISBURSEMENTDATE = DP.DISBURSEMENTDATE
        ,@CHECKS_NUMBEROFCHECKSPRINTED = DISBSUMMARY.NUMBEROFCHECKSPRINTED
    ,@CHECKS_NUMBERRANGEPRINTED = dbo.UFN_DISBURSEMENTPROCESSFINALIZE_NUMBEROFCHECKS(@ID)
        ,@CHECKS_TOTALAMOUNT = DISBSUMMARY.TOTALAMOUNT
    from    
        dbo.DISBURSEMENTPROCESS as DP
        inner join dbo.DISBURSEMENTPROCESSFORMAT as DPF 
            on DP.ID = DPF.DISBURSEMENTPROCESSID
        inner join dbo.DISBURSEMENTFORMAT as DF
            on DPF.DISBURSEMENTFORMATID    = DF.ID 
        left outer join 
    (
            select    
                COUNT(*) as NUMBEROFCHECKSPRINTED
        ,SUM(FT.TRANSACTIONAMOUNT) as TOTALAMOUNT
          ,DPD.DISBURSEMENTPROCESSID
      from dbo.DISBURSEMENTPROCESSDISBURSEMENT as DPD
        inner join dbo.FINANCIALTRANSACTION as FT on DPD.ID = FT.ID AND FT.TRANSACTIONAMOUNT <> 0
      group by DPD.DISBURSEMENTPROCESSID
         ) as DISBSUMMARY on DISBSUMMARY.DISBURSEMENTPROCESSID = DP.ID            
    where
        DP.ID = @ID

    return 0;