With the release of Epicor ERP 10™ there was a big shift in the entire Epicor architecture. As we all know, the days of ABL are long gone and Epicor 10 is running on a Microsoft stack. After being involved in many implementations and upgrades we’ve come to realize that a lot of customers and even some consultants don’t fully understand the way in which the new Epicor 10 client is deployed and how to modify that deployment as needed to push out and/or publish additional files and customizations.
More often than not, we come across installations where the deployment client has been corrupted and everyone gets that dreaded version mismatch error when launching Epicor.
Many customers resort to manually copying dlls into the ReleaseClient.zip like they used to do in Epicor 9 to fix these issues but this can cause further problems. Hopefully with this post we can shed a little light into this aspect of Epicor 10.
When Epicor ERP 10 is installed a deployment folder is created and shared.
This network share contains several folders:
- Client (folder) contains all of the .sysconfig files for all of the instances of Epicor in the server as well as the base client files.
- ClientInstaller (folder) contains the E10Client.exe program, which allows you to deploy/install the Epicor client on any workstations.
- Custom (folder) is where all patches and updates to the client are deployed. This is also the folder where you should put any and all customizations that need to be deployed down to the client (custom dlls, configuration files, etc).
- ReleaseClient (zip) is the base Epicor client install and gets downloaded and extracted when you run E10Client.exe. Note however that this does not include the patch level changes and it does not include any custom dlls. Those are deployed via the custom method as outlined below. This zip file should NOT be changed.
When you install an Epicor patch (10.0.700.3, 10.0.700.4 … etc) a new zip file is created and placed in the Custom folder (outlined above).
These zip files are used to update the clients with the changes to the dlls. These patches are incremental and as you can see by their sizes, they do not include ALL the client files, but rather only those files that have changed. These zip files should not be touched either. Any customization you want to deploy should be placed in their own zip file and deployed according to the instructions outlined next. If by any chance you or your consultant has changed these zip files, you can get a fresh copy of these by getting the original ReleaseClient.zip from the Patch specific folder located at:
Copy the new ReleaseClient.zip from above to the \ClientDeployment\Custom\Client\Update folder. Delete the corrupted zip [ERP10.0.XXX.X] file and rename the ReleaseClient.zip to the original name of the corrupted file.
How to Deploy your Custom Files
- Create a zip file with the dlls and configuration changes you want to deploy (MyNewFiles.zip).
- Create a new directory within the \\MYSERVER\ERP10.0.700Deployment\Custom\Client folder.
- Place your new MyNewFiles.zip inside this new folder.
- Open the sysconfig file for the instance you want to deploy the new files:
- At the bottom of the config file, find the section named <customizations>.
- Add a new node into the <customizations> section and change the name and directory arguments to match your file name and folder as shown:
- Make sure that the name attribute matches your zip file name and the directoryName attribute matches your folder name.
- Save the changes to this file.
- Make sure that your new zip file and the new folder you create have security settings set to allow everyone read/write access.
- If you need to make additional changes you will have to go through this process again and create a new zip file but you can reuse the same folder.
- Keep in mind that the customizations are applied sequentially, so if you put one of your custom zips before Epicor’s patches it may get overwritten if there are file name conflicts.
- Do not change or edit any of the RealeaseClient.zip or ERP10.XXX.zip files. This is generally what causes out of date assemblies and deployment issues.
We hope that you find this post useful and that it helps to clarify some of the “Black Magic” that goes on behind the curtain within the Epicor environment.
At TriGem, we strive to make your life just a tad easier. Feel free to contact us with any questions or suggestions and please let us know if there is anything we can help you with.