USP_DATAFORMTEMPLATE_ADD_NAMEFORMATFUNCTION
The save procedure used by the add dataform template "Name Format Function Add Data Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | INOUT | The output parameter indicating the ID of the record added. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@NAMEFORMATFUNCTIONDETAILS | xml | IN | Details |
@NAMEEXAMPLE | nvarchar(700) | IN | Example |
@ISJOINTFUNCTION | bit | IN | Joint name format |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_ADD_NAMEFORMATFUNCTION
(
@ID uniqueidentifier = null output,
@CHANGEAGENTID uniqueidentifier = null,
@NAMEFORMATFUNCTIONDETAILS xml = null,
@NAMEEXAMPLE nvarchar(700) = '',
@ISJOINTFUNCTION bit = 0
)
with execute as owner
as
set nocount on;
if @ID is null
set @ID = newid()
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output
declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()
begin try
-- Validate Allow Initial for Function fields
execute dbo.USP_NAMEFORMATFUNCTIONDETAILS_VALIDATEINITIAL @NAMEFORMATFUNCTIONDETAILS;
declare @FUNCTIONNAME as nvarchar(60)
set @FUNCTIONNAME = dbo.UFN_NAMEFORMAT_MAKEFUNCTIONNAME(@ID)
-- handle inserting the data
insert into dbo.NAMEFORMATFUNCTION
(ID, FORMATSQLFUNCTION, SEQUENCE, EXAMPLE, ISJOINTFUNCTION, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values
(@ID, @FUNCTIONNAME, (select max(SEQUENCE) from dbo.NAMEFORMATFUNCTION) + 1, @NAMEEXAMPLE, @ISJOINTFUNCTION, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE)
exec dbo.USP_NAMEFORMATFUNCTION_GETDETAILS_ADDFROMXML @ID, @NAMEFORMATFUNCTIONDETAILS, @CHANGEAGENTID, @CURRENTDATE;
insert into dbo.NAMEFORMATFUNCTION_USERDEFINED(ID, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED)
values (@ID, @CHANGEAGENTID, @CHANGEAGENTID, @CURRENTDATE, @CURRENTDATE);
--GenerateFunction
declare @FORCERELOAD bit = 1
declare @SPEC xml = dbo.UFN_GETNAMEFORMATFUNCTIONSPEC(@ID)
exec dbo.USP_LOADSPEC @SPEC, @CHANGEAGENTID, 'USP_DATAFORMTEMPLATE_ADD_NAMEFORMATFUNCTION', '', 0 , @FORCERELOAD
--Generate ITVF for bulk interaction
exec dbo.USP_CREATEORUPDATE_BUILDNAMEFORMATTVF @ID, @CHANGEAGENTID
end try
begin catch
exec dbo.USP_RAISE_ERROR
return 1
end catch
return 0