q1: My understanding is that the class tweak is more
difficult to implement in A2K3 than it was in A97. You
may want to search around for more information on that.
q2: Yes, an access project can use code in any loaded
class/module. However, you don't have the class
libraries of any child or indirectly referenced projects
at compile time, so you have to use run,eval,SQL, runcode
or whatever to prevent early linking of that code if you
are going to use an MDE. (If you are using an MDB, then
you can live dangerously: the code will only crash if
references can't be resolved as code is loaded and demand
compiled).
For example, I've got code in my second level library
(c.mdb) which calls back into my base projects (a.mdb)
to get application customisation data set at build time.
We also have table driven code in the second level
library that calls back to the mid level modules (it
is used to configure and run reports in the mid level
modules). It is table driven, so it was always going
to be eval/run anyway.
And we used to have code in the mid level modules that
called sideways (from d.mdb to b.mdb). It simplified our
build process and made it more robust by allowing us to
avoid a reference dependency chain. That code still exists,
but we were eventually able to simplify the reference
chain to three levels by consolidating libraries.
(david)
"Glenn Davy" <gS***********@tpg.com.au> wrote in message
news:pa****************************@tpg.com.au...
Hi all
I'm wanting to build some 'libraries' of functions and classes that I can
share around between various front ends which all share a common backend.
I realise from the archives, that this has been discussed a little in the
past, however I just want to confirm my understanding on a few points.
Q1) Class visibility - While its technically possible to see classes in a
referenced mdb file by exporting, tweaking and re-importing (see
http://www.mvps.org/access/modules/mdl0034.htm) - this clearly isn't
standard behaviour. This may remove some obstacles to building the app the
way I'd like, but I am concerned that if a future version of access
doesn't respect this tweak (VB_Exposed=true) then I may be faced with
'retro designing' the application. Thoughts?
Q2) Inter reference scope - given:
A.mdb -references->B.mdb - which referencernces-> c.mdb
AND
A.mdb -references->D.mdb
Is it possible (which it doesn't seems to be to me) for:
B.mdb to utilise code in A.mdb, or even D.mdb?
If its possible could you share how ?
Thanks all in advance
Glenn