USP_DATAFORMTEMPLATE_EDIT_DATATUNEUP_2

The save procedure used by the edit dataform template "Data Tune-Up 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.
@ADDRESSFORMATTINGCODE tinyint IN Address formatting
@DONOTABBREVIATE bit IN Do not abbreviate address elements according to USPS format
@CAPITALIZE bit IN Capitalize the entire address
@UPDATEADDRESSCODE tinyint IN Update addresses
@SAVEFORMERADDRESS bit IN Save former address in constituent address list when there is a forwardable move
@ADDRESSTYPECODEID uniqueidentifier IN Set address type on former address to
@FOOTNOTECODE1REASONCODEID uniqueidentifier IN Forwardable move
@FOOTNOTECODE2REASONCODEID uniqueidentifier IN Moved with no forwarding address
@FOOTNOTECODE3REASONCODEID uniqueidentifier IN PO box closed
@FOOTNOTECODE4REASONCODEID uniqueidentifier IN Move to foreign address
@FOOTNOTECODE5REASONCODEID uniqueidentifier IN Forwardable move, but secondary address cannot be verified
@FOOTNOTECODE6REASONCODEID uniqueidentifier IN Change of address form filed, but new address not in USPS records
@FOOTNOTECODE7REASONCODEID uniqueidentifier IN Temporary address has lapsed
@INFOSOURCECODEID uniqueidentifier IN Default NCOA information source
@ADDRESSVALIDATION_INFOSOURCECODEID uniqueidentifier IN Default address validation information source

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_DATATUNEUP_2
                    (
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier = null,
                        @ADDRESSFORMATTINGCODE tinyint,
                        @DONOTABBREVIATE bit,
                        @CAPITALIZE bit,
                        @UPDATEADDRESSCODE tinyint,
                        @SAVEFORMERADDRESS bit,
                        @ADDRESSTYPECODEID uniqueidentifier,
                        @FOOTNOTECODE1REASONCODEID uniqueidentifier,
                        @FOOTNOTECODE2REASONCODEID uniqueidentifier,
                        @FOOTNOTECODE3REASONCODEID uniqueidentifier,
                        @FOOTNOTECODE4REASONCODEID uniqueidentifier,
                        @FOOTNOTECODE5REASONCODEID uniqueidentifier,
                        @FOOTNOTECODE6REASONCODEID uniqueidentifier,
                        @FOOTNOTECODE7REASONCODEID uniqueidentifier,
                        @INFOSOURCECODEID uniqueidentifier,
                        @ADDRESSVALIDATION_INFOSOURCECODEID uniqueidentifier
                    )
                    as
                        set nocount on;

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

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

                        begin try
                            update dbo.DATATUNEUP
                            set ADDRESSFORMATTINGCODE = @ADDRESSFORMATTINGCODE,
                                DONOTABBREVIATE = @DONOTABBREVIATE,
                                CAPITALIZE = @CAPITALIZE,
                                UPDATEADDRESSCODE = @UPDATEADDRESSCODE,
                                SAVEFORMERADDRESS = @SAVEFORMERADDRESS,
                                ADDRESSTYPECODEID = @ADDRESSTYPECODEID,
                                CHANGEDBYID = @CHANGEAGENTID,
                                DATECHANGED = @CURRENTDATE,
                                INFOSOURCECODEID = @INFOSOURCECODEID,
                                ADDRESSVALIDATION_INFOSOURCECODEID = @ADDRESSVALIDATION_INFOSOURCECODEID
                            where ID = @ID;

                            if
                            coalesce
                                (
                                    @FOOTNOTECODE1REASONCODEID,
                                    @FOOTNOTECODE2REASONCODEID,
                                    @FOOTNOTECODE3REASONCODEID,
                                    @FOOTNOTECODE4REASONCODEID,
                                    @FOOTNOTECODE5REASONCODEID,
                                    @FOOTNOTECODE6REASONCODEID,
                                    @FOOTNOTECODE7REASONCODEID
                                )
                            is null
                                begin
                                    if exists(select 1 from dbo.DATATUNEUPFOOTNOTEREASONMAP where ID = @ID)
                                        exec dbo.USP_DATATUNEUPFOOTNOTEREASONMAP_DELETEBYID_WITHCHANGEAGENTID @ID, @CHANGEAGENTID;
                                end
                            else
                                begin
                                    if exists(select 1 from dbo.DATATUNEUPFOOTNOTEREASONMAP where ID = @ID)
                                        update dbo.DATATUNEUPFOOTNOTEREASONMAP
                                        set
                                            FOOTNOTECODE1REASONCODEID = @FOOTNOTECODE1REASONCODEID,
                                            FOOTNOTECODE2REASONCODEID = @FOOTNOTECODE2REASONCODEID,
                                            FOOTNOTECODE3REASONCODEID = @FOOTNOTECODE3REASONCODEID,
                                            FOOTNOTECODE4REASONCODEID = @FOOTNOTECODE4REASONCODEID,
                                            FOOTNOTECODE5REASONCODEID = @FOOTNOTECODE5REASONCODEID,
                                            FOOTNOTECODE6REASONCODEID = @FOOTNOTECODE6REASONCODEID,
                                            FOOTNOTECODE7REASONCODEID = @FOOTNOTECODE7REASONCODEID,
                                            CHANGEDBYID = @CHANGEAGENTID,
                                            DATECHANGED = @CURRENTDATE
                                        where
                                            ID = @ID;

                                    else
                                        insert into dbo.DATATUNEUPFOOTNOTEREASONMAP
                                        (
                                            ID,
                                            FOOTNOTECODE1REASONCODEID,
                                            FOOTNOTECODE2REASONCODEID,
                                            FOOTNOTECODE3REASONCODEID,
                                            FOOTNOTECODE4REASONCODEID,
                                            FOOTNOTECODE5REASONCODEID,
                                            FOOTNOTECODE6REASONCODEID,
                                            FOOTNOTECODE7REASONCODEID,
                                            ADDEDBYID,
                                            CHANGEDBYID,
                                            DATEADDED,
                                            DATECHANGED
                                        )
                                        values
                                        (
                                            @ID,
                                            @FOOTNOTECODE1REASONCODEID,
                                            @FOOTNOTECODE2REASONCODEID,
                                            @FOOTNOTECODE3REASONCODEID,
                                            @FOOTNOTECODE4REASONCODEID,
                                            @FOOTNOTECODE5REASONCODEID,
                                            @FOOTNOTECODE6REASONCODEID,
                                            @FOOTNOTECODE7REASONCODEID,
                                            @CHANGEAGENTID,
                                            @CHANGEAGENTID,
                                            @CURRENTDATE,
                                            @CURRENTDATE
                                        );
                                end

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

                        return 0;