USP_DATAFORMTEMPLATE_ADD_OTHERASSET_2

The save procedure used by the add dataform template "WealthPoint Other Asset Add Form 2".

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
@DESCRIPTION nvarchar(100) IN Description
@VALUE money IN Value
@NOTES nvarchar(1024) IN Notes
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.

Definition

Copy


                    CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_OTHERASSET_2 (
                        @ID uniqueidentifier = null output,
                        @WEALTHID uniqueidentifier,
                        @CHANGEAGENTID uniqueidentifier = null,
                        @SOURCE nvarchar(100),
                        @DESCRIPTION nvarchar(100) = '',
                        @VALUE money,
                        @NOTES nvarchar(1024) = '',
                        @CURRENTAPPUSERID uniqueidentifier
                    ) 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;

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

                        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
                            select                   
                                @REJECTED =                case MANUALCONFIDENCE
                                                            when 5 then 0
                                                            when 0 then 1
                                                        end,
                                @DATEREJECTED =            case MANUALCONFIDENCE
                                                            when 5 then NULL
                                                            when 0 then @CURRENTDATE 
                                                        end,
                                @REJECTEDBYAPPUSERID =     case MANUALCONFIDENCE
                                                            when 5 then NULL
                                                            when 0 then @CURRENTAPPUSERID 
                                                        end,
                                @CONFIRMED =            case MANUALCONFIDENCE
                                                            when 5 then 1
                                                            when 0 then 0
                                                        end,
                                @DATECONFIRMED =        case MANUALCONFIDENCE
                                                            when 5 then @CURRENTDATE 
                                                            when 0 then    NULL
                                                        end,
                                @CONFIRMEDBYAPPUSERID = case MANUALCONFIDENCE
                                                            when 5 then  @CURRENTAPPUSERID 
                                                            when 0 then NULL
                                                        end
                                from
                                    dbo.WEALTHPOINTCONFIGURATION
                                where
                                     MANUALCONFIDENCE in (0,5)
                        end    

            --wealth source updates

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

            if(
            not exists (select top 1 1 from dbo.WEALTHCAPACITYFORMULAOTHERASSETSOURCE where SOURCE = @SOURCE)
              and
            not exists (select top 1 1 from dbo.WPOTHERASSET where SOURCE = @SOURCE)
            )
            begin
            insert into WEALTHCAPACITYFORMULAOTHERASSETSOURCE(                
              WEALTHCAPACITYFORMULAID,
              [SOURCE],
              [ADDEDBYID],
              [CHANGEDBYID],
              [DATEADDED],
              [DATECHANGED]
            )
            select 
              ID,
              @SOURCE,
              @CHANGEAGENTID,
              @CHANGEAGENTID,
              @CURRENTDATE,
              @CURRENTDATE
              from WEALTHCAPACITYFORMULA;
                        end  

                        insert into dbo.WPOTHERASSET (
                            ID,
                            WEALTHID,
                            CHANGEDBYID,
                            ADDEDBYID,
                            SOURCE,
                            DESCRIPTION,
                            VALUE,
                            NOTES,
                            CONFIRMED,
                            CONFIRMEDBYAPPUSERID,
                            DATECONFIRMED,
                            REJECTED,
                            REJECTEDBYAPPUSERID,
                            DATEREJECTED

                        ) values (
                            @ID,
                            @WEALTHID,
                            @CHANGEAGENTID,
                            @CHANGEAGENTID,
                            @SOURCE,
                            @DESCRIPTION,
                            @VALUE,
                            @NOTES,
                            @CONFIRMED,
                            @CONFIRMEDBYAPPUSERID,
                            @DATECONFIRMED,
                            @REJECTED,
                            @REJECTEDBYAPPUSERID,
                            @DATEREJECTED
                        );

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

                        return 0;
                    end;