USP_ADDGENERALPURPOSEDATASETTABLE
Create table store merge data while job is processing
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@QUEUEID | uniqueidentifier | IN | |
@FIELDS | nvarchar(max) | IN |
Definition
Copy
CREATE procedure [dbo].[USP_ADDGENERALPURPOSEDATASETTABLE]
(
@QUEUEID uniqueidentifier,
@FIELDS nvarchar(max)
)
with execute as owner
as
begin
declare @CREATETABLESTATEMENT nvarchar(max);
declare @TABLENAME nvarchar(256);
declare @RESULT bit;
set @RESULT = 0;
set @TABLENAME = dbo.UFN_GENERALPURPOSEEMAIL_GETMERGEDATASETTABLENAME(@QUEUEID);
declare @TABLECHECK nvarchar(256)
set @TABLECHECK = REPLACE(@TABLENAME, '[','');
set @TABLECHECK = REPLACE(@TABLECHECK, ']','');
set @TABLECHECK = REPLACE(@TABLECHECK, 'dbo.','');
if not exists(select null from sys.objects where type = 'U' and name = @TABLECHECK)
begin
set @CREATETABLESTATEMENT = 'CREATE TABLE ' + @TABLENAME + '(' + @FIELDS + ') on [DEFGROUP]';
exec(@CREATETABLESTATEMENT);
declare @GRANTRIGHTS nvarchar(128)
set @GRANTRIGHTS = 'grant select, insert, delete on ' + @TABLENAME + ' to BBAPPFXSERVICEROLE;'
exec(@GRANTRIGHTS);
set @RESULT = 1
end
return @RESULT
end