USP_DATALIST_MKTLISTPROFILESEGMENTS

Returns a list of segments that use the specified list.

Parameters

Parameter Parameter Type Mode Description
@LISTID uniqueidentifier IN Input parameter indicating the context ID for the data list.
@CURRENCYCODE tinyint IN Currency

Definition

Copy


CREATE procedure dbo.[USP_DATALIST_MKTLISTPROFILESEGMENTS]
(
  @LISTID uniqueidentifier,
  @CURRENCYCODE tinyint = null
)
as
  set nocount on;

    declare @SELECTEDCURRENCYID uniqueidentifier;
    if isnull(@CURRENCYCODE, 0) = 1
    begin
        set @SELECTEDCURRENCYID = dbo.[UFN_CURRENCY_GETORGANIZATIONCURRENCY]();
    end

  select 
    [MKTSEGMENT].[ID],
    [MKTSEGMENT].[NAME],
    [MKTSEGMENT].[DESCRIPTION],
    [MKTSEGMENT].[CODE],
    dbo.[UFN_MKTSEGMENT_ISINUSE]([MKTSEGMENT].[ID]) as [INUSE],
    [MKTSEGMENTLIST].[ORDERDATE],
    [MKTSEGMENTLIST].[EXPIRATIONDATE],
    [MKTSEGMENTLIST].[NUMBEROFCONTACTS],
    [MKTSEGMENTLIST].[RENTALQUANTITY],
        case @CURRENCYCODE
        when 1 then [MKTLIST].[ORGANIZATIONBASERENTALCOST]
        else [MKTLIST].[BASERENTALCOST] end [BASERENTALCOST],
    [MKTLIST].[BASERENTALCOSTBASISCODE],
        case @CURRENCYCODE
        when 1 then [MKTSEGMENTLIST].[ORGANIZATIONRENTALCOSTADJUSTMENT]
        else [MKTSEGMENTLIST].[RENTALCOSTADJUSTMENT] end [RENTALCOSTADJUSTMENT],
    [MKTSEGMENTLIST].[RENTALCOSTBASISCODE],
    [MKTSEGMENTLIST].[EXCHANGEQUANTITY],
        case @CURRENCYCODE
        when 1 then [MKTLIST].[ORGANIZATIONBASEEXCHANGECOST]
        else [MKTLIST].[BASEEXCHANGECOST] end [BASEEXCHANGECOST],
    [MKTLIST].[BASEEXCHANGECOSTBASISCODE],
        case @CURRENCYCODE
        when 1 then [MKTSEGMENTLIST].[ORGANIZATIONEXCHANGECOSTADJUSTMENT]
        else [MKTSEGMENTLIST].[EXCHANGECOSTADJUSTMENT] end [EXCHANGECOSTADJUSTMENT],
    [MKTSEGMENTLIST].[EXCHANGECOSTBASISCODE],
    [CURRENCYPROPERTIES].[ISO4217] [ISOCURRENCYCODE],
    [CURRENCYPROPERTIES].[CURRENCYSYMBOL],
    [CURRENCYPROPERTIES].[SYMBOLDISPLAYSETTINGCODE] [CURRENCYSYMBOLDISPLAYSETTINGCODE],
    [CURRENCYPROPERTIES].[DECIMALDIGITS]
  from dbo.[MKTSEGMENTLIST]
  inner join dbo.[MKTSEGMENT] on [MKTSEGMENT].[CURRENTSEGMENTLISTID] = [MKTSEGMENTLIST].[ID]
  inner join dbo.[MKTLIST] on [MKTLIST].[ID] = [MKTSEGMENTLIST].[LISTID]
  outer apply dbo.[UFN_CURRENCY_GETPROPERTIES](isnull(@SELECTEDCURRENCYID, [MKTLIST].[BASECURRENCYID])) [CURRENCYPROPERTIES]
  where [MKTLIST].[ID] = @LISTID
  and [MKTSEGMENTLIST].[STATUSCODE] = 3;  --Only active segments


  return 0;