Understanding Workflow Batch Processes

When you are working with PeopleSoft applications, you perform some activities interactively (online processes) and the system performs some behind the scenes (batch processes). Batch processes provide three major benefits:

  • You can schedule them to run later, on a recurring schedule.

  • They can process a large number of items all together, unlike online processes, which typically process one item at a time.

  • You can transfer processing to a server so that time-consuming tasks don’t monopolize your machine.

However, batch processes have one drawback: they connect to the database directly, rather than working through the PeopleSoft pages. If your application validates incoming data or runs custom PeopleCode, you might not want a batch process updating the database in this way. Also, because you trigger business events by saving data on a page, batch processes cannot initiate a workflow.

You can use Application Engine programs or a component interface to work around these limitations. Like online processes, Application Engine programs enter data through PeopleSoft pages (using a component interface as an intermediary). Like batch processes, they can handle a batch of items.

For example, suppose a batch process transfers assets between departments, and you want to notify (using an email message) the managers of all affected departments. The batch process cannot trigger an email routing, and to create the email messages manually is time-consuming. Instead, after the batch process is complete, you can run an Application Engine program that selects the transferred assets and sends an email message to each manager. You can also replace the batch process with an Application Engine program that makes the asset transfer.