MENU LAYOUT SCREEN DEFINITION

A menu is defined with a LAYOUT SCREEN definition.  The LAYOUT SCREEN definition is a group of statements that are specified in a Process Module (PM) Declare Section, a Global Storage (GS), or a Code Segment (CS).  The following define the syntax and description of the statements in the LAYOUT SCREEN definition.

The menu_name field following the LAYOUT SCREEN statement identifies the menu.  This menu_name field is later used as an input to the GENERATE statement/command to create the menu.  The naming convention of menu_name is the same as that of any other user-defined field.  If the layout of the menu is defined in GS, the menu_name field must follow the naming convention of a GS field and be preceded by a percent sign (%).

The menu definition begins with the LAYOUT SCREEN statement and ends with the LAYOUT END statement.

The statements between LAYOUT SCREEN and LAYOUT END must begin with a slash (/).  Spaces preceding or following the slash (/) are allowed for readability.  Note that a line can contain a slash without a statement to enhance readability

Comments begin with an exclamation point (!) and are allowed on lines by themselves or at the end of the statements.

Spaces, tabs or commas can be used to separate statement items.

The "@SCN_" prefix for screen attributes (renditions) are optional.  The attributes may be specified as @NORMAL, @BOLD, @UNDERLINE, @BLINK, and @REVERSE.  The use of @SCN_ is obsolete but still accepted.

SYNTAX

LAYOUT SCREEN menu_name
/MENU row column number_of_rows number_of_columns rendition
/SELECTION item_display keyword_length rendition
/[BORDER [rendition title]]
/[FUNCTION function_trigger_name]
/[MESSAGE row column rendition text]...
/[LINE start_row start_column end_row end_column rendition]...
/[PROMPT row column rendition text]...
/[RECTANGLE top_left_row top_left_column bottom_right_row
         bottom_right_column rendition]
/[TITLE row column rendition text]…

/ITEM row column rendition text

/[KEYWORD row column rendition text]
/[PERFORM trigger_name [/ALWAYS/ BEFORE]]...
/[HELP row column number_of_rows number_of_columns rendition]
         {/TEXT text }...
/[HELP]
         {/PERFORM help_trigger_name}
LAYOUT END

MENU Statement

SELECTION Statement In Menu Layouts

BORDER Statement
In Menu Layouts

FUNCTION Statement
In Menu Layouts
MESSAGE Statement
In Menu Layouts
LINE Statement
In Menu Layouts
RECTANGLE Statement
In Menu Layouts
ITEM Statement
In Menu Layouts
KEYWORD Substatement
In Menu Layouts
PERFORM Substatement
In Menu Layouts
HELP Substatement
In Menu Layouts
TEXT Substatement
In Menu Layouts
GENERATE Statement/Command
MENU Statement/Command
FLUSH Statement/Command

SMF Menus for end-users    Menu Statement