USP_DATAFORMTEMPLATE_EDIT_SALESDEPOSITPROCESSPREPROCESS3

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN
@DEPOSITDATEOPTIONCODE tinyint IN
@DEPOSITDATE date IN
@TEMPLATES xml IN
@PAYMENTDATEOPTIONCODE tinyint IN
@PAYMENTDATE date IN

Definition

Copy

CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_SALESDEPOSITPROCESSPREPROCESS3 (
    @ID uniqueidentifier
    ,@CHANGEAGENTID uniqueidentifier = null
    ,@DEPOSITDATEOPTIONCODE tinyint
    ,@DEPOSITDATE date
    ,@TEMPLATES xml
  ,@PAYMENTDATEOPTIONCODE tinyint
    ,@PAYMENTDATE date
)
as

    set nocount on;

    if @CHANGEAGENTID is null  
        exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output

    declare @CURRENTDATE datetime
    set @CURRENTDATE = getdate()

    begin try
        if @DEPOSITDATEOPTIONCODE != 3
            set @DEPOSITDATE = null;

        update dbo.SALESDEPOSITPROCESS set
            DEPOSITDATEOPTIONCODE = @DEPOSITDATEOPTIONCODE
            ,DEPOSITDATE = @DEPOSITDATE
      ,PAYMENTDATEOPTIONCODE = @PAYMENTDATEOPTIONCODE
            ,PAYMENTDATE = @PAYMENTDATE
            ,GROUPBYDATE = case when @DEPOSITDATEOPTIONCODE = 0 then 1 else 0 end
            ,CHANGEDBYID = @CHANGEAGENTID
            ,DATECHANGED = @CURRENTDATE
        where ID = @ID;

        update dbo.SALESDEPOSITTEMPLATE
            set INCLUDEINPROCESS = T.INCLUDEINPROCESS
        from dbo.UFN_SALESDEPOSITPROCESSTEMPLATES_FROMITEMLISTXML(@TEMPLATES) T
        inner join dbo.SALESDEPOSITTEMPLATE on T.ID = SALESDEPOSITTEMPLATE.ID;

    end try
    begin catch
        exec dbo.USP_RAISE_ERROR
        return 1
    end catch

return 0;