Unable to trigger email when a new SO created from Quote using BPM

Hi,
i try to create a BPM to trigger email to user whenever a new SO is created. i am able to trigger the email whenever SO is created from order entry screen directly. However, the email is not trigger when the SO is converted from quote. Can anybody guide me how to create BPM to trigger email whenever the SO is created from quote?

Below is my BPM that successfully trigger email when SO is directly created from order entry menu.

Hi John,

Is there any trace data that happens that is specific to a Quote converting to a Sales Order? I have seen in previous experience that RowMod = “A” when an attachment is added and it’s equal to “D” when an attachment is removed. I would imagine there is something :sparkles:special :sparkles: when you decide to convert from a Quote to a Sales Order.
I would set up a trace and capture everything from when you convert it over and see what you can hook off of.
Hope this helps.

Hi Mackenziem,
thanks for the guidance. i did not know how to setup a trace to capture this, hope that you can help.

You are on-prem only in Classic view?
These are the steps I have from an Epicor employee on how to set up trace on the desktop client. I imagine this would work for you as well. I am on SAAS, but I imagine the desktop client is the same. It is kind of annoying because it will open the trace screen every time you click into a new screen, but at least you can see what methods are being run and what data is being passed into those Methods to look for a condition to send an email

  1. Right-click the desktop icon and select Properties.
  2. Review the Target field to see the.sysconfig file you use to launch the desktop client.
  3. Then review the Start In field to see the directory path to your local Config folder.
  4. Go to your local Config folder. For example: C:\Epicor\ERP11\LocalClients<Kinetic Version>\config
  5. Use a text editor to open the .sysconfig file.
  6. Go to the section.
  7. Add this setting:
  8. Save the .sysconfig file.
  9. The next time you launch the desktop client, the Developer Tools window launches as well.

EDIT: Sorry, didn’t expect it to save as a code block. Just copied and pasted from email

klincecum Edit: Better? :rofl:

Hi John

I just converted a Quote to a Sales Order (Kinetic view though) and it seems to run a method ‘CreateOrderFromQuote’


For a method directive, you’ll probably be looking in the Quote table, CreateOrderFromQuote method

Hi Mackenziem,
yes, if using BO.createOrderFromQuote, i presumed post processing should be use, but i have no idea what condition should test in BPM before i can trigger send email in BPM.

Can we think of any reason that a Quote would be converted to a Sales Order that didn’t result in a Sales Order? I feel that method executing in of itself is good enough of a trigger, no?

You could try a post-processing, but I would do another trace (if you have been able to) to see what information is available before and after. I imagine most of the details that you would need are in the pre-processing, so I would do a pre-processing method on the CreateOrderFromQuote method and pass the relevant information.

i agreed. once user click “create Sales Order…” in quote action menu. all should be converted to SO. i also require to show the new SO number in my email template. that is why i presumed only after post processing i can get this data.

Do you think we can hop off of this? This is in the preview of the CreateOrderFromQuote method. 221 is the Sales Order that was created.

look like it is possible to setup a BPM on send Email using pre processing on BO.CreateOrderFromQuote. Can you show me how to setup this BPM?
your help will be much appreciated.

What do you want in this email?

You can get the OrderNum in PostProcessing. In the Email template, you can call Parameters > OrderNum. This is has to be run as a Post Processing directive because OrderNum doesn’t exist until after the Create method has finished.

1 Like

There are two ways to create an order from a quote. One is from inside Quote Entry to “push” a quote to an order. Second is from inside order entry and to “Pull” a quote into an order. Which method do you use?

You’ll want to create BPMs on whichever you use --or both-- methods depending on how your company creates orders.

4 Likes

the email template i know how to draft it, but i do not know what to test in the BPM before triggering the send email.
meaning:
Start ---- ? ----- send email (i believe there must be a condition to test before the action send email)

Hi Randy,
thanks for replying, our company using “push” method. which is create a Sales order from quote entry screen. i am struggling to find out what is the condition to use before send email in the BPM.
method: BO.CreateOrderFromQuote and post-processing.

Why couldn’t it run with no condition, the condition is CreateOrderFromQuote has run. Click create new post-processing directive on that method and just drag the Send Email widget in there and structure your template?

I asked what you need to email because on post processing you’re pretty restricted on the data you have after it runs, but you can leverage more widgets to go look up that data for the email.

1 Like

Hi Mackenziem,
i create the BPM based on your advice without using any condition to trigger the email, but it did not trigger email when i run the test from quote entry. Attached is my BPM.

I see that there is a ‘CreateOrder’ method as well maybe give it a try.

Show the trace.

Did you verify the Sales Order was created? When I ran through the same process, I got the email, same way you have it set up.