USP_DATAFORMTEMPLATE_EDIT_DISSOLVEGROUP

The save procedure used by the edit dataform template "Dissolve Group Edit 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.
@DISSOLVEDDATE datetime IN Date
@DISSOLVEREASONCODEID uniqueidentifier IN Reason

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_DISSOLVEGROUP
                    (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier,
                        @DISSOLVEDDATE datetime,
                        @DISSOLVEREASONCODEID uniqueidentifier
                    )
                    as
                    set nocount on;

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

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

                    declare @DISSOLVEDDATEEARLIESTTIME datetime;
                    set @DISSOLVEDDATEEARLIESTTIME = dbo.UFN_DATE_GETEARLIESTTIME(@DISSOLVEDDATE);

                    if exists(select ID from dbo.DISSOLVEDGROUP where ID = @ID)
                        update 
                            dbo.DISSOLVEDGROUP 
                        set                            
                            DISSOLVEDDATE = @DISSOLVEDDATEEARLIESTTIME,
                            DISSOLVEREASONCODEID = @DISSOLVEREASONCODEID,
                            CHANGEDBYID = @CHANGEAGENTID,
                            DATECHANGED = @CURRENTDATE
                        where
                            ID = @ID;
                    else
                        begin
                            insert into dbo.DISSOLVEDGROUP
                            (
                                ID, 
                                DISSOLVEDDATE, 
                                ADDEDBYID, 
                                CHANGEDBYID, 
                                DATEADDED, 
                                DATECHANGED, 
                                DISSOLVEREASONCODEID
                            )
                            values
                            (
                                @ID
                                @DISSOLVEDDATEEARLIESTTIME
                                @CHANGEAGENTID
                                @CHANGEAGENTID
                                @CURRENTDATE
                                @CURRENTDATE
                                @DISSOLVEREASONCODEID
                            );

                            exec dbo.USP_GROUP_DISSOLVE @ID, @DISSOLVEDDATEEARLIESTTIME, @CHANGEAGENTID
                        end

                    return 0;