Trying to implement a search function to data grid that is populated by a microflow that queries an Oracle database
1
I am trying to implement a search function to a database through Mendix that will allow me to put in some information on a form, and using that information to perform a query and return the resulting list to a datagrid on another page. I have succeeded in getting Mendix to automatically pull information from a database using a static query. However, if I want to search for a specific entry, I need a place to enter a name and then use that parameter to execute a new query that populates a data grid or list with everyone that has the same name. Knowing how to do this will also be useful to paging, since I can then execute a new query that offsets where the search begins to get a new page of results. To summarize, the main issue is figuring out how to get some parameters (like names or addresses), use that to modify a dynamic query, and then take the results of the query and populate a data grid or list. I tried doing something straightforward like this: but this obviously does not work, because if I tried to then use this microflow as a source of information, the new data grid will fire a CE1573 error, saying “Parameter 'Contact' of the selected microflow does not match available arguments. No arguments are available to 'grid143'.” I suspect this is because the data grid that I am trying to populate with entries doesn’t have a Contact parameter to put in. I have the contact parameter because I was trying to fill out a form that takes the information, stores it as a contact (non-persisting) entity, and would then use that information to query, but unfortunately the grid doesn’t know that it only has to receive the information and not try to execute itself.
asked
William Hu
1 answers
6
Hi,
Create a non-persistable entity and create attributes to search for main entity attributes. In search page keep the non-persistable as data source and keep attributes as you needed, in search button call a microflow and pass this parameter and follow steps as you done before.