USP_BBWORKFLOWCATALOG_CREATEORUPDATE
Creates or updates the BBWORKFLOWCATALOG table. Used by loadspec.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@NAME | nvarchar(60) | IN | |
@DESCRIPTION | nvarchar(100) | IN | |
@SPECXML | xml | IN | |
@RELATIVEURL | nvarchar(1024) | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@DATAFORMINSTANCECATALOGID | uniqueidentifier | IN | |
@AUXSERVICENAME | nvarchar(126) | IN |
Definition
Copy
CREATE procedure dbo.USP_BBWORKFLOWCATALOG_CREATEORUPDATE
@ID uniqueidentifier ,
@NAME nvarchar(60),
@DESCRIPTION nvarchar(100),
@SPECXML xml,
@RELATIVEURL nvarchar(1024),
@CHANGEAGENTID uniqueidentifier=null,
@DATAFORMINSTANCECATALOGID uniqueidentifier=null,
@AUXSERVICENAME nvarchar(126) = ''
as
set nocount on;
if @RELATIVEURL is null or @RELATIVEURL = ''
begin
raiserror ('Relative url was missing or blank', 16,1);
return 4;
end
if @NAME is null or @NAME = ''
begin
raiserror ('Name was missing or blank', 16,1);
return 5;
end
if @DESCRIPTION is null or @DESCRIPTION = ''
begin
raiserror ('Description was missing or blank', 16,1);
return 6;
end
declare @ExistingID uniqueidentifier;
if @ID is null
begin
select @ExistingID = ID from dbo.BBWORKFLOWCATALOG where NAME = @NAME;
set @ID = @ExistingID;
end
else
select @ExistingID = ID from dbo.BBWORKFLOWCATALOG where ID = @ID;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
declare @date datetime;
set @date = getDate();
if @AUXSERVICENAME is null
set @AUXSERVICENAME = '';
if @ExistingID is null
begin
if @ID is null set @ID = NewID();
insert into dbo.BBWORKFLOWCATALOG
(ID, [NAME], [DESCRIPTION], SPECXML, ADDEDBYID, CHANGEDBYID, DATEADDED, DATECHANGED,RELATIVEURL,DATAFORMINSTANCECATALOGID,AUXSERVICENAME)
values
(@ID, @NAME, @DESCRIPTION, @SPECXML, @CHANGEAGENTID, @CHANGEAGENTID, @date, @date,@RELATIVEURL,@DATAFORMINSTANCECATALOGID,@AUXSERVICENAME);
end
else
begin
update dbo.BBWORKFLOWCATALOG
set [NAME] = @NAME,
[DESCRIPTION] = @DESCRIPTION,
SPECXML = @SPECXML,
RELATIVEURL=@RELATIVEURL,
DATAFORMINSTANCECATALOGID = @DATAFORMINSTANCECATALOGID,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @date,
AUXSERVICENAME = @AUXSERVICENAME
where ID = @ID ;
end
if @@rowcount=0 return 3;
return 0;