Popup Message on Part Tracker

This question likely applies to E10 too I’m sure, but we’re running Cloud 2021.

We’re trying to show a popup message to a user in Part Tracker when they enter a Part to look at. I want to evaluate an existing UD field (CheckBox04) when the PartNum changes and show a popup letting the user know if the boolean is true. We use this UD checkbox to indicate when a Part is in a particular state unique to our business and users need to know.

Initially I was going to implement the popup within the Part Tracker form itself in the Script Editor (C#), but thought maybe it should be a BPM.

If it is better served as a BPM, how can I narrow down the Pre-Process Method Directive so that it only happens inside Part Tracker (not everywhere else the PartNum changes).

If it’s still okay to put this directly in the form on the PartNum column changed event, what is the C# code to show that popup? I wasn’t able to get that to work.

Thanks in advance!

BPM is the way to go, look at CallContextClient (in BPM) it tells you the name of the DLL (screen) they are coming from.

Thanks but in the Workflow Designer, I don’t have that option listed for the Condition properties…

… shouldn’t I see something like this?

I’m pretty sure it’s the assemblyName. put that in a messagebox and see what pops up.

Yeah you should see stuff in screen #2 do you have advanced BPMs enabled?

There’s a crappy interface in that screen now, you have to click all the way to the Right next to the Arrow Explicitly .

Try this

Ok, thanks. I found the Context. I have the BPM flow fleshed out but I must be missing something. Any tips?

I’ve got a Method Directive firing on Erp.BO.Part.ChangePartNum as a Pre-Processing entry.
Not sure if the Part Tracker fires that event, but I don’t have any documentation so let me know if that’s incorrect.

Then, the flow shown below. I thought this was going to be super easy… :hushed: … but, alas. I must have an incorrect binding somewhere.

image

image

On Pre-Processing you dno’t have the data yet, either move it to Post Processing or, lookup the data yourself in the Db
only thing you’ll have in pre processing is the partnumber they typed in.

Stop making good sense Jose! LOL :+1:

So I changed it to Post-Processing but there’s nothing firing.

To test, I changed the workflow to only show a popup:

image

so that I could see if the Assembly was correct. The popup contents display: Assembly is: <callContextClient.AssemblyName/>

… but nothing is happening on Part Tracker after entering a part.

Perhaps the Erp.BO.Part.ChangePartNum is not the correct one to bind to in Part Tracker and that’s why there’s no activity?

Did you do a trace? my guess is you want GetByID instead.

I did a trace, and you’re correct – it was GetByID.

BTW, the AsseblyName from the CC is the DLL name w/o the .dll extension.

So we’re good. Thanks everyone for the help! :+1: