Placing Process Nodes
You can build a process definition by adding, selecting, and linking nodes that are represented by icons at the left of the Workflow Template Editor.
For more information about adding and linking nodes, see About Workflow Template Nodes.
The following list describes the process nodes that can be added to your process definition. The list is displayed in order of each icon’s appearance on the Workflow Template Editor.
The Assigned Activity is an activity assigned to one or more users or user-defined groups or an actor to perform.
The Ad Hoc Activity is assigned to a user to define a group of activities at runtime. The group of activities is similar to a simple block.
The Block represents a group of activities, connectors, or robots. You can reduce the complexity of a process by creating blocks of activities that can be expanded when needed.
The Proxy Process is a subprocess embedded within the main parent process, which can be nested to reduce complexity and provide reuse.
The And Connector fires when all the predecessor links have fired, but not before.
The Or Connector fires when any one of the predecessor links has fired. Preceding activities are terminated if Terminate Open Predecessor Activities When Fired has been selected.
The Conditional Router allows you to branch a process based on a conditional expression.
The Threshold Connector fires when a user-defined number of predecessor links have fired. Preceding activities are terminated if Terminate Open Predecessor Activities When Fired has been selected.
The End stops the process. All process activities should eventually be connected to an end.
The Ground stops a parallel branch of activities within the process, but it does not stop the process.
The Notification Robot notifies the appropriate user with a user-defined email. You can define notification robots containing an attachment or metadata of the primary business object associated with the workflow. You can use braces to delimit variables created for the process or node, for example, {varname}. Use back slashes to escape the delimiter, for example, \{{varname}}\. For a detailed procedure, see Notification Robot.
The Method Robot represents one of several single actions performed when adding the robot to the process. No other configuration is required. The following table lists the robot actions:
Robot
Description
Checkin
Checks in the primary business object to the Windchill database.
Checkout
Checks out a business object to the specified user. For example, you can use the Checkout robot to automatically check a part out to the engineer assigned the task of applying changes after a design review cycle is complete.
Demote
Causes the primary business object to transition to a predecessor phase, with an associated state change, and the application of new business rules (such as those for access control).
Deny
Removes the primary business object from the gate and returns it to the phase of the same state.
Drop
Causes an object to be removed from its current life cycle and sets its state to dropped. For example, you could have a process branch in which two vendors submit bids for review. These bids could be entered into the database as Windchill documents, which would move through a review and approval process by application of a process definition. In this case, your process may require that, when one bid is approved, its document object is automatically promoted to its next life cycle phase, while the document containing the rejected bid is dropped from its life cycle and goes no further.
Promote
Causes the primary business object to transition to a successor phase with an associated state change and the application of new business rules, such as those for access control. For example, you could define a process in which an object is automatically promoted to the next phase in its life cycle, if a specific user approves the object. In this case, you could add the Promote robot to your process definition to execute all of the actions associated with an object's promotion.
Set State
Sets a life cycle–managed object to an ordinal state or a specific state. The ordinal state is entered as any non-zero integer. The specific state is selected from those defined in the wt.lifecycle.StateRB enumerated type.
Submit
Moves the business object associated with this process to the gate for its current life cycle phase. After a submit, an object awaits promotion to the next life cycle phase. For example, you could add the Submit robot to a process definition to indicate that, when a user creates a change request, it is automatically submitted for promotion to the Open state.
The Checkpoint Robot records the time it takes the workflow process to get from one checkpoint node to the next. An email notification is sent to subscribers when the node is reached.
The Timer Robot delays the start of an activity by a specified amount of time, based on the time it is fired or the time the parent process is begun.
The Launch Application Robot executes system commands on the server. These commands are executed using the Java runtime.exe command. The execution can be either synchronous or asynchronous.
The Execute Expression Robot enters a synchronous Java expression to be executed in a workflow. By default, the expression returns true. A return of false indicates a problem during execution, and an exception is thrown on the server.
The Synchronization Robot synchronizes the start of an activity or process with events that are not time related. You can set the robot to start an activity when certain generic external or Windchill-keyed events occur.
If synchronization does not work, make sure that the time zone is set correctly on the server where your Windchill solution is installed.
The URL Robot executes a URL to communicate with another server, for such purposes as initiating various Info*Engine tasks or providing information necessary to complete workflow tasks. It can initiate an operation or retrieve status information to be collected in a string variable. HTML links to binary objects, such as graphics, can be retrieved, although the objects themselves cannot.
You can specify the results of a failure by the robot to execute the URL. The following list of error codes may be helpful.
400 Bad Request: Request has not been recognized by the server, because of incorrect syntax. Request should not be repeated.
401 Unauthorized: Request requires user authentication. Under normal usage, the URL robot does not support authentication. Request should not be repeated.
403 Forbidden: Request has been recognized but the server has refused to honor it. Authentication was not the reason. The request should not be repeated.
404 Not Found: Server has found no match for the Request-URI. May be temporary or permanent. Repeat of request may be appropriate.
500 Server Error: Server has encountered an unexpected condition, which prevents it from fulfilling the request. Repeat of request may be appropriate.
501 Not Implemented/Internal Error: Server does not support the functionality required to fulfill the request. Request should not be repeated.
503 Service Unavailable: Server is temporarily unable to handle the request. Repeat of request may be appropriate.
504 Gateway Timeout: Server has not received a timely response from the upstream server specified by the URI. Repeat of request may be appropriate.
For more information on error messages, see the Internet standards at W3C HTTP RFC (http://www.w3.org).
Was this helpful?