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;