Being able to "Tab" out of a filter field in a BAQ report

Hi All, I have a small but big issue. We have a few BAQ reports that our users like to run. Right now they have to click the search icon, then go through and select the parts that they want to run the report with. They would rather just type the Job Number or Part Number in to the BAQ Report and hit tab and it would then add it to the “queue” to be able to run the report on. Picture for reference. I know i have to add an event most likely on blur but just wanted to see what the best practice for this was.

3 Likes

Please submit to EpicCare and raise hell. We also have this issue. Our case is CS0005241267 and has been associated with PRB0282558, originally created in May of 2024 with no resolution date. Recently switched our users from Classic to Kinetic (and removed access to Classic). Printing reports with multiple Sales Orders is a PIA. EDIT: For us, all BAQ Reports have this issue.

4 Likes

I reported it too, believe its fixed in 2025.2 but I can’t remember right now if I verified that or not.

1 Like

Not fixed in our Production (2025.2.7) or Pilot (2025.2.10) environments.

EpicCare shows Accepted - Not Yet Planned for PRB

4 Likes

But hey its at least p2 so there is a tiny chance it might get fixed before 2030.

8 Likes

Have you folks tried entering an Idea in the Ideas portal, asking for a friend.

3 Likes

When we do that, we get scolded because ideas isn’t supposed to be for bugs.

3 Likes

Need a volunteer to test this work-around…

Problem:

The Chip Selector they use has a validateFilter functionality on the control. When you search, it works fine. If you just type a value and tab out, it fails.

image

The problem is the property to turn this auto-validation for the chip-selector control apparently isn’t exposed to us poor saps in App Studio. So, we can’t turn this off.

Work Around:

First thing to note is that if you do a multi-select search, it works, and returns a tilde delimited list which is set to the binding of ReportParam.Filter1 (or other numbers if you have more than 1 filter).

image

So… all we need to do is create an event so we can manually inject a string value into that binding NOT USING the stock chip-selector control which has the validateFilter functionality tied to it.

Add a textbox for manual entry.
Bind it to TransView.ReportParamFilter1 (or anything you want really).

Create an onBlur event of that new textbox which sets ReportParam.Filter1 to the value of TransView.ReportParamFilter1.

Preview:

… the report generates, but the problem I’m having is that I’m only getting the report (label) for the first value being passed. BUT, this could be a bug in my BAQ report. Even if I use the stock chip-selector and choose multiple parts, only the first one actually prints.

So… I think the above work-around may work… but I have my own problems to figure out :rofl:

8 Likes

David…

It works!! I will do some more testing next week, but I think this will make our Shipping users super happy.

Wild that this has to be done though…

4 Likes

Great! Thanks for taking the time to test that out. I still need to see why my report only prints the first record (haven’t had time to look at that yet).

But, glad it works for you!

3 Likes

I believe the problem with the search chip for BAQ Reports is twofold:

  1. validateFilter is broken, as you note
    – validateFilter default fails for the epBinding prop ReportParam.Filter1, when it could instead use the search-show Like prop Customer.CustID
  2. missing a search-value-set action after search-show
    – that value-set widget in the built-in event isn’t even an action that exists, afaik.

This can be fixed like so:

Overide onSearch:

  1. Copy the event ReportParam.Filter1 and name it onSearchReportParam.Filter1
  2. Change the trigger to OnSearch

  1. Set search-show Validation prop to respective filter:
{
	"validateFilter": "CustID = '%value%'",
	"errorMessage": "Invalid Customer"
}

  1. Add a search-value-set action and set properties:
    epBinding: ReportParam.Filter1
    value: actionResult.CustID

Then it should work as it should: type + enter, multi paste, and multi select search.
like this:

3 Likes

Thank you Josh! This worked out great!

2 Likes