Select Page
ERP Implementation Best Practices: Closing the Gaps

ERP Implementation Best Practices: Closing the Gaps

ERP Implementation Challenges

Bridging functionality gaps in ERP is one of the great challenges in an Epicor implementation, or of any enterprise resource planning project. There are often visible gaps between a company’s business requirements and the system’s ability to address them. In a perfect world, the needs of the company perfectly match the capabilities of the system they are implementing. In practice, the gaps between an organization and its ERP application can be significant, and closing these gaps can take significant effort. The inability to successfully close these gaps is a leading cause of project failure. This guide will help you understand a few ERP implementation best practices to help address the great challenge of closing the gaps.

Time and ERP Planning No Gaps

ERP Customization

  • Find creative ways to use the system’s standard configurations to address the needs of your business.
  • Adjust your business processes to conform to the system’s recommended best practices.
  • Tailor the software in one form or another to provide needed functionality.
  • Combine the above methods to achieve a hybrid solution.

So why do businesses feel the need to tailor the applications they implement? ERP software customization is a means of closing gaps. Sometimes, it is the preferred means of addressing challenges before they start. Often, gap closure will involve some form of customization. The overall level of ERP project complexity will expand with increasing challenges and risks. In general, the different types of obstacles encountered in an ERP project can be grouped under one of a few headings. Customizing an ERP application allows you to do a number of things and to circumvent a number of issues:

  • Automate tasks. The standard system is too transactional and user-intensive.
  • Prevent errors. The standard system allows for too many points of failure as a function of user entry.
  • Integrate with third-party systems. The standard system does not provide specific functionality, necessitating a tertiary application. Similarly, the standard system does not integrate with the third-party module in question.
  • Extract and display data. The standard system’s out-of-the-box reports do not present the necessary information needed by the business.
  • Add business logic. The standard system does not possess logic needed by the implementing company.

The Total Cost of Ownership of an ERP Solution

The rule of thumb that came out of the first generation of ERP systems was simple: avoid customizing the ERP system at all costs. Fit the business to the software, not the software to the business. Considering the comparatively rigid systems of the era, this recommendation seemed valid. Earlier-generation ERP systems contained limited toolsets for tailoring the application to meet the needs of the implementing organization. As such, customization essentially implied a source code modification, and such changes were detrimental to the long-term maintainability of the systems involved.

ERP Implementation Best Practices Evolving

Next-generation ERP systems contained improved toolsets to provide non-source-code customizations that were upgradable and maintainable, but the disruptive effects of customization on the implementation projects nevertheless continued unabated. Why do ERP customizations continue to create challenges to organizations?


Customizations are disruptive—they introduce logic to the application that is not native to the core system. They may also behave in ways that are unlike the rest of the system, and tend to be less comprehensive than the source code that they are layered upon.


As they are developed and refined, they often contain bugs. For example, the custom business logic may be invoked at times when it isn’t expected, or may not be invoked in all cases that require it. Working though these bugs can be challenging. Moreover, when customizations run into bugs or undocumented features of the core application, an abundance of unexpected behaviors can result.



ERP Toolsets & Project Success

Everything said, how do companies successfully leverage the customization toolsets available? How do they provide the necessary functionality to their organizations without compromising project success? Consider the following observations:

  • On one hand, we’ve seen companies significantly customize their application in an organized and methodical fashion. Therefore, the customizations produced a limited disruption to the implementation.
  • On the other hand, we’ve encountered other companies that only modestly customized their application. The modest number of customizations significantly disrupted the implementation. Why?

Organize to Optimize Your ERP Software

The level of customization and the level of organization of a project are closely tied. Therefore, companies that organize their customization efforts carefully are much less likely to experience problems caused by customizations. Conversely, poorly organized customization efforts will create additional issues that will add complexity and disruption to an implementation that is already, by its very nature, complicated.


Quantifying the impact of these two variables (customization and organization) can be difficult, but a simple mathematical model might help to model their interaction.

  • Assume that a project’s level of disorganization can be scored on a scale from 1 to 10, with 1 being highly organized and 10 being highly disorganized.
  • Similarly, assume that a project’s level of customization can be scored on a scale from 1 to 10, with 1 being lightly customized and 10 being highly customized.
  • Additionally, assume that a project’s success can be scored on a scale of 1 to 100, and anything over a score of 20 is a bad thing. For example, the project could be over budget, behind schedule, or low in scope or quality. In this context, a score of 30 might imply a project that went live late, or had to cut scope, or exceeded the budget, while a ruination score of 100 might represent a project that is years late, millions over budget, and so poorly designed that it will fail to go live.

A score of 1 (very low customization, very low disorganization) represents a very low risk score and a score of 100 (very high customization, very high disorganization) represents immense and catastrophic risk to your ERP and to your business:

ERP Implementation Best Practices Grid

The simple lesson to be learned here is that an organization can perform reasonable amounts of customization to their ERP application without destroying an implementation. A company needs to take steps to utilize an organized approach to customizing their application.


ERP Risks

A challenge with this dilemma is the reality that most companies do not launch an ERP implementation project believing that they will customize the application significantly. As a result, when these change requests surface, they are normally ill-equipped to handle them, and things soon spin out of control. As such, many customers come to us asking the simple question: What does it mean when one’s customization methodology is highly organized?


ERP Project Risk Management

There are a number of characteristics that an organized implementation possesses. They include the following:

  • First and foremost, governance is in place, to control when customizations occur. Governance is the best way to keep the degree of customization from spinning out of control.
  • Solutions are tracked. The implementing company understands which modules have been customized and which reports have been altered. They have identified all truly custom entry screens, reports, and dashboards. This information is put to use whenever an ERP upgrade occurs or a new site goes live.
  • Business requirements and functional specifications are developed as solutions are developed, and these solutions are constructed using these specifications.
  • Guidelines are defined ahead of time. These are conventions that describe how custom solutions are to be constructed, organized, and named.
  • Solutions go through careful testing. They receive a unit test to ensure that the basic requirements have been met, and then a regression test, to ensure that they function appropriately within the overall application, and don’t break anything else.
  • Solutions go through careful deployments to the production environment. When old solutions replace new solutions, the old solutions are removed from the environment as part of the deployment, to prevent the environment from getting cluttered with old, inactive solutions.
  • When an ERP module is customized, the developers take into account the full suite of new and pre-existing customizations, as to ensure that new elements are optimized to efficiently work in concert with existing custom solutions.
  • Environments are constructed as to segment various activities such as functional design, custom solution development, and upgrade verification. When these activities overlap, conflicts invariably arise, and these can slow down the progress of a project and create needless confusion.

The Goal of an ERP Implementation is Twofold

How do you implement a system that satisfies the needs of your business? How do you stay scalable and maintainable and also support the future requirements of your organization?


The future of your business is always unknown, and often unpredictable. Therefore, cutover will surely present new unknowns. Heavy system customization often results in the achievement of the goals of business needs. Unfortunately, this can risk the long-term maintainability of your ERP system. An organized and methodical approach to system customization supports a more successful implementation. Moreover, it provides easier long-term maintenance of your application. Likewise, it holds the ability to support the business requirements of the future.


After the ERP Vendor, the Software

Are you trying to improve your manufacturing processes? Do you need user training to empower your ERP project team? Are you looking for the competitive advantage that cloud ERP offers? Do you need help with data migration to an ERP hosting environment for a complex enterprise resource planning software like Prophet 21, E10, or Sage? We have experts for everything ERP, whether you need Epicor consulting assistance or QuickBooks hosting guidance.


For 17 years, EstesGroup has served clients at every step of the ERP implementation process. We offer real-time support 24/7/365 for your implementation team. We optimize your technology, and we lighten the burden on the precious human resources that make your company unique. Your team can work according to their talents, while we do the routine work involved in managing your ERP software and the technology that supports it.



Learn More About ERP Implementation Best Practices for Cloud

A good ERP balances your budget, opens your resources to new possibilities and opportunities, and improves everything from customer relationship management to industry-specific compliance and cybersecurity. ERP cloud hosting provides an ideal platform for your work. Request an ECHO demo today to see how EstesCloud managed services can help your business.



Epicor ERP Database Upgrade Considerations

Epicor ERP Database Upgrade Considerations

Technical Considerations for an Epicor Upgrade

As more and more Epicor users moved from Epicor 905 to E10, the new world of upgrade challenges leveled off into old world reflection. As a customer, I once watched my company implement Epicor’s Vantage 803 platform and flirt heavily with a disastrous 904 release before upgrading to 905.600B. They finally settled on 905.702A. Since then, they’ve been in a holding pattern, and their jump to E10 is now, essentially, a ground-up ERP reimplementation.


If you’ve made the decision to upgrade, you need to consider everything from old data to new cloud-based servers. Because I’ve seen Epicor consulting on both sides of the give-and-get (as a customer and as a consultant), I’ve collected quite a few answers to questions surrounding your Epicor ERP database and your decision to upgrade.

Epicor ERP Database Technical Conceptualization

The Epicor ERP Lifecycle

For customers already on E10, the burdens of keeping your system up to date are much less worrisome. Epicor’s release cadence is now a metronome of consistency. New versions address the bugs and bothers seen in earlier iterations. Epicor consistently provides new functionality to the software and enhances existing capabilities. To this end, it is important to understand Epicor’s support cycle, and the difference between active support and sustaining support. To begin with, active support relates to the full breath of assistance provided by Epicor, and is reserved for versions that have been released roughly within the last two years. Epicor produces a new release (for example, from 10.2.600 to 10.2.700) every six months. That means if you are four releases behind the current release, you’ve moved into sustaining support.


Epicor System Support: Version Control

For an example, let’s say you implemented Epicor on version 10.2.300, and Epicor’s most recent release is 10.2.700. This means active support for your old version expired, just as the new version became generally available. As of release .700, Epicor would now only provide active support to versions 400-700. As such, release 10.2.300 would now be on what Epicor refers to as “sustaining support.” Sustaining support significantly limits the level of assistance Epicor will give you, whether it be support through their help line, bug fixes, the ability to purchase new ERP modules, and even the ability to obtain ERP consulting support. To make the most of your support fees, it is normally a good idea to keep your application’s version current.


Epicor ERP Upgrade Q&A

For companies falling behind on release upgrades, we can (with minimal angst) get the systems updated. First, we can ask a number of questions regarding the mechanics of the upgrade itself. Then, we can work from the solid foundation of a successful upgrade plan. With this all in mind, I collected some of the questions we normally ask a customer during the consulting process when helping form an Epicor ERP database upgrade plan.

Detail Your Current ERP Environment

  • App Server(s): How did you deploy your production application? Is it deployed on a single server or on multiple servers? Are your test environments deployed on the same server as the production environment, or are they deployed on separate servers? Is your environment deployed onto a physical server, a virtual server on physical hardware, or to a cloud-based VM? What is the version of your operating system? Is it up to date? What are the physical properties of your application server environment(s)—RAM, CPU, hard drive?
  • SQL Server: Is the SQL Server installed on the same server as the application or to its own server? What version of SQL Server Management Studio are you using? Is it up to date? What are the physical properties of your database server—RAM, CPU, hard drive?
  • Epicor Applications: What version of Epicor are you on? To which version of Epicor do you intend to move? Is it supported by your OS and SQL Server versions?
  • Epicor Extensions: Which Epicor extensions are currently in use (Web Access, Mobile Access, Enterprise Search, Social Enterprise, Education, Information Worker, Data Discovery)? Do you intend to utilize the same extensions when you upgrade?
  • Third-Party Tools: Do you have any third-party tools or integrations that will need to be in use when you upgrade (CRM integration, External Configurator, Ecommerce, etc)?
  • Client Installation: How is your user community connecting to the application? (Client install? Terminal Server? Web access, etc.)? Do you intend to utilize the same installation methodology when you complete your Epicor ERP database upgrade?
  • Backup Policy: What is the current backup solution and disaster recovery policy? Do we need to carry this forward, or will we make changes to this as part of the upgrade?

Clarify the Future-State Server Map

Live Server: Do you ultimately intend to deploy the upgraded Live environment onto a new application server or utilize the existing server?

Test Server: Will you be using a new Test server or utilize the existing server, with the intent of running two versions concurrently during the upgrade phase?

Database Server: Will you be deploying to a new database server or using the existing server?

  • If a new server, have you procured your additional SQL Server licenses?
  • If a new server, who will we be installing the SQL Server application?

Roles and Responsibilities: For all new servers, what tasks will be the clients responsibility?

  • Provisioning new servers
  • Providing new OS licenses, installing operating systems and enabling RDP
  • Providing the agent-based backup solution
  • Supplying any anti-virus exclusions

Server Access: What is the preferred method of attaining server access?

  • Remote connectivity agent
  • Virtual Desktop
  • RMM

Order of Operations: What does the upgrade and verification process look like? Are we upgrading test application first?

Verification Plan: Is there a testing qualifications checklist? Have you identified the scenarios, products, and business processes that you wish to use for testing? Finally, have you identified all the customizations, dashboard, and reports that you will want to verify as part of testing?

A New View From an E10 Upgrade

So far, we’ve looked at questions surrounding primarily technical considerations. However, with all the discussions of feeds and speeds, it’s not uncommon to have a customer come to us asking, “What does an Epicor E10 upgrade actually look like?” To begin with, answering the above questions will go far to understanding the shape of the upgrade. Next, moving beyond the technical considerations, we can identify a basic flow of activities. Moreover, this flow can help customers understand just what needs to be accomplished and in what order.


While each upgrade looks a little different, based on the specifics of the organization, most upgrades follow a sequence similar to the following:

  • First, spin up any new servers and install operating systems and SQL Server as required.
  • Then, install a new version of the Epicor application to a designated application server and/or upgrade the existing Epicor application on an existing Test server.
  • Meanwhile, take a copy of the production environment database to create a Test environment database on the SQL Server.
  • Next, upgrade the Test environment database from the Admin Console on the application server.
  • Perform testing activities to determine whether the new version works as anticipated. Perform remediation where gaps or issues are found and retest.
  • Once approved, schedule live upgrade, client deployment plan and communication plan.
  • Then, focus on upgrade production application and upgrade client deployments.
  • Support end users during post-upgrade period.
  • Finally, decommission any old application install and/or servers that are no longer required.

An Epicor Database Ace

Beyond version support, you can find many good reasons to keep an up-to-date Epicor ERP system on your side. Primarily, updating to the current version of the application allows you to leverage the cutting-edge features of the system for your users. So give some thought to sprucing up your data with an Epicor ERP upgrade. 

Do you have a question for an Epicor consultant? If you need an answer to an ERP question, please fill out the form below, and we’ll talk to you soon. Likewise, you can use the chat to ask your questions, and we’ll talk to you within seconds or minutes. For more Epicor consulting advice, read one of our ERP white papers. If you’d like to know more about hybrid and private cloud ERP, watch a webinar on virtual office cybersecurity. Then read about our managed IT solutions that are perfect for any ERP system.


An End User’s ERP History – from Baan IV to E10

An End User’s ERP History – from Baan IV to E10


Back when I still worked for a manufacturing company, in a magnificent sprawl of factory and office buildings, I had a reputation for being a fast walker.  I’d bustle through the labyrinthine hallways of the office and scale the grand aisles of the factory.  With my head down in a shoegazer’s stride, I’d often come into near collisions with whiteboards or drill presses.  At the time, I was shaped roughly like a college linebacker, and my coworkers would clear the path when they saw me coming.  “Slow mind, fast feet,” one of my supervisors once remarked.  When people asked why I walked so fast, I replied, “It’s hard to hit a moving target.”  In a company that had a reputation for random layoffs, this was a sufficient answer — an insider’s aphorism.


ERP systems are rarely a moving target.  A stationary target is usually either a soon-to-be-victim or a roadside misfortune.  When I first entered the business world, my company was replacing its mishmash of homegrown systems with Baan’s flagship ERP solution, Baan IV, well before the panic of Y2K.  New to the company, and still learning what I could do to get by, it was no big deal to me.  But to my wiser, more experienced coworkers, it was an all-out affront to their sensibilities.  These were folks accustomed to the keyword-laden world of green screens and shortcuts, for whom the art of the double-click was still a work in process.  So, the transition took a while, in spite of the new software being pretty solid.

old computer

Baan, as the company proper, went into a tailspin shortly thereafter, and its software was absorbed into countless versions of other applications.  I once sat down with a veteran consultant who had been with SSA Global and then with Infor during these transitions.  He gave me the entire evolutionary history of the Baan product over a burger and fries.  It was quite a mouthful coming from one of the application’s dedicants.


When it came time to replace our own ERP system, the manufacturing company I was with opted to move to Epicor’s Vantage ERP system.  Compared to Baan’s Unix-based architecture, Vantage’s look and feel seemed pretty modern and user-friendly, especially in the mid-to-late 2000s.  Now, Epicor’s manufacturing ERP product had its own special evolutionary history, and we happened to hitch a ride to its moving train while it was plowing forward at full speed, but still halfway from its destination.  Vantage had originally been architected using the Progress 4GL business language, both at an application and database level.  But as Microsoft became the dominant application platform, the company opted to begin a migration process to a fully Microsoft-centric stack.  And a long strange trip it’s been.

From my own starting point, I’ve been able to watch other customers navigate the challenges of simplicity and performance vs. currency and maintainability, all the way through to the challenges of new functionality vs. platform stability. 

Brad Feakes

SVP, ERP & Professional Services, EstesGroup


Epicor’s Vantage 8.0 version was the first step in this evolution.  Being a client-server application, they replaced the Progress client with a Windows-based client, while retaining the Progress business logic layer on the server.  Better still, they now provided the option for a SQL Server database.  The initial results were… bumpy.  One can imagine why combining so many architectural layers would certainly be a veritable middleware nightmare.  Earnest effort went into remedying these issues, and the result was Vantage 8.03, a more stable version of 8.0.


A major functionality uplift had been teased for a number of years, under the guise of “Version 9.”  While still possessing the same basic backend architecture, the features and capabilities of the new version were to be a real advance from the current release.  The first installment of this promise was Epicor version 9.04, and the results were less than optimal.  Sure, the functionality was there, but the performance was abysmal.  At my own company, we never got so far as to implement 9.04, given that 9.05 was released on its tail in short order and addressed some of the issues that plagued its antecedent.  But at some point, it became known that 905 itself was going to be the last major release on the current architecture, that the next major release would be devoid of the Progress-based 4GL backend, and that in its place would reside an entirely Microsoft-centric server-side stack.

product management erp module

This finally came to fruition with Epicor’s version 10.  And the challenges experienced by the user community were similar to the previous versions.  In moving to E10, Epicor essentially rewrote much of the application’s backend, turning those in the end-user community on the bleeding edge essentially into beta testers.  The challenges of working through the kinks involved were significant.  Now a consultant and no longer a customer, I experienced the application from a new perspective as I tried to confirm just which of the legacy version’s features could and could not be supported by the new version.  Working in some of the more complex areas of the application, such as product configuration and MRP, I’ve encountered many show-stopping issues that put customer implementations in holding patterns.  As with 904, a relatively small subset of Epicor customers went live on 10.0, many opting to wait until 10.1’s more stable version was released.  Since 10.1, the version has been remarkably stable, with each new version offering more and more capabilities without undermining previous functionality.


My ERP journey over the past 20 years has been a long, strange trip indeed.  From my own starting point, I’ve been able to watch other customers navigate the challenges of simplicity and performance vs. currency and maintainability, all the way through to the challenges of new functionality vs. platform stability.  Looking back, I’ve wondered if I’ve learned anything from my IT travels.  Though I won’t scribe any hard-and-fast rules into marble, there are a few things that are worth mentioning:

  • Software goes through cycles.  The stability, capabilities, and performance of an application all vary over time.  Understand this and plan accordingly.
  • A company’s success with an ERP implementation varies according the point in the cycle where they enter the fray.  Entering on a stable version might not give you all the bells and whistles you desire but will likely make for a more successful implementation.
  • Stability applies to an ERP vendor as much as it does to their software.  When you engage an ERP vendor, it’s good to understand the company’s stability.
  • An unstable vendor may quickly devolve into an unstable platform or, worse, into an unsupported platform.
  • When upgrading an application to a more recent version, be leery of the “bleeding edge” syndrome.  All other things being equal, it’s good to let the major version of an application settle down before taking it on.  Premature adoption can lead to catastrophic implementation.

Interested in having us help your business?

Epicor Multi-Site Migration:  A Moving Guide

Epicor Multi-Site Migration: A Moving Guide

Out of Epicor Multi-Site, Out of Mind


An Epicor multi-site implementation, whether moving from a single site to multiple sites, or vice versa, is a common phenomenon in the manufacturing and distribution world.  Companies and sites in Epicor are rarely in a “set it and forget it” proposition.  As companies evolve, the need to further break out or combine business units can become necessary.  As your business grows, you might wonder if your satellite facility should be considered part of your main site or if it should be a site of its own.  Or, in a similar Epicor multi-site configuration puzzle, you might wonder how to map out the consolidation of a two-company environment into a single-company installation.


Assume, for example, that a company has four sites (A, B, C, D) split across two companies (1 and 2) in the following manner:

  • Company 1:  Sites A, B, C
  • Company 2:  Site D

And the company desires to combine operations under a single operating unit, such that the lone site under company 2 would be absorbed under the operations of company 1:

  • Company 1:  Site A, B, C, D

Such a change may seem like simply a matter of converting existing data—of pointing all records from the old company and site to the new company and sites.  Alas, systems are often less than accommodating in allowing for historical transactions to be modified in this manner.


Epicor Multi-Site Implementation Recommended


Epicor offers no toolsets to “move” a site across companies.  No toolset currently exists that provides the ability to change the company context of all records in a single instance, as to point them to another company context.  Historical transactions don’t like having their keys modified, and such revisionist history is fraught with potential challenges, and thus not recommended.


The recommended best practice in such an Epicor multi-site implementation scenario is to reimplement site 2-D in Company 1.  This would involve the setup and configuration of the site and the transfer of setup, master file, and open transaction data into the new site, and the continuance of business operations from within this new site.  This would not include the loading of historical transactions—it would essentially be an act of starting fresh in the new company, as if the site were converted from a legacy system and not from Epicor.


To achieve Epicor site consolidation, as described above, a four-stage process can create the desired infrastructure:

  • Plan:  The planning stage finalizes scope and organization through assessment, planning, resource organization, scheduling, etc.  The resolution of conflicts in data, customization, or configuration will occur as part of the testing phase.  Scripts will be developed for the movement of data and customizations.
  • Architect:  The architect stage involves the setup and testing of an environment that would represent the future state deployment, and the elicitation and resolution of any gaps, issues, or conflicts that would come from the planned deployment.  Key activities are the development of the test environment, testing of new site deployment, and gap/issue resolution.
  • Validate:  The validate stage is used to verify that we can successfully execute a cutover and run the business as intended, as if we were in a live environment.
  • Stabilize:  This is the final, successful deployment of a new site at cutover.


To address the scenario described above, the following environment map would be recommended:

  • Test Environment:  The initial environment used to model the construction of the new site.
  • Pilot Environment:  The environment in which conference room pilot (CRP) validation occurs.
  • Live Environment:  The existing Live environment, which will be updated at the cutover of the new site.


In a traditional Epicor implementation, we go through a five-stage process:  Plan, Educate, Architect, Validate, Stabilize.  This conventional waterfall approach to implementing an ERP application does not adequately address a scenario where training is not required, and prototyping is centered less on the use of the system than it is on properly implementing and integrating an existing Epicor process into a different Epicor company.  As such, the methodology is somewhat simplified, considering the team is already well-versed in the application.


The environmental build, relative to the four-stage model described above, would be as follows:



Initial Live Environment Setup:

  • Extract Setup information from 2-D.
  • Create New Site D in company 1.
  • Update Site configuration in 1-D.
  • Update Company configuration in company 1, as needed.

Test Environment Setup:

  • Build Test environment from copy of production.
  • Extract master file records from Company 2 (Live) and load into Company 1 (Test) and reconcile Conflicts as needed.
  • Extract open transaction records from Company 2 (Live) and load into Company 1 (Test) and reconcile conflicts as needed.
  • Extract open balances and open AR & AP from Company 2 (Live) and load into Company 1 (Pilot).
  • Perform user testing to verify functionality in Site 1-D and the effect of adding 1-D on sites 1-A, 1-B, and 1-C.


Pilot Environment:

  • Build Pilot environment from copy of production.
  • Extract master file records from Company 2 (Live) and load into Company 1 (Pilot).
  • Extract open transaction records from Company 2 (Live) and load into Company 1 (Pilot).
  • Extract open balances and open AR & AP from Company 2 (Live) and load into Company 1 (Pilot).
  • Perform conference room pilot (CRP) event to verify functionality in Site 1-D and the effect of adding 1-D on sites 1-A, 1-B, and 1-C.


Live Environment-Cutover:

  • Extract master file records from Company 2 (Live) and load into Company 1 (Live).
  • Extract open transaction records from Company 2 (Live) and load into Company 1 (Live).
  • Extract open balances and open AR & AP from Company 2 (Live) and load into Company 1 (Live).
  • Perform any ancillary cutover activities as required.
  • Resume operation in new environment.




As with any project, there are a number of considerations that should be clarified at the onset of an Epicor multi-site migration.  The following assumptions have been made:

  • There are always minor data transformations needed when loading data into a new Company and Site, such as the new Company and Site IDs.  You should give consideration to any transformations above and beyond these basic adjustments:
    • Are there data transformations that will need to occur beyond the necessary changes to allow the data to function correctly and without conflict in the new company?
    • Are there changes to setup tables that will need to be mapped when loading master files and open transactions?
  • There is a necessity to identify who will be building test case scripts and who will be performing the necessary testing and validation—and this validation is twofold:
    • Validate the functionality of the new site within the existing company.
    • Confirm that the addition of the new site does not introduce any processing issues with any of the existing sites.
  • It is critical to identify a process for resolving conflicts—the addition of a new site may introduce conflicts with the existing Epicor implementation, and a resolution strategy should be devised at the project’s onset.


Conflicts and Conflict Resolution


Potential conflicts may exist between Company 1 and Company 2, and these may surface as a function of the “move” of Site 2-D into Company 1.  These may include the following:

  • Company configurations in Company 1 may not be in agreement with those of Company 2.
  • Security and menu settings in Company 1 may not be in agreement with those of Company 2.
  • Conflicts between customizations and/or reports may exist between Companies 1 and 2.
  • System Agent configuration conflicts may exist between Companies 1 and 2.
  • Setup Table conflicts may exist between Companies 1 and 2.
  • GL structure conflicts may exist between Companies 1 and 2.
  • Master File conflicts may exist between Companies 1 and 2.


Historical Data Access and Epicor Multi-Site Design


With any such migration, questions exist as to how historical data will be accessed.  As noted above, our recommended approach does not include the loading of historical transactional data.  In the current situation, the historical data from site D in Company 2 will continue to reside in the database, but the ability to modify the data will be removed at cutover.  Read-only access and report access could still be permitted, to provide access to historical data.  Additionally, the utilization of cross-company BAQs could be applied for reporting from Company 1 and consolidating datasets between the legacy site 2-D and the new site 1-D.


As companies expand, it’s common for new physical facilities to be spun up and incorporated into the existing Epicor application in some form or fashion.  In other cases, companies manage parallel business within the same space, and may decide they need to better break these out, as to keep their operating interests independent of one another.  In all possible scenarios, Epicor multi-site implementation can be tricky, demanding a thorough migration plan.



Looking to tweak your company/site configuration as part of an Epicor upgrade?  Learn more about multi-company and multi-site upgrades here.

Epicor ERP Upgrade Considerations for Data Dailies

Epicor ERP Upgrade Considerations for Data Dailies

The further away you get from the “new release” of a software, the more challenging an upgrade becomes, and this is especially true for Epicor ERP upgrade customers.  If you’re coming from a Progress 4GL business logic-based version, which would include anything earlier than version 10, such as Epicor’s 905 and 803 platforms, you might feel a little lost in all your options.  The need to move beyond Epicor’s legacy platform is obvious—the analog film of the old version is deteriorating on the reels.  But the move to Epicor’s E10 platform is more of an epic picture than it is an opening trailer.  Thus, it is important to storyboard the flow of the narrative from the old to the new, before the cameras roll, knowing that your plot armor will only take you through the first act of your Epicor ERP upgrade.


Two Epicor ERP Upgrade Paths


The hero’s journey in any good film starts with a call to action, with a road diverged in a wood where the protagonist must choose one of two paths.  In general, you can consider any move from a legacy version of a software to an updated version to be an upgrade.  But there are two distinct paths for moving from your legacy version to E10, and these greatly affect the nature of the final implementation.


Path 1.  A straight, utility-driven upgrade from the legacy to the current version:  In a straight upgrade, a utility converts the data from the legacy version, generating an E10 database that adheres to the structure of version 10 schema.


Path 2.  A reimplementation:  This is an alternative method for moving to E10 from the legacy version, but this method does not actually upgrade the legacy data to make the E10 database.  Rather, the upgrading company reimplements the application in E10, normally using the legacy data—filtered, scrubbed and reworked—as the starting point.


Data as the Villain… or the Hero?


Regardless of your opening scene, one of the most important considerations in any Epicor ERP upgrade is what to do with your data.  Companies can have one of many data challenges as they anticipate an Epicor upgrade.  It is not uncommon for a company’s current Epicor implementation, along with all its legacy data, to be handed down from a previous administration.  A lot of staff changes over ten years, for example, can leave a company with a system that has a setup and configuration at odds with their current orientation.  In such cases, a given company may wish to have another shot at configuring the application—to undo some of the decisions of the past.


Some companies unfortunately inherit a legacy system with data that has been carelessly maintained and is thus dirty beyond recognition.  In these cases, customers may look to either clean up the data or cut it entirely.  In other cases, significant changes to the business may have led to an inordinate number of part, customer, or supplier records that are obsolete.  While these might have historical value, they may also unduly clutter the database and place the company in a no-win situation.  In extreme cases, the company may even have a company and site structure that has evolved to be radically different from what is depicted in the Epicor application.


The data of an ERP system can be broken up into a number of classes:

  • Setup data:  This refers to the foundational data that underlies the setup of subsequent master file records.  Examples of setup data might include part classes, product groups, buyers, sales persons, etc.
  • Master file data:  This normally refers to the three core master files in any ERP system—the part master, the supplier master, and the customer master.  Subsequent master files may also need to be set up that relate to the extension or relation of these master file records, such as supplier or customer part price lists.
  • Live transactional data:  This refers to the open transactions in your system, such as purchase orders, sales orders, jobs, and invoices.  The decision as to whether to reimplement or upgrade greatly affects how these are to be handled, given that in an Epicor ERP upgrade they come along as part of the ride, whereas in a reimplementation they would need to be loaded in the style of a new install.
  • Historical data:  Historical data refers to all of the transactions that have been processed in the past and are no longer active, and would include purchase orders, sales orders, jobs, and invoices that have long since been closed.

From Classic to New Release


In a straight Epicor upgrade, the data from the legacy version is updated and fine-tuned to fit into the version 10 schema.  In such a situation, limited changes can be made to setup and master file data—you get what you had in the legacy version, only now it’s in version 10.  Tweaks can be made—new setup files can be defined and new parts, customers, and suppliers can be defined that replace or supplement their legacy analogues.  But any data that has been transacted against remains in the database.  It can be inactivated, but it’s still there, and some customers have a problem with this much clutter.  Depending on the degree of the issues noted above, this may or may not be a big deal.  Also, one of the upsides of a straight ERP upgrade is the ability to retain historical data with minimal effort.


Given the potential issues with data that a company may face, reimplementation offers the ability to cleanly address these challenges.  It is common for businesses to transform significantly after their original implementations.  They may have a number of legacy companies, sites and warehouses that are no longer needed and may even burden the database and create confusion internally.  Customers may also wish to make radical changes to their company or site structures as a function of the upgrade.  In these cases, consideration should be made to performing a reimplementation in lieu of an E10 upgrade.


Typecasting your Data Forecasting


When you perform a straight Epicor upgrade, you are accepting that you will take all of your past performances with you, and this may create challenges that impede your future state aspirations.  Conversely, dumping your legacy database also involves leaving behind the historical data that amounts to the history of your business.  Epicor’s E10 ERP software is a big step up from its 905 and 803 antecedents, and with each point release, the gap between the new and legacy versions widens further.  Legacy Epicor customers looking to move their businesses forward will need to transition to a modern ERP platform, and Epicor’s E10 application provides a compelling case.  And when making this critical Epicor ERP upgrade rewrite, customers will do well to consider their data dailies.




Looking for a good storyline for your Epicor upgrade?  Learn more about E10 from our Epicor ERP team.  

Remote Epicor CRP: A Skeleton Key

Remote Epicor CRP: A Skeleton Key

When Your E10 Conference Room Pilot Feels Like Space Exploration


Conducting a successful Epicor CRP remotely is a lot like doing one in person—except that nobody’s in the same room.  Customers suddenly working remotely in the midst of an Epicor implementation may feel like their project happened long, long ago in a galaxy far, far away.  As such, many have asked us for guidance on whether to proceed with their project or to put it on hold until their team returns to on-site infrastructure.  With a little adjustment, companies can proceed with their Epicor implementation and keep their team’s momentum.  As much as I like to get in the customer’s on-site orbit, a few little changes when orchestrating a remote Epicor CRP will go a long way since the fundamental implementation principles do not change.




Here are 5 recommendations for conducting a remote Epicor CRP event:


1)  Place extra effort on the preparation stage.


A number of planning steps can be performed before the event.  This may include level-setting expectations of the core team and end users.   For many of the attendees, this might be the first time they have gone through a systematic verification event such as a CRP.  Provide them with an understanding of the logic behind such an event and an idea of how the event will be conducted.


Consider which roles will be required and who will be performing them: Who will be the facilitator?  Who will be keeping score against the test script to confirm which steps have or have not passed testing?  Who will document discoveries, issues, gaps, decisions, or general notes that extend beyond the test script?  Having these roles defined will help build traction early.


Also, make sure that team members and users have access to the necessary documents (test scripts, agenda, end user procedures) prior to the event.  Make sure that technical steps have been validated, and work with the IT department as necessary to ensure web conferencing software is working as expected, and that team members will be able to access the application remotely.  Consider performing a quick dry run with a subset of the team to ensure the event can be conducted as intended.


2)  Start with a well-defined set of scenarios and a detailed testing script.


A CRP is only as successful as its completeness—in covering the key business scenarios that support the organization.  Companies implementing Epicor vary to the degree in which they document and define their scenarios prior to testing them in a milestone event such as a CRP.  A remote Epicor CRP requires a better-defined test script.  If you plan to bring in new users to try out the processes you’ve defined, you will want the test cases to be well-defined to avoid the ambiguity that can encumber a remote testing session.


In on-site situations, the assistance of the core team members, who have been living and breathing these scenarios on a daily basis, can help drive through the confusion that could be caused by a loosely defined testing script.  It becomes difficult in remote situations to provide this kind of guidance, so plan it out ahead of time.


3)  Organize your testing with a detailed agenda.


Once the scripts have been solidified, organize their execution within your remote Epicor CRP with a detailed day-by-day agenda.  This helps clarify expectations and becomes a tangible roadmap that everyone can follow for the week’s event.  For each day, identify scripts to be covered, the timeframe for which to cover them, and the necessary attendees.  This is especially important with end users that you will be bringing into the event, as their attendance will likely be for smaller and more-specific blocks of time.  Given that an individual’s availability may be compromised during this event, work with the project manager, the consultants, and the core team to logically arrange activities as to allow for a logical flow of events and an efficient use of team member and user resources.


4)  Make sure Epicor EUPs are well-defined and complete.


End User Procedures are often overlooked when entering a CRP, and we’ve seen companies conduct successful on-site Epicor Conference Room Pilot events where they successfully verify their processes in the absence of detailed click-by-click steps.  Consultant knowledge and team member capabilities often come into play here in guiding end users through processes.  Companies facing a remote CRP do not possess this luxury.  As such, Epicor EUPs need to be buttoned down in order to conduct a successful CRP.  It’s always good to introduce general users to a CRP event.  In a remote CRP, you will know with certainty whether you’ve given your user community sufficient instructions to do their jobs.


5)  Place extra emphasis on communication when conducting your event.


Due to the cross-functional nature of ERP systems, and the importance of confirming that a configured system operates properly across functional areas, communication is a pillar of any such event.  This is magnified when performing a remote Epicor CRP.  Open, transparent communication is essential.  Remember that in a remote Conference Room Pilot, it is hard to read non-verbal cues, and the team needs to be cognizant of such communication challenges.  Often it can be beneficial at the onset of the event to come to an agreement with the team on the ground rules to be followed, specifically when it comes to agreed-upon guidelines for things like clarifying a scenario before moving to the next, or deciding when to call “time-out” when a discussion is going down a bad path.


Engagement can also be an issue, so make sure your team stays engaged.  If you’ve been invited to a session, the assumption is that you will stay engaged in it.  Look to try out different techniques to retain engagement, such as taking frequent breaks, encouraging individual feedback, or leveraging the chat functionality or the digital whiteboard of your web conferencing software to keep people focused.  Also, if you are the facilitator, the project manager, or the consultant in a remote CRP, it is important to know your audience.  An understanding of team members’ general proclivities when it comes to working in situations with a greater degree of ambiguity can go a long way to heading off conflicts and frustration or preventing rabbit-hole adventures.



Epicor ERP implementations are more of a walk on the moon than a walk in the park.


These challenges may seem insurmountable in light of circumstances that mandate remote activity.  But it has been our experience thus far that a great deal of progress can continue, in spite of a decentralized team.  As it relates to successfully preparing for and conducting a remote Epicor Conference Room Pilot, we have found the same to be the case—with a little extra work in the areas of planning and preparation, and some adjusted expectations on how team members will interact with each other, an event as complex and rigorous as a remote Epicor CRP can be successfully conducted.


A successful remote E10 CRP relies on many of the same principles that underlie an on-site event, but these steps need to be conducted with even more diligence to ensure the success of remote implementation.  In on-site Conference Room Pilot events, it is far too easy for the consultant or the core team to “muscle” their way through the event.  Remote CRP events do not have this luxury, as the influence of any one individual is minimized due to the remote nature of the event.  Use this as a blessing: tighten up the organization and use your remote Epicor Conference Room Pilot as a launch pad to boldly go where no project has gone before.




Are you working through an Epicor ERP implementation?  Do you need some guidance on the setup of the part master?  Successful part master setup is critical for project success.  Download our white paper for some recommendations.