EDI - Customer Part Numbers

Hi,

I have set up customer part codes against internal parts numbers.

When I process an inbound EDI document with the customer part numbers on, the internal part numbers are not being populated when I review the record in the ‘Demand Management’ workbench.

Does anyone know if this is standard functionality, or do I need to do the lookup via a BPM?

Thanks,

Andrew.

Let me know if you figure this out, I’m having the same issue.

In customer maintenance under the documents sheet, in the Parts Options section, have you selected “Use Customer Part”?

Also, do you have both the customer and the internal part number set in the demand contract? We have the situation you describe for one trading partner and this works for us with the above two areas populated.

I have everything set up as per the tech ref manual.

I have raised a call with Epicor requesting a unit test of a sample file and config instructions, but I am still waiting a response.

I am on quite tight deadline on a ‘proof of concept’ project, so I built a simple in-trans data directive on the DemandDetailImport table, that checks whether the PartNum is not populated and XPartNum is. If so it runs the following custom code, which does what I require

Erp.Tables.CustXPrt CustXPrt;
Erp.Tables.DemandHeadImport DemandHeadImport;

foreach (var ttDemandDetailImportResults in (from ttDemandDetailImportRow in ttDemandDetailImport
select ttDemandDetailImportRow))
{

       //get the trading partner name
       DemandHeadImport = (from DemadHeadImportRow in Db.DemandHeadImport
                           where DemadHeadImportRow.ImportID == ttDemandDetailImportResults.ImportID
                           select DemadHeadImportRow).FirstOrDefault();
       
       //get the partnum from the CustXPrt table
       
      
       CustXPrt = (from CustXPrtRow in Db.CustXPrt
                   join CustRow in Db.Customer on CustXPrtRow.CustNum equals CustRow.CustNum
                   where CustXPrtRow.Company == Session.CompanyID
                   && CustRow.Company == Session.CompanyID
                   && CustXPrtRow.XPartNum == ttDemandDetailImportResults.XPartNum
                   && CustRow.TradingPartnerName  == DemandHeadImport.CustomerTradingPartnerName                      
                   select CustXPrtRow ).FirstOrDefault();
       
       ttDemandDetailImportResults.PartNum  = CustXPrt.PartNum;
       
    }

I’ll update further, when I get a response from Epicor.

We have EDI demand being generated from both our internal part number as well as a customer’s part number that is dependent on the trading partner. It’s based on setup parameters. Are you trying to bypass system logic?

Mike Lowe

I followed Mike’s suggestion and it worked.
Check your import file, maybe the parts are mapped incorrect.

Thanks Mike!

The file has been provided by our VAN.

I’m not intentionally bypassing the system logic.

In terms of customer setup, I have the following logic set against the customer document:

  1. Use Customer Part
  2. Manufacturer Part
  3. Check For Part

I have the following set against the customer:

  1. Part - Check For Part -True - Action Stop
  2. Check For Revision - False
  3. Check For Run Out Part - False

It all hangs together using the BPM, which makes me thing maybe the issue is with the customer part setip,

The only thing I am not using is the ‘EDI Contaner’ field in customer part cross reference screen.

Is this relevant, as the on line help simply says ‘Indicates the EDI Container Type.’?

Thanks,

Andrew.

Finally worked out what the issue was.

I didn’t have the part set up in the demand contract with the customer part number defined and the mapping is not done if the order goes into the Demand Workbench.

All works fine once I created the line in the demand contract.

Cheers,

Andrew.