USP_NAMEFORMATFUNCTION_ADDORUPDATE

Adds or updates a row in NAMEFORMATFUNCTION by format function.

Parameters

Parameter Parameter Type Mode Description
@FORMATSQLFUNCTION nvarchar(200) IN
@CHANGEAGENTID uniqueidentifier IN

Definition

Copy


            CREATE procedure dbo.USP_NAMEFORMATFUNCTION_ADDORUPDATE
            (
                @FORMATSQLFUNCTION nvarchar(200),
                @CHANGEAGENTID uniqueidentifier = null
            )
            as begin

                set nocount on;

                declare @CURRENTDATE datetime
                set @CURRENTDATE = getdate();

                begin try
                    if @CHANGEAGENTID is null  
                        exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;

                    declare @FORMATID uniqueidentifier
                    select @FORMATID = ID
                    from NAMEFORMATFUNCTION
                    where FORMATSQLFUNCTION = @FORMATSQLFUNCTION;

                    if @FORMATID is null
                    begin
                        insert into dbo.NAMEFORMATFUNCTION
                        (
                            ID,
                            FORMATSQLFUNCTION,
                            SEQUENCE,
                            ADDEDBYID,
                            CHANGEDBYID,
                            DATEADDED,
                            DATECHANGED
                        )
                        values
                        (
                            newid(),
                            @FORMATSQLFUNCTION,
                            ((select coalesce(max(SEQUENCE), 0) from dbo.NAMEFORMATFUNCTION) + 1), 
                            @CHANGEAGENTID,
                            @CHANGEAGENTID,
                            @CURRENTDATE,
                            @CURRENTDATE
                        );
                    end
                    --else do nothing 

                end try

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

                return 0;
            end