Business Process Management

Through business process management, you can use standard protocols to call advanced DPS functionality or third-party applications.

Business Processes

The business processes are:

  • User Initiated Workflow: The User Initiated workflow is triggered when you add, edit, or delete a hub record. For example, you can trigger a workflow whenever you save a new project record in the Projects hub. DPS can send an email message on your behalf, present a validation warning or error message to the user, or even pass along information about the project to an external program or stored procedure that you write yourself. Then the external program or stored procedure can extend the workflow, for example, by passing the information to a project team collaboration site, where the project's information is routed to the principal for approval.

    In addition to non-programming actions like email messages and notification alerts, user initiated workflows can use the following advanced actions: custom methods, functions, stored procedures, and web services.

  • Scheduled Workflow: The Scheduled workflow is triggered when you click a user-defined button or starts according to a set schedule. For example, you can add a Project Meeting Audit Scheduled Workflow button. When an impromptu project meeting is called because a client has scheduled an unexpected site visit, you can open the project record, click the Project Meeting Audit Scheduled Workflow button, and trigger a chain of scheduled workflows to alert team members, validate project data, and update the project collaboration site.

    In addition to non-programming actions like email and notification alerts, scheduled workflows can use the following advanced actions: custom methods, functions, stored procedures, and web services.

  • Web Services Workflow: You can use Web Services that you write to extend DPS business logic in many different areas, including Time and Expense, Purchasing, Resource Planning, and from any user-initiated or scheduled workflow. For example, you can specify a web service that sends purchase order information to another workflow program when a purchase order is submitted. That workflow program can initiate a two-tiered approval system where purchase orders equal to or less than $10,000 are approved by the employee’s manager only and all purchase orders over $10,000 must be first approved by a manager and then a director. Once the workflow has completed in the other workflow program, your custom web service program can mark the purchase order as approved in DPS by updating the appropriate field in the SQL Server database.

Advanced Actions

In both User Initiated Workflows and Scheduled Workflows, business processes can be further extended using advanced actions. Use advanced actions to tailor business processes to meet your enterprise’s requirements. Some of these advanced actions are defined and configured by DPS, and others are completely customizable through advanced programming. The advanced actions include:

  • Custom Methods: A custom method is a program that you can write (in the form of a DLL) that resides on the DPS application server. For example, you can use a custom method to modify your DPS database if the standard DPS behavior does not suit your needs. Custom methods let you use the same database connection and transaction that is used by DPS itself. Therefore, they can be particularly useful when you want to make additional updates to the DPS database, and include those updates in the same transaction as the original action being performed by the user (for example, saving a new project record).
  • Expressions: You can use an expression in the Column Change Workflow action to automatically populate data in a User Initiated or Scheduled Workflow. For example, you can have a project user-defined field for Total Contract Value. This field can be automatically updated with the sum of the Compensation, Consultant Fee, and Reimbursable Allowance whenever one of those three fields is changed for a project.
  • Functions: You can use functions to input parameters on a method that you insert on a form in DPS. After selecting the method, you can use the SQL Expression builder to create an argument that defines the function.
  • Stored Procedures: If you do not want to write Visual Basic or C# code in the form of a custom method, you can instead used stored procedures to execute custom SQL on the DPS database. Although creating a stored procedure requires knowledge of T-SQL, it is an efficient method to use. However, there are some limitations to stored procedures, including that you are limited to operations inside the database and that you cannot pass back validation messages to the user.
  • Web Services: You can call a web service to integrate DPS data with another application. For example, you can call a web service that shares employee information between the Employees hub and your third-party human resource application when you save an Employees hub record, keeping the two databases consistent and up-to-date.
  • Workflow Alerts: Workflow alerts are configurable and provide the flexibility to trigger and schedule alerts based on your requirements. These alerts differ from the standard System and Company alerts that are pre-configured in DPS.

Applications that Use Advanced Actions

Advanced actions are used in the following applications:

Advanced Action Application
Workflow Alerts

Scheduled and user initiated workflows for hubs and billing terms

Custom Methods

Scheduled and user initiated workflows for hubs and billing terms; auto numbering

Expressions

Scheduled and user initiated workflows for hubs and billing terms; auto numbering

Functions

Scheduled and user initiated workflows for hubs and billing terms

Stored Procedures

Scheduled and user initiated workflows for hubs and billing terms; auto numbering

Web Services

Scheduled and user initiated workflows for hubs and billing terms; web service workflow for Time, Expense, Transaction Center, Purchasing, Inventory, Planning; auto numbering

Standard Features for Automating Business Processes

You can also use some standard features to automate business processes.

  • Approvals: You can configure an approval process in the Time, Expense, Purchasing, and Transaction Center applications. If approvals are enabled and configured, DPS automatically alerts approvers of newly submitted records. Once approved, those records are ready for posting.
  • Standard Alerts: Standard alerts are pre-configured in DPS and are designed to remind you when tasks need to be assigned or approved, when you need to submit timesheets, and when your opportunities advance from one stage to the next.
  • User Defined Workflow Button: The DPS Screen Designer includes a feature that allows you to insert a user defined workflow button on a form to initiate a workflow. For example, you can create a scheduled workflow called Validate Address, which has a web service action that validates a contact’s address through a mapping web site. Then, when a user enters a contact’s address, he or she can click on a button to start that workflow process and validate the address. This feature is accessible on forms where the Screen Designer and Workflow are both available.