IBM's Open Access RPG Edition
IBM® Rational® Open Access (OA) RPG Edition is an IBM i API that allows low-level interception of RPG file data. This more formal definition is available on IBM's Open Access home page:
IBM Rational Open Access provides the runtime enablement for the I/O handlers that are developed to extend ILE RPG I/O capabilities to new resources and devices. It allows programmers to use the simple, well-understood RPG I/O model to access new devices and resources that are not directly supported by RPG. Rational Open Access RPG Edition is a full-featured version of the limited support provided by native RPG SPECIAL files.
ASNA WingsRPG™ and ASNA Mobile RPG® both make heavy use of OA. Thanks to OA, both products are able to offer display file proxies for RPG programs. These stand-in display files are transparent to the RPG program--it has no direct knowledge that it isn't reading and writing to a traditional display file.
OA is an API that enables the low-level input/output file IO interception in ILE RPG programs. To be useful, OA needs to have handlers registered with it. Handlers are IBM i program objects that send or receive data to the OA API. In the case of WingsRPG and Mobile RPG, their respective handlers act as liaisons between the OA API and the WingsRPG /Mobile RPG presentation layers. You don't need to anything with OA, but for your interest you can read more about the technical details of it here.
IBM's Rational Open Access...
- Is a no-charge feature included with IBM i. OA was a chargeable feature when IBM first introduced it. After a year or so, and many complaints, IBM corrected this situation and made OA a no-charge feature. It is available as a PTF for V6R1 and V7R1.
- Works with IBM i V6R1 and up. OA doesn't, and won't be patched to, work with IBM i V5R4 or less.
Requires ILE RPG. Early in OA's life, IBM hinted in the press that OA might one day support ILE CL, but those rumors aren't heard much anymore. The good news is that it's a pretty simple process to use the IBM i
CVTRPGSRCcommand to convert RPG III source to ILE RPG, so this constraint isn't a big problem for WingsRPG users. In fact, one of the things that WingsRPG Flight Plans can do is automate the injection