USP_MKTSEGMENTLIST_EDIT_LOAD
Loads a list based segment.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@COPYMODE | bit | IN |
Definition
Copy
CREATE procedure dbo.[USP_MKTSEGMENTLIST_EDIT_LOAD]
(
@ID uniqueidentifier,
@CURRENTAPPUSERID uniqueidentifier = null,
@COPYMODE bit = 0
)
as
set nocount on;
declare @QUERYVIEWCATALOGID uniqueidentifier;
declare @LISTLAYOUTID uniqueidentifier;
declare @HASSELECTIONS bit;
declare @FORMID uniqueidentifier;
if @COPYMODE = 1
set @FORMID = '366CF16E-D502-4D35-BB00-0F05DB82B371'; -- SegmentListCopy.Edit.xml
else
set @FORMID = '773FA2E3-9ACD-4B2F-98D5-34A8203E4D0D'; -- SegmentList.Edit.xml
--Grab the last query view imported for this segment, so we can use it to determine if any selections exist...
select top 1
@QUERYVIEWCATALOGID = [QUERYVIEWCATALOGID],
@LISTLAYOUTID = [LISTLAYOUTID]
from dbo.[MKTSEGMENTLIST]
where [SEGMENTID] = @ID
and [QUERYVIEWCATALOGID] is not null
order by [DATEADDED] desc;
set @HASSELECTIONS = (case when exists(select top 1 1 from dbo.[ADHOCQUERY] where [QUERYVIEWCATALOGID] = @QUERYVIEWCATALOGID) then 1 else 0 end);
select
[MKTSEGMENT].[NAME],
[MKTSEGMENT].[DESCRIPTION],
[MKTSEGMENT].[SEGMENTCATEGORYCODEID],
[MKTSEGMENT].[CODE],
[MKTSEGMENT].[QUERYVIEWCATALOGID] as [RECORDSOURCEID],
[MKTSEGMENTLIST].[ORDERDATE],
[MKTSEGMENTLIST].[EXPIRATIONDATE],
[MKTSEGMENTLIST].[NUMBEROFCONTACTS],
[MKTSEGMENTLIST].[LISTID],
(case when @HASSELECTIONS = 1 then @LISTLAYOUTID else [MKTSEGMENTLIST].[LISTLAYOUTID] end) as [LISTLAYOUTID],
[MKTSEGMENTLIST].[FILENAME],
[MKTSEGMENTLIST].[RENTALQUANTITY],
[MKTSEGMENTLIST].[RENTALCOSTADJUSTMENT],
[MKTSEGMENTLIST].[RENTALCOSTBASISCODE],
[MKTSEGMENTLIST].[EXCHANGEQUANTITY],
[MKTSEGMENTLIST].[EXCHANGECOSTADJUSTMENT],
[MKTSEGMENTLIST].[EXCHANGECOSTBASISCODE],
(case when [MKTSEGMENT].[TSLONG] > [MKTSEGMENTLIST].[TSLONG] then [MKTSEGMENT].[TSLONG] else [MKTSEGMENTLIST].[TSLONG] end) as [TSLONG],
@HASSELECTIONS as [HASSELECTIONS],
cast((case when [MKTSEGMENTLIST].[PARENTSEGMENTID] is null then 0 else 1 end) as bit) as [ISCHILDLISTSEGMENT],
[MKTSEGMENT].[PARTDEFINITIONVALUESID] as [CODEVALUEID],
dbo.[UFN_MKTSOURCECODEPARTDEFINITIONVALUE_GETAUTOINCREMENTSETTING]([MKTSEGMENT].[PARTDEFINITIONVALUESID]) as [AUTOINCREMENTCODE],
[MKTSEGMENTLIST].[BASECURRENCYID],
[MKTSEGMENT].[SITEID],
dbo.[UFN_SITEREQUIREDFORUSERONFEATURE](@CURRENTAPPUSERID, @FORMID, 1) as [SITEREQUIRED],
[MKTSEGMENTLIST].[STATUSCODE],
(select [ID] from dbo.[MKTSOURCECODEPARTDEFINITION] where [ITEMTYPECODE] = 1) as [SEGMENTPARTDEFINITIONID],
[MKTSEGMENT].[ISHISTORICAL]
from dbo.[MKTSEGMENT]
inner join dbo.[MKTSEGMENTLIST] on [MKTSEGMENTLIST].[ID] = [MKTSEGMENT].[CURRENTSEGMENTLISTID]
where [MKTSEGMENT].[ID] = @ID;
return 0;