Skip to content

Default Rules

Rules can be set up for each migration job to control functions as file reading, error handling, file-backup and history logging, just to mention some. Rules can easily be activated or disabled. Data Migration is installed with a set of default rules, and each job you define can use these rules.

All rules are pre-defined by IFS and created during installation. You cannot enter new rules.

On insert of Migration Job Header, default rules will be inserted according to following principle:

  1. If Procedure Name of Migration Header correspond with Procedure Name of Migration DefaultRules, the rule will be inserted here.
  2. If Procedure Name in Migration DefaultRules equals '*' (any procedure except EXCEL_MIGRATION) Rule Flag is set 'Active', the rule will be inserted here.

default rules

A rule contains:

Rule ID                    : System defined identification of the rule.

Procedure Name      : A rule can be connected to specific procedures, or to all existing procedures (*) as shown in the Rule ID field description. Wildcards is used here to include a rule to several procedures.

Description               : Short description of what the rule do.

Rule Value               : This column is used to specify a default value for the rule. Rule Value is connected to the field Value Flag. I.e. if the Value Flag is set to Mandatory number, Rule Value may only include numeric values. The Rule Value will automatically be applied to new jobs (on INSERT of job header) if the Rule Flag is set to Active. Some rules should not have a rule value, and the Value Flag is then set to No value allowed.

Rule Flag                 : This flag specifies if the rule is active or not. Legal values are: Active, Inactive.
All rules that has the Rule Flag set to Active will automatically be applied to the jobs created in the Maintenance window.
It is recommended that the installed value 'Inactive' is kept for most of the rules, and that they instead are created and activated for each job as required.

Value Flag                : This flag specifies what values are allowed to use as a Rule Value for this rule. Legal values are: No value allowed, Mandatory string, Mandatory number, Mandatory date, Optional.

Rule descriptions:

Rule ID Procedure Name Description Comment
ADDOBJID MIGRATE%
REPLICATION
Create extra detail for OBJID Used with replication and source migration jobs. If your SELECT contains an OBJID, this will be used to mark error-records saved under Execute Job/ Details.
This will allow you to RESTART the Job, processing only records with errors.
No Rule Value needed.
BUILDTRIGGERIF REPLICATION Build IF-statement for updateable columns This rule is by default Active, and will build an IF-statement on the trigger, checking columns in UPDATE mode. At least one updateable column must have been changed to make the trigger fire.
CALLEXTPROC CREATE_OUTPUT_FILE Call external procedure after each row In this rule, you may specify a procedure to be called, f.ex. Intface_Table_Migrations_API.Process_Table, This procedure has an attribute-string as input-parameter, and may be used to update rows that has been read from a IC-table f.ex.
For customizations, you may call any procedure that has Attr as in-parameter.
To build the attr-string to be used as input-parameter, use the column Ext_Attr in folder File Mapping in the Job Maintenance window.
 
CHKSERVERFILE * Execute job only if serverfile exists This rule will check on the server, and if the serverfile does not exist, or is empty,  the job will not be started at all.
Can also be used for connected jobs; enter a JOB_ID in Rule Value if you want to check the serverfile of another job.
 
CHECKOPTION MIGRATE% Perform methods New and Modify with CHECK option With this option Active the New__ and Modify__ methods are invoked with CheckOption which means that the method will only validate data, not insert into or update the database.
No Rule Value needed.
CLEANUP *
REPLICATION
Cleanup job errors in start job details before or after each execution Cleans up the detail tab in the 'Start Migration Job' even if the job have error lines.
If you activate this rule with rule-value AFTER, cleanup will be performed immediately after the job is finished. This is also default option if you leave the column Rule Value blank.
If you want the job to perform cleanup before the job starts, add rule-value BEFORE.
It is recommended always to keep the standard rule Inactive, and instead activate the rule on each job as needed.
It is also recommended to combine this rule with the rule  SAVEJOBDAYS.
COMMITSEQ MIGRATE% Number of rows between COMMIT Used with source migration jobs. If you process a large selection of data, you may want to perform COMMIT frequently. This will prevent a full restart in case of a job crash, and will put less strain on ROLLBACK segments and SORT areas.
CONNJOB MIGRATE% Start this job first Intended for fixed interface jobs that first loads data from server-file into a temporary table (by using procedure CREATE_TABLE_FROM_FILE) and secondly loads data into IFS by reading from this table, all executed on a regular basis in background.
You may activate this rule and enter the name of the file job in Rule Value; and this job will start first.
Checks will performed to make sure that there are no errors on job1 before job2 starts and visa versa, and that job1 cannot be started directly.
To simplify error-handling, job1 will not be started if job2 is re-started manually.
CREATEDET MIGRATE%
REPLICATION
EXCEL_MIGRATION
Create details from views in MethodList If set to 'Active', new entries in the Method List will also generate new column details under the Maintenance/Source Mapping*.
The Rule Value is used as default value for column PrefixOption on insert in
Maintenance/ Method List. We keep the DB-value here:
1 - ViewName (default if no value is given)
2 - ViewNameUnique
3* - NoPrefix

CREINDEX CREATE_TABLE%
Options for container table 
If this rule is activated, an index will be created after creation of the table.
Columns that are marked with Flag = 'P' or 'K' under folder 'FileMapping' will be used.
STORAGE-parameters for the CREATE INDEX statement may be maintained in Admin.exe/platform Administration/Configuration.
CRETABCONF CREATE_TABLE% Options for container table May be activated with following values:
KEEPALL - To enable multiple file-loads into same IC-table. For each execution data will be appended into the IC-table.

KEEPERR - To be used together with rule CONNJOB. If job2 has errors from a previous execution, these rows will be cleared, but the corresponding rows in the IC-table will not be removed before new file is loaded.


DEPLOYFILE FNDMIG_EXPORT Option for export-file If this rule is Inactive, the export-job will produce a traditional file that must be imported by aid of standard job FNDMIG_IMPORT.

If this rule is Active, the export-job will produce a PL/SQL script that should be deployed from Admin.exe (or SQL*PLus or PL/SQL Developer). This script will perform the same actions as if you imported a traditional file in job FNDMIG_IMPORT.

EVENTMESS * Notify Event Server when job is finished In Event Registry (Admin.exe), there is an event for LU IntfaceEvents named NOTIFY_FINISHED_JOB.
Among the server- code scripts you will find file IntfaceEvents.IMF that contains a default event action.This action may be imported with Admin.exe
EXITLINES * Stop reading after this line number in file This rule may be used for testing purposes, or when for some reason not all lines in file should be read. Set rule to active and enter how many lines you wish to read.
It is recommended to keep the standard rule Inactive, and activate the rule on each job as needed.
EXTTABLE * Create External Table and insert directly into IC-table Used for filejobs where File Location = OnServer.
Instead of using Oracles UTL_FILE to read the file, FNDMIG will first create an External Table and then insert data into the IC-table. Oracles External Table is extremly fast compared to UTL_FILE.

The external table will be named IC_<Job ID>_EXT
FILEBKP * Make a backup of file after job has executed If set to Active, a backup will be taken of the original file after the job has finished. The file will be named: <filename><seq.no>.bkp. If the backup file should be stored in a different directory than the original, use the Rule Value column to specify a path. NOTE: The original file will be truncated (on server) or deleted (on client) after the backup is done.
It is recommended to keep the standard rule Inactive, and activate the rule on each job as needed.
FILEHEAD CREATE_OUTPUT_FILE Create fileheader If your output-file job writes a comma-separated file, a file-header containing column-names may be created by setting this rule 'Active'.
 
FILEMOV * Move file after successful completion This rule will move the file to the path/directory that is specified in Rule Value (which is mandatory). Will keep same filename.
FILERENAM * Rename file after successful completion The file will be renamed in same manner as with FILEBKP, i.e. new filename will be <filename><seq.no>.bkp. If you also want it moved to another path/Directory, specify this in Rule Value.
FILEDEL * Delete file after successful completion This rule will delete original file after successful completion.
IGNOREADERROR * Continue fileread after error If set to Active, the reading from file will continue even if formatting errors occur during reading.
No Rule Value needed.
IGNOREXEERROR INSERT%
CREATE_TABLE%
MIGARTE%
REPLICATION
Continue procedure on error If set to Active, the job will continue even if errors occur.
No Rule Value needed.

INSUPD INSERT_OR_UPDATE Execute either INSERT or UPDATE This procedure performs UPDATE if record exists, otherwise INSERT will be performed.
If you want to perform UPDATE only, activate this rule and specify UPDATE in rule value.
Likewise, you may also specify INSERT in rule value. The procedure then will skip all existing records, and insert new ones only.
KEEPBLANKS INSERT%
CREATE_TABLE%
Do NOT trim off leading or trailing blanks from input file When reading files, leading or trailing spaces will always be trimmed off VARCHAR2-columns. If you want to keep the field 'as is' , activate this rule.
KEEPDYNAMPROC MIGRATE% Do not DROP procedures If you have defined other methods than standard New/Modify under folder MethodList, a dynamically created procedure will be stored in the database as the migration job starts. This procedure will automatically be removed (dropped) after execution, unless you set this rule Active.

Activate this rule for performance purposes, if the job is executed frequently, f.ex, and you will save the time it takes to recompile the stored procedure when the job starts for the second time and onwards.

You may preview the  procedure code from RMB-choice in the Maintenance/Method List window.
MAPDBCOL MIGRATE%
REPLICATION
Remap IIDs client-default to DB-default Data Migration becomes language-independent when client-values are added to Default Value in NEW/PEPARE for IID-columns To avoid this, you may activate this rule.
Now FNDMIG will rebuild the generated defaultvalues, move them to the DB-columns and update the Note Text column accordingly.
NOCLEANUP * Keep Job details even if job is OK For debug purpose. If you read client a client file, and the Migration Job terminates without errors, job details are normally removed.
If you activate this rule, the client file will be kept in Job Details with status OK. This may be handy if you are testing out a job with a large client file that takes long time to load.
NONULLVAL MIGRATE%
REPLICATION
Do not include selected items with null-value on attr-string Normally, if you set up a Source Migration Job, all selected items will be put into the attr-string if there is a match on column name. This means that if a column is empty in the selection, but has a value in the database, then a Modify__ will erase this value.
In some cases we want to avoid this. By activating this rule, only columns with a value from the select will be passed on to the attr-string.
Now, if we still want to update single columns with null-value from the select, we can add the text 'NULLVALUE' to Default Value for these columns (in folder Source Mapping).
REMLOG CREATE_TABLE% Remove logfile if External Table was created OK Used for jobs with rule EXTTAB=Active. When External Tables are created, a LOG-file will always be written to the server directory. This rule automatically deletes the logfile if the table is created without errors.

This rule is default Active. If you still want to see the logfile, disable this rule.
SAVEJOBDAYS *
REPLICATION
Number of days to save job history If you wish to save history of job executions. You can enter number of days in the Rule Value field.
It is recommended to keep the standard rule Inactive, and activate the rule on each job as needed.
SAVEJOBERR *
REPLICATION
Save only errors in history log Normally information from every execution is saved in the history log. E.g. replication jobs may generate a lot of history logs if history logging is active. Use this option to save only error information in the history log.
SERVFILOAD * Load server file before starting job If set to active, the server file will automatically be loaded into JobDetails before the job is started (and treated as a Client File)
No Rule Value needed.
SKIPLINES * Start reading after this line number in file Some files comes with one or more lines of heading that should not be read. Set this rule to Active and specify the number of lines you want to skip.
It is recommended to keep the standard rule Inactive, and activate the rule on each job as needed.
SYNCDETAILS INSERT%
CHECK_BY%
CREATE_TABLE%
Synchronize job details with columns in file-header For files with a column-separator, you may get an automatic mapping of the position of the columns in the file.
Only requirement is that the first line of the file must contain a file-header with column names.

If there is a mismatch between column names in file-header and columns in IFS, the column from the file will be treated as a dummy-column, and will not be loaded.

If you set Rule Value = MATCH you will get an error message if there is a mismatch in column names.

TRUNCVAL * Truncate file values exceeding column length For files with a column-separator, you will get an error if column lengths on the file exceeds column length in IFS.
If you activate this rule, values will automatically be truncated to specified length in IFS.
FETCHCONDITION EXCEL_MIGRATION Sets if the Job can be used to fetch data. If Multiple LUs are used specify the join condition If Active will allow querying of data through IFS Data Migration Excel Add-In. When having multiple LUs the Rule value should specify the join condition between the LUs. Any other filtering can be also specified here.