USP_DATAFORMTEMPLATE_ADD_COPYPHONETOHOUSEHOLD_PRELOAD

The load procedure used by the edit dataform template "Phone Copy To Household Add Form"

Parameters

Parameter Parameter Type Mode Description
@PHONEID uniqueidentifier IN Input parameter indicating the context ID for the record being added.
@CONSTITUENTID uniqueidentifier INOUT Household ID
@PHONETYPECODEID uniqueidentifier INOUT Type
@NUMBER nvarchar(100) INOUT Number
@PRIMARY bit INOUT Set as primary phone number
@DONOTCALL bit INOUT Do not call this phone number
@STARTTIME UDT_HOURMINUTE INOUT Call after
@ENDTIME UDT_HOURMINUTE INOUT Call before
@INFOSOURCECODEID uniqueidentifier INOUT Information source
@INFOSOURCECOMMENTS nvarchar(256) INOUT Comments
@COUNTRYID uniqueidentifier INOUT Country
@STARTDATE date INOUT Start date
@ENDDATE date INOUT End date
@DONOTCALLREASONCODEID uniqueidentifier INOUT Reason
@ISCONFIDENTIAL bit INOUT This phone number is confidential
@COUNTRYCODES xml INOUT
@CONSTITUENTDATAREVIEWROLLBACKREASONID uniqueidentifier INOUT Reason
@FORCEDPRIMARY bit INOUT
@CANEDITPRIMARY bit INOUT
@INVALIDFIELDS nvarchar(256) INOUT

Definition

Copy


            create procedure dbo.USP_DATAFORMTEMPLATE_ADD_COPYPHONETOHOUSEHOLD_PRELOAD
            (
              @PHONEID uniqueidentifier,
              @CONSTITUENTID uniqueidentifier = null output,
              @PHONETYPECODEID uniqueidentifier = null output,
              @NUMBER nvarchar(100) = null output,
              @PRIMARY bit = null output,
              @DONOTCALL bit = null output,
              @STARTTIME dbo.UDT_HOURMINUTE = null output,
              @ENDTIME dbo.UDT_HOURMINUTE = null output,
              @INFOSOURCECODEID uniqueidentifier = null output,
              @INFOSOURCECOMMENTS nvarchar(256) = null output,
              @COUNTRYID uniqueidentifier = null output,
              @STARTDATE date = null output,
              @ENDDATE date = null output,
              @DONOTCALLREASONCODEID uniqueidentifier = null output,
              @ISCONFIDENTIAL bit = null output,
              @COUNTRYCODES xml = null output,
              @CONSTITUENTDATAREVIEWROLLBACKREASONID uniqueidentifier = null output,    -- used by constituent data review

              @FORCEDPRIMARY bit = null output,            -- used by constituent data review

              @CANEDITPRIMARY bit = null output,            -- used by constituent data review

              @INVALIDFIELDS nvarchar(256) = null output    -- used by constituent data review

          )
          as
              set nocount on;

              exec dbo.USP_PHONE_UPDATE_LOAD 
                @PHONEID
                @PHONETYPECODEID = @PHONETYPECODEID output,
                @NUMBER = @NUMBER output
                @PRIMARY = @PRIMARY output
                @DONOTCALL = @DONOTCALL output
                @STARTTIME = @STARTTIME output
                @ENDTIME = @ENDTIME output,
                @INFOSOURCECODEID = @INFOSOURCECODEID output
                @INFOSOURCECOMMENTS = @INFOSOURCECOMMENTS output
                @COUNTRYID = @COUNTRYID output
                @STARTDATE = @STARTDATE output
                @ENDDATE = @ENDDATE output,
                @DONOTCALLREASONCODEID = @DONOTCALLREASONCODEID output
                @ISCONFIDENTIAL = @ISCONFIDENTIAL output;

              declare @CURRENTDATE datetime;
              set @CURRENTDATE = dbo.UFN_DATE_GETEARLIESTTIME(getdate());

              select @COUNTRYCODES = dbo.UFN_COUNTRY_GETCOUNTRYCODES_TOITEMLISTXML();

              select top 1
                @CONSTITUENTID = CONSTITUENTHOUSEHOLD.HOUSEHOLDID
              from dbo.PHONE
              left join dbo.CONSTITUENTHOUSEHOLD on CONSTITUENTHOUSEHOLD.ID = PHONE.CONSTITUENTID
              left join dbo.CONSTITUENT on CONSTITUENTHOUSEHOLD.HOUSEHOLDID = CONSTITUENT.ID
              where 
                PHONE.ID = @PHONEID and
                CONSTITUENT.ISINACTIVE = 0;

              if not exists(select ID from dbo.PHONE where CONSTITUENTID = @CONSTITUENTID and ISPRIMARY = 1)
              begin
                set @PRIMARY = 1;
              end

              return 0;