MES & MFG TUTORIAL

Hiring a Developer for Epicor MES Customizations

A checklist for manufacturers hiring a developer to customize Epicor MES shop-floor terminals, MES dashboards, and barcode scans.

Overview

The Manufacturing Execution System (MES) is the heartbeat of the shop floor. When scanning barcodes, reporting labor, or printing labels, factory operators need split-second responsiveness. Customizing MES screens incorrectly can lead to database lag, freezing terminal screens and stopping material movements. For this reason, hiring a developer with specific MES customization experience is critical to maintaining high warehouse yields.

An experienced MES developer knows that you should never run heavy client-side calculations or queries on shop-floor terminals. All barcode validations, job scheduling operations, and material routing checks must run on the server side using Method Directives. Learn how to optimize labor reporting and automate MES data capturing in our guide to Epicor MES & Production Scheduling Customization.

Technical Implementation Details

To implement this solution in your Epicor environment, utilize the following code block. Ensure you replace the standard configurations with your company database names, server URLs, and keys.

// Method Directive: Post-Processing on MES labor reporting
// Validates barcode data before completing labor transaction on the shop floor
var laborRow = (from row in ttLaborDtl
                where row.RowMod == "A" || row.RowMod == "U"
                select row).FirstOrDefault();

if (laborRow != null)
{
    // Check if job exists and has a valid operation code
    bool validJob = Db.JobHead.Any(j => j.Company == Session.CompanyID && j.JobNum == laborRow.JobNum);
    if (!validJob)
    {
        throw new BpmException("Invalid Barcode scan: Job number does not exist on production schedule.");
    }
}

Process Verification and Flow

When hiring a developer, verify their understanding of database triggers. They must know the difference between Data Directives (which fire on database writes) and Method Directives (which fire on business method calls) to prevent locking the JobHead or LaborDtl tables. Check our deep-dive comparison, Epicor Data Directive vs. Method Directive, to understand how to design lean, high-speed shop floor interfaces.

Looking for Professional ERP Customization Support?

Learn more about our Manufacturing Process Automation Services or contact Amit directly to outline your optimization goals.

Request Free Shop-Floor Terminal Review