How to Add Custom Actions to Screens Projects
Introduction
Some Screens solutions might require screen actions that are not mapped by default to our action-mappings (such as PA actions, SYSREQ, PRINT, etc.).
This means that we need to "tell" our connector how to send these actions to the backend (AS400/Mainframe).
Before version 4.5, adding these actions required changing a significant number of configuration beans. From version 4.5, we made it easier to add custom terminal screen actions.
We do so by following these steps:
Step-by-Step Guide
Open the project's configuration file located at {project-name-base-package}.config e.g. MyProjectConfiguration.java
and edit the configuration as follows:
@Bean public AdditionalMappingClass actionMappings(TerminalActionMapper tam) { return new AdditionalMappingClass(tam); } public class AdditionalMappingClass { private TerminalActionMapper tam; public AdditionalMappingClass(TerminalActionMapper tam) { this.tam = tam; } @PostConstruct public void init() { tam.addActionToMapping(TerminalAction.AdditionalKey.ALT, AdditionalTerminalActions.F1(),"[pa1]"); tam.addActionToMapping(TerminalAction.AdditionalKey.ALT, AdditionalTerminalActions.F2(),"[pa2]"); tam.addActionToMapping(TerminalAction.AdditionalKey.ALT, AdditionalTerminalActions.F3(),"[pa3]"); } }
Note that when working with h3270 connector (mainframe screens), the value of the action should be without the brackets []
tam.addActionToMapping(TerminalAction.AdditionalKey.ALT, AdditionalTerminalActions.F1(),"pa1"); tam.addActionToMapping(TerminalAction.AdditionalKey.ALT, AdditionalTerminalActions.F2(),"pa2"); tam.addActionToMapping(TerminalAction.AdditionalKey.ALT, AdditionalTerminalActions.F3(),"pa3");
In order to execute your additional action in the emulation press the combined key on the screen e.g: ALT + F1.
On runtime, you can use to combine terminal action for example:
ScreenEntity screenEntity = terminalSession.doAction(TerminalActions.combined(TerminalAction.AdditionalKey.ALT, TerminalActions.f2()), NextEntity);
Related Articles