BEA Logo BEA Tuxedo Release 7.1

  Corporate Info  |  News  |  Solutions  |  Products  |  Partners  |  Services  |  Events  |  Download  |  How To Buy

 

   Tuxedo Doc Home   |   Programming   |   Topic List   |   Previous   |   Next   |   Contents

   Programming a BEA Tuxedo Application Using FML

Field Names and Types

The only variables allowed in boolean expressions are field references. There are several restrictions on field names. Names are made up of letters and digits; the first character must be a letter. The underscore (_) counts as a letter; it is useful for improving the readability of long variable names. Up to 30 characters are significant. There are no reserved words.

For a fielded buffer evaluation, any field that is referenced in a boolean expression must exist in a field table. This implies that the FLDTBLDIR and FIELDTBLS environment variables are set, as described in Setting Up Your Environment for FML and VIEWS before using the boolean compilation function. The field types used in booleans are those allowed for FML fields: short, long, float, double, char, string, and carray. Along with the field name, the field type is kept in the field table. Thus, the field type can always be determined.

For a VIEW evaluation, any field that is referenced in a boolean expression must exist as a C structure element name, not the associated fielded buffer name, in the VIEW. This implies that the VIEWDIR and VIEWFILES environment variables are set, as described in Setting Up Your Environment for FML and VIEWS before using the boolean compilation function. The field types used in booleans are those allowed for FML VIEWS: short, long, float, double, char, string, carray, plus int and dec_t. Along with the field name, the field type is kept in the view definition. Thus, the field type can always be determined.

Strings

A string is a group of characters within single quotes. The ASCII code for a character may be substituted for the character via an escape sequence. An escape sequence takes the form of a backslash followed by exactly two hexadecimal digits. This convention differs from the C language convention of using a hexadecimal escape sequence that starts with \x.

As an example, consider `hello' and `hell\\6f'. They are equivalent strings because the hexadecimal code for an `o' is 6f.

Octal escape sequences and escape sequences such as \n are not supported.

Constants

Numeric integer and floating point constants are accepted, as in C. (Octal and hexadecimal constants are not recognized.) Integer constants are treated as longs and floating point constants are treated as doubles. (Decimal constants for the dec_t type are not supported.)