So all im doing is making a Bpm to watch this line and after a new PO is made, if this field is empty a windows pop up to say please fill this out. Just can not seem to find the object to make my bpm work.
This is one of those that sound very easy to do but it is not. What exactly is your issue or where exactly are you with this?
PO.Update would be the one I would try to check for empties. But you need to take into account 3 scenarios: the header is changed, a line is changed or a release is changed. On top of that, the PO release is created âin the backgroundâ after the Update is called which complicates this more.
For assigning GLâs have a look at PO.GetDefaultGLAccount.
Im in the planning so my plan was to have a bpm to watch the field so when they come to save the po and have forgot to enter GL code of forgot to press get defualt then a message would display reminding them to go back and fill it out as we are having issue with people not do that.
But this sound like it could be a pain the alternative may be just a BAQ showing the Po`s that dont have a GL account added.
Probably a BAQ would be best. A data directive on PORel would have been easier but the GL account is not saved in that table. Also, I would have a look at a customization as I think that might work best for this. And hang around for a while, maybe others here have a better solution for this.
Yeah, this is one of those things that looks simple, but thanks to how TranGLC works, is not.
I took a quick look at the Method Call and PO.Update doesnât contain that field. I think for the same reason, a Data Directive on PORel doesnât help you much either. You would need to intentionally create a blank one and see, but I donât think you get a blank record in TranGLC when this happens.
I would suggest that you setup a Pre Processing Method Directive on PO.Update for a condition that the user has changed the Approved Flag to True.
Youâll need to use the ânumber of rows in the designed queryâ widget too since this field does not exist in the Method Call. Start off the query with tt.POHeader and link that to PORel and then link that to TranGLC. Not ideal, but it should work.
Cheat: This could possibly be done as a row rule in the client rather easily but then you would need to do it all over again when you go to Kinetic. If you do it as a BPM, you probably just need to change the tt.POHeader to ds.POHeader and you might be good to go.
This might work. It would come down to whether the TranGLC record gets created with a blank GL Account and when/how this gets triggered. Itâs pretty easy to find out!
If your goal is to remind users when the GL Account on a PO Release is left blank, I think you can make a really simple post-processing method directive on PO.Update. Just a condition âNumber of rows in the ____ query is more or equal to 1â, with a query filtering the ttPORelTGLC table by GLAccount = "".
Attach the True side of that condition to a warning message. For a reminder message to users, thatâll probably be good enough, but be aware there are a number of modifications that can be made to a PO dataset without going through the PO.Update method.