An I/O Module (also called an Object Access Module) is a program created by LANSA to handle all access to files. Each file used by LANSA will have an I/O Module whether created by LANSA or defined as an OTHER file used in existing non-LANSA applications.Each I/O m
odule contains the Repository features defined for its file and fields. Centralizing these features in an I/O module reduces the impact of file changes on your applications. By channeling file access through the I/O module, whether from a IBM i or client application, the validity of your data is protected because it is always subjected to the same validation and security checks.
LANSA's I/O modules on the IBM i are compiled in RPG, making IBM i data access via LANSA Open very efficient. An RPG compiler is therefore required on the IBM i on which the Repository is maintained. (The compiler used for I/O modules varies with the deployment platform).
The step that creates the I/O module is called "Making the file operational". Some changes to the Repository definitions require the I/O module to be regenerated and some do not. Following is a list of file and field changes indicating whether the file needs to be "made operational" after the change, thus regenerating the I/O module.
Files need to be "made operational" after changes to these items: | Files do not need to be "made operational" after changes to these items: |
|---|---|
Access Routes with Predetermined Join Fields | Access Routes without Predetermined Join Fields |
Batch Control | Authority |
Default Values | Column Headings & Labels |
Field Length or Type | Display Attributes |
Logical View | Edit Codes/Words |
Physical File | Help Text |
Trigger Conditions | Prompts |
Trigger Points | |
Validation Rules | |
Virtual Fields |