USP_DATAFORMTEMPLATE_EDIT_DISCOUNTCONSTITUENCY
The save procedure used by the edit dataform template "DiscountConstituency Edit Data 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. |
@DISCOUNTCONSTITUENCYCODES | xml | IN | Restrict discount to these constituencies |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_DISCOUNTCONSTITUENCY
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@DISCOUNTCONSTITUENCYCODES xml
)
as
set nocount on;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
declare @XML xml;
set @XML = (
select
case CONSTITUENCYDEFINITION.ISSYSTEM
when 1 then null
else CONSTITUENCYDEFINITION.ID
end as CONSTITUENCYCODEID,
case CONSTITUENCYDEFINITION.ISSYSTEM
when 1 then CONSTITUENCYDEFINITION.ID
else null
end as CONSTITUENCYSYSTEMNAMEID,
NEWTABLE.ID,
NEWTABLE.SEQUENCE
from
(select
T.c.value('(CONSTITUENCYCODEID)[1]','uniqueidentifier') as 'CONSTITUENCYCODEID',
T.c.value('(ID)[1]','uniqueidentifier') as 'ID',
T.c.value('(SEQUENCE)[1]','int') as 'SEQUENCE'
from
@DISCOUNTCONSTITUENCYCODES.nodes('/DISCOUNTCONSTITUENCYCODES/ITEM') T(c)
) as NEWTABLE
left join dbo.CONSTITUENCYDEFINITION on NEWTABLE.CONSTITUENCYCODEID = CONSTITUENCYDEFINITION.ID
where
NEWTABLE.CONSTITUENCYCODEID is not null
and CONSTITUENCYDEFINITION.ISACTIVE = 1
for xml raw('ITEM'),type,elements,root('DISCOUNTCONSTITUENCYCODES'),BINARY BASE64
);
begin try
exec dbo.USP_DISCOUNT_GETCONSTITUENCYCODES_UPDATEFROMXML @ID, @XML, @CHANGEAGENTID, @CURRENTDATE;
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;