Help creating a BPM

Hi All,

so far this forum has been invaluable and has provided a lot of help with various aspects of our Epicor system.

Firstly let me point out i am trying to do this in the 2024.1 update in our PILOT system.

i am looking to copy the attached files from the order line to the job head when the job is created.

i have went into Method Directives Maintenance, found the ERP.BO.JobEntry.GetNewJobHead method.

next i was going to create a 'post processing method and try modifying some code i found on another post…

Copy Order Entry Attachment to Job Header - Epicor ERP 10 - Epicor User Help Forum (

this has completely got me stumped, i have scoured the internet to try and find the help i need but i am really struggling. am i being really stupid here or am i doing the wrong thing?

It’s too early to tell… :wink:

We need a bit more information before we can help you properly.

Are you make direct, or make to stock, both? What I’m getting at, is how are your jobs linked to your orders?

GetNewJobHead may not be a good place to do this, because at that point, we just have an empty default record, so we need to find an appropriate BPM that we can use to link up to your order.

After we find an appropriate place, then you can use the information in that other post, or I can explain in more detail, how to duplicate the file reference and attach it to the job header.
(I’m assuming you don’t want to actually copy the file itself?)

Keep in mind the forum is going down for maintenance sometime today, and it’s the weekend. :slight_smile:

Hi, at the moment everything is make to order, however we have a new configurator being implemented soon which will drive some of our raw materials to be converted from coil into flat sheets which will go in to stock. So for the purpose of this and future proofing, it will be make to stock and make to order.

I hope this gives the answers you need.

Not quite.

What I really need to know, is at what point, do we know both the job number, and the order number.

Once we have both of those available in the dataset, we can choose an appropriate BPM.

Do a little tracing, and share the results.

For make direct this is when JobProd is created with an OrderNum not zero. I copy flowdowns from order to job in a in-transaction data directive on JobProd.

The attachment already exists. We just need to use @jgiese.wci’s function to make a new reference to the existing file.

Once that is working I would suggest doing something I do which is to create a UD orderNum or OrderNum(s) for the make to stock jobs and then add that to the routine.

1 Like

For my education, would you mind sharing when this occurs.

We are make to stock on everything, but we operate on a make to order basis if that makes any sense. I haven’t had enough exposure to the normal make to order process to fully grasp how that works.

@klincecum It would be the same process in job entry or where ever the job is made of making the demand link. Make to order links to a order/line/release that is marked as make direct.


We are the same MTS, but all custom, so nothing is made without an order.

1 Like

Where might this item exist? For the curious :wink:

The XfileRef table has XFileRefNum which is the link to the XFileName where ever it exists (server, ECM, Sharepoint)

The order’s record is in the XFileAttch table where Key1 = OrderNum and RelatedToFile = OrderHed

if you make a new XFileAttch record that points to the same XFileRefNum but the RelatedToFile is JobHead and Key1 = JobNum.

I use just the bottom half of the function to attach the file since it already exists.


We are both… Some make to order and some MTS

1 Like

Hi Kevin,

normally MRP will pick up the job numbers for us, but this can also be done via order job wizard or via manually running process MRP - would i be right in thinking the BO method would be the same to capture the make to order item and then generate the job numbers or should i do a log with both methods?

EDIT: i have now attached the trace docs as requested, when i have done ‘Trace2’ - using order job wizard and job status maintenance to firm up jobs, calles on the same process. hope this helps!

Trace 1 - MRP.txt (130.0 KB)
Trace 2 - firm job.txt (58.4 KB)

I meant the link to @jgiese.wci’s function :slight_smile:

LOL Here is one of the threads where it is…