Arthur Fuller
artful at rogers.com
Wed Mar 5 15:29:00 CST 2003
For about a decade I have worked on the principle that the same form can handle displays, inserts and updates. Lately I have been experimenting, and my tentative conclusions are that I have been wrong for a decade; that a better approach is to have a reead-only navigation form of some sort, containing an edit button, which does not flip flags in the current form but rather loads an frmEditMyDataSource form specifically designed for insert or edit. In this model, no single form contains the logic for multiple operations. Rather, one designs forms for Insert and Edit separately. The behaviours are radically different. Why complicate the logic of one form by injecting two purposes? I'm not throwing this out as a definitive conclusion, but merely one of my regular queries (select * from projects where decision_certainty < .8). I have coded innumerable dual/treble purpose forms, with logic distributed among their controls, and in a few recent experiments have noticed that the logic is a lot cleaner if I code something like this: On DoubleClick If Me.NewRecord = True Then Open the Insert form Else Open the Edit form End If Opinions? Diatribes? Scathing denunciations? -----Original Message----- From: accessd-admin at databaseadvisors.com [mailto:accessd-admin at databaseadvisors.com] On Behalf Of Jim DeMarco Sent: March 5, 2003 2:56 PM To: accessd at databaseadvisors.com Subject: RE: [AccessD] Editing Records In cases where a number of items (boolean variables in this case) must be true for an event to occur I usually multiply the booleans by each other. If I get a 0 result I know the event should not happen: blnDoTheEvent = ((blnValidate1 * blnValidate2 * blnValidate3) <> 0) If blnDoTheEvent Then 'do it here End If HTH, Jim DeMarco Director of Product Development HealthSource/Hudson Health Plan -----Original Message----- From: Bob Gajewski [mailto:bob at renaissancesiding.com] Sent: Wednesday, March 05, 2003 2:50 PM To: 'accessd at databaseadvisors.com' Subject: RE: [AccessD] Editing Records Andy Just shooting from the hip, but couldn't that be done using a loop? Seems like it might be a lot of coding, even for just 13 validations ... and then it would handle more if they were added later. Regards, Bob Gajewski On Wednesday, March 05, 2003 14:22 PM, Andy Lacey [SMTP:andy at minstersystems.co.uk] wrote: > Tim > Just a suggestion > > Dim blnNeedsUpdate As Boolean > > > blnNeedsUpdate =False > > If validation1 = false then > blnNeedsUpdate =True > > End if > > If validation2 = false then > blnNeedsUpdate =True > > End if > > > etc > > if blnNeedsUpdate = true > > ..edit > > change all fields > > ..update > > > > Andy Lacey > http://www.minstersystems.co.uk <http://www.minstersystems.co.uk/> > > > > -----Original Message----- > From: accessd-admin at databaseadvisors.com > [mailto:accessd-admin at databaseadvisors.com] On Behalf Of Swisher, > Timothy B > Sent: 05 March 2003 13:06 > To: accessd at databaseadvisors.com > Subject: [AccessD] Editing Records > > > > Hello group, I have a procedure (A2k) that opens a recordset (DAO) and > cycles through the data validating/updating several fields for each > record. My question is, what is the best way to do this, > > Like this > > ..edit > If validation1 = false then > change data > End if > > If validation2 = false then > change data > End if > ..update > > Or > > If validation1 = false then > .edit > change data > .update > End if > > If validation2 = false then > .edit > change data > .update > End if > > I have about 13 validations that need to be done on about 90,000 > records. Each validation goes to a SQL Server BE and check the validity > of the data. There is a huge difference in speed opening and closing > the recordset so many times, but if that is the better way to go, then > so be it. All help is appreciated. TIA > > Tim > > << File: ATT00006.htm >> _______________________________________________ AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com **************************************************************************** ******* "This electronic message is intended to be for the use only of the named recipient, and may contain information from HealthSource/Hudson Health Plan (HS/HHP) that is confidential or privileged. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the contents of this message is strictly prohibited. If you have received this message in error or are not the named recipient, please notify us immediately, either by contacting the sender at the electronic mail address noted above or calling HS/HHP at (914) 631-1611. If you are not the intended recipient, please do not forward this email to anyone, and delete and destroy all copies of this message. Thank You". **************************************************************************** ******* _______________________________________________ AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com