HAT 4.1 Text File Format
 
Format:
##HAT-Text   {version}
Description:
##HAT-Text   = File identifier
{version}    = Version number for this text file format,
               {year}{month}{day}
{year}       = 2 digits, 9x = years 1990..1999
                         0x = years 2000..2009
{month}      = 2 digits, 01..12
{day}        = 2 digits, 01..31
Example:
##HAT-Text   981105
 
Comments:
  
All HAT text files must begin with this line, otherwise the file is not
considered as a HAT text file. Version number is the date when this format
was frozen. Future versions of HAT will increment this value.
  
Note: The year is expressed in only two digits. Years 2000 and beyond
have smaller numeric value than years before 2000.
 
  
Format:
##Characters
U     {uppercase}
L     {lowercase}
X     {special}
Description:
##Characters    = Section header
{uppercase}     = International uppercase characters
                   
{lowercase}     = International lowercase characters
                   
{special}       = Some special characters
                   
Comments:
  
HAT-Text files may include this section to ensure that international and special characters
are correctly handled. Text files always use native character set in an operating system,
but when moving a text file over an operating system boundary, character conversion may or
may not occur. This character section included in a text file is converted the same way as
the rest of the file ensuring correct interpretion.
  
If some characters do not exist in an operating system, a space character should be used as
a placeholder for them. 
If you are workng in one operating system only, you can safely ignore
this section.
 
  
Format:
##Protection    {password}
{processor}     {description}
{processor}     {description}
...
Description:
##Protection    = Section header
{password}      = Password currenty in use
{processor}     = Serial number of a HAT processor
{description}   = Free text to describe processor user or usage
Example:
##Protection    sesam
AA24N007        D.Garrison
AA24P012        C.Bellman
BD08P006        Sales Manager
BD22P011        Reserved for future
 
Comments:
  
List of processors is used to limit database access to certain HAT-processors.
The file cannot be opened if the current processor is not in the list.
If no list is defined, the file can be accessed with any HAT-processor.
  
Protection section limits access to the file containing it.
This information is not changed when importing a file into an open database.
Protection information is checked to allow/disallow importing the data file.
The original protection information for the database remains in effect when
saving and reopening the original file.
  
Note: Password is shown in this text file openly as plain characters.
Full password protection is ensured when a file is saved as an encrypted HAT normal file. 
 
  
Format:
##BaseOptions
CN   {ordinalDigits}
CD   {cardDecimals}
CT   {xCardTitle}
LT   {xLineText}
LV   {xValueTitle}
R    {referenceID}
EC   {codeCount}
Description:
##BaseOptions     = Section header
{ordinalDigits}   = Number of ordinal digits in Card ID (1..5)
{cardDecimals}    = Number of decimals in card values (0..6)
{xCardTitle}      = Custom title for card titles
{xLineText}       = Custom title for line texts
{xValueTitle}     = Custom title for line values
{referenceID}     = Reference ID (may include Card ID operators)
{codeCount}       = Number of HAT and host codes in dimensions (optional)
Example:
##BaseOptions
CN   3
CD   2
LT   Description
LV   Amount
R    921002-999#
EC   2012
 
Comments:
  
Selector order is not significant. 
Database options section can be skipped. In that case the default values are used.
 
  
Format:
##SaveSetup  {name}
{selector}
{selector}
...
Description:
##SaveSetup     = Section header
{name}          = Name of this save setup
{selector}      = Save setup data
  Currently defined selectors:
    FT       = Use "HAT-text" file format
    FN       = Use "Analyser" file format
    FB       = Use "Browser" file format
    SH+      = Include characters section
    SH-      = Exclude characters section
    SP+      = Include protection section
    SP-      = Exclude protection section
    SB+      = Include base options section
    SB-      = Exclude base options section
    SS+      = Include save setup sections
    SS-      = Exclude save setup sections
    SI+      = Include import setup sections
    SI-      = Exclude import setup sections
    ST+      = Include time scale sections
    ST-      = Exclude time scale sections
    SX+      = Include base macro sections
    SX-      = Exclude base macro sections
    SD+      = Include dimension sections
    SD-      = Exclude dimension sections
    SC+      = Include card section
    SC-      = Exclude card section
    SM+      = Include analysis templates section
    SM-      = Exclude analysis templates section
    SG+      = Include analysis defaults section
    SG-      = Exclude analysis defaults section
    DF   {dimfilters}  = Dimension component filters for each dimension
             {dimfilters} = {filter}{filter}{filter}...
             {filter} =
                A  = Include all components
                C  = Include active components only
                U  = Include components in use only
                N  = Exclude all components
    DL   {dimlinks}  = Dimension reference link codes for each dimension
             {dimlinks} = {link}{link}{link}...
             {link} =
                C  = Use HAT-codes
                H  = Use host codes
                T  = Use dimension texts
    BD{dim}   {expr}     = Dimension expressions for card selection
    BC   {from}   {to}   = Card IDs for card selection
    BY   {expr}          = Card title expression
    BL   {expr}          = Line text expression
    BV   {expr}          = Value expression
    CT                   = Include cards/lines referred in templates only
    GC                   = Include complete cards in card selection
    GG                   = Include complete groups in card selection
    GL                   = Include selected lines only in card selection
    TF   {expr}          = Template filter expression
    TO+                  = Include open templates only
    TO-                  = Disable "open templates only" feature
    M{dim}  -            = Exclude dimension {dim} from all sections
    M{dim}  {srcdim}     = Map dimension {srcdim} to {dim} in all sections
Example:
##SaveSetup  SS1
FT
SP-
SS-
SI-
SG+
DF   ACAA
BD2  T Tulot
GC
TF   Dine
M4   3
 
  
Format:
##ImportSetup   {name}
{selector}
{selector}
...
Description:
##ImportSetup   = Section header
{name}          = Name of this import setup
{selector}      = Import setup data
  Currently defined selectors:
    FV       = Variable field lengths
    FX       = Fixed field lengths
    AM       = ASCII Extended Macintosh character set
    A7       = ASCII 7-bit character set
    AP       = IBM-PC character set
    AW       = ANSI Windows character set
    AE       = EBCDIC character set
    T   {integer}   = Row Terminator (ASCII code)
    S   {integer}   = Field Separator (ASCII code)
    D   {integer}   = Decimal Separator (ASCII code)
    RC  {integer}   = Number of rows for card information
    RL  {integer}   = Number of rows for line information
    CF  {string}    = These two selectors define character conversions.
    CT  {string}    = Character in CF-string is converted to character
                      at same position in CT-string.
    CS  {string}    = Characters in CS-string are excluded
    CR  {txconv}    = Text conversion for card title field
    CN  {txconv}    = Text conversion for notes field
        {txconv} =
           -   No conversion
           U   All characters are converted to upper case
           L   All characters are converted to lower case
           S   First character is converted to upper case, all others to lower case
           W   First character of each word is converted to upper case, all others
               to lower case
    M   {dateformat} = Date format
        {dateformat} =
           YYMMDD   YYDDMM   MMDDYY   DDMMYY
           Y/M/D    Y/D/M    M/D/Y    D/M/Y
    -               = Separator line for multiple line definitions
    V   {float}     = Scaling factor for values
    ZK              = Do not exclude zero lines
    ZN{dim}   {newcomps} = How new components are added to dimensions
        {newcomps} =
           -   New components in a separate group at end
           H   New components in hierarchy using host code as a HAT-code
           N   New components in hierarchy finding the neares existing host code
    ZC  {txconv}    = Text conversion for line text field
Field definitions are stored in selectors beginning with an 'L'.
Following format and selectors are used:
{FSelector}   {FCode}   {FCode}   {FCode}   ...
  {FSelector} =
     LX      = Card Switcher
     LC      = Card Indicator
     LL      = Line Indicator
     LI      = Card ID
     LT      = Card Title
     LN      = Notes
     Lc      = Created
     Lm      = Modified
     Le      = Examined
     La      = Approved
     L{dim}  = Dimensions
     LZ      = Line Text
     LV      = Value
  {FCode} =
     F{integer}   = Field number
     B{integer}   = First character position
     E{integer}   = Last character position
     T{text}      = Character string defining the text / default value
     +{integer}   = ASCII code for the separator character and
                    implication of a following linked field
Example:
##ImportSetup   FlatFormat
FV
AM
T    13
D    46
CF   {}|
CT   ŒŠš
CS   "`«
H
LI   1   0   0
LV   3   0   0
L1   0   0   0   IH
L2   2   0   0
 
There are two types of subsets in HAT, global and local.
Note that subset names must follow certain rules.
Blanks and set operators are not allowed in them.
These restrictions simplify further usage of subset names in expressions.
 
The global subsets are accessible to all analyses. 
They are stored in subset sections, one subset in each section.
  
Format:
#Subset    {name}
{selector}
{selector}
{selector}
..........
Description:
##Subset       Section header
{name}         Name of the global subset
{selector}     These selectors define the details of the subset.
Subset Variable Seletors:
VN  {name}             Name  (must be the first line)
VD{dim}  {expr}        Dimension expressions
VY  {expr}             Card title expression
VL  {expr}             Line text expression
VV  {expr}             Value expression
VS  {expr}             Subset expression (only for local subsets)
Vk  {expr}             Card ID expression
VA  {expr}             Notes expression
Vc  {time}  {sign}     Card created expressions
Vm  {time}  {sign}     Card modified expressions
Ve  {time}  {sign}     Card examined expressions
Vp  {time}  {sign}     Card approved expressions
Va  {time}  {sign}     Notes signature expressions
                       {time}  = Time expression
                       {sign}  = Signature expression
Subset Generic Seletors:
F  {expr}              Formula expression
Example:
#Subset    Foo
VN  A
Ve  \
F   A
 
 
Local subsets are defined for a single analysis.
They are not accessible to other analyses, and their definition is
embedded in an analysis template definition.
All local subset selectors begin with s.
  
Format:
sn   {name}
{selector}
{selector}
{selector}
..........
Description:
{name}         Name of the local subset
{selector}     These selectors define the details of the subset.
Subset Variable Seletors:
sN  {name}             Name  (must be the first line)
sD{dim}  {expr}        Dimension expressions
sY  {expr}             Card title expression
sL  {expr}             Line text expression
sV  {expr}             Value expression
sS  {expr}             Subset expression (only for local subsets)
sk  {expr}             Card ID expression
sA  {expr}             Notes expression
sc  {time}  {sign}     Card created expressions
sm  {time}  {sign}     Card modified expressions
se  {time}  {sign}     Card examined expressions
sp  {time}  {sign}     Card approved expressions
sa  {time}  {sign}     Notes signature expressions
                       {time}  = Time expression
                       {sign}  = Signature expression
Subset Generic Seletors:
sf  {expr}             Formula expression
Example:
sn   S1
sN   K
sD2  C Costs
sV   20
sf   K
 
 
	Contents
	Next
 |