|
VMS Help Lexicals, F$FAO, Directives *Conan The Librarian |
Specify an FAO directive using any one of the following formats:
Format Function
!DD One directive
!n(DD) A directive repeated a specified number of times
!lengthDD A directive that places its output in a field of a
specified length
!n(lengthDD) A directive that is repeated a specified number of
times and generates output fields of a specified
length
The exclamation point (!) indicates that the following character
or characters are to be interpreted as an FAO directive. DD
represents a 1- or 2-character uppercase code indicating
the action that F$FAO is to perform. When specifying repeat
counts, n is a decimal value specifying the number of times the
directive is to be repeated. The length value is a decimal number
that instructs F$FAO to generate an output field of "length"
characters.
Repeat counts and output lengths may also be specified by using
a number sign (#) in place of absolute numeric value. If you use
a number sign, you must specify the numeric value as an integer
expression in the corresponding place in the argument list.
When a variable output field is specified with a repeat count,
only one length parameter is required, because each output string
has the specified length.
Here is a summary of the FAO directives you can specify in a
control string.
NOTE
Two types of directives that are supported by the $FAO
system service are not supported by the DCL F$FAO lexical
function. These types are:
o Quadword numeric directives, which are not supported
in DCL because all DCL numeric values are stored and
manipulated as longwords.
o String directives other than the !AS directive, which are
not supported in DCL because all DCL strings are stored
and manipulated by descriptor.
For further information on the $FAO system service
directive, see the HP OpenVMS System Services Reference
Manual.
Argument
Directive Type Description
Character string insertion:
!AS String Inserts a character string as is.
Zero-filled numeric conversion:
!OB Integer Converts a byte to octal notation.
!OW Integer Converts a word to octal notation.
!OL Integer Converts a longword to octal notation.
!XB Integer Converts a byte to hexadecimal notation.
!XW Integer Converts a word to hexadecimal notation.
!XL Integer Converts a longword to hexadecimal
notation.
!ZB Integer Converts a byte to decimal notation.
!ZW Integer Converts a word to decimal notation.
!ZL Integer Converts a longword to decimal notation.
Blank-filled numeric conversion:
!UB Integer Converts a byte to decimal notation
without adjusting for negative numbers.
!UW Integer Converts a word to decimal notation
without adjusting for negative numbers.
!UL Integer Converts a longword to decimal notation
without adjusting for negative numbers.
!SB Integer Converts a byte to decimal notation
with negative numbers converted
properly.
!SW Integer Converts a word to decimal notation
with negative numbers converted
properly.
!SL Integer Converts a longword to decimal notation
with negative numbers converted
properly.
Special formatting:
!/ None Inserts a carriage return and a line
feed.
!_ None Inserts a tab.
!^ None Inserts a form feed.
!! None Inserts an exclamation point (!).
!%I Integer Converts a longword integer to a named
UIC in the format
[group-identifier,member-identifier].
!%S None Inserts an "s" if the most recently
converted number is not 1. (Not
recommended for use with multilingual
products.)
!%U Integer Converts a longword integer to a numeric
UIC in the format [g,m], where g is the
group number and m is the member number.
The directive inserts the brackets and
the comma.
!n<...!> None Left-justifies and blank-fills all data
represented by the instructions . . . in
fields n characters wide.
!n*c None Repeats the character represented
by c for n times.
!n%C String Inserts a character string when the
most recently evaluated argument has
the value n. (Recommended for use with
multilingual products.)
!%E String Inserts a character string when the
value of the most recently evaluated
argument does not match any preceding
!n%C directives. (Recommended for use
with multilingual products.)
!%F None Marks the end of a plurals statement.
!%T Integer Inserts the current time.
equal to 0
!%D Integer Inserts the current date/time.
equal to 0
Argument interpretation:
!- None Reuses the last argument.
!+ None Skips the next argument.
|
|