Technote (FAQ)
Question
How do you remap the PF keys in IBM Rational Functional Tester Extension for Terminal-based Applications (FTE) to use a certain sequence for functional keys?
Cause
Your applications use a customized ANSI terminal, but functional keys are remapped and use the sequence from VT220 terminal type. You want to remap the following sequence, for example.
| ESCAPE | \266\r |
| BACKSPACE | \010 |
| F1 | \e[M |
| F2 | \e[N |
| F3 | \e[O |
| F4 | \e[P |
| F5 | \e[Q |
| F6 | \e[R |
| F7 | \e[S |
| F8 | \e[T |
| F9 | \e[U |
| F10 | \e[V |
| F11 | \e[W |
| F12 | \e[X |
| INSERT | \e[L |
| DELETE | \177 |
| HOME | \e[H |
| END | \e[F |
| PAGEUP | \e[I |
| PAGEDOWN | \e[G |
| LEFT | \e[D |
| UP | \e[A |
| RIGHT | \e[C |
| DOWN | \e[B |
Answer
While sending square brackets, you need to follow the HACL rules. Keep in mind the following points, when you encode the value field.
- BRACKET ENCODING
Host On-Demand supports the ability to process SendKeys macros. Therefore to send a bracket, you need to use all double brackets [[ ]]. FTE translates single open and close brackets [ ] as field boundaries for SendKeys macros.
You can find more information about SendKeys, in the ECLPS class in the Host Access Class Library documentation, ECLReference.html.
- CARAT ENCODING
You can use the carat (^) to send characters that FTE cannot display. Put a ^ in front of any character with a value greater than or equal to A (hex 41,decimal 65) to translate to that value minus hex 40 or decimal 64.
For example:
^ A = = hex 01, ^B = = hex 02, and so on.
If you want to get a ^ into the data stream, you use two ^. In other words:
^^ is equal to ^ in the data stream.
- UNICODE ENCODING
You can use Unicode encoding to put displayable and nondisplayable characters into the data stream. Unicode encoding uses the format \uxxxx, where xxxx is two hex bytes. The value for the escape character is \u001b.
If you know the Unicode character, this is the easiest way to remap.
NOTE
Switch off the NumLock key, otherwise FTE sends a wrong sequence during playback.
Rate this page:
Copyright and trademark information
IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.