USP_DATAFORMTEMPLATE_ADD_WPINCOMECOMPENSATION

The save procedure used by the add dataform template "WealthPoint Income/Compensation Add Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT The output parameter indicating the ID of the record added.
@WEALTHID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@SOURCE nvarchar(100) IN Source
@CNOTES nvarchar(1024) IN Notes
@BB_FULLNAME nvarchar(100) IN Name
@COMPANY nvarchar(100) IN Company
@LONGTITLE nvarchar(100) IN Title
@TICKER nvarchar(8) IN Symbol
@AGE int IN Age
@BIOGRAPHY nvarchar(1500) IN Biography
@OFFICER_DIRECTORFLAG nvarchar(35) IN Officer/Director
@OFFSTARTY UDT_YEAR IN Officer start
@DIRSTARTY UDT_YEAR IN Director start
@LATESTCOMPENSATIONYEAR UDT_YEAR IN Year
@LATESTFISCALYEARSALARY money IN Salary
@LATESTFISCALYEARBONUS money IN Bonus
@LATESTFISCALYEAROTHERSHORTTERMCOMPENSATION money IN Other short term
@VALUEOFOPTIONSEXERCISED money IN Exercised
@VALUEOFOPTIONSUNEXERCISED_EXERCISABLE money IN Unexercised
@VALUEOFOPTIONSUNEXERCISED_UNEXERCISABLE money IN Unexercisable
@LATESTFISCALYEAROTHERLONGTERMCOMPENSATION money IN Other long term

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_WPINCOMECOMPENSATION (
                        @ID uniqueidentifier = null output,
                        @WEALTHID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier = null,
                        @SOURCE nvarchar(100),
                        @CNOTES nvarchar(1024) = '',
                        @BB_FULLNAME nvarchar(100) = '',
                        @COMPANY nvarchar(100) = '',
                        @LONGTITLE nvarchar(100) = '',
                        @TICKER nvarchar(8) = '',
                        @AGE int = 0,
                        @BIOGRAPHY nvarchar(1500) = '',
                        @OFFICER_DIRECTORFLAG nvarchar(35) = '',
                        @OFFSTARTY dbo.UDT_YEAR = 0,
                        @DIRSTARTY dbo.UDT_YEAR = 0,
                        @LATESTCOMPENSATIONYEAR dbo.UDT_YEAR = 0,
                        @LATESTFISCALYEARSALARY money = 0,
                        @LATESTFISCALYEARBONUS money = 0,
                        @LATESTFISCALYEAROTHERSHORTTERMCOMPENSATION money = 0,
                        @VALUEOFOPTIONSEXERCISED money = 0,
                        @VALUEOFOPTIONSUNEXERCISED_EXERCISABLE money = 0,
                        @VALUEOFOPTIONSUNEXERCISED_UNEXERCISABLE money = 0,
                        @LATESTFISCALYEAROTHERLONGTERMCOMPENSATION money = 0
                    ) as begin

                        set nocount on;

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

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

                        exec dbo.USP_WEALTH_CREATE @WEALTHID, @CHANGEAGENTID;

                        set @AGE = case when @AGE is NULL then 0 else @age end;

                        insert into dbo.WPINCOMECOMPENSATION (
                            ID,
                            WEALTHID,
                            CHANGEDBYID,
                            ADDEDBYID,
                            SOURCE,
                            CNOTES,
                            BB_FULLNAME,
                            COMPANY,
                            LONGTITLE,
                            TICKER,
                            AGE,
                            BIOGRAPHY,
                            OFFICER_DIRECTORFLAG,
                            OFFSTARTY,
                            DIRSTARTY,
                            LATESTCOMPENSATIONYEAR,
                            LATESTFISCALYEARSALARY,
                            LATESTFISCALYEARBONUS,
                            LATESTFISCALYEAROTHERSHORTTERMCOMPENSATION,
                            VALUEOFOPTIONSEXERCISED,
                            VALUEOFOPTIONSUNEXERCISED_EXERCISABLE,
                            VALUEOFOPTIONSUNEXERCISED_UNEXERCISABLE,
                            LATESTFISCALYEAROTHERLONGTERMCOMPENSATION
                        ) values (
                            @ID,
                            @WEALTHID,
                            @CHANGEAGENTID,
                            @CHANGEAGENTID,
                            @SOURCE,
                            @CNOTES,
                            @BB_FULLNAME,
                            @COMPANY,
                            @LONGTITLE,
                            @TICKER,
                            @AGE,
                            @BIOGRAPHY,
                            @OFFICER_DIRECTORFLAG,
                            @OFFSTARTY,
                            @DIRSTARTY,
                            @LATESTCOMPENSATIONYEAR,
                            @LATESTFISCALYEARSALARY,
                            @LATESTFISCALYEARBONUS,
                            @LATESTFISCALYEAROTHERSHORTTERMCOMPENSATION,
                            @VALUEOFOPTIONSEXERCISED,
                            @VALUEOFOPTIONSUNEXERCISED_EXERCISABLE,
                            @VALUEOFOPTIONSUNEXERCISED_UNEXERCISABLE,
                            @LATESTFISCALYEAROTHERLONGTERMCOMPENSATION
                        );

                        if    (select
                                count(WEALTHSOURCE.SOURCE)
                            from
                                dbo.WEALTHSOURCE
                            where
                                WEALTHSOURCE.SOURCE = @SOURCE
                            ) = 0
                            begin
                                insert into dbo.WEALTHSOURCE (
                                    [SOURCE],
                                    [ISBUILTIN],
                                    [ADDEDBYID],
                                    [CHANGEDBYID]
                                )values(
                                    @SOURCE,
                                    0,
                                    @CHANGEAGENTID,
                                    @CHANGEAGENTID
                                );
                            end        

                        exec dbo.USP_WEALTHPOINT_UPDATEWEALTHSUMMARY_INCOMECOMPENSATION @WEALTHID, @CHANGEAGENTID;            
                        exec dbo.USP_WEALTHCAPACITY_UPDATE @WEALTHID, @CHANGEAGENTID;

                        return 0;    
                    end