Tag 010 - Text with Optional Buttons

The Text with Optional Buttons Message is used to display virtual buttons and/or fixed text onscreen. The screen may have button(s) on top (and/or bottom on some models) plus labels (lines of text) below and/or above any buttons. If a label sent to Simplify is too long to be completely displayed, the end of the label will be truncated.

A virtual button will only be displayed if data is entered in the descriptor field (ButtonNDesc) for the button. Note that pressing the Enter key is not required after pressing a virtual button.

The maximum number of labels, the number of buttons supported, and the maximum length of button descriptors are device-specific. The maximum number of labels also depends on whether buttons are present on the top or bottom of the screen.

The Text with Optional Buttons Response returns the button pressed by the customer. Fields in the Request (AllowEnter, AllowCancel) control whether the (hard) Enter and Cancel keys can be used.

Field 5001 Format

Request

error_outline
note

Field separators must be sent for both button and label fields as shown below, even if some of these fields are null.

Subfield Name Length Description
TTT 3 Tag (always = 010)
LLL 3 Length of the following data
AllowEnter 1 Allow Enter hard key (0=Not allow, 1=Allow)
AllowCancel 1 Allow Cancel hard key (0=Not allow, 1=Allow)
Beeper 1 Sound tone (0=No, 1=Yes)
ButtonADesc Var. Descriptor for first button position (from left) on top (A)
FS 1 Field separator (Hex 1C)
ButtonBDesc Var. Descriptor/field separator for second button position on top (B)
FS 1
ButtonCDesc Var. Descriptor/field separator for third button position on top (C)
FS 1
ButtonDDesc Var. Descriptor/field separator for fourth button position on top (D)
FS 1
ButtonEDesc Var. Descriptor/field separator for first button position (from left) on bottom (E)
FS 1
ButtonFDesc Var. Descriptor/field separator for second button position on bottom (F)
FS 1
ButtonGDesc Var. Descriptor/field separator for third button position on bottom (G)
FS 1
ButtonHDesc Var. Descriptor/field separator for fourth button position on bottom (H)
FS 1
Label1Just 1 Label 1 Justification (1=Left justify, 2=Center, 3=Right justify)
Label1Reverse 1 Reverse mode (0=standard mode, 1=reverse mode).
Label1Text Var. Label 1 Text
FS 1 Field separator (Hex 1C)
Label2Just 1 Justification/mode/text/field separator for Label 2.
Label2Reverse 1
Label2Text Var.
FS 1
Label3Just 1 Justification/mode/text/field separator for Label 3.
Label3Reverse 1
Label3Text Var.
FS 1
Label4Just 1 Justification/mode/text/field separator for Label 4.
Label4Reverse 1
Label4Text Var.
FS 1
Label5Just 1 Justification/mode/text/field separator for Label 5.
Label5Reverse 1
Label5Text Var.
FS 1
Label6Just 1 Justification/mode/text/field separator for Label 6.
Label6Reverse 1
Label6Text Var.
FS 1
Label7Just 1 Justification/mode/text/field separator for Label 7.
Label7Reverse 1
Label7Text Var.
FS 1
Label8Just 1 Justification/mode/text for Label 8.
Label8Reverse 1
Label8Text Var.

Response

Field 5001

Field Name Length Description
TTT 3 Tag (always = 010)
LLL 3 Length of the following data
ActionButton Var. If field 11 Completion Code = 000 (success), returns code for action button or key pressed:
    777=Enter (green) key
    888=Cancel (red) key
    1=ButtonA
    2=ButtonB
    3=ButtonC
    4=ButtonD
    5=ButtonE
    6=ButtonF
    7=ButtonG
    8=ButtonH

Sample Message (One Button)

Request

The following request tells Simplify to display the screen shown below:

API Field #, Value Description
0001,36 Transaction Type
0011,14123010120 User Data. See Field 11 (User Data) .
5001,[see value below] Non-Financial Data
    010=Tag
    276=Length of data
    1=Allow Enter key
    1=Allow Cancel key
    1=Beeper active
    Button 2=Descriptor for virtual button position B
    1=Line 1 left-justified
    0=Line 1 standard mode
    This line is left justified (etc.)=Text of line 1 (etc.)

5001,010276111FSButton 2FSFSFSFSFSFSFS10Thisline is left justified in normal mode 52 charsFS20This second line should be centeredFS30This third line is right justifiedFS21This line should be in reverse modeFS20This fifth line should be back in normal modeFS10This is line 6left justifyFS10This is line 7 left justify

Response

API Field #, Value Description
0001,36 Transaction Type
0011,14123010000 User Data. See Field 11 (User Data) .
5001,0100038880 Non-Financial Data
    010=Tag
    003=Length of data
    888=Cancel key pressed

Sample Message (Eight Buttons)

Request

The following request tells Simplify to display the screen shown below:

API Field #, Value Description
0001,36 Transaction Type
0011,14123010120 User Data. See Field 11 (User Data) .
5001,[see value below] Non-Financial Data
    010=Tag
    128=Length of data
    1=Allow Enter key
    1=Allow Cancel key
    1=Beeper active
    Button 1=Descriptor for virtual button position A (etc.)
    1=Line 1 left-justified
    0=Line 1 standard mode
    Line 1=Text of line 1 (etc.)

5001,010128111Button 1FSButton 2FSButton 3FSButton 4FSButton 5FSButton 6FSButton 7FSButton 8FS10Line 1FS10Line 2FS10Line 3FS10Line 4FS10Line 5FS10Line 6

Response

API Field #, Value Description
0001,36 Transaction Type
0011,14123010000 User Data
5001,0100011 Non-Financial Data
    010=Tag
    001=Length of data
    1=ButtonA (Button 1) pressed