Configuration for multiple Epicor10 environments

We have a several form customizations as well as a few BPMs that need to read from/write to a different data source than the Epicor10 database. Currently, these connection strings are hard-coded in the form customizations and BPM custom code callers. This is not ideal, as we have three instances of E10 (10.1.600.12) and each should point to a different set of databases. We also often like to refresh the data in our Dev and QA environments by restoring the E10 database from Production, however, as it is currently implemented, we need to manually update each of the customizations and BPMs with the appropriate connection strings.

We would like to add the connection strings to a configuration file or database table so that we do not need to perform this step each time we refresh the data. What would be the best way to achieve this?

We’ve done something similar by setting up a UserCode and having the BPM
reference this user code for the data. Then when we move Production DB to
our Test server part of our procedure is to update the UserCode with the
proper data for your test environment. In our case, it’s Bartender
printing paths.

The BPMs could be modified to look at the UserCode / CodeType table
field(s) for the connection string data instead of hard coding it.