EBOM synchronization fails due to custom field mapping mismatch between engineering and manufacturing BOMs

Custom field mapping for EBOM to MBOM sync throws field not found errors when we try to synchronize engineering BOMs to manufacturing. We’ve added several custom properties to our BOM structure (lead_time, supplier_code, manufacturing_notes) and configured mapping rules to transfer these from EBOM to MBOM during sync operations.

The sync process fails with this error pattern:

<error>Field 'manufacturing_notes' not found in target MBOM structure</error>
<detail>Custom field mapping validation failed at item level</detail>

Our custom field mapping configuration specifies source and target properties, but the EBOM to MBOM sync engine doesn’t recognize our custom fields even though they exist on both itemtypes. The standard BOM properties sync correctly, but any custom attributes we’ve added fail validation during the mapping phase.

This is blocking our engineering change process because we can’t push updated BOMs to manufacturing without these critical supplier and lead time details. We’ve verified the fields exist in both EBOM and MBOM itemtypes with identical property names and data types. Has anyone successfully configured custom field mappings for EBOM synchronization in Aras 14.0?

The custom fields are defined on both the Part_BOM relationship for EBOM and the Manufacturing_Part_BOM relationship for MBOM. They’re relationship properties, not direct item properties. I haven’t modified any SyncConfig itemtypes though - I assumed the system would automatically detect matching property names. Do I need to explicitly register each custom field in the sync configuration?

Your issue stems from incomplete custom field mapping configuration in the EBOM to MBOM synchronization framework. Let me address all three focus areas systematically:

Custom Field Mapping Configuration: The EBOM to MBOM sync in Aras 14.0 uses explicit mapping definitions that must be configured for any custom properties. The system doesn’t auto-detect matching field names. You need to update the BOM synchronization mapping configuration:

<PropertyMapping>
  <Source relationship="Part_BOM" property="lead_time"/>
  <Target relationship="Manufacturing_Part_BOM" property="lead_time"/>
  <DataType>decimal</DataType>
</PropertyMapping>

Repeat this pattern for each custom field: supplier_code and manufacturing_notes. This mapping definition tells the sync engine which source properties map to which target properties.

EBOM to MBOM Sync Process Fix: Navigate to Administration > ItemTypes > BOM_Sync_Configuration. Create or modify the configuration for your EBOM-MBOM sync relationship:

  1. Add new PropertyMapping entries for each custom field
  2. Specify the source relationship (Part_BOM) and target relationship (Manufacturing_Part_BOM)
  3. Define the exact property names as they appear in the relationship definitions
  4. Set the appropriate data type for each mapping

The sync validation phase checks this configuration before attempting data transfer. Your field not found errors occur because the validator doesn’t find mapping definitions for your custom properties, causing it to reject the sync operation before any data movement occurs.

Field Not Found Error Resolution: The error message indicates validation failure, not actual missing fields. The fields exist, but the sync configuration doesn’t know how to handle them. Here’s the complete solution:

<!-- Complete mapping configuration example -->
<BOMSyncMapping>
  <PropertyMappings>
    <PropertyMapping>
      <SourceRelationship>Part_BOM</SourceRelationship>
      <SourceProperty>lead_time</SourceProperty>
      <TargetRelationship>Manufacturing_Part_BOM</TargetRelationship>
      <TargetProperty>lead_time</TargetProperty>
      <DataType>decimal</DataType>
      <Required>false</Required>
    </PropertyMapping>
    <PropertyMapping>
      <SourceRelationship>Part_BOM</SourceRelationship>
      <SourceProperty>supplier_code</SourceProperty>
      <TargetRelationship>Manufacturing_Part_BOM</TargetRelationship>
      <TargetProperty>supplier_code</TargetProperty>
      <DataType>string</DataType>
      <Required>false</Required>
    </PropertyMapping>
    <PropertyMapping>
      <SourceRelationship>Part_BOM</SourceRelationship>
      <SourceProperty>manufacturing_notes</SourceProperty>
      <TargetRelationship>Manufacturing_Part_BOM</TargetRelationship>
      <TargetProperty>manufacturing_notes</TargetProperty>
      <DataType>text</DataType>
      <Required>false</Required>
    </PropertyMapping>
  </PropertyMappings>
</BOMSyncMapping>

Implementation Steps:

  1. Export your current BOM_Sync_Configuration item as AML
  2. Add the PropertyMapping entries for your three custom fields
  3. Import the updated configuration back into Aras
  4. Clear the server cache to ensure the new mapping is loaded
  5. Grant the BOM_Sync_Service identity read/write permissions on all custom properties
  6. Test the sync with a small EBOM containing your custom fields

Permission Verification: Ensure the identity executing the sync (typically BOM_Sync_Service or similar) has these permissions:

  • Read permission on Part_BOM.lead_time, supplier_code, manufacturing_notes
  • Write permission on Manufacturing_Part_BOM.lead_time, supplier_code, manufacturing_notes

Without proper permissions, even correct mapping configuration will fail.

Validation Testing: After configuration, test incrementally:

  1. Sync a single-level BOM with just one custom field populated
  2. Verify the field transfers correctly to MBOM
  3. Add remaining fields and test multi-level BOM structures
  4. Validate that null/empty values are handled correctly

The field type mismatch issue you’ll want to avoid: ensure data types match exactly between source and target. If EBOM has lead_time as decimal(10,2) and MBOM has it as integer, you’ll get conversion errors even with correct mapping.

This comprehensive mapping configuration will resolve your sync failures and enable complete EBOM to MBOM synchronization including all custom supplier and manufacturing attributes.

Yes, you absolutely need to register custom fields in the sync configuration. The EBOM to MBOM sync doesn’t automatically map properties - it only processes fields that are explicitly defined in the mapping rules. The field not found error occurs during validation because the sync engine checks the mapping configuration first, before attempting any data transfer. You’ll need to create custom mapping entries for each of your new properties.

Are your custom fields defined on the BOM itemtype itself or on the BOM structure relationship? The sync process handles direct item properties differently than relationship properties. If your fields are on the Part-BOM relationship, you need to configure the mapping at the relationship level, not the item level.

We went through this exact scenario when adding custom supplier fields to our BOM sync. The mapping configuration is in the BOM_Sync_Map itemtype. You need to add rows for each custom property with source field, target field, and data type specified. Without these explicit mappings, the sync validation fails before attempting any data transfer.

Another thing to check is the field permissions on your custom properties. Even if the mapping is configured correctly, if the identity running the sync doesn’t have read access on the source fields or write access on the target fields, you’ll get field not found errors. Verify that your sync process identity has full permissions on all custom properties in both EBOM and MBOM structures.