CodeGen Documentation
CodeGen Documentation

Key Segment Loop Expression Tokens

 

Key segment loop expressions are expressions that can only be used within the context of a key segment loop and allow you to conditionally include or exclude code based on the attributes of the current key segment.

Key Segment Loop Expression

Description

<IF SEG_ALPHA>

The key segment is a case-sensitive alpha value.

<IF SEG_ASCENDING>

The key segments data is organized in ascending sequence.

<IF SEG_AUTO_SEQUENCE>

The key segment is an auto-sequence value. ISAM Rev 6 (Synergy/DE 10.1.1 or higher).

<IF SEG_AUTO_TIMESTAMP>

The key segment is an auto-time-stamp segment, of one of the two types shown below. ISAM Rev 6 (Synergy/DE 10.1.1 or higher).

<IF SEG_AUTO_TIMESTAMP_CREATED>

 

The key segment is an auto-time-stamp segment with values that are set only when records are first created. ISAM Rev 6 (Synergy/DE 10.1.1 or higher).

<IF SEG_AUTO_TIMESTAMP_UPDATED>

 

The key segment is an auto-time-stamp segment with values that are set whenever records are updated. ISAM Rev 6 (Synergy/DE 10.1.1 or higher).

<IF SEG_DECIMAL>

The key segment is a decimal value.

<IF SEG_DESCENDING>

The key segments data is organized in descending sequence.

<IF SEG_NOCASE>

The key segment is a non case-sensitive alpha value.

<IF SEG_SIGNED>

The key segment is a signed integer value.

<IF SEG_TAG_EQUAL>

 

The field associated with the key segment is in turn associated with a structure tag, and that tag is a "field .EQ. value" expression.

<IF SEG_TYPE_EXTERNAL>

The key segment is associated with an external value.

<IF SEG_TYPE_FIELD>

The key segment is associated with a field in the record.

<IF SEG_TYPE_LITERAL>

The key segment is a literal value.

<IF SEG_TYPE_RECNUM>

The key segment is a record number.

<IF SEG_UNSIGNED>

The key segment is an unsigned integer value.

Key Segment Loop Expressions Reference : Associated Field Expressions

Expression

Description

<IF ALPHA>

Data type is Alpha.

<IF ALLOW_LIST>

The field has allow list values.

<IF ALTERNATE_NAME>

The field has an alternate name specified. The <FIELD_ALTNAME> token will always return a value because if no alternate name is specified in the repository then it defaults to the fields real name. This token allows you to detect whether the alternate name is different from the real name.

<IF ARRAY>

The field was part of an an array.

<IF ARRAY_FIRST>

The field was the very first element of an array.

 

<IF ARRIVE>

The field has an arrive method specified.

<IF BINARY>

The field is a binary field. Binary fields are also alpha fields.

<IF BOLD>

The field should be displayed in bold.

<IF BOOLEAN>

The fields data type is boolean. This only applies to fields whose actual Synergy data type is boolean, not to numeric fields with a coerced type of boolean.

<IF BZERO>

The numeric field should be displayed blank if the field value is zero.

<IF BREAK>

The field is a break field. This expression matches any type of break condition (change, always or return).

<IF BREAK_ALWAYS>

The field is a break field. The break field logic always executes whenever the field is processed.

<IF BREAK_CHANGE>

The field is a break field. The break field logic only executes when the value of the field changes.

<IF BREAK_RETURN>

The field is a break field. The break field logic only executes when the user presses RETURN on the field.

<IF CHANGE>

The field has a change method specified.

<IF CHECKBOX>

The field should be displayed as a check-box.

<IF COERCE_BOOLEAN>

The field data type is coerced to boolean.

<IF COMBOBOX>

The field should be displayed as a combo-box.

<IF DATE>

The field is a date or nullable field. Note that for compatibility with xfNetLink clients, which treat julian dates (YYPP or YYYYPP) as strings, this expression does NOT consider such fields to be dates.

<IF DATEORTIME>

The field is a date field or a time field.

<IF DATETODAY>

The date field should default to the current date.

<DATE_JULIAN>

The field is a date field of type YYJJJ or YYYYJJJ.

<DATE_NOT_JULIAN>

The field is a date field but is NOT a Julian date. It could be a reverse date or a period date.

<DATE_NOT_NULLABLE>

The field is a date, but not a nullable date.

<DATE_NOT_PERIOD>

The field is a date field but is NOT a period date. It could be a reverse date or a Julian date.

<DATE_NOT_YMD>

The field is a date field but is NOT a YYMMDD or YYYYMMDD date.

<DATE_NOT_YYYYMMDD>

The field is a date field but is NOT a YYYYMMDD date.

<DATE_NULLABLE>

The field is a NULLABLE date.

<DATE_PERIOD>

The field is a date field of type YYPP or YYYYPP.

<DATE_YMD>

The field is a date field of type YYMMDD or YYYYMMDD.

<DATE_YYMMDD>

The field is a date field of type YYMMDD.

<DATE_YYYYMMDD>

The field is a date field of type YYYYMMDD.

<DATE_YYJJJ>

The field is a date field of type YYJJJ.

<DATE_YYYYJJJ>

The field is a date field of type YYYYJJJ.

<DATE_YYPP>

The field is a date field of type YYPP.

<DATE_YYYYPP>

The field is a date field of type YYYYPP.

<IF DECIMAL>

The field data type is decimal. Note that date and time fields are NOT treated as decimal fields with this conditional test.

<IF DEFAULT>

The field has a default value specified.

<IF DESCRIPTION>

The field has a description specified.

<IF DISABLED>

The field is defined as being initially disabled.

<IF DISPLAY>

The field has a display method specified.

<IF DISPLAY_LENGTH>

The field has a display length specified.

<IF DRILL>

The field has a drill method specified.

<IF ECHO>

The field should echo characters as they are typed.

<IF EDITFORMAT>

The field has an edit format method specified.

<IF ENABLED>

The field is defined as being initially enabled.

<IF FORMAT>

The field has a display format specified.

<IF ENUM>

The field is an ENUM field. This is a real language enumeration, not a UI Toolkit enumerated field.

<IF ENUMERATED>

The field has a UI Toolkit enumeration specified. This is not the same as being a real language ENUM field.

<IF FIELD_POSITION>

The field has a UI field position specified.

<IF HEADING>

The field has a report heading specified.

<IF HELPID>

The field has a help identifier specified.

<IF HYPERLINK>

The field has a hyperlink method specified.

<IF I1>

The field is an I1.

<IF I2>

The field is an I2.

<IF I4>

The field is an I4.

<IF I8>

The field is an I8.

<IF I124>

The field is an I1, I2 or I4.

<IF INCREMENT>

The field is an auto-increment field.

<IF INFOLINE>

The field has information line text specified.

<IF INPUT_CENTER>

Input should be performed center justified.

<IF INPUT_LEFT>

Input should be performed left justified.

<IF INPUT_RIGHT>

Input should be performed right justified.

<IF INTEGER>

The field data type is defined as integer.

<IF LANGUAGE>

The field is available to the language.

<IF LEAVE>

The field has a leave method specified.

<IF LONGDESC>

The field has a long description specified.

<IF MAPPED>

The field has a CodeGen field mapping specified.

<IF NEGATIVE_ALLOWED>

The field allows negative values. Use of this expression is only appropriate for numeric fields.

<IF NEGATIVE_ORZERO>

The field allows negative values or a value of zero. Positive values are not allowed. Use of this expression is only appropriate for numeric fields.

<IF NEGATIVE_REQUIRED>

The field requires a negative value. Use of this expression is only appropriate for numeric fields.

<IF NOALLOW_LIST>

The field does not have allow list values specified.

<IF NOALTERNATE_NAME>

The field does not have an alternate name specified. The <FIELD_ALTNAME> token will always return a value because if no alternate name is specified in the repository then it defaults to the fields real name. This token allows you to detect whether the alternate name is the same as the real name.

<IF NOARRIVE>

The field does not have an arrive method.

<IF NOBREAK>

The field id not a break field.

<IF NOCHANGE>

The field does not have a change method.

<IF NOCHECKBOX>

The field should not be displayed as a check-box.

<IF NOCOERCEBOOLEAN>

The field data type is not coerced to boolean.

<IF NODEFAULT>

The field does not have a default value.

<IF NODESCRIPTION>

The field does not have a description.

<IF NODISPLAY>

The field does not have a display method.

<IF NODISPLAY_LENGTH>

The field does not have a display length.

<IF NODRILL>

The field does not have a drill method.

<IF NOECHO>

The field should not echo characters as they are typed.

<IF NOEDITFORMAT>

The field does not have an edit format method.

<IF NOFORMAT>

The field does not have a format string.

<IF NOHELPID>

The field does not have a help ID.

<IF NOHYPERLINK>

The field does not have a hyperlink method.

<IF NOINCREMENT>

The field is not an auto increment field.

<IF NOINFOLINE>

The field does not have information line text.

<IF NOLANGUAGE>

The field is marked as “Excluded by Language”.

<IF NOLEAVE>

The field does not have a leave method.

<IF NOLONGDESC>

The field does not have a long description specified.

<IF NONEGATIVE>

The field does not allow negative values. This expression should only be used with numeric fields.

<IF NOPAINTCHAR>

The field does not have a custom paint character.

<IF NOPRECISION>

The field does not have a decimal precision specified (i.e. it is not an implied decimal field).

<IF NOPROMPT>

The field does not have a prompt.

<IF NORANGE>

The field does not have a numeric range specified. This expression should only be used for numeric fields.

<IF NOREPORT>

The field is marked as “Excluded by ReportWriter”.

<IF NOSELECTIONS>

The field does not have selection list values.

<IF NOSELWND>

The field does not have a selection window name specified.

<IF NOTALPHA>

The field data type is not defines as Alpha.

<IF NOTBINARY>

The field is not a binary field. Binary fields are also alpha fields.

<IF NOTBOOLEAN>

The field is not a boolean field.

<IF NOTBZERO>

The numeric field should not be displayed as blank if the value is zero.

<IF NOTDATE>

The field is not defined as a date field.

<IF NODATEORTIME>

The field is not a date field and not a time field.

<IF NOTDATETODAY>

The date field should not default to the current date.

<IF NOTDECIMAL>

The field data type is not defined as decimal. Note that date and time fields do not count as decimal with this conditional test.

<IF NOTENUM>

The field is not a language ENUM field.

<IF NOTENUMERATED>

The field is not a UI Toolkit enumerated field.

<IF NOTIMEOUT>

The field is not a UI Toolkit enumerated field.

<IF NOTINTEGER>

The field data type is not defined as integer.

<IF NOTNUMERIC>

The field data type is not a numeric type.

<IF NOTOVERLAY>

The field is not an overlay field or overlay group.

<IF NOTRADIOBUTTONS>

The field should not be viewed as a collection of radio-buttons.

<IF NOTSTRUCTFIELD>

The field is not a struct field.

<IF NOTTIME>

The field is not marked as a time field.

<IF NOTOOLKIT>

The field is marked as “Excluded by Toolkit”.

<IF NOTUPPERCASE>

The field should not be converted to uppercase. Only appropriate for alpha fields.

<IF NOTUSER>

The field is not a user-defined field type.

<IF NOUSERTEXT>

The field does not have user text specified.

<IF NOTUSERTIMESTAMP>

The field is not a user-defined time-stamp field. (See <FIELD_SQLTYPE> for more information).

<IF NOVIEW_LENGTH>

The field does not have a view length specified.

<IF NOWEB>

The field is marked as “Excluded by Web”.

<IF NUMERIC>

The field data type is defines as a numeric type.

<IF OCNATIVE>

The fields Objective-C data type is a native type (e.g. int or BOOL).

<IF OCOBJECT>

The fields Objective-C data type is an object type (e.g. NSString or NSDate).

<IF OPTIONAL>

The field is marked as optional (i.e. not required).

<IF OVERLAY>

The field is an overlay field or overlay group.

<IF PAINCHAR>

The field has a custom paint character specified.

<IF PRECISION>

The decimal field has a precision specified (i.e. it is an implied decimal field).

<IF PROMPT>

The field has a prompt specified.

<IF PROMPT_POSITION>

The field has a UI prompt position specified.

<IF RADIOBUTTONS>

The field should be viewed as a collection of radio-buttons.

<IF RANGE>

The field has a numeric range (minimum/maximum values) specified.

<IF READONLY>

The field state is specified as initially read-only.

<IF READWRITE>

The field state is specified as initially writable.

<IF REPORT>

The field is available to ReportWriter.

<IF REPORT_CENTER>

The field should be printed center justified on reports.

<IF REPORT_LEFT>

The field should be printed left justified on reports.

<IF REPORT_RIGHT>

The field should be printed right justified on reports.

<IF REQUIRED>

The field is marked as required (i.e. must contain a valid value).

<IF REVERSE>

The field should be displayed in reverse video.

<IF SELECTIONS>

The field has one or more selection list values.

<IF SELWND>

The field has a selection window name specified.

<IF STRUCTFIELD>

The field is a struct field.

<IF TEXTBOX>

The field should be displayed as a text-box.

<IF TIME>

The decimal fields’ type is specified as a time field.

<IF TIME_HHMM>

The field is a time field of type HHMM.

<IF TIME_HHMMSS>

The field is a time field of type HHMMSS.

<IF TIMEOUT>

The field has an input timeout specified.

<IF TIMENOW>

The time field should default to the current time.

<IF TOOLKIT>

The field is available to UI Toolkit.

<IF UNDERLINE>

The field content should be displayed underlined.

<IF UPPERCASE>

The field value should always be converted to uppercase.

<IF USER>

The field is a user defines field type.

<IF USERTEXT>

The field has user text specified.

<IF USERTIMESTAMP>

The field is a user-defined time-stamp field. (See <FIELD_SQLTYPE> for more information).

<IF VIEW_LENGTH>

The field has a view length specified.

<IF WEB>

The field is available to the web products.

 

 


Copyright © 2021  Synergex International, Inc.