Error at startup - The given key was not present in the dictionary (Device.mdb)


 Product(s):Promis.e, Bentley Substation
 Version(s):08.11.08.xx - 08.11.12.xx
 Environment:N/A
 Area:Installation_Configuration
 Subarea:N/A

Error or Warning Message

When starting the software, one of the following error occurs. Often the software was running without issue prior to this problem, and other errors may occur when other tools are used to access catalogs or their contents.

Internal Error
Error Message: The given key was not present in the dictionary.
TargetSite: System.Data.DataTable GetOleDbSchemaTable(Int32, System.Guid, System.Object[])
DeclaringType: MDBProxy.ConnectionManager
Attributes: internal
MemberType: Method


Internal Error
Error Message: Invalid database object reference.
TargetSite: Systerm.Data.DataTable GetOleDbSchemaTable(Int32, System.Guid, System.Object[])
DeclaringType: MDBProxy.ConnectionManager
Attributes: internal
MemberType: Method

Explanation

The Device.MDB file gathers data from the various catalog.MDB files from the catalogs specified in [[Setup]] > Catalog Paths.  Sometimes old or bad data seems to get stuck in the Device.MDB file, preventing it from updating correctly.

How to Avoid

In more than one case, the problem was resolved by replacing the Device.MDB file with a known good Device.MDB file. The Device.MDB file is typically installed in the "\Config" subfolder of the [[5366|Program Data folder]]

A Device.mdb file for Promis.e V8i Select Series 8 can be downloaded here

A Device.mdb file for promis.e V8i SELECTseries 5 and 6 can be downloaded here.

A Device.mdb file for promis.e V8i SELECTseries 3 can be downloaded here.

You must be logged in to see the Download button.

See Also

[[Error at startup - No value given / given key not present (Multi_Language_UI.mdb)]]

 Original Author:Matt_P