USP_DATAFORMTEMPLATE_EDITLOAD_DIRECTMARKETINGEFFORTBATCHROW

The load procedure used by the edit dataform template "Direct Marketing Effort Batch Edit Form"

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter used to load the fields defined on the form.
@DATALOADED bit INOUT Output parameter indicating whether or not data was actually loaded.
@TSLONG bigint INOUT Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record.
@SEQUENCE int INOUT Sequence
@SEGMENTATIONID uniqueidentifier INOUT Marketing effort
@SEGMENTATIONCODEVALUEID uniqueidentifier INOUT Marketing effort code description
@SEGMENTATIONCODEFORMAT nvarchar(10) INOUT Marketing effort code format
@SEGMENTATIONCODEREGEX nvarchar(255) INOUT Marketing effort code regex
@SEGMENTATIONCODE nvarchar(10) INOUT Marketing effort code
@SOURCECODEID uniqueidentifier INOUT Source code ID
@SOURCECODE nvarchar(50) INOUT Source code
@RECORDSOURCEID uniqueidentifier INOUT Record source
@SITEID uniqueidentifier INOUT Site ID
@SITEIDISNULL bit INOUT Site ID is null?
@LISTID uniqueidentifier INOUT List
@LISTNAME nvarchar(100) INOUT List name
@LISTSTATUSCODE tinyint INOUT List status
@LISTDESCRIPTION nvarchar(255) INOUT List description
@LISTCODEVALUEID uniqueidentifier INOUT List code description
@LISTCODEFORMAT nvarchar(10) INOUT List code format
@LISTCODEREGEX nvarchar(255) INOUT List code regex
@LISTCODE nvarchar(10) INOUT List code
@LISTCATEGORYCODEID uniqueidentifier INOUT List category
@LISTVENDORID uniqueidentifier INOUT List vendor
@SEGMENTID uniqueidentifier INOUT Segment
@SEGMENTNAME nvarchar(100) INOUT Segment name
@SEGMENTSTATUSCODE tinyint INOUT Segment status
@SEGMENTDESCRIPTION nvarchar(255) INOUT Segment description
@SEGMENTCODEVALUEID uniqueidentifier INOUT Segment code description
@SEGMENTCODEFORMAT nvarchar(10) INOUT Segment code format
@SEGMENTCODEREGEX nvarchar(255) INOUT Segment code regex
@SEGMENTCODE nvarchar(10) INOUT Segment code
@SEGMENTCATEGORYCODEID uniqueidentifier INOUT Segment category
@SEGMENTTYPECODE tinyint INOUT Segment type
@SEGMENTEXPECTEDGIFTAMOUNT money INOUT Segment expected gift amount
@SEGMENTEXPECTEDRESPONSERATE decimal(5, 2) INOUT Segment expected response rate
@SEGMENTRENTALQUANTITY int INOUT Segment rental quantity
@SEGMENTEXCHANGEQUANTITY int INOUT Segment exchange quantity
@SEGMENTRENTALCOST money INOUT Segment rental cost
@SEGMENTRENTALCOSTBASISCODE tinyint INOUT Segment rental cost basis
@SEGMENTEXCHANGECOST money INOUT Segment exchange cost
@SEGMENTEXCHANGECOSTBASISCODE tinyint INOUT Segment exchange cost basis
@SEGMENTUSAGECODE tinyint INOUT Segment usage
@TESTSEGMENTID uniqueidentifier INOUT Test segment
@TESTSEGMENTNAME nvarchar(100) INOUT Test segment name
@TESTSEGMENTSTATUSCODE tinyint INOUT Test segment status
@TESTSEGMENTDESCRIPTION nvarchar(255) INOUT Test segment description
@TESTSEGMENTCODEVALUEID uniqueidentifier INOUT Test segment code description
@TESTSEGMENTCODEFORMAT nvarchar(10) INOUT Test segment code format
@TESTSEGMENTCODEREGEX nvarchar(255) INOUT Test segment code regex
@TESTSEGMENTCODE nvarchar(10) INOUT Test segment code
@TESTSEGMENTEXPECTEDGIFTAMOUNT money INOUT Test segment expected gift amount
@TESTSEGMENTEXPECTEDRESPONSERATE decimal(5, 2) INOUT Test segment expected response rate
@TESTSEGMENTQUANTITY int INOUT Test segment quantity
@PACKAGEID uniqueidentifier INOUT Package
@PACKAGENAME nvarchar(100) INOUT Package name
@PACKAGESTATUSCODE tinyint INOUT Package status
@PACKAGEDESCRIPTION nvarchar(255) INOUT Package description
@PACKAGECODEVALUEID uniqueidentifier INOUT Package code description
@PACKAGECODEFORMAT nvarchar(10) INOUT Package code format
@PACKAGECODEREGEX nvarchar(255) INOUT Package code regex
@PACKAGECODE nvarchar(10) INOUT Package code
@PACKAGECHANNELCODEVALUEID uniqueidentifier INOUT Package channel code description
@PACKAGECHANNELCODEFORMAT nvarchar(10) INOUT Package channel code format
@PACKAGECHANNELCODEREGEX nvarchar(255) INOUT Package channel code regex
@PACKAGECHANNELCODE nvarchar(10) INOUT Package channel code
@PACKAGECATEGORYCODEID uniqueidentifier INOUT Package category
@PACKAGETYPECODE tinyint INOUT Package type
@PACKAGECOST money INOUT Package cost
@PACKAGECOSTDISTRIBUTIONMETHODCODE tinyint INOUT Package cost distribution method
@BASECURRENCYID uniqueidentifier INOUT Base currency
@LISTSITEID uniqueidentifier INOUT List site
@PACKAGESITEID uniqueidentifier INOUT Package site
@SEGMENTSITEID uniqueidentifier INOUT Segment site
@LISTSITEISNULL bit INOUT List site is null
@PACKAGESITEISNULL bit INOUT Package site is null
@SEGMENTSITEISNULL bit INOUT Segment site is null

Definition

Copy

CREATE procedure dbo.[USP_DATAFORMTEMPLATE_EDITLOAD_DIRECTMARKETINGEFFORTBATCHROW]
(
  @ID uniqueidentifier,
  @DATALOADED bit = 0 output,
  @TSLONG bigint = 0 output,
  @SEQUENCE int = null output,
  @SEGMENTATIONID uniqueidentifier = null output,
  @SEGMENTATIONCODEVALUEID uniqueidentifier = null output,
  @SEGMENTATIONCODEFORMAT nvarchar(10) = null output,
  @SEGMENTATIONCODEREGEX nvarchar(255) = null output,
  @SEGMENTATIONCODE nvarchar(10) = null output,
  @SOURCECODEID uniqueidentifier = null output,
  @SOURCECODE nvarchar(50) = null output,
  @RECORDSOURCEID uniqueidentifier = null output,
  @SITEID uniqueidentifier = null output,
  @SITEIDISNULL bit = null output,
  @LISTID uniqueidentifier = null output,
  @LISTNAME nvarchar(100) = null output,
  @LISTSTATUSCODE tinyint = null output,
  @LISTDESCRIPTION nvarchar(255) = null output,
  @LISTCODEVALUEID uniqueidentifier = null output,
  @LISTCODEFORMAT nvarchar(10) = null output,
  @LISTCODEREGEX nvarchar(255) = null output,
  @LISTCODE nvarchar(10) = null output,
  @LISTCATEGORYCODEID uniqueidentifier = null output,
  @LISTVENDORID uniqueidentifier = null output,
  @SEGMENTID uniqueidentifier = null output,
  @SEGMENTNAME nvarchar(100) = null output,
  @SEGMENTSTATUSCODE tinyint = null output,
  @SEGMENTDESCRIPTION nvarchar(255) = null output,
  @SEGMENTCODEVALUEID uniqueidentifier = null output,
  @SEGMENTCODEFORMAT nvarchar(10) = null output,
  @SEGMENTCODEREGEX nvarchar(255) = null output,
  @SEGMENTCODE nvarchar(10) = null output,
  @SEGMENTCATEGORYCODEID uniqueidentifier = null output,
  @SEGMENTTYPECODE tinyint = null output,
  @SEGMENTEXPECTEDGIFTAMOUNT money = null output,
  @SEGMENTEXPECTEDRESPONSERATE decimal(5,2) = null output,
  @SEGMENTRENTALQUANTITY int = null output,
  @SEGMENTEXCHANGEQUANTITY int = null output,
  @SEGMENTRENTALCOST money = null output,
  @SEGMENTRENTALCOSTBASISCODE tinyint = null output,
  @SEGMENTEXCHANGECOST money = null output,
  @SEGMENTEXCHANGECOSTBASISCODE tinyint = null output,
  @SEGMENTUSAGECODE tinyint = null output,
  @TESTSEGMENTID uniqueidentifier = null output,
  @TESTSEGMENTNAME nvarchar(100) = null output,
  @TESTSEGMENTSTATUSCODE tinyint = null output,
  @TESTSEGMENTDESCRIPTION nvarchar(255) = null output,
  @TESTSEGMENTCODEVALUEID uniqueidentifier = null output,
  @TESTSEGMENTCODEFORMAT nvarchar(10) = null output,
  @TESTSEGMENTCODEREGEX nvarchar(255) = null output,
  @TESTSEGMENTCODE nvarchar(10) = null output,
  @TESTSEGMENTEXPECTEDGIFTAMOUNT money = null output,
  @TESTSEGMENTEXPECTEDRESPONSERATE decimal(5,2) = null output,
  @TESTSEGMENTQUANTITY int = null output,
  @PACKAGEID uniqueidentifier = null output,
  @PACKAGENAME nvarchar(100) = null output,
  @PACKAGESTATUSCODE tinyint = null output,
  @PACKAGEDESCRIPTION nvarchar(255) = null output,
  @PACKAGECODEVALUEID uniqueidentifier = null output,
  @PACKAGECODEFORMAT nvarchar(10) = null output,
  @PACKAGECODEREGEX nvarchar(255) = null output,
  @PACKAGECODE nvarchar(10) = null output,
  @PACKAGECHANNELCODEVALUEID uniqueidentifier = null output,
  @PACKAGECHANNELCODEFORMAT nvarchar(10) = null output,
  @PACKAGECHANNELCODEREGEX nvarchar(255) = null output,
  @PACKAGECHANNELCODE nvarchar(10) = null output,
  @PACKAGECATEGORYCODEID uniqueidentifier = null output,
  @PACKAGETYPECODE tinyint = null output,
  @PACKAGECOST money = null output,
  @PACKAGECOSTDISTRIBUTIONMETHODCODE tinyint = null output,
  @BASECURRENCYID uniqueidentifier = null output,
  @LISTSITEID uniqueidentifier = null output,
  @PACKAGESITEID uniqueidentifier = null output,
  @SEGMENTSITEID uniqueidentifier = null output,
  @LISTSITEISNULL bit = null output,
  @PACKAGESITEISNULL bit = null output,
  @SEGMENTSITEISNULL bit = null output
)
as
  set nocount on;

  set @DATALOADED = 0;
  set @TSLONG = 0;

  select
    @DATALOADED = 1,
    @TSLONG = [BATCHDIRECTMARKETINGEFFORT].[TSLONG],
    @SEQUENCE = [BATCHDIRECTMARKETINGEFFORT].[SEQUENCE],
    @SEGMENTATIONID = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTATIONID],
    @SEGMENTATIONCODEVALUEID = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTATIONCODEPARTDEFINITIONVALUESID],
    @SEGMENTATIONCODEFORMAT = (select [FORMAT] from dbo.[MKTSOURCECODEPARTDEFINITIONVALUES] where [ID] = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTATIONCODEPARTDEFINITIONVALUESID]),
    @SEGMENTATIONCODEREGEX = (select [REGEX] from dbo.[MKTSOURCECODEPARTDEFINITIONVALUES] where [ID] = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTATIONCODEPARTDEFINITIONVALUESID]),
    @SEGMENTATIONCODE = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTATIONCODE],
    @SOURCECODEID = [MKTSEGMENTATION].[SOURCECODEID],
    @SOURCECODE = [BATCHDIRECTMARKETINGEFFORT].[SOURCECODE],
    @RECORDSOURCEID = [BATCHDIRECTMARKETINGEFFORT].[RECORDSOURCEID],
    @SITEID = [MKTSEGMENTATION].[SITEID],
    @SITEIDISNULL = (case when [MKTSEGMENTATION].[SITEID] is null then 1 else 0 end),
    @BASECURRENCYID = isnull([BATCHDIRECTMARKETINGEFFORT].[BASECURRENCYID], [MKTSEGMENTATION].[BASECURRENCYID]),

    @LISTID = isnull([BATCHDIRECTMARKETINGEFFORTLIST].[MKTLISTID], [BATCHDIRECTMARKETINGEFFORTLIST].[ID]),
    @LISTNAME = [BATCHDIRECTMARKETINGEFFORTLIST].[NAME],
    @LISTSTATUSCODE = (case when [BATCHDIRECTMARKETINGEFFORTLIST].[MKTLISTID] is null then 0 else 1 end),
    @LISTDESCRIPTION = [BATCHDIRECTMARKETINGEFFORTLIST].[DESCRIPTION],
    @LISTCODEVALUEID = [BATCHDIRECTMARKETINGEFFORTLIST].[CODEPARTDEFINITIONVALUESID],
    @LISTCODEFORMAT = (select [FORMAT] from dbo.[MKTSOURCECODEPARTDEFINITIONVALUES] where [ID] = [BATCHDIRECTMARKETINGEFFORTLIST].[CODEPARTDEFINITIONVALUESID]),
    @LISTCODEREGEX = (select [REGEX] from dbo.[MKTSOURCECODEPARTDEFINITIONVALUES] where [ID] = [BATCHDIRECTMARKETINGEFFORTLIST].[CODEPARTDEFINITIONVALUESID]),
    @LISTCODE = [BATCHDIRECTMARKETINGEFFORTLIST].[CODE],
    @LISTCATEGORYCODEID = [BATCHDIRECTMARKETINGEFFORTLIST].[MKTLISTCATEGORYCODEID],
    @LISTVENDORID = [BATCHDIRECTMARKETINGEFFORTLIST].[VENDORID],
    @LISTSITEID = [BATCHDIRECTMARKETINGEFFORTLIST].[SITEID],
    @LISTSITEISNULL = [BATCHDIRECTMARKETINGEFFORTLIST].[LISTSITEISNULL],

    @SEGMENTID = isnull([BATCHDIRECTMARKETINGEFFORTSEGMENT].[MKTSEGMENTID], [BATCHDIRECTMARKETINGEFFORTSEGMENT].[ID]),
    @SEGMENTNAME = [BATCHDIRECTMARKETINGEFFORTSEGMENT].[NAME],
    @SEGMENTSTATUSCODE = (case when [BATCHDIRECTMARKETINGEFFORTSEGMENT].[MKTSEGMENTID] is null then 0 else 1 end),
    @SEGMENTDESCRIPTION = [BATCHDIRECTMARKETINGEFFORTSEGMENT].[DESCRIPTION],
    @SEGMENTCODEVALUEID = [BATCHDIRECTMARKETINGEFFORTSEGMENT].[CODEPARTDEFINITIONVALUESID],
    @SEGMENTCODEFORMAT = (select [FORMAT] from dbo.[MKTSOURCECODEPARTDEFINITIONVALUES] where [ID] = [BATCHDIRECTMARKETINGEFFORTSEGMENT].[CODEPARTDEFINITIONVALUESID]),
    @SEGMENTCODEREGEX = (select [REGEX] from dbo.[MKTSOURCECODEPARTDEFINITIONVALUES] where [ID] = [BATCHDIRECTMARKETINGEFFORTSEGMENT].[CODEPARTDEFINITIONVALUESID]),
    @SEGMENTCODE = [BATCHDIRECTMARKETINGEFFORTSEGMENT].[CODE],
    @SEGMENTCATEGORYCODEID = [BATCHDIRECTMARKETINGEFFORTSEGMENT].[MKTSEGMENTCATEGORYCODEID],
    @SEGMENTTYPECODE = [BATCHDIRECTMARKETINGEFFORTSEGMENT].[SEGMENTTYPECODE],
    @SEGMENTEXPECTEDGIFTAMOUNT = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTEXPECTEDGIFTAMOUNT],
    @SEGMENTEXPECTEDRESPONSERATE = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTEXPECTEDRESPONSERATE],
    @SEGMENTRENTALQUANTITY = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTRENTALQUANTITY],
    @SEGMENTEXCHANGEQUANTITY = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTEXCHANGEQUANTITY],
    @SEGMENTRENTALCOST = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTRENTALCOST],
    @SEGMENTRENTALCOSTBASISCODE = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTRENTALCOSTBASISCODE],
    @SEGMENTEXCHANGECOST = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTEXCHANGECOST],
    @SEGMENTEXCHANGECOSTBASISCODE = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTEXCHANGECOSTBASISCODE],
    @SEGMENTUSAGECODE = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTUSAGECODE],
    @SEGMENTSITEID = [BATCHDIRECTMARKETINGEFFORTSEGMENT].[SITEID],
    @SEGMENTSITEISNULL = [BATCHDIRECTMARKETINGEFFORTSEGMENT].[SEGMENTSITEISNULL],

    @TESTSEGMENTID = isnull([BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[MKTSEGMENTATIONTESTSEGMENTID], [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[ID]),
    @TESTSEGMENTNAME = [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[NAME],
    @TESTSEGMENTSTATUSCODE = (case when [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[MKTSEGMENTATIONTESTSEGMENTID] is null then 0 else 1 end),
    @TESTSEGMENTDESCRIPTION = [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[DESCRIPTION],
    @TESTSEGMENTCODEVALUEID = (case when [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[ID] is not null then [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[CODEPARTDEFINITIONVALUESID] else [BATCHDIRECTMARKETINGEFFORT].[SEGMENTTESTCODEPARTDEFINITIONVALUESID] end),
    @TESTSEGMENTCODEFORMAT = (select [FORMAT] from dbo.[MKTSOURCECODEPARTDEFINITIONVALUES] where [ID] = (case when [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[ID] is not null then [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[CODEPARTDEFINITIONVALUESID] else [BATCHDIRECTMARKETINGEFFORT].[SEGMENTTESTCODEPARTDEFINITIONVALUESID] end)),
    @TESTSEGMENTCODEREGEX = (select [REGEX] from dbo.[MKTSOURCECODEPARTDEFINITIONVALUES] where [ID] = (case when [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[ID] is not null then [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[CODEPARTDEFINITIONVALUESID] else [BATCHDIRECTMARKETINGEFFORT].[SEGMENTTESTCODEPARTDEFINITIONVALUESID] end)),
    @TESTSEGMENTCODE = (case when [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[ID] is not null then [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[CODE] else [BATCHDIRECTMARKETINGEFFORT].[SEGMENTTESTCODE] end),
    @TESTSEGMENTEXPECTEDGIFTAMOUNT = [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[EXPECTEDGIFTAMOUNT],
    @TESTSEGMENTEXPECTEDRESPONSERATE = [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[EXPECTEDRESPONSERATE],
    @TESTSEGMENTQUANTITY = [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[QUANTITY],

    @PACKAGEID = isnull([BATCHDIRECTMARKETINGEFFORTPACKAGE].[MKTPACKAGEID], [BATCHDIRECTMARKETINGEFFORTPACKAGE].[ID]),
    @PACKAGENAME = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[NAME],
    @PACKAGESTATUSCODE = (case when [BATCHDIRECTMARKETINGEFFORTPACKAGE].[MKTPACKAGEID] is null then 0 else 1 end),
    @PACKAGEDESCRIPTION = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[DESCRIPTION],
    @PACKAGECODEVALUEID = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[CODEPARTDEFINITIONVALUESID],
    @PACKAGECODEFORMAT = (select [FORMAT] from dbo.[MKTSOURCECODEPARTDEFINITIONVALUES] where [ID] = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[CODEPARTDEFINITIONVALUESID]),
    @PACKAGECODEREGEX = (select [REGEX] from dbo.[MKTSOURCECODEPARTDEFINITIONVALUES] where [ID] = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[CODEPARTDEFINITIONVALUESID]),
    @PACKAGECODE = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[CODE],
    @PACKAGECHANNELCODEVALUEID = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[CHANNELCODEPARTDEFINITIONVALUESID],
    @PACKAGECHANNELCODEFORMAT = (select [FORMAT] from dbo.[MKTSOURCECODEPARTDEFINITIONVALUES] where [ID] = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[CHANNELCODEPARTDEFINITIONVALUESID]),
    @PACKAGECHANNELCODEREGEX = (select [REGEX] from dbo.[MKTSOURCECODEPARTDEFINITIONVALUES] where [ID] = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[CHANNELCODEPARTDEFINITIONVALUESID]),
    @PACKAGECHANNELCODE = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[CHANNELCODE],
    @PACKAGECATEGORYCODEID = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[MKTPACKAGECATEGORYCODEID],
    @PACKAGETYPECODE = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[PACKAGETYPECODE],
    @PACKAGECOST = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[COST],
    @PACKAGECOSTDISTRIBUTIONMETHODCODE = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[COSTDISTRIBUTIONMETHODCODE],
    @PACKAGESITEID = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[SITEID],
    @PACKAGESITEISNULL = [BATCHDIRECTMARKETINGEFFORTPACKAGE].[PACKAGESITEISNULL]
  from dbo.[BATCHDIRECTMARKETINGEFFORT]
  inner join dbo.[MKTSEGMENTATION] on [MKTSEGMENTATION].[ID] = [BATCHDIRECTMARKETINGEFFORT].[SEGMENTATIONID]
  inner join dbo.[BATCHDIRECTMARKETINGEFFORTSEGMENT] on [BATCHDIRECTMARKETINGEFFORTSEGMENT].[ID] = [BATCHDIRECTMARKETINGEFFORT].[BATCHDIRECTMARKETINGEFFORTSEGMENTID]
  inner join dbo.[BATCHDIRECTMARKETINGEFFORTPACKAGE] on [BATCHDIRECTMARKETINGEFFORTPACKAGE].[ID] = [BATCHDIRECTMARKETINGEFFORT].[BATCHDIRECTMARKETINGEFFORTPACKAGEID]
  left join dbo.[BATCHDIRECTMARKETINGEFFORTLIST] on [BATCHDIRECTMARKETINGEFFORTLIST].[ID] = [BATCHDIRECTMARKETINGEFFORT].[BATCHDIRECTMARKETINGEFFORTLISTID]
  left join dbo.[BATCHDIRECTMARKETINGEFFORTTESTSEGMENT] on [BATCHDIRECTMARKETINGEFFORTTESTSEGMENT].[ID] = [BATCHDIRECTMARKETINGEFFORT].[BATCHDIRECTMARKETINGEFFORTTESTSEGMENTID]
  where [BATCHDIRECTMARKETINGEFFORT].[ID] = @ID;

  return 0;