WebClient developers have an added bonus that comes as a side effect of generating their Plex panels as RIA applications – the built-in ability to call their functions using an XML external call mechanism. This call mechanism can be invoked in a couple different ways:
- You can call Plex functions as “deep linked” web pages with parameters that can be embedded in external portals or other enterprise web applications.
- Developers can automate Plex business logic from external Business Process Modeling (BPM) or Workflow automation tools, such as Xpert Ivy, Lombardi Teamworks, or Microsoft Workflow Engine. Note that both UI and non-UI functions can be automated in this way.
Simple Deep Link
In the first method, simple deep linking, an url request containing the function name and/or parameters to pass is sent to a custom servlet handler function. This function formats an XML string to call the CA Plex panel function. This call information is then passed to the WebClient servlet, resulting in the Plex panel being called with parameters and the Plex screen displayed in the browser. This is the most common way to call a Plex panel function from a URL.
However, you are not limited to simple deep linking. A Plex panel function or non-UI function can also be called directly by automation. This allows the Plex function to be called from an external application, such as a Business Process Modeling/Workflow application created with Xpert Ivy, an enterprise ERP package such as SAP, or practically any EA that can perform a web function call.
Here is some of the information you can pass on a Plex function call via the WebClient servlet. Note that you can populate panel fields and fire events.
- Plex Function Name
- Plex Function Package
- Input Parameters (MOV’s OK)
- Event to fire
- Fields to populate on the screen (including grid data)
This article is just an orientation to the possibilities behind WebClient deep linking and automation. An example of a deep link and of a workflow automation call will the subject of part 2 and part 3 of this three part series. If you have questions in the meantime, don’t hesitate to contact us at firstname.lastname@example.org.