After our upgrade from 2021.2 to 2022.2, a few updatable dashboards stopped working. Digging into the Update Processing’s tab for BPM Directives Configuration, we’ve got two BPM’s - a base to make Epicor happy (thanks @hkeric.wci!) and the real update one. Both BPM’s fail for this error. Do I need to add a reference? Or something else? I’m guessing it was a syntax change between versions…
The name ‘queryResultDataset’ does not exist in the current context’
@askulte I would make a copy or just save the code and change update processing to BPM update and then open up the stock bpm to see what it references. I have seen some that are results.Results
yes, see what is there in their stock routine after he recreates it. He won’t have to look for parameters their code will show what they are using now.
Wow, that was weird. After re-doing it from scratch and it worked, I tried bits and pieces.
The fix for the first UBAQ was to delete the calculated fields, and re-create them! Very odd. That let the BPM’s compile without errors, and also gave me back the Parameters option in the code window.
On the next BPM, I tried deleting the auto-generated ##BASE## bpm’s, turning off updatable, saving, and turning it back on, but it still errored. Although this time it did have a parameters option:
I deleted and re-created the tables, criteria, and joins for the main and 3 subqueries, yet this one still doesn’t compile. I’ll see if I can copy it out of an old environment, and bring it over to our current 2022.2.8.
Not happy that the UBAQ’s broke, for no good reason that I can tell (yet).
There is an Updatable Query Maintenance that recompiles all of them that we run after the conversion process. I wonder if that would fix them or if that was what broke them.
Kevin - I tried deleting the broken one in LIVE, and re-importing from last year’s environment, but no dice.
Greg - Thanks for that idea too! I just ran ‘Updatable Query Maintenance’, and it still doesn’t work either… Although I noticed that the .Update directive now passes syntax check, but the GetNew one still does not.
I think the original issue somehow fixed itself… I ended up importing/overwriting the UBAQ from an old environment, which worked. Then re-imported/overwrote it from our current version test environment.
What’s odd is the autogenerated ##BASE## BPM on the GetNew method never compiled. I even tried a new UBAQ from scratch, and that errored out too. For some reason, this (legacy BAQ from years ago) had ‘Allow New Records’ checked, which we didn’t need. I unchecked it, and it removed the ##BASE## BPM on the GetNew method. No more errors.
Shrug…
Anyways, all is good now. Thanks for your help Kevin and Greg!