Select Page
3 Ways to Spring your Epicor Installation Ahead

3 Ways to Spring your Epicor Installation Ahead

Spring Cleaning & New Growth for Epicor ERP

While individuals differ in their opinion of daylight savings time, the metaphor of “springing ahead” feels perfect for the enterprise resource planning (ERP) season. Spring is, after all, the time of growth and expansion. So how do companies make the most of this season? Successful Epicor customers often find ways to move their implementation forward, following through on the ERP resolutions made in winter. 

Whether you’re heading toward a great spring-loaded leap forward or merely some spring cleaning, there are many things that you can do to help your Epicor application spring ahead in terms of functionality, capability and overall return on investment (ROI).

Epicor Installation Manufacturing Tool Sparks

Spring your Epicor Installation Ahead with a Master File Cleanup

Daily problems in business operations often have their source in the master file records. Master file records are the kind of data that gradually deteriorates over time, if not cared for with vigor. Cleaning up the customer, supplier, and part master tables allows companies to quickly resolve multiple ongoing issues. I’ve seen many companies perform annual intensive data cleanup efforts to rectify such ongoing issues, and this often results in a system that is more predictable and more scalable over time. With each master file, countless questions can be asked to verify the accuracy of this foundational data.

These might include some of the following:

  • Customer Master: Are customer contacts up to date? How about the terms? Are credit limits in need of a review?
  • Supplier Master: Is banking information correct? Are purchase points defined correctly? Are terms up to date?
  • Part Master: Is supply-side information correctly configured to handle demand? Are part costs in line? What about customer and supplier-based part pricing?

Spring your ERP Ahead with a User Security Review

Cleaning up security within the ERP application is a simple step that can improve the maintenance and maintainability of the application. One significant question would be to ask whether your company utilizes individual user security or group security. The use of group-based security tends to keep the management of security much cleaner than the individual method, as users inherit permissions from the security groups, which ensures consistent and predicable access, without the scramble of managing individual permissions on every user account. Has your individual user security gotten out of hand? It’s never too late to rationalize security groups and roll back some of the disarray. This is one simple way of keeping your Epicor installation from becoming risky business.

Within this general structure, attention should be take to a few key functions, as to ensure that they are adequately managed:

  • Part Maintenance: Who has the ability to create and maintain parts? In many organizations, too many individuals have this ability, and it can create a significant amount of disruption if they are not doing so in a consistent manner.
  • Quantity Adjustments: The ability to adjust inventory quantities on the fly is a powerful but dangerous capability. Often, quantity adjustments are made to cover other issues, such as incorrect quality practices or inaccurate material issuing tendencies. Limiting quantity adjustments to a few reliable individuals is key to preventing inventory problems from spinning out of control.
  • Job Entry: Who should be able to modify a job? There are several settings (backflush, make direct, purchase direct, etc.) that can radically affect the application. Tightening the screws on job entry is often a means of ensuring successful supply for the jobs in question.

Spring Ahead with Focused Education

In an ERP context, education should be distinguished from training. Training generally refers to basic instruction geared for general end users, to allow them to perform processes accurately and consistently. Education differs from simple training in that it focuses much more on the underlying mechanics of the ERP system than on performing specific pre-defined tasks. When a larger critical mass of super users understands the underlying mechanisms of the system, you are better able to make decisions and further refine your system, improving efficiency and handling new challenges as they arise. Also, as new employees enter the organization, providing them with a solid understanding of the system can prevent needless backtracking. This is especially true for an Epicor installation.

So, what areas of the application could use some additional deep dives? Here are a few:

  • Transaction types: What’s the different between MFG-STK and MFG-WIP? It’s an important distinction.
  • Non-Stock: Understanding the effects of the non-stock flag on Sales Order Entry, the Engineering Workbench, and Job Entry is fundamental to successfully managing parts through the system.
  • Phantom BOMs — phantoms may help simplify your job BOMs, consolidate engineering levels, and simplify transactions.
  • Labor Entry Method: How does backflushing differ from Quantity Only? These are subtle but important differences, and the ramifications are widespread.
  • Backflushing Materials: Backflushing is another opportunity to make the system more efficient, but it relies on a solid understanding of the related hierarchy.

A Clean Epicor Installation Enables Growth

Spring, after all, is the season of growth, so push to move your Epicor ERP application forward this season, and sew the seeds for a bountiful harvest in 2021. Ready for optimal growth? Get the Epicor consulting services or Prophet 21 services you need to get ahead of the season. Take a tour of Epicor in a future-proof environment with a free ECHO cloud hosting demo. ECHO supports all ERP systems, including cloud-ready P21cloud-ready SYSPRO.

 

Epicor Process Set Maintenance: Bundle Up

Epicor Process Set Maintenance: Bundle Up

Scheduling ERP Processes

Batch processes have been with us since the inception of business computing. You can complete a batch of tasks as a single process for sake of efficiency. The benefits of such processes are clearly time-saving for an Epicor administrator. Batch processing allows for the automation of many tasks that would take an actual user an immense amount of time and effort to perform in order to accomplish the required manual tasks and calculations. In ERP software, the Materials Requirements Planning (or MRP) process is probably the most well known of such processes. As ERP systems have become more advanced, the need to group multiple processes to operate in harmony has become increasingly important.

Female using cloud technology on a mobile workstation

Epicor Process Bundling

In an Epicor context, there are many processes that you might want to sequentially bundle, such as following up an MRP regeneration by running the production planning and the shop schedule load graph processes, such that you can see the implication of the MRP run on material shortages and shop load respectively.

Sounds simple enough, but the problem with this scenario comes with the fact that such processes often run in the wee hours of the night, and only the most zealous members of the ERP fandom would wish to set their alarms for 3:00 AM so they can manually kick off a few ancillary processes once the MRP regen completes.

Enter Epicor’s Process Set Maintenance. Epicor process sets allow Epicor admins to bundle process runs into a single event. This allows you to sequentially run a suite of Epicor processes automatically, without human intervention. Process sets can include various differences:

  • processes
  • reports
  • executive queries

Once a process set is defined, and then attached to a system agent schedule, the related tasks are automatically processed according to the timing defined by the system agent.

Let’s look at a common issue, one that surfaces frequently for an Epicor admin. At times, you may wish to run processes in a manner that filters the actual processing. For instance, you may wish to run MRP by site, or PO suggestions according to a handful of part classes. Confusion is commonplace in handling process sets when the processes involved possess filtered activities. I’ll give you an example of the problem and an explanation of the actual behavior an Epicor admin can expect to experience when setting up and executing a process set.

Epicor Process Set Maintenance With Process Filters Enabled

Creating a process set occurs through the Process Set Maintenance screen. Once a process set is defined, individual processes can be assigned to a process set. In the example below, I created a process set:

Epicor Process Set Maintenance Screen

Next, I opened the PO Suggestion screen and configured its process parameters. Of those parameters, I set a site-specific filter:

Epicor Generating Purchase Suggestions Screenshot

Then I clicked the icon below to save the PO Suggestion process to the process set I previously created:

Save Epicor Process Set Screen

Returning to my original process set, I now see that the PO Suggestions process has been attached to the process set. Were I to go through the same actions with other processes, I could add multiple processes to this process set, and then use the “Move Up” and “Move Down” buttons to order them appropriately. But one point of confusion exists here. If I were to double-click on the process that I just added, to review its properties, the filter that I previous defined is no longer visible:

Epicor PO Suggestions

As we will see, this cosmetic issue is not detrimental to the actual execution of the processes themselves. To complete the setup of a process set, you need to assign it to a System Agent Schedule. This is accomplished through the Schedule Process Set screen. From this screen, you can select the Process Set:

Schedule ERP Process

Allowing the System Agent schedule to run according to its next run time, I can see in the Epicor System Monitor that the underlying process ran successfully:

Epicor System Monitor

Looking at the Log File related to the PO Suggestions run, I can see that the PO Suggestions process ran according to the filter that I had initially set. As you can see, the log file indicates the Epicor site that I had defined:

Epicor Process Log File

Epicor Admin Automation

In summary, while it may appear that an Epicor process loses its configured filters when added to a process set, in actuality, these parameters are retained, allowing the Epicor Admin great flexibility in automating a variety of ERP system activities.

Epicor Consulting? Epicor Managed Hosting?

Get advice from an ERP consultant or managed IT specialist. Sign up to get industry news and commentary from our IT & ERP experts.

Epicor Server File Download: Serving the Process Server

Epicor Server File Download: Serving the Process Server

The Pandora’s Box of ERP

Epicor processes can be a Pandora’s box of complexity. Rumbling under the surface, these processes perform innumerable tasks that allow an ERP system to function effectively. But when these processes fail to deliver the expected functionality, understanding the logic of these subaltern beasts can be problematic.

Happy distribution warehouse manager holding a cloud-enabled mobile tablet
  • Was it a problem with network connectivity?
  • With master file setup?
  • With company configuration?
  • Was it a bug?

Accessing Log Files Through Epicor Server File Download

One can spend an immense amount of time trying to troubleshoot these processes, especially given the timing required to perform trial-and-error with back-end processes. Such repetition gives ERP wheel-spinning a new meaning.

Fortunately, Epicor has a means of slowing the wheel, if not breaking it altogether. It is a general best practice when designing and developing complex programs and processes to include some form of logging. This provides the end user, or Epicor admin in this case, an opportunity to divine the logic of the program in question. This can help you troubleshoot process issues quickly.

In the past, gaining access to these logs to anyone but an Epicor administrator has been problematic. But in recent versions, Epicor added functionality to allow an end user to access server-side log files: Server File Download.

Epicor Server File Download provides the ability for a given user to look up various types of log files and save them to a local location. This allows you to retrieve and review log files. It does not require access to the server locations where they are stored.

Let’s assume that I kicked off a PO Suggestions process and enabled logging, specifying both the logging level and the log file name:

Epicor Server Download Generate Purchasing

As the process runs, it writes a log file to the server. The log file can be retrieved using the following method:

  • Open the “Server File Download” screen, which has the following menu location: System Management/Schedule Processes/Server File Download.
  • Choose the Directory Type. User: These logs normally refer to the user-specific logs. Company: Company type files are the most common logging methods and logs for processes such as MRP or PO Suggestions normally land here. Reports: This area holds XML files related to Crystal Reports.
  • Use the “Select File…” button to identify the file you wish to retrieve.
  • Use the “Client Path…” button to define the location to which you want the file saved.
Epicor Server File Download

Clicking the “Select File…” button allows you to search for and select the file in question. In the example below, I located the file that I had named previously, when I kicked off PO Suggestions:

Epicor PO Suggestions

Clicking the “Client Path…” button allows you to specify the location to which you intend to download the file:

Epicor Server File Download Browse For Folder Screen

Once the source file and the destination location have been defined, select the OK button. This will kick off the download activity:

Epicor Source File

Once the download has completed, the system will raise a download status message:

E10 Server Download Complete

Once downloaded, you can navigate to the specified path and access and review the log file to better understand the details of the process itself:

ERP Process Server Log File

ERP system troubles? Check the log…

Navigating the workings of an ERP system’s back-end server processes can feel at first like an exploration into the Eleusinian Mysteries. Fortunately, Epicor’s Server File Download toolset allows you to unearth the hermetic actions of Epicor’s darker processes, hiding in the process server’s chthonic cave, bringing them into the platonic light of your client folder and making them visible for all to see.

Never miss an ERP step. Learn about our private cloud hosting solutions.

Epicor Data Fix Workbench: Balancing the Balance

Epicor Data Fix Workbench: Balancing the Balance

The Weight of the ERP Data World

My old friend Thanos was a big believer in the principle of balance. In an ERP context, data integrity is the epitome of balance. But sometimes unexpected issues corrupt data and throw this precious balance askew. Read further to understand how to use the Epicor Data Fix Workbench to restore data balance with a snap of your fingers.

Cloud ERP for Manufacturing

Fundamental to the successful management of an ERP system is the management of its data.

An ERP system is only as good as its data. If the data gets dirty, the ERP system will similarly suffer. But the sources of data discrepancies vary. In many cases, they are due to inadequate policies and procedures surrounding the entry and maintenance of ERP information. In other cases, the system itself is responsible for problems with its data. In these cases, Epicor ERP supports its customers through the development and delivery of data fix routines. These routines resolve specific data-related issues with the application’s data, allowing for smoother system operation.

When a customer encounters a data-related issue, Epicor support may provide a “.df” file to resolve the issue. These data fix routines need to be correctly installed and ran. The following document describes some of the steps involved in the installation and processing of data fix routines:

  • Upon receiving a data fix, save the .df data script file to a location accessible from the application server.
  • Log into the application server and open the Epicor Administration Console.
  • In the left tree view, navigate to the “Database Server Management” nod, and locate the database to which you intend to deploy the fix.
  • Select the E10 Database in question, as accessed through the admin console.

Once selected, click the “Import DB Health Scrips(s)” selection in the right “Actions” window:

Epicor Data Fix Screenshot DB Health

This will raise a selection window. Click the ellipsis to search for the data fix script in question:

Epicor Data Fix Screenshot Select Scripts

Locate and open the data fix file in question:

Epicor E10 Pilot

Once selected, click the “OK” button to load the fix into the database:

Epicor Data Fix Workbench

Once loaded, you can now log into the application and run the fix. Navigate to the System Management > Upgrade/Mass Regeneration and open the “Data Fix Workbench”:

Epicor Data Fix Menu

Once the “Data Fix Workbench” loads, click the “Data Fix…” button to search for and select the desired fix:

Epicor Data Fix Button

The fixes available will be limited to the number of fixes you imported using the above procedure. Locate the fix you wish to run. Select the fix and click “OK”:

Epicor Data Fix Workbench Install

The process for running the fix in question may differ according to the specific fix itself. That said, there are a few general principles to running a fix routine that are consistent across fixes:

  • Enter any needed parameters
  • Click the “Report” button to return records in the database needing correction
  • Select the records you wish to correct
  • Run the routine to update/delete the selected records
Epicor Data Fix Workbench Final Step

The ongoing maintenance and management of an ERP ecosystem is a critical responsibility for Epicor administrators.

With challenges to server performance, network connectivity, database optimization, and endpoint security, administrators cannot afford to allow the system’s data to unravel. Every ERP system will encounter data issues at one point or another. Understanding the process to load and run a given fix in Epicor is a key step for ERP administrators, assisting in the important task of ERP data management.

For more Epicor consulting tips, read one of our white papers on best practices in manufacturing environments.

Get a free demo of cloud-based ERP

Epicor System Monitor: Canceling a Hung Task

Epicor System Monitor: Canceling a Hung Task

Epicor’s System Monitor is a handy ERP tool that can be used for one of many purposes in working with the background processes and reports that Epicor’s Task Agent orchestrates. The Epicor Task Agent handles all server-side tasks for a given application server. These can be scheduled tasks or “immediate run requests” that are triggered by end users. Additionally, these can be SSRS reports or long-running processes like MRP or PO Suggestions. Whatever the tasks may be, the Epicor System Monitor is the perfect tool for viewing their status as they run, and their history once they complete.
Chalkboard Sketch of Planning Steps Including Tasks
On occasion, a task may hang or get stuck such that it prevents further processing. Imagine that a process such as PO Suggestions hangs up and stops processing, for one of many reasons. Tasks are stored in Epicor’s SysTask table, and if an active task such as PO suggestions is stuck in the System Monitor, it will prevent any subsequent attempts to run PO Suggestions. This can be a great problem to a company that needs to get new suggestions in the hands of its purchasing department.
Epicor System Monitor Generate PO Suggestions

Fortunately, there are a number of steps one can take to cancel or complete a stuck task.

When troubleshooting a stuck task in Epicor, look to address it in the following order:

  • Cancel the task in the System monitor
  • Bounce the Task Agent
  • Bounce the AppServer instance
  • Update the rogue SysTask record directly in SQL

Cancel the Task in the Epicor System Monitor

The simplest way to kill a task is using the Epicor System Monitor itself. This can be done by navigating to the “Active Tasks” tab, selecting the task you intend to cancel and clicking the delete (“X”) icon. If successful, this task will fall out of the “Active Tasks” queue and fall into the “History Tasks” queue as a task with a status of “Cancelled”:

 

E10 Canceling Active Tasks

Bounce the Task Agent

If the task will not cancel through the System Monitor, you can try to bounce the Task Agent itself, which may free up the task and allow it to cancel. This is a relatively noninvasive method and will generally go unnoticed by the user community. From the AppServer, launch the Epicor Administration console, and from the Admin console, launch the Task Agent Configuration utility. Select the task agent you wish to cancel and from the “Actions” menu, select “Stop Agent…”:  

Epicor Stop Agent Screen

Bounce the AppServer Instance

If a Task Agent bounce is ineffective, bouncing the AppServer itself may work. This is a much more invasive solution, so it should be done when the user load is low, or else at a prescribed time such that the user community will be prepared. From the Admin Console, navigate to the server you wish to bounce, right-click the server node and select “Stop Application Pool.”  Once stopped, right-click it again and select “Start Application Pool.” In my experience, this will normally shake loose the stuck task:

Epicor System Monitor Admin Console to Stop a Hung Task

Update the rogue SysTask record directly in SQL

If all else fails, your last recourse is to update the SysTask record through SQL Server. Opening an instance of SQL Server Management Studio, navigate to the Database in question and create a new query. Enter the script below, adjusting the SysTaskNum to reflect the specific task number as found in the System Monitor. Run the query to update the record. While I am never a fan of direct SQL updates, this is one case in which such an update may be necessary.

 

update ice.SysTask set EndedOn = GetDate(), TaskStatus = ‘Complete’, History = 1 where SysTaskNum = 55228
delete ice.SysTaskKill where SysTaskNum = 55228

 

 

The Epicor System Monitor Lets You View, Manage and Cancel Tasks

At times, Epicor tasks need to be stopped. Hopefully, this article helped you understand the steps to take when trying to kill a task. This Epicor screen shows you which tasks are active, and it enables the initial steps for task resolution. You might even use this ERP feature daily. Due to its usefulness, the System Monitor is a classic. If your ERP system is a labyrinth, then your Epicor System Monitor is a golden thread, helping you navigate the maze and kill the wrongful task. As I’ve always said, it’s better to monitor than to minotaur… 

 

For more ERP tricks from our Epicor consulting team, download our case study on CTO and ETO implementations.

 

Or watch our Epicor Summit to learn about Planning Workbench, SQL Server Administration, and SSRS Reports.

 

How to Update Multiple Tables in Epicor DMT

How to Update Multiple Tables in Epicor DMT

Multi-table updates for Epicor implementation and beyond

As part of Epicor ERP’s overall implementation and optimization toolset, the Data Management Tool (DMT) is a fundamental aspect of a successful implementation strategy. It gives you the ability to load, update, and even remove data. These capabilities allow you to cleanly load the setup and master file data as part of an environment build activity prior to go-live. When a user imports data, DMT keeps upload and update behaviors in check so that data migration is efficient and effective.

Multiple Table Updates Data Management Tool Epicor

Epicor DMT also enables you to load live transactional records such as sales orders and purchase orders. These are essential to a successful cutover. Better yet, DMT possesses the ability to maintain records and improve the system’s data integrity long after the system is live. This allows an Epicor admin to efficiently clean up and even optimize the master file. This benefit also applies to transactional files in the live environment.

The Epicor ERP “Part” Routine

Within this context, one especially helpful capability involves the ability not only to update multiple columns of a table but to also update multiple related table records at once. For example, DMT’s “Part” routine allows for the creation and maintenance of records existing in the “Part” table. But DMT’s “Part Combined” routine allows not only for the creation of Part records. It also provides the ability to simultaneously add and/or update related Part Site (PartPlant), Part Warehouse (PartWhse), and Part Revision (PartRev) records. One could update these records individually, but Epicor provides the ability to perform multiple row updates in a single pass.

Sometimes DMT necessitates a multi-table setup in order to load and update data

For instance, the Resource table requires that you utilize the Resource Group routine to make updates to the Resource table. Let’s assume that you are the Epicor admin for your company. What if your operations manager decides to forgo using Epicor’s finite scheduling functionality? As such, you need to run an update to uncheck the Resource.Finite flag on all active resources. Should you search for a routine in DMT to update the “Resource” table, you will discover that none are available. Only the “Resource Group” load program is available:

Epicor ERP DMT Search Resource Group
DMT Engineering Resource Group
Fortunately, you can utilize the Resource Group load program to update the Resources related to all Resource Groups. Within Epicor’s Data Management Tool, multiple table update routines utilize a specific field naming convention to differentiate the primary table from its child tables:
 
  • Primary Table: The field names are sufficient—given that the program knows the table context, the parent table (in this case, the “ResourceGroup” table).
  • Child Table: Epicor utilizes a [ChildTableName]#[ChildFieldName] convention when defining the fields for the child table to be utilized.

For example, should you click the “Required” fields button for the “Resource Group” load, you will discover that to update the “Resource” table, you will need a number of key Resource Group fields but also the “Resource#ResourceID” and the “Resource#ResourceDescription” fields:

multiple table updates in Epicor DMT resource group required fields

This is also evident when using the “Template Builder…” functionality to create a load template. 

Given the above scenario, I opted to include the “Resource#Finite” field when creating the load template:

DMT Resource Group Template Builder
To perform the ResourceGroup-Resource parent-child table update to the finite-scheduling field that I had intended, I now have a load template with the following fields, named as follows:
 
  • Company
  • Plant
  • JCDept
  • ResourceGrpID
  • Description
  • Resource#ResourceID
  • Resource#Description
  • Resource#Finite

As is the convention with Epicor’s Data Management Tool loads, I entered my data into a spreadsheet:

DMT Resource Group Template

Finally, by loading the spreadsheet file into DMT, I can now perform the necessary update. The file, as defined below, loads without error:

Multiple Table Updates in Epicor DMT Resource Group Finite Update

Epicor’s Data Management Tool is replete with capabilities.

However, these features that are not always well documented or communicated. But with a little foreign key fiddling and a few Epicor consulting friends, DMT can be of great assistance to your Epicor ERP implementation.