Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

In this tutorial we will use eDocLite to facilitate a business process called Request Firewall Change, but this which is owned by IET Application Development. This time the process involves more responsible parties, more decisions to be made (not necessarily by people), more notifications, a few subprocesses, a way of skipping steps in the process, and a way to "un-fulfill" a request that was already fulfilled (yikes!!!).

...

  • administer their own firewalls
  • have a Firewall Request Change process that's different from ours ( ours, being that IT department somewhere out there)
  • have their own desktop services group that has the same responsibility as our Desktop Services group
  • have a group called Desktop Services, but does not field firewall change requests

...

Responsible Party

Work Group

Requester

none, this could be anybody

Desktop Services

ucd.IET.DES.DevelopmentSupport.WorkGroup

Firewall Policy Group

ucd.IET.MiddlewareAppDev.FirewallPolicyGroup.Workgroup

Firewall Gatekeeper

ucd.IET.DCCS.Firewall.MiddlewareFirewallGatekeeper.Workgroup

Create the Parent Document Type

...

.FirewallSysAdmin.Workgroup

Super User Workgroup

ucd.IET.AppDev.KualiRice.SysAdmin.Workgroup

Default Exception Workgroup

ucd.IET.AppDev.KualiRice.SysAdmin.Workgroup

Process Owner

ucd.IET.AppDev.FirewallPolicyGroup.Workgoup

Note 1:

Notice that the Kuali Rice Administrator identified ucd.IET.AppDev.KualiRice.SysAdmin.Workgroup even though that group is not involved in our business process. We'll need to identify a Super User Workgroup and Default Exception Workgroup when we create Document Types.

Note 2:

Notice that the Kuali Rice Administrator identified ucd.IET.AppDev.FirewallPolicyGroup.Workgoup as the Process Owner. We'll use Process Owner as part of a naming convention throughout the development of this workflow.

Create the Parent Document Type

Here we create a parent document type that defines the behavior of all Request Firewall Change documents. This particular parent document type defines everything short of routing paths. The idea is to allow for the possibility of other business processes called Request Firewall Change but will might have different routing paths, validation rules, work groups, etc., but might use the same form, have the same super user work group, the same exception workgroup, etc. Let's use the convention <process owner>.<process name>.eDoc.ParentDocType for naming Parent Document Types. Let's also use the same convention for naming the XML file.

Code Block
titleRFC-ucd.IET.AppDev.FirewallPolicyGroup.Workgoup.RequestFirewallChange.eDoc.ParentDocType.xml
<?xml version="1.0" encoding="UTF-8"?>
<data xmlns="ns:workflow" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="ns:workflow resource:WorkflowData">
<documentTypes xmlns="ns:workflow/DocumentType" xsi:schemaLocation="ns:workflow/DocumentType resource:DocumentType">
	<documentType>
		<name>eDoc<name>cd.IET.AppDev.FirewallPolicyGroup.Workgoup.RequestFirewallChange.eDoc.Parent<ParentDocType</name>
		<description>eDoc.RequestFirewallChange<description>eDocLite Request Firewall Change Parent Document Document<Type</description>
		<label>eDoc.RequestFirewallChange<label>eDocLite Request Firewall Change Parent Document Document<Type</label>
		<postProcessorName>edu.iu.uis.eden.edl.EDocLitePostProcessor</postProcessorName>
		<superUserWorkgroupName>eDoc.FirewallPolicyGroup.Workgroup</superUserWorkgroupName>
		<blanketApprovePolicy>NONE</blanketApprovePolicy>
		<docHandler>${workflow.url}/EDocLite</docHandler>
		<active>true</active>
		<routingVersion>2</routingVersion>
	</documentType>
</documentTypes>
</data>

...

Code Block
titleRFC-ChildDocTypes.xml
<?xml version="1.0" encoding="UTF-8"?>
<data xmlns="ns:workflow" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="ns:workflow resource:WorkflowData">
<documentTypes xmlns="ns:workflow/DocumentType" xsi:schemaLocation="ns:workflow/DocumentType resource:DocumentType">
	<documentType>
		<name>eDoc.RequestFirewallChange</name>
		<parent>eDoc.RequestFirewallChange.Parent</parent>
		<description>eDoc.RequestFirewallChange Child Document Type</description>
		<label>eDoc.RequestFirewallChange Child Document Type</label>
		<postProcessorName>edu.iu.uis.eden.edl.EDocLitePostProcessor</postProcessorName>
		<superUserWorkgroupName>eDoc.FirewallPolicyGroup.Workgroup</superUserWorkgroupName>
		<defaultExceptionWorkgroupName>eDoc.FirewallPolicyGroup.Workgroup</defaultExceptionWorkgroupName>
		<active>true</active>
		<routePaths>
			<routePath>
          			<start name="Initiated" nextNode="eDoc.RequestFirewallChange.Node1" />
		          	<requests name="eDoc.RequestFirewallChange.Node1" />
        	        </routePath>
		</routePaths>
	        <routeNodes>
        		<start name="Initiated">
          			<activationType>P</activationType>
		      	<mandatoryRoute>false</mandatoryRoute>
          			<finalApproval>false</finalApproval>
        		</start>
	     		<requests name="eDoc.RequestFirewallChange.Node1">
           			<activationType>P</activationType>
          			<ruleTemplate>eDoc.RequestFirewallChange.Node1</ruleTemplate>
          			<mandatoryRoute>false</mandatoryRoute>
          			<finalApproval>false</finalApproval>
           		</requests>
              </routeNodes>
	</documentType>
</documentTypes>
</data>

...