"TPXL0037 NO ACB AVAILABLE FOR userid applid" is issued when no eligible virtual terminal is available to start a session. If no user ID is available, the message shows the real terminal name. This document discusses possible causes for this.
"TPXL0037 NO ACB AVAILABLE FOR userid applid" is issued when no eligible virtual terminal (VT) is available to start a session. If no user ID is available, the message shows the real terminal name.
A couple of possible causes for this are the way that an application is defined or dynamic logmode setup errors.
If using dynamic logmodes:
- When a terminal logs on to TPX it is assigned a TPX logmode to be used for application session requests.
- Prior to 5.3, that logmode would be something like T3278Mnx
- "n" is the model number (2,3, etc.), and
- "x" will either be an "E" or blank depending on the query capabilities of the terminal.
- Release 5.3 goes through the same process unless the terminal's PSERVIC indicates a dynamic logmode. In that case, the application session logmode will be set to T3278MDE for that terminal.
- TPX will then run through the virtual terminal list looking for an "nx" value that matches the "nx" value already assigned to the real terminal for establishing an application session. If none is found, you get TPXL0037.
- With TPX 5.3, since the "nx" value for a dynamic logmode terminal is "DE", unless you have implemented the 5.3 logmode tables that include T3278MDE (or updated your customized tables with an entry for T3278MDE) this will not match any of the virtual terminal logmodes. That results in the "NO ACB AVAILABLE" situation occurring.
NOTE: It is possible to disable the TPX dynamic logmode code with SMRT Optional Parameter option #38 (fixes RO21026 & RO21027 required) so that logmodes are determined the same way as prior to TPX 5.3.
If defining an application:
- When the ACT entry for an application has "Model sensitive" and/or "Extended datastream" set to "Y", TPX will look for the particular model number in the "n" location stated above and/or the presence or absence of the "E" in the "x" location. Unless these specific logmodes are defined within your assembled logmode table, you will get TPXL0037.
- If you are running out of a specific type of VT, such as UNQ, it may be possible that the application could be defined with type GRP or SHR.
- Do you validly need to add more VTs? For example, if you have added more users to an application defined with type UNQ, you may need to increase your capacity.