Skip to main content

Error "Unknown Error ... GetKeysForChannels" occurs when archiving Empower projects into NuGenesis SDMS - WKB20927

Article number: 20927


  • The following errors occur when archiving Empower projects with SDMS:
    • "E", ...
    • "-2147220989, Unknown Error"
    • "Waters.SDMS.WindowsService"
    • "clsEmp2PreProc "
    • "GetKeysForChannels"
    • "1","
    • "EMC: PerformPreProcess error"
  • SDMS does not archive the Empower projects


  • NuGenesis 8 SDMS
  • NuGenesis 8 Data Adapters Release 2 or 3
  • Empower 2
  • Empower 3


The language selection in the NuGenesis Archive Template does not match the language used in the Empower projects that are selected for archiving.


  1. Log in to SDMS Administrator.
  2. Open the project properties, select the relevant Archive Template, and click Edit.
  3. Select the template line for Empower projects and click Edit.
  4. Change the Language field to match the natural language of the Empower projects.
  5. Save and close the template.
  6. The template will go into effect at the next refresh cycle of the NuGenesis Archive Agent; alternatively, you can restart the AA to effect a more immediate change.


The Empower data adapter uses a file, Empower.EVSXML, in Drive:\Program Files (x86)\NuGenesis 8.0\EVS\EVSLanguageSupport, to map the Empower field names to the system standard field names. The project export files from Empower write the field names in the chosen language. In order to map those fields to SDMS metadata fields, the system must be able to match the field names to the Empower internal field names.

If the projects are in an Empower system that uses different languages, the Project Exceptions list and the language selection must be carefully managed so that the data adapter only sees projects with a matching language as candidates for capture.

If debug logging for the Empower data adapter is enabled, messages of the following type will appear in the debug log for each field in the projects, if the language selection is incorrect:

DEBUG Waters.SDMS.EmpowerDARemote.ClsEmp2PreProc - [AddMillField] Error while trying to add field: fieldname
ERROR Waters.SDMS.EmpowerDARemote.ClsEmp2PreProc - [AddMillField] MillenniumToolkit.Fields.1: Unknown Error ( ? MillenniumToolkit.IFields.Add(String FieldName)
? Waters.SDMS.EmpowerDARemote.ClsEmp2PreProc.AddMillField(Fields& objMillFieldsC, String strCstINI, String strCstKEY))

Not able to find a solution? Click here to request help.