USP_RECORDOPERATION_WPSOCIALMEDIA_DELETE
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN |
Definition
Copy
CREATE procedure dbo.USP_RECORDOPERATION_WPSOCIALMEDIA_DELETE (
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null
) as begin
delete WPSOCIAL
where @ID = ID
delete SOCIALMEDIAACCOUNT
WHERE CONSTITUENTID = @ID and WPMATCHCODE <> ''
-- Delete modeling scores. Most records will have at least a social media rating.
declare @SOCIALMEDIARATINGID nvarchar(32) = '';
declare @SOCIALMEDIAINFLUENCEID nvarchar(32) = '';
declare @SOCIALMEDIAOUTREACHID nvarchar(32) = '';
select @SOCIALMEDIARATINGID = REPLACE(ID, '-', '') from ATTRIBUTECATEGORY where NAME = 'Social media rating'
select @SOCIALMEDIAINFLUENCEID = REPLACE(ID, '-', '') from ATTRIBUTECATEGORY where NAME = 'Social media influence'
select @SOCIALMEDIAOUTREACHID = REPLACE(ID, '-', '') from ATTRIBUTECATEGORY where NAME = 'Social media outreach'
declare @DELETESQL nvarchar(max)
set @DELETESQL = 'exec dbo.USP_ATTRIBUTE{0}_DELETEBYID_WITHCHANGEAGENTID @ID = @ID, @CHANGEAGENTID = @CHANGEAGENTID;';
declare @PARAMETERDEFINITION nvarchar(500) = N'@ID uniqueidentifier, @CHANGEAGENTID uniqueidentifier';
if @SOCIALMEDIARATINGID <> ''
begin
declare @DELETERATINGSQL nvarchar(max) = REPLACE(@DELETESQL, '{0}', @SOCIALMEDIARATINGID);
exec sp_executesql @DELETERATINGSQL, @PARAMETERDEFINITION, @ID = @ID, @CHANGEAGENTID = @CHANGEAGENTID;
end
if @SOCIALMEDIAINFLUENCEID <> ''
begin
declare @DELETEINFLUENCESQL nvarchar(max) = REPLACE(@DELETESQL, '{0}', @SOCIALMEDIAINFLUENCEID);
exec sp_executesql @DELETEINFLUENCESQL, @PARAMETERDEFINITION, @ID = @ID, @CHANGEAGENTID = @CHANGEAGENTID;
end
if @SOCIALMEDIAOUTREACHID <> ''
begin
declare @DELETEOUTREACHSQL nvarchar(max) = REPLACE(@DELETESQL, '{0}', @SOCIALMEDIAOUTREACHID);
exec sp_executesql @DELETEOUTREACHSQL, @PARAMETERDEFINITION, @ID = @ID, @CHANGEAGENTID = @CHANGEAGENTID;
end
return 0;
end