Control Blocks
This chapter describes control block fields related to customization interfaces. The other fields that can be in control block mapping macros are those containing the internal use control information and are not to be used as a programming interface.
NetView® control blocks and buffers passed to installation exits and command processors are intended for read-only use. Do not alter them, except for fields specifically designed as user fields, such as TVBUFLD, CWBSAVEA, and CWBADATD.
MVTUFLD, TVBUFLD, and TIBUFLD are user fields. They are 4-byte fields that the NetView program does not modify or refer to. User fields are for code that is not NetView code, such as customer code or other applications running on the NetView program.
One DSIMVT and one MVTUFLD field exist for each NetView program. One TVBUFLD and one TIBUFLD exist for each NetView subtask and for each optional task.
Any product that uses task user fields can remove valuable NetView resources. Some NetView functions can keep you from overriding task user fields. See DSIPUSH: Establish Long-Running Command for information about the DSIPUSH function.
- Any application or product using any field should document its
use. If a task user field (such as TVBUFLD or TIBUFLD) is used, document
the name of the task (such as TVBOPID or TVBLUNAM) for anyone who
uses the application or product.
For example, if a component of a product is coded to run as an optional task, and the product uses the TIB or TVB user fields of that optional task, include that information in the product documentation.
- The TVBUFLD and TIBUFLD fields of a non-NetView task are under the control of the code that “owns” the task. In the previous example, if a customer queries the value in the TVBUFLD of every TVB on the TVB chain, do not query the TVBUFLD in the optional task. The product can be using the TVBUFLD of its task for a purpose that conflicts with the customer’s intended use.