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

note

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

Subfield NameLengthDescription
TTT3Tag (always = 010)
LLL3Length of the following data
AllowEnter1Allow Enter hard key (0=Not allow, 1=Allow)
AllowCancel1Allow Cancel hard key (0=Not allow, 1=Allow)
Beeper1Sound tone (0=No, 1=Yes)
ButtonADescVar.Descriptor for first button position (from left) on top (A)
FS1Field separator (Hex 1C)
ButtonBDescVar.Descriptor/field separator for second button position on top (B)
FS1
ButtonCDescVar.Descriptor/field separator for third button position on top (C)
FS1
ButtonDDescVar.Descriptor/field separator for fourth button position on top (D)
FS1
ButtonEDescVar.Descriptor/field separator for first button position (from left) on bottom (E)
FS1
ButtonFDescVar.Descriptor/field separator for second button position on bottom (F)
FS1
ButtonGDescVar.Descriptor/field separator for third button position on bottom (G)
FS1
ButtonHDescVar.Descriptor/field separator for fourth button position on bottom (H)
FS1
Label1Just1Label 1 Justification (1=Left justify, 2=Center, 3=Right justify)
Label1Reverse1Reverse mode (0=standard mode, 1=reverse mode).
Label1TextVar.Label 1 Text
FS1Field separator (Hex 1C)
Label2Just1Justification/mode/text/field separator for Label 2.
Label2Reverse1
Label2TextVar.
FS1
Label3Just1Justification/mode/text/field separator for Label 3.
Label3Reverse1
Label3TextVar.
FS1
Label4Just1Justification/mode/text/field separator for Label 4.
Label4Reverse1
Label4TextVar.
FS1
Label5Just1Justification/mode/text/field separator for Label 5.
Label5Reverse1
Label5TextVar.
FS1
Label6Just1Justification/mode/text/field separator for Label 6.
Label6Reverse1
Label6TextVar.
FS1
Label7Just1Justification/mode/text/field separator for Label 7.
Label7Reverse1
Label7TextVar.
FS1
Label8Just1Justification/mode/text for Label 8.
Label8Reverse1
Label8TextVar.

Response

Field NameLengthDescription
TTT3Tag (always = 010)
LLL3Length of the following data
ActionButtonVar.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)

The following sample is intended to show formatting available for text lines in this message.

Request

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

API Field #, ValueDescription
0001,36Transaction Type
0011,xxx..User Data. See Simplify-Controlled Field Definitions.
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

sample screen showing available formatting

Response

API Field #, ValueDescription
0001,36Transaction Type
0011,xxx..User Data. See Simplify-Controlled Field Definitions.
5001,0100038880Non-Financial Data
  • 010=Tag
  • 003=Length of data
  • 888=Cancel key pressed
5002,80378002Device serial number (if present)

Sample Message (Eight Buttons)

Request

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

API Field #, ValueDescription
0001,36Transaction Type
0011,xxx..User Data. See Simplify-Controlled Field Definitions.
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 (etc.)=Descriptor for virtual button position A (etc.)
  • 1=Line 1 left-justified
  • 0=Line 1 standard mode
  • Line 1 (etc.)=Text of line 1 (etc.)

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

sample screen with eight buttons

Response

API Field #, ValueDescription
0001,36Transaction Type
0011,xxx..User Data. See Simplify-Controlled Field Definitions.
5001,0100011Non-Financial Data
  • 010=Tag
  • 001=Length of data
  • 1=ButtonA (Button 1) pressed
5002,80378002Device serial number (if present)