USP_DATAFORMTEMPLATE_EDIT_MKTSEGMENTMARKETINGLOCATION
The save procedure used by the edit dataform template "Marketing Location Edit Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter indicating the ID of the record being edited. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@QUERYVIEWCATALOGID | uniqueidentifier | IN | Record source |
@NAME | nvarchar(100) | IN | Name |
@DESCRIPTION | nvarchar(255) | IN | Description |
@SEGMENTCATEGORYCODEID | uniqueidentifier | IN | Category |
@CODE | nvarchar(10) | IN | Code |
@CODEVALUEID | uniqueidentifier | IN | Source code part definition value |
@LOCATIONCOUNTRYID | uniqueidentifier | IN | Country |
@LOCATIONSTATEID | uniqueidentifier | IN | State |
@LOCATIONPOSTCODE | nvarchar(12) | IN | ZIP |
@LOCATIONCITY | nvarchar(50) | IN | City |
@LOCATIONADDRESSBLOCK | nvarchar(150) | IN | Address |
@VENDORID | uniqueidentifier | IN | Vendor |
@IMPRESSIONS | int | IN | Impressions |
@IMPRESSIONCALCULATIONMETHODCODE | tinyint | IN | per |
@GROUPS | xml | IN | Assign this segment to the groups marked below |
@ALLOWCODEUPDATE | bit | IN | Allow code update? |
Definition
Copy
CREATE procedure dbo.[USP_DATAFORMTEMPLATE_EDIT_MKTSEGMENTMARKETINGLOCATION]
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@QUERYVIEWCATALOGID uniqueidentifier,
@NAME nvarchar(100),
@DESCRIPTION nvarchar(255),
@SEGMENTCATEGORYCODEID uniqueidentifier,
@CODE nvarchar(10),
@CODEVALUEID uniqueidentifier,
@LOCATIONCOUNTRYID uniqueidentifier,
@LOCATIONSTATEID uniqueidentifier,
@LOCATIONPOSTCODE nvarchar(12),
@LOCATIONCITY nvarchar(50),
@LOCATIONADDRESSBLOCK nvarchar(150),
@VENDORID uniqueidentifier,
@IMPRESSIONS integer,
@IMPRESSIONCALCULATIONMETHODCODE tinyint,
@GROUPS xml,
@ALLOWCODEUPDATE bit
)
as
set nocount on;
declare @CURRENTDATE datetime;
begin try
if @ID is null set @ID = newid();
if @CHANGEAGENTID is null
exec dbo.[USP_CHANGEAGENT_GETORCREATECHANGEAGENT] @CHANGEAGENTID output;
-- save the segment
exec dbo.[USP_DATAFORMTEMPLATE_EDIT_MKTSEGMENT_2] @ID, @CHANGEAGENTID, @NAME, @DESCRIPTION, @SEGMENTCATEGORYCODEID, @CODE, @QUERYVIEWCATALOGID, null, null, @ALLOWCODEUPDATE, @CODEVALUEID;
select
@CURRENTDATE = [DATECHANGED]
from dbo.[MKTSEGMENT]
where [ID] = @ID;
update dbo.[MKTSEGMENTPASSIVE] set
[VENDORID] = @VENDORID,
[LOCATIONCOUNTRYID] = @LOCATIONCOUNTRYID,
[LOCATIONSTATEID] = @LOCATIONSTATEID,
[LOCATIONPOSTCODE] = @LOCATIONPOSTCODE,
[LOCATIONCITY] = @LOCATIONCITY,
[LOCATIONADDRESSBLOCK] = @LOCATIONADDRESSBLOCK,
[IMPRESSIONS] = @IMPRESSIONS,
[IMPRESSIONCALCULATIONMETHODCODE] = @IMPRESSIONCALCULATIONMETHODCODE,
[CHANGEDBYID] = @CHANGEAGENTID,
[DATECHANGED] = @CURRENTDATE
where [ID] = @ID;
delete from dbo.[MKTGROUPSEGMENTS] where [SEGMENTID] = @ID;
insert into dbo.[MKTGROUPSEGMENTS]
(
[ID],
[SEGMENTID],
[SEGMENTGROUPID],
[ADDEDBYID],
[CHANGEDBYID],
[DATEADDED],
[DATECHANGED]
)
select
newid(),
@ID,
T.c.value('(SEGMENTGROUPID)[1]', 'uniqueidentifier'),
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE
from @GROUPS.nodes('/GROUPS/ITEM') T(c)
where T.c.value('(SEGMENTGROUPSELECTED)[1]', 'bit') = 1;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;