Running Application Engine processes asynchronously

You can use Infor API Gateway to call Application Engine processes.

Asynchronous processing makes it practicable to run even time-consuming processes. The execution of a process is not affected by time-outs and it runs as a background task.

These asynchronous functions enable you to execute processes, check their status, and check the results:

  • ExecuteAsync: Runs a process and returns the ID of the executing task. When the process has finished, the result is stored for possible retrieval from Infor API Gateway.
  • GetAsyncStatus: Checks the status of a process.
  • GetAsyncResult: Gets the result of a process. The result can be retrieved only once because the result is deleted after retrieval.

These asynchronous functions enable you to cancel or end running processes, and check if the cancellation process has finished:

  • bool IsProcessCancellationRequested(): Enables a running process to detect if there is a request to cancel the process. If a cancellation request is detected, the process can stop cleanly by releasing its resources and finishing.
  • AsyncCancelProcess(string asyncJobId): Attempts to cancel a running process. The IsProcessCancellationRequested function then returns True for the process, so that the process can stop running.
  • AsyncForceKillProcess(string asyncJobId): Ends a running process.
  • bool AsyncIsProcessCancelling(jobId): Checks if a running process is being canceled.
  • bool AsyncIsProcessCancelled(jobId): Checks if a running process has been successfully canceled.

When you export an XML document in Infor API Gateway, you can access a list of processes that are available in Application Engine.

See Infor API Gateway documentation.