Fields Definitions
Fields Definitions
Posted by swissc4
Compared to standard RDBMS, T24 applications (or table) have their structure hard-
Fields definitions relates to the dictionary of the application (table). It contains all the
field data types and specific rules attached to every single field.
– either add an attached program that contains all the field’s definitions (using a CALL
<your.table>.FIELD.DEFINITIONS in the label “DEFINE.PARAMETERS:” if you’re using a
standard template)
In field definitions programs (or label), fields are not identified by their field numbers as
displayed in T24 by end-users. Field numbers are the result of a variable increment,
commonly named “Z“. You will then find fields definitions prefixed with a “Z+=1”, and
related definitions common variables F(), N(), T() will appear as F(Z), N(Z), T(Z).
Variables N() and T() refers to the main display core program named “IN2“.
‘XX.LL.’ and – 12 char. field description when multivalue field in connection with
language code e.g. ‘XX.LL.DESCRIPTION’
‘XX.’ and – 15 char. field description when multivalue fields (sub fields) used e.g.
‘XX.REMARKS’
‘XX<‘, ‘XX-‘, ‘XX>’ and – 15 char. field description when associated multi value fields
‘XX<‘ = first association
‘XX-‘ = next (if not last)
‘XX>’ = last association
Example:
2 fields No. 3 + 4 are multi value fields and both have 2 lines:
This variable defines the data type of a field. All types are using by default a display
program named “IN2”. When T(Z) is not null (T(Z) = “xxx”, this means the field type is
described in a specific program, implicitly prefixed by “IN2” (thus named “IN2xxx”).
Further parameters can be added either to the “IN2” (when T(Z) is null) or the the
“IN2xxx” when T(Z) = “xxx”. You can find expected parameters in the header of all
“IN2” types programs.
Example:
T(Z) = “” means T(Z) = “IN2”, then possible parameters are defined in IN2 program.
T(x) = 8 Fields possible (delimiter = <f>):
– Field 1
= “” = numeric or Input Table
= ‘.ACCD’ = combination of a) ‘ACC’, b) ‘/’, c) ‘D’
= ‘.CCYD’ = combination of a) numeric, b) ‘CCY’, c) ‘D’
= ‘.D’ = combination of a) numeric, b) ‘/’, c) ‘D’
= ‘.YM’ = combination of a) numeric, b) ‘/’, c) ‘YM’
= ‘A’ = alphanumeric char. = ‘A…Z’, ‘a…z’, ‘0…9’, ‘ !”#$%&'()+,-./[\]`’
= ‘AA’ = like ‘A’, but 1st char. must be ‘A…Z’ resp. ‘a…z’
= ‘AAA’ = possible char. only ‘A…Z’ resp. ‘a…z’
= ‘ACC’ = 2-16 numeric char. incl. checkdigit or 3-10 char. ‘MNE’-type (will be
converted to ACCOUNT.NUMBER)
= ‘ALL’ = any account no. – ‘ACC’ resp. ‘ANT’ or ‘INT’
= ‘ALL’ = same input like ‘ACC’ or 6-12 alphanumeric char.
INTERNAL.ACCOUNT.NUMBER
= ‘AMT’ = amount input
= ‘ANT’ = same input like ‘ACC’ or 6-12 alphanumeric char.
INTERNAL.ACCOUNT.NUMBER
= ‘COM’ = alphanumeric char. (see pgm. COMPANY.CODE) or 1-5 char. ‘MNE’-type (will
be converted to COMPANY.CODE)
= ‘CUS’ = 1-6 numeric char. or 3-10 char. ‘MNE’-type (will be converted to
CUSTOMER.CODE)
= ‘D’ = Date char.
internal format always YYYYMMDD (Y=year, M=month, D=day), but input may be ‘D’,
‘DD’, ‘DMM’ resp. ‘MDD’ (when R.USER defines ‘MMDD’-input), ‘DDMM’ resp. ‘MMDD’,
‘DMMYY’ resp. ‘MDDYY’, ‘DDMMYY’ resp. ‘MMDDYY’, ‘YYYYMMDD’
and: ‘MM’ may be inputted with 3 char. month’s name
(in accordance to language table TEXT.MONTH)
< 8 char. are updated with TODAY (today’s date)
– caution in connection with USER-record and check by computer date !)
‘YYYY’ = ‘1950…2049’
= ‘FNO’ = Field no. (may include value and sub no.)
= ‘FQU’ = date + FreQUency code
default date = today’s date transformed to next frequency date
Input of a date not in accordance to frequency (e.g. ‘1984-11-01 TWMTH’) will be
accepted for the date may be the last one of another frequency and new frequency
works first time after this date
Frequency codes are:
‘DAILY’ – Input may be ‘D’ only = next frequency date = next day
‘WEEKn’ (n = 1…9)
– Input may be ‘Wn’
– Input ‘W’ only = ‘WEEK1’
= next frequency date = in n weeks
‘TWMTH’ – Input may be ‘T’ only
= next frequency date = the ultimo date or the 15th of next month
‘Mnndd’ (nn = 01…99 = number of months, dd = 01…31 = day)
= next frequency date in n months (+ day definition)
(e.g. M0131 = every month on ultimo)
= ‘INT’ = 6-12 alphanumeric char. or
3-10 char. ‘MNE’-type (will be converted to INTERNAL.ACCOUNT.NUMBER)
= ‘MNE’ = MNEmonic field =
char. ‘0…9’, ‘A…Z’, ‘.’
= ‘PG’ = ProGram name or abbreviation (will be converted to full name)
= ‘PV’ = like ‘PG’ with possible using of Version
– more informations about PGM.TYPE in PGM.TABLE
= ‘R’ = (normally) 10 numeric char., but only up to 6 integer and 9 decimal char.
= ‘S’ = SWIFT char. =
‘A…Z’, ‘0…9’, ‘ ‘()+,-.’
‘-‘ can’t be the 1st char.
= ‘SS’ = like ‘S’, but 1st char. ‘A…Z’
= ‘SSS’ = all char. must be ‘A…Z’
= ‘YM’ = Year and Month
internal format always YYYYMM (Y=year, M=month) but input may be ‘M’, ‘MM’, ‘MYY’,
‘MMYY’, ‘YYYYMM’
– Field 3
= “”
= ‘EXTERN’ in field 3 = automatically updated field (in connection with other pgms)
= ‘NOCHANGE’ in field 3 = field content can only be inputted in accordance with a new
record (or very first record is not authorised)
= ‘NOINPUT’ in field 3 = indirectly updated by input of another feld (e.g. ievery input
changes the fields RECORD.STATUS, DATE.TIME etc.)
= ‘NV.EXTERN’ in field 3 = same like ‘EXTERN’ but
Not Visible (No display when displaying record)
– Field 4 = “” or Mask
Define the numbers of characters + a code for special check. 3 Fields (delimiter = ‘.’) :
Field 1 = Maximum characters – Leading char. ‘0’, ’00’. ‘ ‘ = special meaning (see
following examples)
Field 2 = Minimum characters
Field 3 = “” or ‘C’ (= special Check in main pgm. -return from pgm. FIELD.INPUT resp.
FIELD.MULTI after input to this field)
Examples:
N1
a) Number of maximum char. (including mask char.),
b) ‘.’,
c) Number of minimum char.
T1
Field 1 = “” = Numeric Input or Specified Input by Table
Field 2 =
a) Numeric
Value 1 = “” or ‘-‘ (=when Minus possible)
Value 2 = “” or ‘1…9’ (=possible Decimals)
b) Table
ba) by ‘…’, e.g. ‘1…35’ or ‘B…D’
bb) by ‘_’, e.g. ‘NO_Y’ or ‘R_’
Field 4 = “” or Mask, e.g. ‘R##-###’ for Category
Field 5 = “” or ‘R’ (when right adjusted)
or ‘C’ (= ‘R’ + Converting space to zero)
CHECKFILE(x)
Looks for available ID and brings enrichment resp. error message back from pgm. DBR
CONCATFILE(x)
FILE to build a CONCATenation Subfield 1 = ‘AL’ = Table is left adjusted = ‘AR’ = Table
is right adjusted = ‘NEW’ = Only 1 concatenation is possible (e.g. Mnemonic must be
unique) Subfield 2 = File name (without ‘F.’)