USP_WPBUSINESSOWNERSHIP_ADD

Adds WealthPoint Business Ownership information for a prospect.

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT
@CHANGEAGENTID uniqueidentifier IN
@WEALTHID uniqueidentifier IN
@SOURCE nvarchar(100) IN
@DBID int IN
@REVISION int IN
@ORIGINALID int IN
@NEWROW bit IN
@CDATE datetime IN
@CVALUE money IN
@CNOTES nvarchar(1024) IN
@FULLHASH nvarchar(32) IN
@PARTIALHASH nvarchar(32) IN
@MC nvarchar(3) IN
@FULLNAME nvarchar(100) IN
@TITLE nvarchar(100) IN
@LINE1 nvarchar(150) IN
@CITY nvarchar(30) IN
@STATE nvarchar(100) IN
@ZIP nvarchar(10) IN
@BIO nvarchar(1500) IN
@HELDCODE tinyint IN
@COMPANY nvarchar(100) IN
@PHONE nvarchar(20) IN
@LINE_OF_BUSINESS_DESCRIPTION nvarchar(50) IN
@SALES_VOLUME money IN
@YEAR_STARTED int IN
@EMPLOYEES_TOTAL int IN
@SIC_CODE nvarchar(4) IN
@DUNS nvarchar(9) IN
@PERCENTAGE decimal(20, 4) IN
@VALUATION money IN
@SPOUSEIND tinyint IN
@CURRENTAPPUSERID uniqueidentifier IN
@RECURSIVEMATCH bit IN
@MAILINGLINE1 nvarchar(150) IN
@MAILINGCITY nvarchar(30) IN
@MAILINGSTATE nvarchar(100) IN
@MAILINGZIP nvarchar(10) IN
@HOMELINE1 nvarchar(150) IN
@HOMECITY nvarchar(30) IN
@HOMESTATE nvarchar(100) IN
@HOMEZIP nvarchar(10) IN
@SICNAME nvarchar(100) IN
@YEAROFBIRTH UDT_YEAR IN
@GENDERCODE tinyint IN
@RATIO decimal(20, 4) IN
@WPBUSINESSOWNERSHIPHISTORYID uniqueidentifier INOUT
@SIC_CODE1 nvarchar(4) IN
@SIC_CODE2 nvarchar(4) IN
@SIC_CODE3 nvarchar(4) IN
@SIC_CODE4 nvarchar(4) IN
@SIC_CODE5 nvarchar(4) IN
@SIC_CODE6 nvarchar(4) IN
@RATIO1 decimal(20, 4) IN
@RATIO2 decimal(20, 4) IN
@RATIO3 decimal(20, 4) IN
@RATIO4 decimal(20, 4) IN
@RATIO5 decimal(20, 4) IN
@RATIO6 decimal(20, 4) IN

Definition

Copy


            CREATE procedure dbo.USP_WPBUSINESSOWNERSHIP_ADD (
                @ID uniqueidentifier = null output,
                @CHANGEAGENTID uniqueidentifier = null,
                @WEALTHID uniqueidentifier,
                @SOURCE nvarchar(100),
                @DBID int = 0,
                @REVISION int = 0,
                @ORIGINALID int = 0,
                @NEWROW bit = 0,
                @CDATE datetime = null,
                @CVALUE money = 0,
                @CNOTES nvarchar(1024) = '',
                @FULLHASH nvarchar(32) = '',
                @PARTIALHASH nvarchar(32) = '',
                @MC nvarchar(3) = '',
                @FULLNAME nvarchar(100) = '',
                @TITLE nvarchar(100) = '',
                @LINE1 nvarchar(150) = '',
                @CITY nvarchar(30) = '',
                @STATE nvarchar(100) = '',
                @ZIP nvarchar(10) = '',
                @BIO nvarchar(1500) = '',
                @HELDCODE tinyint = 2,
                @COMPANY nvarchar(100) = '',
                @PHONE nvarchar(20) = '',
                @LINE_OF_BUSINESS_DESCRIPTION nvarchar(50) = '',
                @SALES_VOLUME money = 0,
                @YEAR_STARTED int = 0,
                @EMPLOYEES_TOTAL int = 0,
                @SIC_CODE nvarchar(4) = '',
                @DUNS nvarchar(9) = '',
                @PERCENTAGE decimal(20,4) = 0,
                @VALUATION money = 0,
                @SPOUSEIND tinyint = 0,
                @CURRENTAPPUSERID uniqueidentifier = null,
                @RECURSIVEMATCH bit = 0,
                @MAILINGLINE1 nvarchar(150) = '',
                @MAILINGCITY nvarchar(30) = '',
                @MAILINGSTATE nvarchar(100) = '',
                @MAILINGZIP nvarchar(10) = '',
                @HOMELINE1 nvarchar(150) = '',
                @HOMECITY nvarchar(30) = '',
                @HOMESTATE nvarchar(100) = '',
                @HOMEZIP nvarchar(10) = '',
                @SICNAME nvarchar(100) = '',
                @YEAROFBIRTH dbo.UDT_YEAR = 0,
                @GENDERCODE tinyint = 0,
                @RATIO decimal(20,4) = 0,
                @WPBUSINESSOWNERSHIPHISTORYID uniqueidentifier = null output,
        @SIC_CODE1 nvarchar(4) = '',
        @SIC_CODE2 nvarchar(4) = '',
        @SIC_CODE3 nvarchar(4) = '',
        @SIC_CODE4 nvarchar(4) = '',
        @SIC_CODE5 nvarchar(4) = '',
        @SIC_CODE6 nvarchar(4) = '',
        @RATIO1 decimal(20,4) = 0,
        @RATIO2 decimal(20,4) = 0,
        @RATIO3 decimal(20,4) = 0,
        @RATIO4 decimal(20,4) = 0,
        @RATIO5 decimal(20,4) = 0,
        @RATIO6 decimal(20,4) = 0
            ) as begin
                set nocount on;

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

                begin try
                    declare @NEWRECORD bit;
                    declare @UPDATEDRECORD bit;
                    declare @CURRENTDATE datetime;

                    set @NEWRECORD = 0;
                    set @UPDATEDRECORD = 0;
                    set @CURRENTDATE = getdate();

                    --Get any existing ID

                    select 
                        @ID = ID 
                    from 
                        dbo.WPBUSINESSOWNERSHIP
                    where 
                        WEALTHID=@WEALTHID and PARTIALHASH=@PARTIALHASH;

                    declare @CONFIRMED bit;    
                    declare @CONFIRMEDBYAPPUSERID uniqueidentifier;
                    declare @DATECONFIRMED datetime;
                    declare @REJECTED bit;
                    declare @REJECTEDBYAPPUSERID uniqueidentifier; 
                    declare @DATEREJECTED datetime;    

                    set @CONFIRMED = 0;
                    set @REJECTED = 0;

                    if @CURRENTAPPUSERID is not null
                    begin
                        declare @CONFIDENCE int

                        select 
                            @CONFIDENCE = coalesce(CR.CONFIDENCE,MC.DEFAULTCONFIDENCE)
                        from
                            dbo.MATCHCODE MC
                            left outer join
                                dbo.WEALTHSOURCE WS on @SOURCE = WS.SOURCE
                            left outer join 
                                dbo.CONFIDENCERATING CR on CR.MATCHCODEID = MC.ID and CR.WEALTHSOURCEID = WS.ID
                        where
                            MC.MATCHCODE = @MC

                        select                   
                            @REJECTED =                case @CONFIDENCE
                                                        when 5 then 0
                                                        when 0 then 1
                                                    end,
                            @DATEREJECTED =            case @CONFIDENCE
                                                        when 5 then NULL
                                                        when 0 then @CURRENTDATE 
                                                    end,
                            @REJECTEDBYAPPUSERID =     case @CONFIDENCE
                                                        when 5 then NULL
                                                        when 0 then @CURRENTAPPUSERID 
                                                    end,
                            @CONFIRMED =            case @CONFIDENCE
                                                        when 5 then 1
                                                        when 0 then 0
                                                    end,
                            @DATECONFIRMED =        case @CONFIDENCE
                                                        when 5 then @CURRENTDATE 
                                                        when 0 then    NULL
                                                    end,
                            @CONFIRMEDBYAPPUSERID = case @CONFIDENCE
                                                        when 5 then  @CURRENTAPPUSERID 
                                                        when 0 then NULL
                                                    end 
                        where
                            @CONFIDENCE in (0,5);                    
                    end                                

                    -- Record exists

                    if @ID is not null
                    begin
                        if not exists(select 1 from dbo.WPBUSINESSOWNERSHIP where WEALTHID=@WEALTHID and FULLHASH=@FULLHASH
                        begin
                            --Record exists but needs to be updated

                            set @UPDATEDRECORD = 1;

                            update
                                dbo.WPBUSINESSOWNERSHIP
                            set
                                MC = coalesce(nullif(@MC, 'EPB'), MC),
                                RECURSIVEMATCH = @RECURSIVEMATCH,
                                FULLNAME = coalesce(nullif(@FULLNAME, ''), FULLNAME),
                                TITLE = coalesce(nullif(@TITLE, ''), TITLE),
                                LINE1 = coalesce(nullif(@LINE1, ''), LINE1),
                                CITY = coalesce(nullif(@CITY, ''), CITY),
                                STATE = coalesce(nullif(@STATE, ''), STATE),
                                ZIP = coalesce(nullif(@ZIP, ''), ZIP),
                                BIO = coalesce(nullif(@BIO, ''), BIO),
                                HELDCODE = coalesce(nullif(@HELDCODE, 2),HELDCODE),
                                COMPANY = coalesce(nullif(@COMPANY, ''), COMPANY),
                                PHONE = coalesce(nullif(@PHONE, ''), PHONE),
                                LINE_OF_BUSINESS_DESCRIPTION = coalesce(nullif(@LINE_OF_BUSINESS_DESCRIPTION, ''), LINE_OF_BUSINESS_DESCRIPTION),
                                SALES_VOLUME = coalesce(nullif(@SALES_VOLUME, 0),SALES_VOLUME),
                                YEAR_STARTED = coalesce(nullif(@YEAR_STARTED, 0),YEAR_STARTED),
                                EMPLOYEES_TOTAL = coalesce(nullif(@EMPLOYEES_TOTAL, 0),EMPLOYEES_TOTAL),
                                SIC_CODE = coalesce(nullif(@SIC_CODE, ''), SIC_CODE),
                                PERCENTAGE = coalesce(nullif(@PERCENTAGE, 0),PERCENTAGE),
                                VALUATION = coalesce(nullif(@VALUATION, 0),VALUATION),
                                SPOUSEIND = coalesce(nullif(@SPOUSEIND, 0),SPOUSEIND),
                                MAILINGLINE1 = coalesce(nullif(@MAILINGLINE1, ''), MAILINGLINE1),
                                MAILINGCITY = coalesce(nullif(@MAILINGCITY, ''), MAILINGCITY),
                                MAILINGSTATE = coalesce(nullif(@MAILINGSTATE, ''), MAILINGSTATE),
                                MAILINGZIP = coalesce(nullif(@MAILINGZIP, ''), MAILINGZIP),
                                HOMELINE1 = coalesce(nullif(@HOMELINE1, ''), HOMELINE1),
                                HOMECITY = coalesce(nullif(@HOMECITY, ''), HOMECITY),
                                HOMESTATE = coalesce(nullif(@HOMESTATE, ''), HOMESTATE),
                                HOMEZIP = coalesce(nullif(@HOMEZIP, ''), HOMEZIP),
                                SICNAME = coalesce(nullif(@SICNAME, ''), SICNAME),
                                YEAROFBIRTH = coalesce(nullif(@YEAROFBIRTH, 0), YEAROFBIRTH),
                                GENDERCODE = coalesce(nullif(@GENDERCODE, 0), GENDERCODE),
                                RATIO = coalesce(nullif(@RATIO, 0), RATIO),
                                SIC_CODE1 = coalesce(nullif(@SIC_CODE1, ''), SIC_CODE1),
                                SIC_CODE2 = coalesce(nullif(@SIC_CODE2, ''), SIC_CODE2),
                                SIC_CODE3 = coalesce(nullif(@SIC_CODE3, ''), SIC_CODE3),
                                SIC_CODE4 = coalesce(nullif(@SIC_CODE4, ''), SIC_CODE4),
                                SIC_CODE5 = coalesce(nullif(@SIC_CODE5, ''), SIC_CODE5),
                                SIC_CODE6 = coalesce(nullif(@SIC_CODE6, ''), SIC_CODE6),
                                RATIO1 = coalesce(nullif(@RATIO1, 0), RATIO1),
                                RATIO2 = coalesce(nullif(@RATIO2, 0), RATIO2),
                                RATIO3 = coalesce(nullif(@RATIO3, 0), RATIO3),
                                RATIO4 = coalesce(nullif(@RATIO4, 0), RATIO4),
                                RATIO5 = coalesce(nullif(@RATIO5, 0), RATIO5),
                                RATIO6 = coalesce(nullif(@RATIO6, 0), RATIO6),
                                FULLHASH = @FULLHASH,
                                CHANGEDBYID = @CHANGEAGENTID,
                                DATECHANGED = @CURRENTDATE,
                                CONFIRMED = case when @CONFIRMED = 1 and CONFIRMED = 0 and REJECTED = 0 then 1 else CONFIRMED end,
                                CONFIRMEDBYAPPUSERID = case when @CONFIRMED = 1 and CONFIRMED = 0 and REJECTED = 0 then @CONFIRMEDBYAPPUSERID else CONFIRMEDBYAPPUSERID end,
                                DATECONFIRMED = case when @CONFIRMED = 1 and CONFIRMED = 0 and REJECTED = 0 then @DATECONFIRMED else DATECONFIRMED end
                            where
                                WEALTHID=@WEALTHID and PARTIALHASH=@PARTIALHASH;
                        end
                    end
                    else
                    begin
                        --Record is new and needs to be Added

                        set @NEWRECORD = 1;

                        if @ID is null
                            set @ID = newid();

                        declare @WPRELATIONSHIP_BO_ID uniqueidentifier
                        exec dbo.USP_WPRELATIONSHIP_BO_ADD @ID=@WPRELATIONSHIP_BO_ID output, @DUNS=@DUNS, @CHANGEAGENTID=@CHANGEAGENTID;

                        insert into dbo.WPBUSINESSOWNERSHIP (
                            ID,
                            WEALTHID,
                            SOURCE,
                            DBID,
                            REVISION,
                            ORIGINALID,
                            NEWROW,
                            CDATE,
                            CVALUE,
                            CNOTES,
                            FULLHASH,
                            PARTIALHASH,
                            MC,
                            FULLNAME,
                            TITLE,
                            LINE1,
                            CITY,
                            STATE,
                            ZIP,
                            BIO,
                            HELDCODE,
                            COMPANY,
                            PHONE,
                            LINE_OF_BUSINESS_DESCRIPTION,
                            SALES_VOLUME,
                            YEAR_STARTED,
                            EMPLOYEES_TOTAL,
                            SIC_CODE,
                            PERCENTAGE,
                            VALUATION,
                            SPOUSEIND,
                            MAILINGLINE1,
                            MAILINGCITY,
                            MAILINGSTATE,
                            MAILINGZIP,
                            HOMELINE1,
                            HOMECITY,
                            HOMESTATE,
                            HOMEZIP,
                            SICNAME,
                            YEAROFBIRTH,
                            GENDERCODE,
                            RATIO,
              SIC_CODE1,
              SIC_CODE2,
              SIC_CODE3,
              SIC_CODE4,
              SIC_CODE5,
              SIC_CODE6,
              RATIO1,
              RATIO2,
              RATIO3,
              RATIO4,
              RATIO5,
              RATIO6,
                            CHANGEDBYID,
                            ADDEDBYID,
                            DATEADDED,
                            DATECHANGED,
                            CONFIRMED,
                            CONFIRMEDBYAPPUSERID,
                            DATECONFIRMED,
                            REJECTED,
                            REJECTEDBYAPPUSERID,
                            DATEREJECTED,
                            RECURSIVEMATCH,
                            WPRELATIONSHIP_BO_ID
                        ) values (
                            @ID,
                            @WEALTHID,
                            coalesce(@SOURCE, ''),
                            coalesce(@DBID, 0),
                            coalesce(@REVISION, 0),
                            coalesce(@ORIGINALID, 0),
                            coalesce(@NEWROW, 0),
                            @CDATE,
                            coalesce(@CVALUE, 0),
                            coalesce(@CNOTES, ''),
                            coalesce(@FULLHASH, ''),
                            coalesce(@PARTIALHASH, ''),
                            coalesce(@MC, ''),
                            coalesce(@FULLNAME, ''),
                            coalesce(@TITLE, ''),
                            coalesce(@LINE1, ''),
                            coalesce(@CITY, ''),
                            coalesce(@STATE, ''),
                            coalesce(@ZIP, ''),
                            coalesce(@BIO, ''),
                            coalesce(@HELDCODE, 0),
                            coalesce(@COMPANY, ''),
                            coalesce(@PHONE, ''),
                            coalesce(@LINE_OF_BUSINESS_DESCRIPTION, ''),
                            coalesce(@SALES_VOLUME, 0),
                            coalesce(@YEAR_STARTED, 0),
                            coalesce(@EMPLOYEES_TOTAL, 0),
                            coalesce(@SIC_CODE, ''),
                            coalesce(@PERCENTAGE, 0),
                            coalesce(@VALUATION, 0),
                            coalesce(@SPOUSEIND, 0),
                            coalesce(@MAILINGLINE1, ''),
                            coalesce(@MAILINGCITY, ''),
                            coalesce(@MAILINGSTATE, ''),
                            coalesce(@MAILINGZIP, ''),
                            coalesce(@HOMELINE1, ''),
                            coalesce(@HOMECITY, ''),
                            coalesce(@HOMESTATE, ''),
                            coalesce(@HOMEZIP, ''),
                            coalesce(@SICNAME, ''),
                            coalesce(@YEAROFBIRTH, 0),
                            coalesce(@GENDERCODE, 0),
                            coalesce(@RATIO, 0),
              coalesce(@SIC_CODE1, ''),
              coalesce(@SIC_CODE2, ''),
              coalesce(@SIC_CODE3, ''),
              coalesce(@SIC_CODE4, ''),
              coalesce(@SIC_CODE5, ''),
              coalesce(@SIC_CODE6, ''),
              coalesce(@RATIO1, 0),
              coalesce(@RATIO2, 0),
              coalesce(@RATIO3, 0),
              coalesce(@RATIO4, 0),
              coalesce(@RATIO5, 0),
              coalesce(@RATIO6, 0),
                            @CHANGEAGENTID,
                            @CHANGEAGENTID,
                            @CURRENTDATE,
                            @CURRENTDATE,
                            @CONFIRMED,
                            @CONFIRMEDBYAPPUSERID,
                            @DATECONFIRMED,
                            @REJECTED,
                            @REJECTEDBYAPPUSERID,
                            @DATEREJECTED,
                            @RECURSIVEMATCH,
                            @WPRELATIONSHIP_BO_ID
                        );
                    end

                    if @NEWRECORD = 1 or @UPDATEDRECORD = 1
                    begin
                        if @WPBUSINESSOWNERSHIPHISTORYID is null
                            set @WPBUSINESSOWNERSHIPHISTORYID = newid();

                        --Log record into the history table

                        insert into dbo.WPBUSINESSOWNERSHIPHISTORY (
                            ID,
                            WPBUSINESSOWNERSHIPID,
                            SOURCE,
                            FULLHASH,
                            PARTIALHASH,
                            FULLNAME,
                            TITLE,
                            LINE1,
                            CITY,
                            STATE,
                            ZIP,
                            BIO,
                            COMPANY,
                            PHONE,
                            LINE_OF_BUSINESS_DESCRIPTION,
                            SALES_VOLUME,
                            YEAR_STARTED,
                            EMPLOYEES_TOTAL,
                            SIC_CODE,
                            PERCENTAGE,
                            VALUATION,
                            SPOUSEIND,
                            MAILINGLINE1,
                            MAILINGCITY,
                            MAILINGSTATE,
                            MAILINGZIP,
                            HOMELINE1,
                            HOMECITY,
                            HOMESTATE,
                            HOMEZIP,
                            SICNAME,
                            YEAROFBIRTH,
                            GENDERCODE,
                            RATIO,
              SIC_CODE1,
              SIC_CODE2,
              SIC_CODE3,
              SIC_CODE4,
              SIC_CODE5,
              SIC_CODE6,
              RATIO1,
              RATIO2,
              RATIO3,
              RATIO4,
              RATIO5,
              RATIO6,
                            HELDCODE,
                            CHANGEDBYID,
                            ADDEDBYID,
                            DATEADDED,
                            DATECHANGED
                        ) values (
                            @WPBUSINESSOWNERSHIPHISTORYID,
                            @ID,
                            coalesce(@SOURCE, ''),
                            coalesce(@FULLHASH, ''),
                            coalesce(@PARTIALHASH, ''),
                            coalesce(@FULLNAME, ''),
                            coalesce(@TITLE, ''),
                            coalesce(@LINE1, ''),
                            coalesce(@CITY, ''),
                            coalesce(@STATE, ''),
                            coalesce(@ZIP, ''),
                            coalesce(@BIO, ''),
                            coalesce(@COMPANY, ''),
                            coalesce(@PHONE, ''),
                            coalesce(@LINE_OF_BUSINESS_DESCRIPTION, ''),
                            coalesce(@SALES_VOLUME, 0),
                            coalesce(@YEAR_STARTED, 0),
                            coalesce(@EMPLOYEES_TOTAL, 0),
                            coalesce(@SIC_CODE, ''),
                            coalesce(@PERCENTAGE, 0),
                            coalesce(@VALUATION, 0),
                            coalesce(@SPOUSEIND, 0),
                            coalesce(@MAILINGLINE1, ''),
                            coalesce(@MAILINGCITY, ''),
                            coalesce(@MAILINGSTATE, ''),
                            coalesce(@MAILINGZIP, ''),
                            coalesce(@HOMELINE1, ''),
                            coalesce(@HOMECITY, ''),
                            coalesce(@HOMESTATE, ''),
                            coalesce(@HOMEZIP, ''),
                            coalesce(@SICNAME, ''),
                            coalesce(@YEAROFBIRTH, 0),
                            coalesce(@GENDERCODE, 0),
                            coalesce(@RATIO, 0),
              coalesce(@SIC_CODE1, ''),
              coalesce(@SIC_CODE2, ''),
              coalesce(@SIC_CODE3, ''),
              coalesce(@SIC_CODE4, ''),
              coalesce(@SIC_CODE5, ''),
              coalesce(@SIC_CODE6, ''),
              coalesce(@RATIO1, 0),
              coalesce(@RATIO2, 0),
              coalesce(@RATIO3, 0),
              coalesce(@RATIO4, 0),
              coalesce(@RATIO5, 0),
              coalesce(@RATIO6, 0),
                            coalesce(@HELDCODE, 0),
                            @CHANGEAGENTID,
                            @CHANGEAGENTID,
                            @CURRENTDATE,
                            @CURRENTDATE
                        );

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

                return 0;
            end;