AddonSoftware Administration - DataPort Utility Notes


DataPort is an AddonSoftware utility for porting data from version 6 or 7 to AddonSoftware by Barista, aka Barista Addon. This document outlines how to use this valuable tool.


Before running DataPort against your version 6/7 data, make sure to:

  1. Run and Update all registers

  2. Invoice all Sales Orders for dropship Purchase Orders that have been received.

Running DataPort

  1. Before beginning:

  • If you have previously run a customized version of DataPort, and are running it again now from a different/newer version of Addon, retrieve and diff your customized files (Dataport_main.bbj and any of the accompanying text files) against the current version, and merge in any customizations that you still need.

  • Make sure your data dictionary files from version 6/7 are up to date. Dataport will only port files/fields referenced in the dictionary.

  • Make the following changes to the Data Dictionary:

    • In file GLT-06,

      • Remove the 2 fields after the 10th field DESCRIPTION (or GL_POST_MEMO in version 6) in 1$ (POSTING PER and POSTING YEAR).

      • Change Description to have a Y for the separator.

    • In file POM-02,

      • Change the final field GL EXP ACCT to not have a separator.

      • Add a new field, GL PPV ACCT, to the end of the record, with a separator.

    • In files WOT-31 and WOT-33 in v6, sft-31 and sft-33 in v7,

      • Change the element RESERVED_STR immediately after the element PO_LINE_NUMBER to the element DESCRIPTION

      • Change the Repetition from 12 to 0.

    • Create a data name called IV UNIT COST with the same attributes as the UNIT COST data name.

    • Then, in file WOE-22,

      • Change the second UNIT COST field (the one before the SCRAP FACTOR) to be IV UNIT COST instead.

    • In file IVE-17, remove the repeat of 2 on the WAREHOUSE ID.

    • In version 6 file ARM-10 record G, change the fourth field from AR_MSG_ID to RECORD_ID.

  • Ensure that you have a target (destination) directory that contains no data files.

  • Ensure that the source directory has all of the files you want to port. It MUST contain the data dictionary files (ddm) as well.

  • The separate file for temporary vendors has been discontinued. All vendors reside in the Vendor Master file, and you can designate a temporary vendor by checking the appropriate box in the form. In order to facilitate this, all records in the system that have TEMP as the Vendor Number will be consolidated into 1 vendor. That vendor number needs to be defined in the barista.cfg file by setting +DP_TEMP_VEND= and then the vendor number to which TEMP's should be converted. If you anticipate updating/re-installing/synching Barista and re-running DataPort, add this STBL to your Addon.syn file as well, so it syncs back into barista.cfg.

  • Edit the field_translations text file to remove lines where a blank code has NOT been defined in the corresponding source v6/v7 file.

     2. Run DataPort

  • Launch the Barista version of AddonSoftware you want the data ported into. Masks and sequence numbers are written to the Barista instance that launched Addon.

  • Select the AddonSoftware Administration menu, then Utilities, then DataPort.

  • Select the proper version (6 or 7).

  • Search for or enter the proper Source Directory. The field will remain pink until it finds a directory that has the ddm files in it.

  • Search for or enter the proper Target Directory. The field will remain pink until it finds a valid directory.

  • Once the proper fields have been selected, the Scan button will activate. When clicked, the grid will populate with the source files that may be converted.

  • A Ctrl-A will select all of the files, and then a space bar will select all of the check boxes, or you can click on the checkbox on each file you want to port.

  • Once selected, click on Process. You will be prompted for whether you want to port the selected files. Once you select Yes, the process will begin.


  • DataPort makes use of several text files to facilitate translation of file names and field names, provide defaults for new fields or blank codes, etc. These text files are all located in the apps/aon/util/DataPort/files/ directory.

  • If during the process, it finds a file already exists in the Target Directory with the same name, it will prompt you with that information and ask if you want to overwrite the file.

  • If during the process, it finds a blank value in a field that is in a primary key, and the field is not listed in the field_translations text file, it will display a message at the end of the dataport, and all such fields will be displayed in the error file.

  • If during the process, it finds an invalid date, it will print a record to the log specifying which file, which field, and what the converted value would have been. It then blanks out the date and writes it to the table.

  • If you have custom files or fields that are being converted from a prior version you must:

    • Ensure that the old version’s dictionary defines those files/fields.

    • Ensure that the Barista AddonSoftware dictionary has those fields and files defined.

    • If the file names between the old version and Barista AddonSoftware differ, you must make an entry in the file alias text file. Follow the format of the existing records found there.

    • If there is a new record in sys-01, you will need to make an entry in the file normalization text file. Make sure that the 4 characters of the key immediately following the firm ID is in the first portion of the entry, and the file name in the old dictionary is in the second portion.

    • For new files, you will need to make an entry in the file xref text file. The first column is the file name plus the record ID from the old file, and the right column is the table name used in Barista AddonSoftware. It is important to note that the 7th character of the left hand column is case sensitive because a Record ID for a Dictionary definition can be upper or lower case.

    • If the old field name for a new field differs from the Barista AddonSoftware field in a specific file, you must make an entry in the field_file_xref text file. The first column is the Barista AddonSoftware file name, the second column is the field name in the "from" version’s dictionary, and the third column is the field name in Barista Addon.

    • If the old field name for a new field differs from the Barista Addon field throughout the system, you must make an entry in the field_name_xref text file. The first column is the field name from the old version and the second column is the field name in Barista Addon.

    • If you need to write custom code to deal with customer specific conversion needs, you may write a public with an ENTER statement and no arguments, and an EXIT at the end. All variables used in the DataPort program will then be available to you in that public. In the barista.cfg file, add a line that says SET +CUSTOM_DP_PROG=yourpublic. If that public is available when you run DataPort, it will ADDR that program for efficiency, and make the call after each record has been read from the source directory. Common variables you will want to be aware of are: value$ (holds the data in the field coming in),$[field] (the variable name from the dictionary of the source data), and datafile$ (the source datafile name).

    • If you have fields, such as blank codes or lowercase codes, that you would like to translate to a different value during DataPort, make an entry in the field_translations text file. Follow the format of existing records found there. Blank codes are strongly discouraged in the Barista version, and lowercase codes may not work correctly when performing SQL queries.

  • The Internal Sequence Number is an Element Type that is used to facilitate one-many-many relationships, such as the relationship from a header to one or more detail lines to one or more detail Lot/Serial lines. If you have custom files that make use of this type of structure, you will need to make entries in the internal_seq text file. The first field is the file alias, the second column is the name of the (line number) element from the source table, and the third column is the Data Element name in your Barista Addon table. DataPort will copy the contents of the line number element into the Data Element name in the Barista Addon table. You will need to do this to both the line number table and to the Lot Serial table to retain the unique link during the upgrade.

  • If a DOM is encountered when writing to a destination file, it will write information about that duplication in the error file and display a warning at the end of the dataport run. The duplicate record will not be written.

  • If processing one of the PO detail files (poe-11, 12, 13, 14 or pot-14), DataPort will move the customer number, order number and ship-to (i.e., dropship info) up to the corresponding PO header file. In addition, DataPort will attempt to populate the dropship name/address fields in the PO header as follows:

    • if the dropship ship-to was empty, use the address from the Customer Master file (arm-01)

    • if the dropship ship-to was <99, use the Customer Ship-to file (arm-03)

    • if the dropship ship-to was 99, look in the Manual Ship-to for the order (ope-31); if not found, check the Invoice History Manual Ship-to (opt-31)

Note:  In order for this PO conversion process to work correctly, you must select both the PO header and detail files for conversion. In addition, you should either select the required address files for conversion (arm-01, arm-03, ope-31, opt-31), or make sure they have already been converted and exist in the destination directory.


    3.  After the Dataport process is complete

  • Copy/paste the files listed below from a standard set of demo data to the target/destination directory, replacing any files that already exist.

    • adm-49

    • glm-18

    • glw-11

    • adm_rptctl

    • adm_userdefaults

    • Also include the following files if running a version of DataPort prior to v13.01:

      • adm-09

      • adm-19

      • adm-39

      • glm-06

  • Launch AddonSoftware Administration => Settings => GL Posting Control and verify the Journal ID, Use Audit Numbers, Audit Number, Use GL Work File, Print GL Summary and Detail Level are correct by comparing them to the old system. Edit as necessary.

  • Manually correct AP and AR Report Parameters for City, State and Zip.

  • If porting from version 6, set up the A/P 1099 year in Parameter Maintenance.

  • If you do not have multiple AP Types, set up the Single AP Type value in Parameter Maintenance.

  • Check masks via Barista Administration > Maintenance > Input/Display Masks

    • Copy Barista’s ads_masks.dat file from the Barista instance where DataPort was run to the Barista instance where the ported data will be used.

    • G/L ID Masks will have poundI comp signs (#) converted to zeroes.

    • A/P, A/R, and P/R masks will have zeroes converted to capital U’s. If you want to use only numeric ID’s, you will need to change those parameters.

  • Create the vendor corresponding to the +DP_TEMP_VEND STBL. Don't forget to set the Temporary flag to Y. If this STBL is not set up prior to running DataPort, and there is a TEMP vendor found in the data, there will be a message on the screen and in the error file to that effect, and none of those records will be ported.

  • Run the GL Chart of Accounts Breaks form. If there is a blank record, delete it.

  • If porting Inventory Control, run the two inventory utilities that appear beneath DataPort in the AddonSoftware Administration > Utilities > DataPort menu:

    • Update PR Display Description

    • Convert PR Employee Comments

    • Combine PR Check History

    • Convert PR Union History

  • If porting from version 6, create desired Cycle Codes in Accounts Receivable > Maintenance. The Cycle Code in the Customer Detail file will be populated according to the value (if any) stored in the /apps/aon/util/DataPort/files/new_field_defaults.txt file.

  • If porting from version 6, create desired Freight Terms Codes in either Accounts Receivable or Sales Order Processing > Maintenance > Freight Terms Codes. The Freight Terms Code in the Customer Detail file will be populated according to the value (if any) stored in the /apps/aon/util/DataPort/files/new_field_defaults.txt file.

  • If porting Payroll, and you do not want to use the Current Year from Payroll parameters for the new YEAR field in the tables below, add the desired value for the YEAR for those tables in the /apps/aon/util/DataPort/files/new_field_defaults.txt file.




    • PRC_W2BOX






  • Three new fields have been added to the AP Type Codes file:  distribution code, payment group, and terms code. These are used to facilitate automatic creation of the Vendor Codes record (apm-02) for vendors that are checked as temporary. You'll need to call up each AP Type record and supply these defaults.

  • Add descriptions, if desired, to the Physical Inventory Cycle Codes records. The description is a new field for the Barista version of Addon.

  • Set the various Barista Sequence Numbers to values of your choice. Below is a mapping from v6/7 sequence number records to the Barista sequence records (from ads_sequences.dat) used in v8+. Access the Barista Sequence Numbers via Barista Administration > Maintenance  > Sequence Numbers:

v6/7  File

Barista Sequence Numbers Key

(next sequence number not in v6/7)


(next sequence number not in v6/7)


aps-10N next vendor


next customer (see Note below)


next temp customer

(not used v8+)

next order (file ops-10N in v7)


next invoice (file ops-10N in v7)


next simple invoice


ivs-10N next item#

(not used v8+)

ops-10N (see ars-10N)

pos-10N next PO


next requisition


next receiver


line count increment

(not used v8+)

wos-10N next WO



Note: ars-10N next customer number is only maintained if “Automatic Customer Numbers” is ‘Y’ in AR Parameter Maintenance. If that parameter is ‘N’, use an <F3> Customer Lookup to help identify a reasonable starting point for Barista’s CUSTOMER_ID sequence number.


  • If triggers were configured and enabled before running DataPort, verify needed triggers are still enabled after DataPort completes. As of version 13.01, DataPort automatically disables triggers that it might fire, then enables those triggers when it has completed. If DataPort does not finish successfully, needed triggers may not get enabled. Check the DataPort log to verify all disabled triggers were enabled again. Disabled triggers are listed at the beginning of the DataPort log. Enabled triggers are listed at the end of the DataPort log.

  • Column headings and alignment for the GL Custom Financials are now part of the Financial Report Column Record, accessible via the Additional Options menu of the Financial Report Master form. Review the legacy headings using the General Ledger => Utilities => Historic Report Headings form, or by looking at the GLM_FINHEADING file in the Barista Development => Tables => Structure/Data Viewer, and then add the desired column heading and placement information in the Report Column Record.

  • More defaults have been added to the New Customer Defaults to facilitate adding new customers. Launch the Accounts Receivable => Maintenance => Parameters => New Customer Defaults task and enter all the required new fields.

  • Barista ships with records for firms 01, 02, and 99. Launch Barista Administration => Firms to change the demo firm name, and/or to add any additional firms. (Note that the "Batch?" field in this table is not used and can be ignored. Batching in Addon is controlled via the AddonSoftware Administration => Settings => Process Maintenance task.)

  • If you have customized the DataPort program (aon/util/dataport/Dataport_main.bbj) or any of the accompanying text files (aon/util/dataport/files/*.*), keep a backup copy of them in case you need to run DataPort again from a newer version of Addon.




Copyright BASIS International Ltd. AddonSoftware® and Barista® Application Framework are registered trademarks.