USP_DATAFORMTEMPLATE_ADD_SOCIALMEDIAACCOUNT

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier INOUT
@CHANGEAGENTID uniqueidentifier IN
@CONSTITUENTID uniqueidentifier IN
@SOCIALMEDIASERVICEID uniqueidentifier IN
@USERID nvarchar(100) IN
@URL UDT_WEBADDRESS IN
@SOCIALMEDIAACCOUNTTYPECODEID uniqueidentifier IN
@INFOSOURCECODEID uniqueidentifier IN
@DONOTCONTACT bit IN

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_SOCIALMEDIAACCOUNT
(
    @ID uniqueidentifier = null output,
    @CHANGEAGENTID uniqueidentifier = null,    
    @CONSTITUENTID uniqueidentifier,
    @SOCIALMEDIASERVICEID uniqueidentifier,
    @USERID nvarchar(100) = null,
    @URL dbo.UDT_WEBADDRESS = null,
    @SOCIALMEDIAACCOUNTTYPECODEID uniqueidentifier = null,
    @INFOSOURCECODEID uniqueidentifier = null,
    @DONOTCONTACT bit = null
)
as

set nocount on;

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

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

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

declare @SEQUENCE int;

select
    @SEQUENCE = coalesce(max(SEQUENCE),0)+1
from
    dbo.SOCIALMEDIAACCOUNT
where
    CONSTITUENTID=@CONSTITUENTID;

begin try
declare @NULLVALUE uniqueidentifier = newid();

    if exists(select 1 from SOCIALMEDIAACCOUNT where 
    coalesce(SOCIALMEDIAACCOUNT.URL,'') = coalesce(@URL,'')
    and coalesce(SOCIALMEDIAACCOUNT.SOCIALMEDIASERVICEID,@NULLVALUE)=coalesce(@SOCIALMEDIASERVICEID,@NULLVALUE)
    and SOCIALMEDIAACCOUNT.CONSTITUENTID=@CONSTITUENTID)
  raiserror('BBERR_SOCIALMEDIAACCOUNT_DUPLICATENOTALLOWED', 13, 1);
    insert into dbo.SOCIALMEDIAACCOUNT
    (
        ID, 
        CONSTITUENTID, 
        SOCIALMEDIASERVICEID, 
        USERID, 
        URL, 
        SOCIALMEDIAACCOUNTTYPECODEID, 
        INFOSOURCECODEID, 
        DONOTCONTACT,
        SEQUENCE,
        ADDEDBYID, 
        CHANGEDBYID, 
        DATEADDED, 
        DATECHANGED
    )
    values
    (
        @ID
        @CONSTITUENTID
        @SOCIALMEDIASERVICEID
        @USERID
        @URL
        @SOCIALMEDIAACCOUNTTYPECODEID
        @INFOSOURCECODEID
        @DONOTCONTACT,
        @SEQUENCE,
        @CHANGEAGENTID
        @CHANGEAGENTID
        @CURRENTDATE
        @CURRENTDATE
    );

end try

begin catch
    exec dbo.USP_RAISE_ERROR;
    return 1;
end catch

return 0;