psemianonymous
Programmer
1. When you close the main form, any changes made to the subform will either be saved or lost. There is no option to 'cancel' the form close. Compare this to making changes on the main form -- if you 'cancel' the BeforeUpdate event when someone is trying to close the form, a special dialog pops up that says 'you're about to lose everything, close anyway?' With subforms, this doesn't exist. BAD.
2. Subform timing issues. I thought that the the subforms loaded, then the main form. It turns out, this isn't true. The main form loads, then, sometime later, the subform loads. So if you're trying to mess with the subform's information based off of the main form's Me.OpenArgs property, you have to do something messy to get it to work. Ick.
3. Are you supposed to put all the code in the main form's module, or the subform's module? Either way, it's all terrible. Me.ctlSubformA.Form![txtSomeControl], blah. Or, the 'cleaner' way: Me.ctlSubformA.MessWithRecord arg1, arg2. Blah. See #2 for an example of how this sucks (sprinkle timing issues and it's double the pleasure). Blah.
4. I know why pressing TAB cycles INSIDE the subform, but I don't have to like it. This is a bad feature. There should be an option for subforms that say 'jump to next control on main form, instead of looping through records.' Yes, this is a real gripe. Pain.
5. Leaving the subform's focus to the main form triggers the Before_Update() event (i.e. tries to save the record BEFORE MOVING). Unnecessary, but it does so. Again, I know this is a 'feature', not a bug, but it's a terribly annoying feature.
6. The mild indentation non-lineup. Subforms are about half a click off of the grid.
7. Vertical scrollbars, or the space taken up when they aren't visible, have an unchangeable background color that does not change with the subform's background (probably an Access 97-only bug).
8. Inability to use comboboxes in the datasheet mode, except by using a feature Which Will Remain Unnamed, For It Is Horrific. Thus I use continuous form and try to make it look like a datasheet, a fate nearly as awful as using That Which Is Unnamed.
9. Did I mention you can't tab OUT of a subform? Terrible, especially when I'm trying to 'hide' the fact that I'm using subforms in the first place.
If I think up more items, I'll post back.
2. Subform timing issues. I thought that the the subforms loaded, then the main form. It turns out, this isn't true. The main form loads, then, sometime later, the subform loads. So if you're trying to mess with the subform's information based off of the main form's Me.OpenArgs property, you have to do something messy to get it to work. Ick.
3. Are you supposed to put all the code in the main form's module, or the subform's module? Either way, it's all terrible. Me.ctlSubformA.Form![txtSomeControl], blah. Or, the 'cleaner' way: Me.ctlSubformA.MessWithRecord arg1, arg2. Blah. See #2 for an example of how this sucks (sprinkle timing issues and it's double the pleasure). Blah.
4. I know why pressing TAB cycles INSIDE the subform, but I don't have to like it. This is a bad feature. There should be an option for subforms that say 'jump to next control on main form, instead of looping through records.' Yes, this is a real gripe. Pain.
5. Leaving the subform's focus to the main form triggers the Before_Update() event (i.e. tries to save the record BEFORE MOVING). Unnecessary, but it does so. Again, I know this is a 'feature', not a bug, but it's a terribly annoying feature.
6. The mild indentation non-lineup. Subforms are about half a click off of the grid.
7. Vertical scrollbars, or the space taken up when they aren't visible, have an unchangeable background color that does not change with the subform's background (probably an Access 97-only bug).
8. Inability to use comboboxes in the datasheet mode, except by using a feature Which Will Remain Unnamed, For It Is Horrific. Thus I use continuous form and try to make it look like a datasheet, a fate nearly as awful as using That Which Is Unnamed.
9. Did I mention you can't tab OUT of a subform? Terrible, especially when I'm trying to 'hide' the fact that I'm using subforms in the first place.
If I think up more items, I'll post back.