!!!DEFINE INTERFACE FORMATS
The Define Interface Formats (IDIF) screen allows you to define the interface formats. The header section of the form identifies the interface being defined. The detail section outlines each record and field, and transformations to be performed.

;[Code|INTERFACE_CODE]:This field identifies the name of the interface. The Interface Code is a 16-character mandatory field.
;[Interface Type|INTERFACE_TYPE]:This field identifies the program to be executed and restricts the variables that are available. The field is tied to the [X_INTERFACE_TYPE] fixed lexicon.
;:G/L Interface - UPGLF
;:Bank Deposit - UPDTB
;:Cost Interface - UPGLF (2nd file)
;:Savings Bond - UBBD
;:Disbursement File - UPDIF
;:New Hire Interface - UENH
;:AP Interface - UPVEND
;:Pay History Interface - UPPHF
;:EEM/EAS Interface - UEEF
;[File Format|FIELD_DELIMITER]:This field identifies how the data is going to be created. e.g.fixed position, comma or tab delimited, XML. This field is tied to the fixed lexicon [X_FIELD_DELIMITER].
;[Form Type|FORM_TYPE]:This field is typically used for legislation type interfaces such as UPROEF. This field is tied to the fixed lexicon [X_FORM_TYPE].
;[Description|DESCRIPTION]:This field provides a brief description of the purpose of the interface. The Description field is an optional field which may hold up to 50 characters. 
;[File Name|FILE_NAME]:This field specifies the default file name; otherwise the file name is entered on a parameter in the function. File Name is an optional 50 character field. 
;[File Creation Number|FILE_CREATION_NUMBER]:Some programs (mostly banking ones) use this number to uniquely identify the execution. File Creation Number is an optional 10 digit numeric field. 
;[Taxation Level|TAXATION_LEVEL]:This field is used for year end and quarterly reporting by functions such as [RPYEC] and [RPYEU]. The field is tied to the fixed lexicon [X_TAXATION_LEVEL].

The details section of the form includes a grid where the fields are mapped to positions within the file. Not all of the detail fields are used by all of the programs using interfaces.

;[Record Number|RECORD_NUMBER]:This is a user assigned record number. Each record number generates a new line in the interface file. The following are suggested record numbers. You can set up your own numbers.
|Record Number |Interface File Records Generated
|0 |Qualify Records
|1 - 29| Header Records
|30 - 69| Detail Records
|70 - 99 |Trailer Records

;[Field Number|FIELD_NUMBER]:This is a user assigned number.
;[Name|FIELD_NAME]:This is a user assigned field name.
;[XML Tag|XML_TAG]:This optional field is used for XML File Format only. If XML Tag is not specified for XML File, then the Name field is used as XML Tag.
;[Beginning Position|FIELD_START_BYTE]:Used if the File Format is a 'Fixed Format'. The Beginning and Ending positions must be continuous without gap.
;[Ending Position|FIELD_END_BYTE]:If the File Format = 'Fixed Format', you must specify the Beginning and Ending positions. These positions must be continuous without gap, otherwise an error situation will occur. Beginning/Ending positions are not needed for XML and other file format.
;[Field Type|FIELD_TYPE]:Field Type can be defined as 'Char', 'Number' or 'Date'.
;[Variable Name|VARIABLE_LK]:Variable Name is used for outbound interfaces only. You will select from the lexicon [X_INF_VARIABLE_NAME] 35nnnn
;[Sort Sequence|SORT_SEQUENCE]:This field specifies the sort sequence for this Record #, Field # and is used for Record # with Record Type = 'Detail Record' only \\For Record # with Record Type = 'Detail Level 1' to 'Detail Level 5', it uses the same Sort from Record Type = 'Detail Record' so that the Detail Level n records are followed after the 'Detail Record'
;:e.g. Interface File need to sort by: Department, Employee First Name, Last Name
* For the Fld# entry that specify 'Department', enter sort sequence: 100
* For the Fld# that specify 'Employee First Name', enter sort sequence: 150
* For the Fld# that specify 'Employee Last Name', enter sort sequence: 200
;:All Sort sequences must be entered on entries with the same Record Number.
;:Sort Sequence is not supported for XML file format because XML file may specify many different Record # to generate XML begin and end tags and the XML tags are not able to sort along with the data.
;[Format Mask|FORMAT_MASK]:The format mask is applicable to Numeric and Date field.
;[Record Type|RECORD_TYPE]:Record Type is typically only used for outbound interfaces. The lexicon [X_RECORD_TYPE] values are:
*Not Specified 
** may be selected if not required for the interface
*Header Record 
** generate Header records at begin of file
*Employer Header 
** used to generate Employer data
*Employer Summary 
** used to generate Employee data
*Detail Record
** generate Employee Detail record
*Detail Level 1 
** Detail Level 1 to 5 hangs beneath
*Detail Level 2 
** the Employee Detail record and loops
*Detail Level 3
** through BE plans or Contacts etc.
*Detail Level 4
** depending on UEEF parameter
*Detail Level 5
** Interface Level selection criteria
*Detail Summary
** wraps up for Employee Detail record
** mostly used for XML file XML end tag
*Total Record 
** used for total type records
*Trailer Record 
** generate Trailer records at end of file
** may contain File totals, record counts etc.
*Qualify Record
** should be used for Record Number 0
** the Qualify records are performed at the beginning of every Detail record to qualify employees etc.
** user can use derivation expression to BYPASS certain criteria
;[Record Identifier|RECORD_IDENTIFIER]:This field is not currently used.
;[Constant Value|CONSTANT_VALUE]:If the Variable Name = 'Constant Value', this field specifies the Constant Value to be used. 
;:If the Variable Name = 'User Calc', this field specifies the User Calc Name
;:If the Variable Name = 'Statistics Amt', this field specifies the Statistics Code
;;If the Variable Name = 'Element', this field specifies the Element Code
;:If the Variable Name = 'Total Value', this field specifies the Rec# and Field # of the Detail Records to be totaled
;:e.g. Record # 50 Field 70 is to be totaled and Total option = 'Calculate Total', then the Trailer record can report the 'Total Value', Constant value should be 5070
;[Add to UK Set|ADD_TO_UK]:Used to manually add columns to the destination tables' UK column set by toggling the 'Add to UK set' check box. This will only add the column as a UK column to the existing UK set for the destination table. It will not act as a UK set override.
;[Print Zero Rule|PRINT_ZERO_RULE]:This field is applicable to the Numeric field only and is used for Record Type = 'Detail Record'.
;:If the amount is zero, this field indicates to include this amount in the interface file or not.
;:e.g. if the field is from 'Statistics Amount' and the amount is zero, the user may not want to report this amount
;:If all the numeric amounts are zero within one Record# and the Print Zero Rule are set to 'Do not Print zeros' for each field, then this entry will not be reported on interface file.
;: Print Zero Rule is tied to the fixed lexicon [X_PRINT_ZERO_RULE].
;[XML Tag Option|XML_TAG_OPTION]:This is applicable to the XML file, if the Variable Name = 'XML begin Tag' or 'XML end Tag'. This field option indicates if the XML Tag should be written. This field is tied to the fixed lexicon [X_XML_TAG_OPTION].
;[Accum Option|ACCUM_OPTION]: This field is applicable to the Numeric field only and is used for Record Type = 'Detail Record'. This field indicates if this Record #, Field # amount should be accumulated or not. e.g. if the field is a 'Pay Number' or 'Check Number', then do not accumulate \\If the field is 'Element Value' or 'PC Amount', then you may want to accumulate to avoid writing too much detail per element or per pay component.
;[Total Option|TOTAL_OPTION]: This field is applicable to the Numeric field only and is used for Record Type = Detail Record, Detail Level n. This field indicates if this Record #, Field # amount should be totaled for Header or Trailer record. e.g. if the field is a 'FTE' or 'Rate of Pay', then do not totaled \\If the field is 'Statistics Amount' or 'User Calc Amount', then you may want to calculate the total for Trailer record. The Total Option field is tied to the fixed lexicon [X_TOTAL_OPTION]. 
;[Derivation Expression|DERIVATION_EXPRESSION]:This field specifies the derivation expression for the Variable name.