[AccessD] Framework Discussion - set up question

DWUTKA at marlow.com DWUTKA at marlow.com
Thu Mar 25 18:18:23 CST 2004


Um, no.  I tested it.  I have proven beyond a shadow of a doubt that their
is NO bloat. (I'll be happy to send you the test databases....or, you could
prove it to yourself.  Better yet, PROVE that there IS bloat! HAH!).

I have also tested the performance.  NO PERFORMANCE issue at all.

Now, that means that our side has not only 'acknowledged' your agruments,
but we have gone and shown them to be false.  In a normal debate, you would
then go and try to find a particular instance where you might be right.
However, since we have TESTED our proof, you would need to do the same,
because coming back with 'Ya, well, what if you used a lookup, that hit a
NASA satellite , to find out the exact number of sunspots at that moment in
time, and then linked that data with a complex Join against an Oracle
database, if you were dealing with a billion records, THEN Lookups would be
a performance issue.' is kind of lame, with no steps to recreate, or links
to actual proof.

Here's an example of definitive proof:  

Put the code below in a module, then set a field to have DBReportNames in
the RowsourceType.  NOTICE, the acLBGetValue 'code' has a little extra that
WAITS an entire second before it returns anything.  Now, open the table.
Did you notice any delay?  I did this to my 200,000 record table.  I only
put 1 test report in, but by YOUR performance issue, I should have not seen
anything for 200,000 seconds, because it should have done 'something' since
there is a lookup.  Well it didn't.  Ah, but maybe the code isn't working.
Nope again.  Go ahead and select the field you have the lookup setup for.
Sure enough, it will delay a second for each report, before displaying it in
the combo box.

Hmmmmmmmmmm.  Proof that there is no performance degradation, and I've
already proven no bloat.  Now, what 'arguments' are we ignoring?

Drew (example code below)

Option Compare Database
Option Explicit
Public lstReportNameArrayCount As Long
Public lstReportNameArray()
Function DBReportNames(ctrl As Control, id As Variant, row As Variant, col
As Variant, code As Variant) As Variant
Select Case code
    Case acLBInitialize
        'Okay, we need to create the array
        Dim ctr As Container
        Dim dbs As Database
        Set dbs = CurrentDb
        Set ctr = dbs.Containers!Reports
        Dim rpt As Document
        Dim i As Long
        lstReportNameArrayCount = ctr.Documents.Count
        ReDim lstReportNameArray(1 To lstReportNameArrayCount)
        i = 1
        For Each rpt In ctr.Documents
            lstReportNameArray(i) = rpt.Name
            i = i + 1
        Next rpt
        Set dbs = Nothing
        Set ctr = Nothing
        DBReportNames = 1
    Case acLBOpen
        DBReportNames = 1
    Case acLBGetRowCount
        DBReportNames = lstReportNameArrayCount
    Case acLBGetColumnCount
        DBReportNames = 1
    Case acLBGetColumnWidth
        DBReportNames = -1
    Case acLBGetValue
        Dim tmpTime As Date
        tmpTime = Now()
        Do Until Now >= tmpTime + (1 / 24 / 60 / 60)
        Loop
        DBReportNames = lstReportNameArray(row + 1)
    Case acLBGetFormat
        DBReportNames = -1
    Case acLBEnd
        ReDim lstReportNameArray(1 To 1)
        lstReportNameArrayCount = -1
End Select
End Function

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Charlotte
Foust
Sent: Thursday, March 25, 2004 5:21 PM
To: Access Developers discussion and problem solving
Subject: RE: [AccessD] Framework Discussion - set up question


Hah!  You guys would refuse to acknowledge valid arguments on the other
side, regardless, because it doesn't agree with your predelictions!

Charlotte Foust

-----Original Message-----
From: DWUTKA at marlow.com [mailto:DWUTKA at marlow.com] 
Sent: Thursday, March 25, 2004 2:39 PM
To: accessd at databaseadvisors.com
Subject: RE: [AccessD] Framework Discussion - set up question


We're gonna need a BIG bag of marshmallows!  Their side is just burning
up. Haven't actually added a valid/proven argument yet! LOL

Drew

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Susan Harkins
Sent: Thursday, March 25, 2004 4:16 PM
To: 'Access Developers discussion and problem solving'
Subject: RE: [AccessD] Framework Discussion - set up question


I want to know why he's changing the table names? ;) Oh my gosh, what a
horrible mess you might create all the way down the line -- not just
with lookup fields. 

<fire's hot, just about ready -- Drew, hand me a marshmallow, would ya?>

Susan H. 

Okay, for number one, let's drop that.  It's a pointless argument.  If
you want to argue that using Lookups adds confusion, then I would REALLY
hate to see your table designs.  Have you ever tried to explain a many
to many table to a 'user'?  Trust me, they'll pick up what a 'lookup'
field does a LOT faster.  And if you aren't using things like many to
many tables, because users could get confused, then you are not
normalizing your data.  See how this is a BAD argument to try to defend
against?

Now for number 2.  You can't hack a feature with a 'feature creep'
agrument. Feature creep can affect anything in a bad way, however, if
you are getting paid by the hour, or are doing contract work, Feature
creep means more money! LOL


-- 
_______________________________________________
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com
-- 
_______________________________________________
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com
-- 
_______________________________________________
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com



More information about the AccessD mailing list