The Unitary interface

The Unitary interface is the original interface to fast data services. It continues to be supported, but IBM® recommends using the Request Code interface instead. See The Request Code interface for details about the Request Code interface.

The intent of this interface was to provide a single call to the service which could, in simple cases, retrieve all data required. To allow for the possibility that differing types of data may be required from a single program object, or that more data may be present than can fit in the caller's buffer, fast data Access service allows chaining of calls. A module token (MTOKEN) is created on the first call and returned to the caller. On the second and subsequent calls, the caller passes the MTOKEN to the service and is assured of continuing from the last call. On the last or only call of the set, HOLD=N should be specified, allowing all resources acquired by fast data access to be released.

Most significantly, the first call of a set has the overhead of reading the program object into virtual storage. This is required even if an eptoken for an already loaded program is provided, since the program object contains a good deal of additional data not present in a loaded copy of the executable text. A copy of the program object is retained in 64-bit storage until the call with HOLD=N is made.

The Unitary interface can be used either by making a call with a parameter list as described later or by using the assembler IEWBFDA macro which will generate the parameter list. If you intend to use a manually generated parameter list you should first understand the parameters as described for the macro.

See also Parameter descriptions. Those descriptions apply to all interfaces to fast data.