Hi greg,
Welcome to Servoy,
thegregor:
First is multiple windows. Yes, I’ve seen .showFormInDialog, and I can probably make that work for most of my needs, but users would really like to be able to multiple instances of the same form open at once – ie, viewing different found sets. Is this possible?
Forms based on the same table can either share a foundset or be independed. I don’t think you can have the same form showing more than once, but you could duplicate the form to get around this.
thegregor:
Second is CRUD events on the record level, not the form level – ie, onInsert, onUpdate, onDelete that are attached to the tables rather than the forms, so if you use the same tables in multiple form they will still be fired without having to worry about hooking up the right methods in both places. Auxilary to that would also be field level events, so you didn’t have to worry about hooking up to the controls. Does this exist? Or is it possibly being considered for future versions?
In other words you’d like to use constraints/triggers/rules in your SQL database… rather than have to worry about these issues on every screen in your front end…
I have experimented with triggers in PostgreSQL, mainly to gather data to enable fast reporting. If you do change data outside Servoy, the current version of Servoy will not know about the change until you restart it. Version 3.0 will have a new plugins to get around these issues
If you add constraints to your database, and your Servoy user violate them you currently get an Can’t save/Can’t Delete etc error message.
Meanwhile, you can write global methods that you attach to your forms to deal with most data consistency issues. Servoy allows you to write some very reusable abstract methods. Once you have a good set of methods, you can put them in a module and use them for all your projects.
Coming from FileMaker, you may find it takes a little while to really exploit the Servoy architecture.
From my own experience:
A couple of months ago, I had to create 7 global variables and duplicate 8 form methods per table, and hook them up to get my reusable user-interface working. I was not happy about the dulication, but I could still create stuff faster than in FM6/7.
After some interesting sessions at Servoy World, I have rewritten my core module so I can achieve the same result with no global variables and no new form methods. I only having to hook up one global method… 
Servoy allows you to many things you’d never dream of in FM…
Good Luck,