How to Create a Process Pipeline
An administrator can use the Aptify Process Pipeline architecture to create business logic specific to his or her organization and to automate functionality. The following is a high-level overview of how an organization creates and implements a new process pipeline:
- Design the Process Flow: The first step to creating a successful process pipeline is to define the desired end results of the process and then identify what steps are required to achieve this goal. This includes determining how and where the system will execute the process. Considerations include:
- Steps Required: How many discreet actions are required to achieve the process flow's goal? A simple process flow (such as send a Welcome email to new persons) can have one step. Complex process flows can require multiple steps.
- Execution Type: Aptify can fire a process based on a specific system event (such as creating a new record) or on a pre-defined schedule to occur at a specific date and time. Event-based firing uses an Event Handler. Time-based firing uses a Scheduled Task.
- See Managing Events for information on Event Handlers.
- See Managing Scheduled Tasks for information on application servers and scheduled tasks.
- Execution Mode: Process flows fired by an event handler can execute immediately upon firing (Synchronous execution) or at a later time (Asynchronous execution). For Asynchronous execution only, the system creates a Process Flow Runs record that records information about the process flow's execution. All scheduled tasks use Asynchronous execution.
- See Specifying the Execution Mode and Location for more information on Execution Mode. For information on Process Flow Runs, see About the Process Flow Runs Form and About the Process Flow Runs Service.
- See Specifying the Execution Mode and Location for more information on Execution Mode. For information on Process Flow Runs, see About the Process Flow Runs Form and About the Process Flow Runs Service.
- Execution Location: The local computer always runs synchronous process flows. For asynchronous process flows, you can specify that either the local computer, if it is an application server (Local option), or an application server (Server option) executes the process flow. Scheduled tasks use an Application Server to execute asynchronous process flows.
- See Specifying the Execution Mode and Location for more information on Execution Location. See Managing Scheduled Tasks for information on application servers and scheduled tasks.
- See Specifying the Execution Mode and Location for more information on Execution Location. See Managing Scheduled Tasks for information on application servers and scheduled tasks.
- Create Process Flow Record: In Aptify, create a Process Flows record to implement the new process you have defined.
- Specify Execution Mode and Execution Location.
- Define the Input Properties required by the process. These properties are data values that are used in the process. You need to specify all of the necessary inputs here to incorporate the information into the process.
- Define any Output Properties. These are values generated during the process flow that you can use an input for another process flow. This situation is applicable if you've designated a step as a Sub-Process (in other words, one step in a process flow is to execute another process flow).
- Define the process flow's Result Codes. These are the results that correspond to the possible outcomes of the process. Typical Result Codes include Success and Failed.
- Note that Aptify recommends that you create the process flow and its related records on a development server first and then deploy the completed and tested process flow to your production server using the Aptify Data Packer. (See Packing Data for more information.)
- See Creating Process Flows for information on creating a new Process Flows record.
- Add a First Step: Add the first step to your process flow using the Process Flow's Design tab.
- You specify the action performed by the step by selecting a Rule (a script or a SQL statement), a Component (a .NET assembly that uses the specified Input Properties to perform an action), or a Sub-Process (another process flow) step.
- Components are stored in the Process Components service.
- Define any inputs required to complete the step in the Properties dialog's Properties tab. This corresponds to the step's Input Map. For steps based on a component, the inputs flow down automatically from the component.
- Define any output data generated by the step that is required for other steps in the process in the Output Map. For steps based on a component, the outputs flow down automatically from the component.
- Use the Process Flow designer to link steps together based on a prior step's result.You can also use the Action Map to specify that a particular result corresponds to the last step (the End Process option) or you can manually specify the next step.
- You can specify a different action for each result code. For example, if the step fails, you can terminate the process flow and if the step succeeds, you can continue to the next step. For steps based on a component, the result codes flow down automatically from the component.
- If your process flow has only one step, you select End Process for all possible result codes.
- If your process flow requires additional steps, you designate the next step that the process flow should perform either using the Result Code Link option in the Process Flow design diagram or by specifying the next steps directly within a step's Action Map tab.
- Create Additional Steps: Create the additional steps required by your process flow, linking the steps together either using the Result Code Link option in the Process Flow design diagram or by specifying the next steps directly within a step's Action Map tab.
- Test your Process Flow: Perform one or more tests to confirm that your process flow functions as intended using the Process Flow Debugger.
- Setup Event Handler or Scheduled Tasks: Create an Event Handler or Scheduled Task to fire your process flow.
- See Managing Events for information on Event Handlers.
- See Managing Scheduled Tasks for information on application servers and scheduled tasks.
- Deploy your Process Flow to the Production Server: If you created and tested your process flow on a development server, pack the relevant data files using the Aptify Data Packer and then unpack them on your organization's production server.
- See Using the Data Packing and Unpacking Wizards for information on packing and unpacking data.
Copyright © 2014-2017 Aptify - Confidential and Proprietary