HP 3000 Manuals

HPDPROMPT [ High-Level Screen Management Intrinsic Library (Hi-Li) Reference Manual ] MPE/iX 5.0 Documentation


High-Level Screen Management Intrinsic Library (Hi-Li) Reference Manual

HPDPROMPT 

Prompts the operator.

Syntax 

HPDPROMPT globalpak, returnpak, promptpak, cursorposition, msg, 
fieldlist, labeldescrpt, labelbuf 

Parameter Descriptions 

globalpak                 A compound parameter that passes information
                          between intrinsics.  For a complete description
                          of this parameter, see "Global Parameters" in
                          Chapter 3.

returnpak                 A compound parameter that passes information
                          back from the intrinsic to the application.
                          For a complete description of this parameter,
                          see "Global Parameters" in Chapter 3.

promptpak                 A compound parameter that modifies the default
                          operations of HPDPROMPT. It has the following
                          subparameters:

                          repaintdata               A four-byte integer
                                                    that tells HPDPROMPT
                                                    to force a rewrite of
                                                    the operator's data
                                                    display.  Use this
                                                    parameter to keep
                                                    displayed data
                                                    consistent with the
                                                    data in internal
                                                    buffers.  You can
                                                    supply the following
                                                    values:

                                                    0 = ignore
                                                    1 = force a rewrite
                                                    of the data to the
                                                    device

                          windowenh                 An eight-byte
                                                    character array that
                                                    updates the window
                                                    line enhancement.  If
                                                    the array contains
                                                    all spaces or binary
                                                    zeros, the current
                                                    window enhancement is
                                                    used.  If the array
                                                    contains "NONE" left
                                                    justified, the window
                                                    is displayed without
                                                    enhancement.  If you
                                                    do not supply either
                                                    of these values for
                                                    the array, you can
                                                    supply any of the
                                                    following values in
                                                    any combination:

                                                    I = inverse video
                                                    H = half bright -
                                                    this has no effect
                                                    unless inverse video
                                                    is set on.
                                                    U = underlined
                                                    B = blinking

                          resethilited              A four-byte integer
                                                    that tells HPDPROMPT
                                                    whether or not to
                                                    reset those fields
                                                    that are highlighted
                                                    due to errors.  You
                                                    can supply the
                                                    following values:

                                                    0 = ignore the fields
                                                    flagged in error
                                                    1 = reset the flagged
                                                    fields

                          dontenableinput           A four-byte integer
                                                    indicating that if
                                                    the keyboard is
                                                    locked, it should
                                                    remain locked; it
                                                    does not do an actual
                                                    lock.  You can supply
                                                    the following values:
                                                    0 = ignore
                                                    1 = do not enable
                                                    device to take
                                                    operator input.

                                                    Use this option if,
                                                    for example, you have
                                                    an application that
                                                    displays progress
                                                    messages during a
                                                    long transaction.
                                                    This subparameter
                                                    locks the keyboard to
                                                    prevent the operator
                                                    from inadvertently
                                                    making a keyboard
                                                    entry.

                                                    Note:  This
                                                    subparameter is only
                                                    recognized if you
                                                    have supplied a value
                                                    equal to or greater
                                                    than A.00.10 for the
                                                    globalpak 
                                                    subparameter,
                                                    expectedvuf.

                          bypassfeature             A four-byte integer
                                                    that will be used for
                                                    future Hi-Li
                                                    implementations.  At
                                                    that time, you must
                                                    supply the globalpak 
                                                    subparameter,
                                                    expectedvuf, with a
                                                    value equal to or
                                                    greater than A.00.10.
                                                    For this release of
                                                    Hi-Li software, set
                                                    bypassfeature to
                                                    zero.

cursorposition            A four-byte integer or a 36-byte array of
                          characters that identifies the field at which
                          the operator is to begin entering data.  It
                          also tells HPDPROMPT to position the cursor at
                          this field.  The field must be an input field.

                          A four-byte integer identifies the beginning
                          field by number or screen order.  A positive
                          integer indicates a field number.  A negative
                          integer indicates screen order.  If you supply
                          a zero, HPDPROMPT moves the cursor to the first
                          enhanced input field on the screen.  If no
                          fields are enhanced, the cursor is positioned
                          at the first physical input field on the
                          screen.

OR

                          A 36-byte character array that identifies the
                          beginning field by its USASCII name.  This
                          array must be preceded by a double backslash
                          (\\).  If you pass spaces in this array,
                          HPDPROMPT moves the cursor to the first
                          enhanced input field on the screen.  If no
                          fields are enhanced, the cursor is positioned
                          at the first physical input field on the
                          screen.

msg                       A compound parameter that tells HPDPROMPT the
                          message that you want displayed in the message
                          window, and the length of that message.  It is
                          made up of the following subparameters:

                          msglen                    A four-byte integer
                                                    that indicates in
                                                    bytes the length of
                                                    the message you want
                                                    HPDPROMPT to transfer
                                                    to the window area.
                                                    If you supply a zero,
                                                    HPDPROMPT fills the
                                                    window with blanks.
                                                    If you supply a
                                                    negative number,
                                                    HPDPROMPT does not
                                                    update the window
                                                    area and the previous
                                                    message is displayed.

                          msgline                   A character array of
                                                    up to 256 bytes that
                                                    identifies the
                                                    message you want
                                                    HPDPROMPT to display
                                                    in the window area.

fieldlist                 A compound parameter that identifies for
                          HPDPROMPT the fields you want highlighted.
                          This parameter is compatible with the HPDREAD
                          fieldlist parameter.  It is made up of the
                          following subparameters:

                          listtype                  A four-byte integer
                                                    that tells HPDPROMPT
                                                    to list the fields by
                                                    number or name.  You
                                                    can supply the
                                                    following values:
                                                    0 = null list
                                                    1 or 2 = fields
                                                    listed in number
                                                    format
                                                    3 = fields listed in
                                                    name format

                          allocnt                   A four-byte integer
                                                    that is not used by
                                                    HPDPROMPT.

                          actualcnt                 A four-byte integer
                                                    that indicates the
                                                    number of active
                                                    entries in the list
                                                    of fields.

                          listentry                 Identifies the table
                                                    of fields defined in
                                                    your application.

                          fieldident                If you supplied a
                                                    value of 1 or 2 for
                                                    listtype, this is a
                                                    four-byte integer
                                                    that identifies a
                                                    field.  A positive
                                                    number indicates
                                                    field number.  A
                                                    negative number
                                                    indicates screen
                                                    order.

                                                    If you supplied a
                                                    value of 3 for
                                                    listtype, this is a
                                                    32-byte character
                                                    array that identifies
                                                    the USASCII character
                                                    name of a field.

labeldescrpt              A compound parameter that identifies for
                          HPDPROMPT the key labels that your application
                          will update.  Function keys are labeled, by
                          default, with the label strings defined in the
                          forms file.  labeldescrpt is made up of the
                          following subparameters:

                          descrptcnt                A four-byte integer
                                                    that indicates the
                                                    number of labels to
                                                    be updated.

                          descrptentry              Identifies a table
                                                    defined in your
                                                    application.

                          labelident                A four-byte integer
                                                    that identifies the
                                                    key label number.

                          labelenh                  An eight-byte
                                                    character array that
                                                    will be used by a
                                                    future Hi-Li
                                                    enhancement to tell
                                                    HPDPROMPT to accept
                                                    whatever the current
                                                    enhancement is.  It
                                                    is not currently used
                                                    by HPDPROMPT. It is
                                                    recommended that you
                                                    set this variable to
                                                    spaces or binary
                                                    zeros.

OR

                          labeldescrpt is made up of the following set of
                          subparameters:

                          labelset                  A 36-byte character
                                                    array specified by
                                                    double backslashes
                                                    followed by the
                                                    USASCII character
                                                    label set name.

                                                    Specifying (double
                                                    backslash)
                                                    $RESET_FORM tells
                                                    Hi-Li to reset
                                                    function key labels
                                                    to the base set
                                                    specified for the
                                                    current form.  If a
                                                    label set was not
                                                    defined for the form,
                                                    Hi-Li uses the forms
                                                    file global set as
                                                    the base set.
                                                    Specifying spaces
                                                    tells Hi-Li not to
                                                    update the current
                                                    function key labels.

                                                    For a discussion of
                                                    the labelset 
                                                    subparameter, see the
                                                    Discussion for
                                                    HPDPROMPT that
                                                    follows these
                                                    parameters.

labelbuf                  A byte array of characters that identifies for
                          HPDPROMPT the application area that contains
                          the label strings.  For the HP 3000, 16 bytes
                          are sent to each label.

Discussion 

HPDPROMPT is one of the three core intrinsics that make up the screen
management intrinsics.  Use this intrinsic to display messages, highlight
and position the cursor at selected fields, and update key labels when an
operator error is detected.  Parameters that are not required by your
application can be compacted and passed as abbreviated parameters.

<3>Creating Function Key Label Sets Using LABELSET

Because there is no facility within FORMSPEC/V for defining free-floating
function key label sets, the HPDPROMPT and HPDSEND labelset subparameter
(of the labeldescrpt parameter) provides this ability by "borrowing" the
function key label set from the form you identify in the labelset 
subparameter.

The form you identify can be any of the "live" forms in the forms file or
it can be a "dummy" form which exists only as a function key label set
place holder.  You can create a place holder for a key label set by
adding a form to the forms file, defining a set of labels for the form,
and building a one character, text only, screen image for the dummy form.

Examples 

        COBOL:
                    01   fieldlist.
                         05  listtype              pic s9(8) comp.
                         05  allocnt               pic s9(8) comp.
                         05  actualcnt             pic s9(8) comp.
                         05  listentry  occurs 5 times.
                             10 fieldid            pic s9(8) comp.

                    01   labeldescrpt.
                         05  descrptcnt            pic s9(8) comp.
                         05  descrptentry  occurs 8 times.
                             10  labelident        pic s9(8) comp.
                             10  labelenh          pic x(8).

        FORTRAN:
                    INTEGER*4        FIELDLIST(8)
                    INTEGER*4        LISTTYPE
                    INTEGER*4        ALLOCNT
                    INTEGER*4        ACTUALCNT
                    EQUIVALENCE (FIELDLIST(1), LISTTYPE),
                   +            (FIELDLIST(2), ALLOCNT),
                   +            (FIELDLIST(3), ACTUALCNT)
                       INTEGER*4    FIELDID(1,5)
                       EQUIVALENCE (FIELDLIST(4), FIELDID)

For an example of how a record structure can be manipulated in FORTRAN,
see the COLLECT_TXNS subroutine in the FORTRAN example program in
Appendix C.

        Pascal:
                    type
                      fieldlist_rec = record
                        listtype          : integer;
                        allocnt           : integer;
                        actualcnt         : integer;
                        fieldid           : array [1..5] of integer;
                          end;

                    var
                      fieldlist          : fieldlist_rec;



MPE/iX 5.0 Documentation