USP_DATAFORMTEMPLATE_EDIT_VENDOR1099SETTING

The save procedure used by the edit dataform template "Vendor 1099 Setting 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.
@VENDOR1099DISTRIBUTION xml IN Vendor 1099 distribution
@CHECK1099BOX9 bit IN Mark 1099 box 9 for direct sales of consumer products
@CHECK10992TIN bit IN Mark the 1099 2nd TIN notification box
@NAMEFIRSTLINEALIASTYPECODEIDORGANIZATION uniqueidentifier IN Name first line
@NAMEFIRSTLINEALIASTYPECODEIDINDIVIDUAL uniqueidentifier IN Name first line
@NAMESECONDLINEALIASTYPECODEIDORGANIZATION uniqueidentifier IN Name second line
@NAMESECONDLINEALIASTYPECODEIDINDIVIDUAL uniqueidentifier IN Name second line
@ADDRESSID uniqueidentifier IN Address
@ISORGANIZATION bit IN

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_VENDOR1099SETTING(
                        @ID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier = null,
                        @VENDOR1099DISTRIBUTION xml,
                        @CHECK1099BOX9 bit,
                        @CHECK10992TIN bit,
                        @NAMEFIRSTLINEALIASTYPECODEIDORGANIZATION uniqueidentifier,
                        @NAMEFIRSTLINEALIASTYPECODEIDINDIVIDUAL uniqueidentifier,
                        @NAMESECONDLINEALIASTYPECODEIDORGANIZATION uniqueidentifier,
                        @NAMESECONDLINEALIASTYPECODEIDINDIVIDUAL uniqueidentifier,
                        @ADDRESSID uniqueidentifier,
                        @ISORGANIZATION bit
                    )
                    as
                        set nocount on;

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

                        declare @CURRENTDATE datetime
                        set @CURRENTDATE = getdate()

                        declare @IS1099 bit
                        set @IS1099 = 0

                        declare @NAMEFIRSTLINEALIASTYPECODEID uniqueidentifier
                        if @ISORGANIZATION = 1
                            set @NAMEFIRSTLINEALIASTYPECODEID = @NAMEFIRSTLINEALIASTYPECODEIDORGANIZATION
                        else
                            set @NAMEFIRSTLINEALIASTYPECODEID = @NAMEFIRSTLINEALIASTYPECODEIDINDIVIDUAL

                        declare @NAMESECONDLINEALIASTYPECODEID uniqueidentifier
                        if @ISORGANIZATION = 1                        
                            set @NAMESECONDLINEALIASTYPECODEID = @NAMESECONDLINEALIASTYPECODEIDORGANIZATION
                        else
                            set @NAMESECONDLINEALIASTYPECODEID = @NAMESECONDLINEALIASTYPECODEIDINDIVIDUAL

                        begin try
                            select @IS1099 = INCLUDEIN1099 from dbo.VENDOR where VENDOR.ID = @ID;
                            -- Since the Task 'Report 1099 activity' needs to always set this vendor as a 1099

                            if @IS1099 = 0
                                begin
                                    update dbo.VENDOR set 
                                        INCLUDEIN1099 = 1 
                                        ,CHANGEDBYID = @CHANGEAGENTID
                                        ,DATECHANGED = @CURRENTDATE
                                    where VENDOR.ID = @ID;
                                end
                        end try
                        begin catch
                            exec dbo.USP_RAISE_ERROR
                            return 1
                        end catch

                        begin try
                            update dbo.VENDOR1099SETTING set
                                CHECK1099BOX9 = @CHECK1099BOX9,
                                CHECK10992TIN = @CHECK10992TIN,
                                NAMEFIRSTLINEALIASTYPECODEID = @NAMEFIRSTLINEALIASTYPECODEID,
                                NAMESECONDLINEALIASTYPECODEID = @NAMESECONDLINEALIASTYPECODEID,
                                ADDRESSID = @ADDRESSID,
                                CHANGEDBYID = @CHANGEAGENTID,
                                DATECHANGED = @CURRENTDATE
                            where ID = @ID

                            exec dbo.USP_VENDOR_1099DISTRIBUTION_UPDATEFROMXML @ID, @VENDOR1099DISTRIBUTION, @CHANGEAGENTID, @CURRENTDATE;                            
                        end try
                        begin catch
                            exec dbo.USP_RAISE_ERROR
                            return 1
                        end catch

                    return 0;