USP_MKTSEGMENTATIONEXPORTPROCESSSTATUSOUTPUT_GETDATALIST

Returns the output list for a mailing export process.

Parameters

Parameter Parameter Type Mode Description
@BUSINESSPROCESSSTATUSID uniqueidentifier IN

Definition

Copy


CREATE procedure dbo.[USP_MKTSEGMENTATIONEXPORTPROCESSSTATUSOUTPUT_GETDATALIST]
(
  @BUSINESSPROCESSSTATUSID uniqueidentifier
)
as
    set nocount on;

  declare @TABLENAME nvarchar(250);
  declare @SQL nvarchar(max);

  declare @BUSINESSPROCESSPARAMETERSETID uniqueidentifier;

  select
    @BUSINESSPROCESSPARAMETERSETID = [BUSINESSPROCESSPARAMETERSETID]
  from dbo.[BUSINESSPROCESSSTATUS]
  where [ID] = @BUSINESSPROCESSSTATUSID;

  select @TABLENAME = [TABLENAME] from dbo.[BUSINESSPROCESSOUTPUT] where [BUSINESSPROCESSSTATUSID] = @BUSINESSPROCESSSTATUSID and upper([TABLEKEY]) = upper(convert(nvarchar(36), @BUSINESSPROCESSSTATUSID));

  set @SQL = 
      'select' + char(13) +
      '  (select top 1 [ID] from dbo.[BUSINESSPROCESSOUTPUT] where [BUSINESSPROCESSSTATUSID] = @BUSINESSPROCESSSTATUSID and upper([TABLEKEY]) = upper([BUSINESSPROCESSOUTPUTSUMMARY].[TABLEKEY])) as [ID],' + char(13) +      
      '  @BUSINESSPROCESSPARAMETERSETID as [PARAMETERSETID],' + char(13) +
      '  [BUSINESSPROCESSOUTPUTSUMMARY].[TABLEKEY],' + char(13) +
      '  [BUSINESSPROCESSOUTPUTSUMMARY].[EXPORTDEFINITIONID],' + char(13) +
      '  [MKTEXPORTDEFINITION].[CHANNELCODE] as [CHANNELCODE],' + char(13) +
      '  [MKTEXPORTDEFINITION].[NAME] as [EXPORTDEFINITION],' + char(13) +
      '  [MKTEXPORTDEFINITION].[CHANNEL] as [CHANNEL],' + char(13) +
      '  convert(integer, cast([BUSINESSPROCESSOUTPUTSUMMARY].[PACKAGES].query(''count(/PACKAGES/ITEM/ID)'') as nvarchar(10))) as [PACKAGECOUNT],' + char(13) +
      '  dbo.[UFN_MKTSEGMENTATIONEXPORTPROCESS_GETPACKAGELISTFROMXML]([BUSINESSPROCESSOUTPUTSUMMARY].[PACKAGES]) as [PACKAGES],' + char(13) +
      '  [BUSINESSPROCESSOUTPUTSUMMARY].[QUANTITY],' + char(13) +
      '  [BUSINESSPROCESSOUTPUTSUMMARY].[STATUSCODE],' + char(13) +
      '  [BUSINESSPROCESSOUTPUTSUMMARY].[STATUSDATE],' + char(13) +
      '  [BUSINESSPROCESSOUTPUTSUMMARY].[STATUSMESSAGE],' + char(13) +
      '  convert(bit, case when exists (' + char(13) +
      '    select top 1 1' + char(13) +
      '    from [BUSINESSPROCESSOUTPUTSUMMARY].[PACKAGES].nodes(''/PACKAGES/ITEM'') T(c)' + char(13) +
      '    inner join dbo.[MKTPACKAGE] on [MKTPACKAGE].[ID] = T.c.value(''(ID)[1]'', ''uniqueidentifier'')' + char(13) +
      '    inner join dbo.[LETTERCODE] on [LETTERCODE].[ID] = [MKTPACKAGE].[LETTERCODEID])' + char(13) +
      '  then 1 else 0 end) as [WORDMERGEENABLED],' + char(13) +
      '  dbo.[UFN_MKTNETCOMMUNITYINTEGRATION_LINKESTABLISHED]() as [NETCOMMUNITYENABLED],' + char(13) +
      '  [MKTEXPORTDEFINITION].[NETCOMMUNITYDATASOURCEID],' + char(13) +
      '  [BUSINESSPROCESSOUTPUTSUMMARY].[NETCOMMUNITYEMAILJOBID]' + char(13) +
      'from ' + char(13) +
      '  dbo.[' + @TABLENAME + '] as [BUSINESSPROCESSOUTPUTSUMMARY]' + char(13) +
      '  inner join dbo.[MKTEXPORTDEFINITION] on [MKTEXPORTDEFINITION].[ID] = [BUSINESSPROCESSOUTPUTSUMMARY].[EXPORTDEFINITIONID]' + char(13) +
      ' order by ' + char(13) +
      '  [MKTEXPORTDEFINITION].[NAME];';

  exec sp_executesql @SQL, N'@BUSINESSPROCESSPARAMETERSETID uniqueidentifier, @BUSINESSPROCESSSTATUSID uniqueidentifier', @BUSINESSPROCESSPARAMETERSETID=@BUSINESSPROCESSPARAMETERSETID, @BUSINESSPROCESSSTATUSID=@BUSINESSPROCESSSTATUSID

  -- use this to get the SPWrap Code Generator to update the wrapper code:

  -- 1. make the SPWRAP table's shape match that of the SQL above

  -- 2. uncomment the two lines below and load the spec

  -- 3. run the SPWrap Code Generator

  -- 4. comment the two lines below out again and load the spec

  -- make sure these lines are commented out before generating a revision for this spec!

  --declare @SPWRAP table ([ID] uniqueidentifier, [PARAMETERSETID] uniqueidentifier, [TABLEKEY] nvarchar(50), [EXPORTDEFINITIONID] uniqueidentifier, [CHANNELCODE] tinyint, [EXPORTDEFINITION] nvarchar(255), [CHANNEL] nvarchar(100), [PACKAGECOUNT] integer, [PACKAGES] nvarchar(max), [QUANTITY] integer, [STATUSCODE] tinyint, [STATUSDATE] datetime, [STATUSMESSAGE] nvarchar(255), [WORDMERGEENABLED] bit, [NETCOMMUNITYENABLED] bit, [NETCOMMUNITYDATASOURCEID] integer, [NETCOMMUNITYEMAILJOBID] integer)

  --select * from @SPWRAP;


  return 0;