What is the best way to view what a BPM "does"?

Greetings:

Still a new guy, here…that’s for the warm welcome!

There’s a BPM in our system that was implemented by someone who is no longer here to answer questions. So, I am just trying to get a better idea of what it is doing or supposed to be doing.

What would you all recomend looking at to get a better snap shot of this?

If it’s custom code, you can drop it in GitHub Copilot and have it attempt to explain it for you

1 Like

Hi Michael,

I have all of the cab files that Epicor sent for implementation. Are you suggesting that I upload one of those files in GitHub Copilot?

Can you be more descriptive of what you’re not understanding in the BPM? maybe a screen shot or two.

1 Like

cab files? That sounds like more than a BPM, its sounds like a solution work bench file…

1 Like

You could be correct, Evan. I don’t know enough about BPMs to answer that. We haven’t built and/or implemented any BPMs internally. We put in the requests to Epicor and they developed all of them. Those cab files are simply the files that they ask us to download and subsequently upload into our environment.

Ok, do you know when this bpm triggers?

Hi Kevin,

I do not. That’s actually one of the reasons why I’m investigating this. I know if I go to Method Directive I can see all the BPMs. However, it’s a mystery to me on ‘where’ (what I should be looking at) within to see what it is touching.

What is it called? What method is it on?

You’re not giving us anything to work with.

2 Likes

Are you just curious or are you trying to troubleshoot an issue?

If so where is the issue arising?

Kinetic UX or Classic?

3 Likes

When you load your cab file into solution workbench, it should show the items in the customization

image

1 Like

Sorry Kevin. If I knew, I probably wouldn’t be asking. Perhaps I underestimated the detail needed for my question.

1 Like

Hi Jose,

We’re on Kinetic (2023.1). These BPMs were all installed before we went live, so I’m trying to figure out what they do. There’s no issue, I just want to know what we should be testing after we upgrade to make sure it still works.

Hi Josh,

If you go into Method Directive Maintenance (Kinetic Version):

You’ll get a dashboard that shows Method (and Data) Directives. This shows you the directives you have on the system and their status.

Changing the dropdown to Data Directives will show those. This screen shows where they are attached to, either business objects or data tables. It also tells you if they run before (pre), instead of (base), or after (post) transactions for methods, and standard or In-transaction for data directives.

If you have a question about one of those, click on it and explore the widgets and/or code. Still have questions, you can post something here or engage with a consultant to explain it for you.

7 Likes

So there is no easy way to open a BPM and know what it does unless your developers documented things well. Being that Epicor support did this for you, I am guess there is no documentation at all.

First thing is to identify the BPM you want to investigate. Open BPM Designer. That should list all of the customized BPMs in your system. Find the one you want to investigate. Open it by clicking the little link. Now you are in the BPM world, and learning what the BPM does is a bit of an art. I always start at the start, and step through widget by widget. Take notes if you need to. Generally speaking my BPMs start by pulling together the relevant data we will be working on, and assigning them to variables. Next comes all the fun that can happen in BPMs. Any BO method can be run inside a BPM, as well as custom code. If you have any custom code block, use the chatGPT trick to have it describe what the code does. Add that to your notes. By the end you should know what the BPM does.

Edit: Yeah! What Mark said!
Good luck!

6 Likes

Another way to check is do you have access to what you asked Epicor to do for you? What did those requests ask for? If you have that, try those things and see if they do what you want.

And what @Mark_Wonsil said.

2 Likes

Thanks Mark. Here’s an example. This BPM is called “CustomerGetNewCustomer”. That doesn’t mean much to me and I didn’t get much help from customer service. But, I went to Method Directives and took a screenshot.

Side note: on my screen, it does not show a dropdown menu to change from Method Directives to Data Directives. Not sure if that matters, but I figured I should say.

Pre or Post directive? Should be post because you want Kinetic to create the record and THEN assign it the value. If you assign it will a pre-directive, it will get overwritten.

Did you do a trace of creating a new record and setting the ValidSoldTo field? There may be other methods that may also change it that you might not know about.

Correct. It is “post”.

To your other question, I am unsure what is meant by ‘do a trace’?

Learn it. Love it. Live it.

For Classic:

For Kinetic:
F12 Developer Tools or

5 Likes