USP_DATAFORMTEMPLATE_EDITLOAD_MKTSEGMENT
The load procedure used by the edit dataform template "Constituent Segment Edit Form"
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter used to load the fields defined on the form. |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
@DATALOADED | bit | INOUT | Output parameter indicating whether or not data was actually loaded. |
@NAME | nvarchar(100) | INOUT | Name |
@DESCRIPTION | nvarchar(255) | INOUT | Description |
@CODE | nvarchar(10) | INOUT | Code |
@QUERYVIEWCATALOGID | uniqueidentifier | INOUT | Records source |
@SELECTIONS | xml | INOUT | Selections |
@GROUPS | xml | INOUT | Groups |
@SMARTQUERIESEXIST | bit | INOUT | Smart queries exist |
@ISINUSE | bit | INOUT | Is in use |
@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. |
Definition
Copy
CREATE procedure dbo.[USP_DATAFORMTEMPLATE_EDITLOAD_MKTSEGMENT]
(
@ID uniqueidentifier,
@CURRENTAPPUSERID uniqueidentifier,
@DATALOADED bit = 0 output,
@NAME nvarchar(100) = null output,
@DESCRIPTION nvarchar(255) = null output,
@CODE nvarchar(10) = null output,
@QUERYVIEWCATALOGID uniqueidentifier = null output,
@SELECTIONS xml = null output,
@GROUPS xml = null output,
@SMARTQUERIESEXIST bit = null output,
@ISINUSE bit = null output,
@TSLONG bigint = 0 output
)
as
set nocount on;
declare @SMARTQUERYTYPE tinyint;
set @DATALOADED = 0;
set @TSLONG = 0;
select
@SMARTQUERYTYPE = (case when [SEGMENTTYPECODE] = 3 then 2 else 1 end)
from dbo.[MKTSEGMENT]
where [ID] = @ID;
/* Load the segment */
select
@DATALOADED = 1,
@NAME = [MKTSEGMENT].[NAME],
@DESCRIPTION = [MKTSEGMENT].[DESCRIPTION],
@CODE = [MKTSEGMENT].[CODE],
@QUERYVIEWCATALOGID = [MKTSEGMENT].[QUERYVIEWCATALOGID],
@SELECTIONS = dbo.[UFN_MKTSEGMENT_GETSELECTIONS_TOITEMLISTXML](@ID, @CURRENTAPPUSERID),
@GROUPS = dbo.[UFN_MKTSEGMENT_GETGROUPS_TOITEMLISTXML](@ID),
@SMARTQUERIESEXIST = dbo.[UFN_MKTSELECTION_SMARTQUERIESEXIST](@SMARTQUERYTYPE),
@ISINUSE = dbo.[UFN_MKTSEGMENT_ISINUSE](@ID),
@TSLONG = [MKTSEGMENT].[TSLONG]
from dbo.[MKTSEGMENT]
where [MKTSEGMENT].[ID] = @ID;
return 0;