Not sure, if this is that complex.
I have several dialog surfaces of that kind. All with IBQuery, datasource, dataset.
The others work fine and without touching the query or transaction options.
My database and transaction are in an own datamodul. I never touch them.
There is only a slim chance that someone encountered the same problem and remembers what was it, without seeing actual set up you have.
If you have similar situation in other parts of your program and they work fine, then my advice is that you compare them, component by component:
- check queries if they are similar in nature (i.e. both are queries without join, use parameters and similar)
- check what properties you change programmatically in both cases
- compare properties of components one by one in object inspector, check methods assigned to events
- view forms as text and compare components (this is similar to the line above, but sometimes one may spot difference easier then in object inspector)
If you can't find differences then it's getting more complicated. See what event should be fired when pressing that button and see if it is working. Maybe component are set up fine, but something with database is not set-up.