Ad hoc workflow processes allow the user to create and amend process definitions very quickly and easily to meet new circumstances as they arise. Within this type of workflow, it is possible to have as many different process definitions as there are users of the workflow. The main goal of ad hoc-based workflow is flexibility in areas where throughput and security are not the most important concern, and allowing the
Within this type of process, the user is attempting to solve a specific domain-based problem or task that he needs to do by applying his own domain expertise to the problem. This can come in many different forms; based on both the person and organization, this may change. Ad hoc workflow is one of the most important types of workflow that an organization has in its workflow arsenal.
Many times, these processes automate knowledge-
CD-ROM
Two of the most common problems in any sales-
The form shown in Figure 6.20 is designed to solve this type of process and allow an easy-to-use ad hoc-based workflow that
Figure 6.20:
Displaying the Sales Call form.
Task panes allow you to define a process or amplify information within an InfoPath form. They often provide either a collection point or allow you to access external information within the form. They are simply HTML files that are made part of the solution and contained with the solution file. Task panes enable you to store and maintain a variety of information.
The task pane object model is maintained as part of the InfoPath object model and allows you to share the objects and script
\accessing global variable window.external.Window.XDocument.Extension.MyVariable \accessing function defined within the business logic window.external.Window.XDocument.Extension.MyFunction()
| Note |
InfoPath allows you to script external objects. Using the wscript object model, you can load the network
var objNetwork = new ActiveXObject("WScript.network"); objMail.BCC =
objNetwork.UserName;
|
This will, by default, generate a security error unless the form is fully trusted. This will be discussed further in Chapter 9.
Within the Sales Call example, the task pane is used to collect and store information that the user enters and then can be used to refresh the drop-
function refreshDrops() {
XDocument.DataObjects("Next Steps").Query();
XDocument.DataObjects("Resources To Review").Query();
XDocument.View.ForceUpdate();
}
This function is then callable from the task pane and refreshes the current data sources, as shown here:
window.external.Window.XDocument.Extension.refreshDrops()