We’re experiencing sync failures between our external scheduler and Honeywell MES when updating work order statuses. The issue occurs specifically when batch IDs don’t match between systems, leaving orders stuck in ‘In Progress’ state even after completion.
The payload mapping validation shows mismatches in the batch identifier field. Our MES error logs indicate:
ERROR: BatchID mismatch - Expected: BATCH_2025_0315, Received: BTH-20250315
Failed to update WorkOrder WO-45892 status to COMPLETED
I’ve reviewed the scheduler config but can’t identify where the format transformation should occur. The external scheduler uses a hyphenated format while MES expects underscore-separated values. This is blocking our production reporting and causing orders to remain open in the system indefinitely. Has anyone dealt with similar batch ID format inconsistencies during ERP sync?
Thanks both. I found the scheduler config section but it only has output frequency settings, not format parameters. The transformation must happen in the integration layer. Where exactly should I implement this - in the API gateway or within the MES import job configuration?
Sarah’s right about the transformation layer. I’d also recommend checking your scheduler config file for the batch ID mapping section. There should be a parameter like batchIdFormat or similar. You might be able to configure the output format there instead of modifying the integration code. We had to set ours to match MES expectations: BATCH_YYYY_MMDD pattern with underscores.
Implement it in your API gateway if you have one - that’s the cleaner approach. You want to normalize the data before it hits MES. Create a transformation rule that converts hyphenated format to underscore format. This keeps your MES configuration clean and makes troubleshooting easier since all external data arrives in the expected format.