USP_DATAFORMTEMPLATE_EDIT_DISCOUNTADDRESS

The save procedure used by the edit dataform template "Discount Address Restriction Edit Data Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter indicating the ID of the record being edited.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@ADDRESSSELECTIONID uniqueidentifier IN Include

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_DISCOUNTADDRESS (
    @ID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier = null,
    @ADDRESSSELECTIONID uniqueidentifier
)
as

    set nocount on;

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

    declare @CURRENTDATE datetime
    set @CURRENTDATE = getdate()

    begin try
    if @ADDRESSSELECTIONID is not null
    begin

      -- update

          update dbo.DISCOUNTADDRESS set
              IDSETREGISTERID = @ADDRESSSELECTIONID,
              CHANGEDBYID = @CHANGEAGENTID,
              DATECHANGED = @CURRENTDATE
          where ID = @ID

      -- insert

      if @@ROWCOUNT = 0
        insert dbo.DISCOUNTADDRESS (
          ID, 
          IDSETREGISTERID, 
          ADDEDBYID, 
          CHANGEDBYID, 
          DATEADDED, 
          DATECHANGED
        ) values (
          @ID,
          @ADDRESSSELECTIONID,
          @CHANGEAGENTID
          @CHANGEAGENTID
          @CURRENTDATE
          @CURRENTDATE
        )
    end
    else
      -- delete

      exec USP_DISCOUNTADDRESS_DELETEBYID_WITHCHANGEAGENTID @ID, @CHANGEAGENTID
    end try
    begin catch
        exec dbo.USP_RAISE_ERROR
        return 1
    end catch

return 0;