Skip to main content Skip to complementary content

FieldAttributes

Sets the formatting of a field. The properties of qFieldAttributes and the formatting mechanism are described below.

Formatting mechanism

The formatting mechanism depends on the type set in qType, as shown below:

Information note

In case of inconsistencies between the type and the format pattern, the format pattern takes precedence over the type.

Type is DATE, TIME, TIMESTAMP or INTERVAL

The following applies:

  • If a format pattern is defined in qFmt , the formatting is as defined in qFmt .
  • If qFmt is empty, the formatting is defined by the number interpretation variables included at the top of the script ( TimeFormat , DateFormat , TimeStampFormat ).
  • The properties qDec , qThou , qnDec , qUseThou are not used.

Type is INTEGER

The following applies:

  • If a format pattern is defined in qFmt , the engine looks at the values set in qDec and qThou . If these properties are not defined, the formatting mechanism uses the number interpretation variables included at the top of the script ( DecimalSep and ThousandSep ).
  • If no format pattern is defined in qFmt , no formatting is applied. The properties qDec , qThou , qnDec , qUseThou and the number interpretation variables defined in the script are not used .

Type is REAL

The following applies:

  • If a format pattern is defined in qFmt , the engine looks at the values set in qDec and qThou . If these properties are not defined, the engine uses the number interpretation variables included at the top of the script ( DecimalSep and ThousandSep ).
  • If no format pattern is defined in qFmt , and if the value is almost an integer value (for example, 14,000012), the value is formatted as an integer. The properties qDec , qThou , qnDec , qUseThou are not used.
  • If no format pattern is defined in qFmt , and if qnDec is defined and not 0, the property qDec is used. If qDec is not defined, the variable DecimalSep defined at the top of the script is used.
  • If no format pattern is defined in qFmt , and if qnDec is 0, the number of decimals is 14 and the property qDec is used. If qDec is not defined, the variable DecimalSep defined at the top of the script is used.

Type is FIX

The following applies:

  • If a format pattern is defined in qFmt , the engine looks at the values set in qDec and qThou . If these properties are not defined, the engine uses the number interpretation variables included at the top of the script ( DecimalSep and ThousandSep ).
  • If no format pattern is defined in qFmt , the properties qDec and qnDec are used. If qDec is not defined, the variable DecimalSep defined at the top of the script is used.

Type is MONEY

The following applies:

  • If a format pattern is defined in qFmt , the engine looks at the values set in qDec and qThou . If these properties are not defined, the engine uses the number interpretation variables included at the top of any script ( MoneyDecimalSep and MoneyThousandSep ).
  • If no format pattern is defined in qFmt , the engine uses the number interpretation variables included at the top of the script ( MoneyDecimalSep and MoneyThousandSep ).

Type is ASCII

No formatting, qFmt is ignored.

Properties

Name Description Type
qType

Type of the field. Default is U.

One of:

  • U or UNKNOWN
  • A or ASCII
  • I or INTEGER
  • R or REAL
  • F or FIX
  • M or MONEY
  • D or DATE
  • T or TIME
  • TS or TIMESTAMP
  • IV or INTERVAL
String
qnDec

Number of decimals. Default is 10.

Integer
qUseThou

Defines whether or not a thousands separator must be used. Default is 0.

Integer
qFmt

Defines the format pattern that applies to qText . Is used in connection to the type of the field (parameter qType ). For more information, see Formatting mechanism. Example: YYYY-MM-DD for a date.

String
qDec

Defines the decimal separator. Example: .

String
qThou

Defines the thousand separator (if any). Is used if qUseThou is set to 1. Example: ,

String

Did this page help you?

If you find any issues with this page or its content – a typo, a missing step, or a technical error – let us know how we can improve!