HP 3000 Manuals

DISPLAY [ HP Transact Documentation Update Notice ] MPE/iX 5.5 Documentation


HP Transact Documentation Update Notice

DISPLAY 

Produces a display of values from the data register.

Syntax 

     DISPLAY[([ [TABLE],[FILE=mpe-file] ])][display-list] ...;

DISPLAY generates a display from values in the data register.  The
display can be formatted and enhanced by character strings specified in
the display-list.  If you do not specify a format, the display can be
formatted by any active FORMAT verb.

Statement Parts 

none or TABLE       Transact generates a display according to the
without             specifications of an active FORMAT statement.  If
display-list        there is none, the following default formatting
                    occurs:

                       *   Values are displayed in the order in which
                           they appear in the data register.

                       *   A heading consisting of one of the following
                           is displayed before each line:

                       *   the heading specified by the HEAD= option in a
                           DEFINE(ITEM) statement,

                       *   the heading taken from the dictionary, or

                       *   the associated data item name in the list
                           register.

                       *   Each value is displayed in a field whose
                           length is the greater of the data item size or
                           the heading length.

                       *   A single blank character separates each value
                           field.  If a field cannot fit on the current
                           display line, then the field begins on a new
                           line.

TABLE with          Headings are displayed only at the top of each new
display-list        page in the information display.

mpe-file            The name of an MPE file that will receive the output
                    from the DISPLAY statement.

display-list        The display list contains one or more display fields
                    and their formatting parameters, as shown in the
                    following format:

                         [display-field][,format-parameter]...
                              [:display-field[,format-parameter]...]...;

                    Several fields can be displayed.  The fields and
                    their formatting parameters are separated by commas;
                    the field/format-parameter combinations are separated
                    from each other by colons.  If you omit display-list,
                    the display is formatted as described under "none"
                    and "TABLE".

                    display-field       The following options can be used
                                        for display fields:

                                           *   A reference to a data item
                                               name in the list register
                                               (the data item name can be
                                               subscripted if the item
                                               referenced is an array
                                               item).

                                           *   A child item name whose
                                               parent item is in the list
                                               register.

                                           *   A character string
                                               delimited by quotation
                                               marks.

                                           *   If no display field is
                                               specified, Transact
                                               defaults to a NULL (" ")
                                               character string.

                                        If the requested item cannot be
                                        found in the list register, then
                                        Transact generates an error at
                                        execution time.

                                        Five system variables can also be
                                        used as display fields.  As
                                        noted, some are affected by
                                        native language support.  (See
                                        Appendix E, "Native Language
                                        Support," for more information.)

                                        $CPU                Displays the
                                                            cumulative
                                                            amount of CPU
                                                            time used by
                                                            the Transact
                                                            program, in
                                                            milliseconds.

                                        $DATELINE           Displays the
                                                            current date
                                                            and time in
                                                            the form Tue,
                                                            Apr 14, 1992,
                                                            3:07 P.M. The
                                                            format is
                                                            affected by
                                                            native
                                                            language
                                                            support.

                                        $PAGE               Displays the
                                                            current page
                                                            number.

                                        $TIME               Displays the
                                                            current time;
                                                            the default
                                                            format is
                                                            HH:MM AA (for
                                                            example,
                                                            03:07 PM).
                                                            The format is
                                                            affected by
                                                            native
                                                            language
                                                            support.

                                        $TODAY              Displays the
                                                            current date;
                                                            the default
                                                            format is
                                                            MM/DD/YY (for
                                                            example,
                                                            04/14/92).
                                                            The format is
                                                            affected by
                                                            native
                                                            language
                                                            support.

                    ____________________________________________________ 

                    NOTE  Text can be displayed only in columns 1 through
                          79.  Column 80 is reserved for the carriage
                          control character.

                    ____________________________________________________ 

format-parameters   One or more of the following formatting parameters
                    can follow the display field name:

                    CCTL=number         Issues a carriage control code of
                                        number (decimal representation)
                                        for the display line containing
                                        the associated display field.
                                        Carriage control codes are found
                                        in the MPE Intrinsics Manual.
                                        Note that the use of CCTL=number 
                                        and LINE, NOCRLF, or ROW, may
                                        affect output due to conflicting
                                        values.  [REV BEG]Valid range is
                                        30-1025.[REV END]

                    CENTER              Centers a display field on a
                                        line.  The entire field,
                                        including leading or trailing
                                        blanks, is centered.

                    COL=number          Starts the display field in the
                                        absolute column position
                                        specified by number.  The first
                                        column position is 1.  [REV
                                        BEG]Maximum is 299.[REV END]

                                        If the display is already at a
                                        column position equal to or
                                        greater than the line width of
                                        the display device, the field is
                                        truncated if:
                                           *   it is a character field,
                                               or
                                           *   pound signs are displayed
                                               for a numeric field.

                                        If no part of the field fits, it
                                        is not displayed.

                    EDIT="edit-string"  Characters that designate edit
                                        masks.  The following characters
                                        have special meanings when used
                                        in the edit-string for all
                                        display-fields except system
                                        variables $TIME and $TODAY: 

                                        ^       Inserts the character
                                                from the source data
                                                field into this position
                                                in the display field.

                                        Z       Suppresses leading zeros.
                                                Note that you must use an
                                                uppercase Z.

                                        $       Adds business (single
                                                character) currency
                                                symbol.  If the
                                                language-defined currency
                                                symbol precedes, then the
                                                symbol is floated.  If
                                                the symbol succeeds, then
                                                it follows the last
                                                character of the number
                                                and the edit mask is
                                                shifted left one
                                                character to leave room.
                                                If the symbol imbeds, it
                                                replaces the radix
                                                (decimal point or
                                                equivalent).  If no
                                                business currency symbol
                                                is defined for the
                                                current language, then
                                                "$" edit characters are
                                                treated the same as
                                                "other" edit characters,
                                                explained below.

                                                ________________________ 

                                                NOTE  In Transact/iX
                                                      native language
                                                      mode, the pound
                                                      sterling currency
                                                      sign ( sterling )
                                                      does not float the
                                                      way the dollar sign
                                                      ($) does in a
                                                      displayed field
                                                      with the edit mask.
                                                      To get the pound
                                                      sign to float,
                                                      change your
                                                      terminal
                                                      configuration to
                                                      KEYBOARD=UK. When
                                                      you specify the
                                                      edit mask, use the
                                                      dollar sign in
                                                      place of the pound
                                                      sign.  The pound
                                                      sign will then be
                                                      displayed.

                                                ________________________ 

                                                ________________________ 

                                                NOTE  The number of
                                                      digits available
                                                      for the source
                                                      number depends on
                                                      the type of
                                                      currency symbol.
                                                      Thus, the same
                                                      value might cause a
                                                      field overflow in
                                                      some languages and
                                                      not in others.

                                                ________________________ 

                                        *       Fills field with
                                                asterisks. 

                                        .       Aligns the implied
                                                decimal point as
                                                specified in the
                                                dictionary or in a
                                                DEFINE(ITEM) definition
                                                statement with this edit
                                                character in the edit
                                                mask and outputs the
                                                language-defined radix
                                                character. 

                                        !       Ignores the implied
                                                decimal place and
                                                replaces this character
                                                with a language defined
                                                radix character. 

                                        ,       Outputs the
                                                language-defined
                                                thousands separator
                                                character (numeric only). 

                                        (       Surrounds negative values
                                                with parentheses (must be
                                                last character in edit
                                                mask). 

                                        All "other" characters, which
                                        mean any character not defined
                                        above in the list of special
                                        characters, are treated as insert
                                        characters.  For example:

                                             EDIT="@@@@@@.@@"

                                        displays entered data as:

                                             @@@@@@.@@

                                        To denote numeric data type 9, Z,
                                        P, I, J, K, R, or E negative
                                        values with a trailing "-", "CR",
                                        or "DR", add a trailing "-",
                                        "CR", or "DR" to the edit string.
                                        Some edit-string examples follow:

                                              Number         Edit String          Result

                                               1234          $$,$$$!^^             $l2.34
                                             123456          $$,$$$!^^          $1,234.56
                                             123456         ***,**$!^^         *$1,234.56
                                             000009            ZZZZ!^^                .09
                                             475.49         XXX,XXX.XX         XXX,XXX.XX
                                             -123456         $$,$$$!^^CR      $1,234.56CR
                                             -123456          Z,ZZZ!^^-        $1,234.56-
                                              230485           ^^/^^/^^          23/04/85

                                        System variables (except
                                        $DATELINE) can also be edited.
                                        The edit mask characters just
                                        defined can be used for $CPU and
                                        $PAGE. Special editing characters
                                        are used for $TIME and $TODAY.
                                        For $TIME, characters in the
                                        edit-mask string are processed as
                                        follows: 

                                        H       Displays the hour with no
                                                leading blank or zero if
                                                hour < 10. 

                                        ZH      Displays the hour with
                                                leading blank if hours <
                                                10. 

                                        HH      Displays the hour with
                                                leading zero if hours <
                                                10. 

                                        24      Displays the hour as
                                                expressed on a 24-hours
                                                clock; used as a prefix
                                                to H. 

                                        M       Displays the minute with
                                                no leading blank or zero
                                                if minute < 10. 

                                        ZM      Displays the minute with
                                                leading blank if minute <
                                                10. 

                                        MM      Displays the minute with
                                                leading zero if minute <
                                                10. 

                                        S       Displays the second with
                                                no leading blank or zero
                                                if second < 10.

                                        ZS      Displays the second with
                                                leading blank if second <
                                                10.

                                        SS      Displays the second with
                                                leading zero if second <
                                                10.

                                        T       Displays the tenth of a
                                                second. 

                                        A       Displays the next letter
                                                in the AM or PM sequence
                                                in uppercase. 

                                        a       Displays the next letter
                                                in the AM or PM sequence
                                                in lowercase.

                                        AA      Displays both letters in
                                                the AM or PM sequence in
                                                uppercase. 

                                        aa      Displays both letters in
                                                the AM or PM sequence in
                                                lowercase.

                                        Except for "a", all other $TIME
                                        edit mask characters must be in
                                        uppercase.  All characters other
                                        than edit mask characters are
                                        inserted on a character by
                                        character basis.

                                        Here are some examples of how
                                        edit masks change the format of
                                        the $TIME value 3:07:32 PM:

                                               Edit Mask         Displayed Time

                                              HH:MM:SS            03:07:32
                                              24H:M:S             15:7:32
                                              H:MM:SS a.a.        3:07:32 p.m.
                                              ZH:ZM:SS AA         3: 7:32 PM

                                        For $TODAY, characters in the
                                        edit mask string are processed as
                                        follows: 

                                        D       Displays the day of the
                                                month with no leading
                                                blank or zero if day <
                                                10. 

                                        ZD      Displays the day of the
                                                month with leading blank
                                                if day < 10. 

                                        DD      Displays the day of the
                                                month with leading zero
                                                if day of the month < 10. 

                                        DDD     Displays the Julian day
                                                of year. 

                                        M       Displays the month with
                                                no leading blank or zero
                                                if month < 10. 

                                        ZM      Displays the month with
                                                leading blank if month <
                                                10. 

                                        MM      Displays the month with
                                                leading zero if month <
                                                10. 

                                        nM      Displays the first n 
                                                letters of month name in
                                                uppercase; if n > number
                                                of letters in month name,
                                                trailing blanks are not
                                                inserted. 

                                        nm      Displays the first n 
                                                letters of month name in
                                                lowercase except for the
                                                first letter, which
                                                appears in uppercase. 

                                        YY      Displays the last two
                                                digits in current year. 

                                        YYYY    Displays the current
                                                year. 

                                        nW      Displays the first n 
                                                letters of day of week in
                                                uppercase; if n > length
                                                of the week name, no
                                                trailing blanks are
                                                inserted. 

                                        nw      Displays the first n 
                                                letters of day of week in
                                                lowercase except for the
                                                first letter, which
                                                appears in uppercase. 

                                        All edit string characters must
                                        be in uppercase, except for "m"
                                        and "w".  All characters not
                                        defined as an edit string
                                        character are inserted on a
                                        character by character basis.

                                        Various edit masks applied to the
                                        $TODAY date April 14, 1992, make
                                        it appear as follows:

                                                 Edit Mask           Displayed Date

                                              3w. 3m DD, YYYY        Tue. Apr 14, 1992
                                              DD 3M, YY              14 APR, 92
                                              M-DD-YY                4-14-92
                                              MM/DD/YY               04/14/92
                                              DDD, YYYY              105, 1992

                                        ________________________________ 

                                        NOTE  When a numeric value to be
                                              printed is too large for
                                              the edit mask, a series of
                                              pound signs (#) are printed
                                              in place of the value, to
                                              indicate an overflow.

                                        ________________________________ 

                    HEAD="character-    Uses the character-string rather
                    string"             than the default, which is the
                                        heading from the dictionary, the
                                        heading from DEFINE(ITEM), or the
                                        item or system variable name.

                    JOIN[=number]       Places this number of spaces
                                        between the last non-blank
                                        character of the current line and
                                        the first character of the
                                        current display field.  To
                                        concatenate the character
                                        strings, use JOIN=0.  The default
                                        is 1;[REV BEG] valid range is
                                        0-299.[REV END]

                    LEFT                Left-justifies the data item
                                        value in the display field.  This
                                        is the default specification.

                    LINE[=number]       Starts the next display field on
                                        a new line or on a line after a
                                        line skip count specified by
                                        number.  If the print device
                                        being used can overprint and you
                                        want it to do so, you should
                                        specify LINE=0.  [REV BEG][LINE=0
                                        and LINE= cause a carriage return
                                        but no line feed.]  The default
                                        is 1; maximum is 99.[REV END]

                    LNG=number          Truncates the display field to
                                        this number of characters.  If
                                        this option refers to a compound
                                        item, then that item is displayed
                                        within a display field length of
                                        number.  If necessary, new lines
                                        are generated.  [REV BEG]Range is
                                        1-299.[REV END]

                    NEED=number         Prints the current line at the
                                        top of the next page if there are
                                        fewer than the specified number
                                        of lines between the current line
                                        and the bottom of the page.  If
                                        you are grouping a set of items
                                        together on a single line, the
                                        NEED= must appear with the first
                                        item.  [REV BEG]Range is
                                        1-99.[REV END] 

                    NOCRLF              Does not issue a carriage return
                                        and line feed for the display
                                        line containing the display
                                        field.  This parameter allows you
                                        to print output from the next
                                        DISPLAY statement on the same
                                        line where the previous display
                                        left off.  NOCRLF is processed
                                        when a listing goes to the
                                        terminal or printer.  If the
                                        listing is sent to a disk file,
                                        the option is ignored.

                    NOHEAD              Suppresses the default heading
                                        for this item reference.

                    NOSIGN              A numeric display field is always
                                        positive and no sign position is
                                        required in the display field.
                                        If a negative value occurs, the
                                        display field contains a string
                                        of minus signs (-).

                    PAGE[=number]       Starts the display field on a new
                                        page or on a page after a page
                                        skip count specified by number.
                                        The default is 1; [REV
                                        BEG]maximum is 99.[REV END]

                    RIGHT               Right-justifies the data item
                                        value in the display field.

                    ROW=number          Places the display field at
                                        absolute line location number.
                                        The first line position is 1.  If
                                        the display is already at a line
                                        position greater than number,
                                        then LINE=1 is in effect.  [REV
                                        BEG]Maximum is 99.[REV END]

                    SPACE[=number]      Places this number of spaces
                                        between the end of the previous
                                        display field and the start of
                                        the current display field.  To
                                        concatenate fields, use SPACE=0.
                                        Default is 1; [REV BEG]maximum is
                                        299.[REV END]

                    TITLE               Displays the associated display
                                        field and any preceding display
                                        fields only at the start of each
                                        new page for which this statement
                                        applies.

                    TRUNCATE            Truncates this display field if
                                        it overflows the end of the
                                        display line; if field is a
                                        numeric type, displays pound
                                        signs and does not truncate.

                    ZERO[E]S            Right-justifies a numeric data
                                        value in the display field and
                                        inserts leading zeros.

Redirecting Output To A File 

The formatted output generated by DISPLAY can be redirected to a
specified file by using the FILE= option.  This feature allows you to
generate multiple reports and to save each in a different file.  The only
requirement is that the specified file must first be identified by a
corresponding SYSTEM statement using the FILE= option.  If the file is
not defined in the SYSTEM statement, an INVALID FILE NAME error will
occur during compilation.  The default output width for DISPLAY is 79
characters.

When using this option, the DISPLAY verb sets the status register to
indicate the number of characters written to the specified file or -1 to
indicate an end-of-file.  The status register is not altered unless the
FILE= option is used.

When using SET(OPTION) PRINT, the output file must be built with records
= 133 characters.

Examples 

Assuming the items NAME, ADDRESS, CITY, DISCOUNT, and CUR-BAL have been
defined and also specified in a LIST statement, the following code:

        DISPLAY NAME, COL=5:
                ADDRESS, SPACE=3:
                CITY, SPACE=5:
                "DISCOUNT RATE IS", LINE=2, COL=5:
                DISCOUNT, NOHEAD:
                "%", JOIN=0:
                "CURRENT BALANCE IS", SPACE=10:
                CUR-BAL, EDIT="$,$$$,$$$.^^", NOHEAD;

results in the following display:

      NAME            ADDRESS                  CITY
       SMITH R         3304 ROCKY ROAD          COLORADO SPRINGS

      DISCOUNT RATE IS 7.5%          CURRENT BALANCE IS    $14,734.05

The following example illustrates the use of the TABLE modifier and the
TITLE option:

        DISPLAY(TABLE)
               "CUSTOMER LIST", COL=25, TITLE:
               CUST-NO, LINE=2:
               FIRST-NAME, SPACE=3:
               LAST-NAME, JOIN=3:
               STREET-ADDR, SPACE=3:
               CITY, SPACE=3:
               ZIP, SPACE=3;

This statement produces a display that prints the title "CUSTOMER LIST"
at the start of each page as a result of the TITLE option, and only
prints the item heads once on each page as a result of the TABLE
modifier.  For example,

                               CUSTOMER LIST
     CUST-NO:   FIRST-NAME:   LAST-NAME:   STREET-ADDR:     CITY:          ZIP:

      22431      John   Jones               5 Main Avenue    Centerville    12345

      34567      Mary   Smith               123 4th St.      Roseville      95747

The following example shows the use of the FILE= option to redirect
formatted output.  It routes EMPLOYEE-NAME, EMPLOYEE-ADDRESS, and SALARY
to the MPE file "REPORT."

     DISPLAY(FILE=REPORT) EMPLOYEE-NAME: EMPLOYEE-ADDRESS: SALARY;



MPE/iX 5.5 Documentation