File naming conventions

Incoming files for Infor Expense Management application data and credit cards must adhere to a predetermined naming convention so that this can be uploaded to the correct destination table. This is the naming convention:

The filename that is decided by Prefix__MMDDYYYY

The file can be a .txt or .dat file. The filename and the date are separated by a double underscore.

The incoming file name is mapped to the alex_xmdbtool_mapper table. See the alex_xmdbtool_mapper specification section for more details. The table is the file name linked to the table mapper. The table maps the incoming files to the related table.

Example: The appfilter file name is mapped to the alex_application_filter table. If the incoming file is appfilter__09062011.txt, the application searches for the file name appfilter in the mapping table, and the file data is mapped to the alex_application_filter table, using the background process.

If the background process does not find the filename mapping, the system generates a log file named FilesNotProcessed.log that lists the files for which mappings are not defined in the alex_xmdbtool_mapper table.

From the 10.2 version, XMDBTool does not require cc file names to follow any specific naming format. When importing cc files from GXS or any other internal SFTP, it is not required to have the cc file names in any particular file naming format.

Although it is mandatory that cc.uploadImportFormat parameter is provided in the bkg parameter of the XMDBToolBKG.cc background process.

Previously, all the cc filenames were mapped to cc types (specified in the alex_xmdbtool_mapper table) as well as the double score delimiterto separate the cc file name and the timestamp.

Downloaded data files can be mapped with filenames that are specified in the alex_xmdbtool_mapper table. The downloaded files have the source table names as the default file names, without the al_prefix. If required, the downloaded data files can use the specific names, when the download process is triggered only by the XMDBToolBKG.

The file names for the specific tables must be defined in the alex_xmdbtool_mapper table. During the download process,Infor Expense Management checks this table for any file name-table mapping. If a specific file name is mapped to a specific table, then the defined file name in the alex_xmdbtool_mapper table is the name of the file that is downloaded. If no mapping is defined for the table, then the default naming convention is used. For example:

insert into alex_xmdbtool_mapper values(1111100011, 'erdocument', 'ALER_EXPENSE_EXPORT_HEADER', 'DOWNLOAD_DATA_PROC', GETUTCDATE());

After the above query is run against the alex_xmdbtool_mapper, the aler_expense_export_header is mapped with the filename, erdocument. The downloaded data for the aler_expense_export_header table is in the filename named erdocument_<timestamp>.txt instead of the default er_expense_export_header__<timestamp>.txt.

If a common table exists across modules and you are required to have different names for the same table across different modules, then you can have an entry in the mapper table for that table name with this naming convention:

<moduleName1>:<required_output_table_name>,<moduleName>:<required_output_table_name>...

This enables you to have multiple table names for the same table across different modules.

Further, if you need to have a different table name for the concerned table when downloaded as single entity (not as part of the any module), then you can define the table name as nomodule:<required_output_table_name> or simply the name of the output table name.

Example: If you have the aler_expense_export_header table and if you need to name this table as ex_header when downloaded as part of ER module and name the table as export_header when downloaded individually; then you can define this in the mapper table as:

original_file_name_mapping ---> aler_expense_export_header

original_file_name ---> ER:ex_header,nomodule:export_header

Alternatively, you can also defined this as:

original_file_name_mapping ---> aler_expense_export_header

original_file_name ---> ER:ex_header,export_header

If you are not expecting the table to be part of multiple modules then you can retain the original table name. For example, aler_expense_export_header can have only one name if the table is part of ER module and a single download.

original_file_name_mapping ---> aler_expense_export_header

original_file_name ---> export_header

However, in the XMDBTool background process which processes credit card feeds:

  • If the cc.uploadImportFormat parameter is not specified, then the XMDBToolBKG.cc background process retrieves the files for processing, from the import/cc folder. This uses the mapper table for each credit card file and does not process the files that are not mapped. All other files that have a correct mapping are processed.
  • After the background process is complete, all the files in the folder are deleted. The FilesNotProcessed.log includes the information of the cc files that are not processed.
  • If the cc.uploadImportFormat is specified, the XMDBToolBKG.cc background process retrieves only the files of the specified format. After the specified files are processed, the files are deleted from the folder.