Change Costing Method: Remove popup warning?

Thank you for the BPM. I haven’t tried importing yet (not sure where to actually). I am trying to figure out how to ues the action. Any chance you could look at this and not where I’ve gone wrong?

“set the ttPart.UpdatePartPlant field of all rows identified by the ttPart query to the true expression”

For the ttPart query I have:
for first ttPart no-lock where ttPart.RowMod = 'U’

the BPM i sent shows how to use it. Go to Directive import and bring it in.

Remove the NO-LOCK and it should work

Neither change worked.

I tried removing NO-LOCK, but when changing Costing Method on the Part Screen it still didn’t update the costing method on the Plants screen.

Then I deleted my BPM and imported Joshua’s, enabled, and it still didn’t change the plants costing method.

Any random thoughts to help guide?

Thank you.

When I compare the log between my BPM and without, I see that without will fire the ChangePartPlantSourceType method. Do I need to add this somehow in my BPM?

It should do that on its own… but maybe it doesn’t in 9, if that’s the case you’ll have to write some ABL code for that… FUN TIMES

Not what I wanted to hear. :slight_smile: Thank you for all the help up to this point. Hopefully I can come across some example that will get me close…

Joshua, are you aware of any way that I can fire ChangePartPlantSourceType? It seems my BPM won’t fire this. Thanks.

The BPM doesn’t fire anything it just fires along with whatever is triggered in the UI.
What does the trace say as far as params in and out during the actions you described in your original post.
What you are trying to do might not even be possible. Sometimes there are flags in the methods that you can set to bypass message like that, sometimes you will have to write custom code, sometimes you are straight up SOL and it’s not worth the time and materials.

To test, I change the costing method on a part from Avg to Std.

Using non-BPM way:
When clicking save I get “You have changed the following fields: Cost Method. Do you want to refresh the part plant records with the changes?”… I click “Yes”.

Action #10: Part.CheckPartChanges - The params are CostMethod=S, UpdatePartPlant=F, and DBRowIdent.
Action #17: Part.ChangePartPlantSourceType - The params are CostMethod=S and DBRowIdent.
Action #22: Part.Update - The params are CostMethod=S, RowMod=U, and DBRowIdent.

Using the BPM you provided (along with adding set cPartChangedMsgText = “”):
Action #10: Part.CheckPartChanges - The params are CostMethod=S, and DBRowIdent
Action #15: Part.Update - The params are CostMethod=S and DBRowIdent

in my bpm set the field UpdatePartPlant=F

I tried that (just double-tried) and the same actions/params exist:

(when set to false)
Action #10: Part.CheckPartChanges - The params are CostMethod=S, and DBRowIdent
Action #15: Part.Update - The params are CostMethod=S and DBRowIdent

Do I need a pre-processing hook of some kind to fire the post-processing?

All right buddy here you go… troubleshooting that was a damn nightmare… you owe @jgiese.wci and I a few beers!! LoL
SupressPPUpdate.bpm (23.2 KB)

1 Like

Incredible! Thank you! I learned a lot through this process and thank both of you very much.