wrote in message
news:43acb117-d397-41db...@googlegroups.com...
>Albert wrote:
>>Since JET/ACE is a file based data engine, then all processing runs at the
>client level.
>
>I have always assumed that a fair amount of processing runs in the BE - for
>example: all indexing and queries on only BE tables.
No, the processing thread runs on your computer. You can place the back end
on a jump drive, a external USB drive or a shared folder on the server. That
server, or USB drive has no "processing" and MOST important that USB jump
drive does not have any software installed and running on that drive.
>Add to that any checking of BE table relationships and
>table-field-validation. I guess I had also hoped / assumed that much of the
>DCount / DLookup work was handed over to the BE to process as well.
>
>Is any of that true ?
No see above. the back is ONLY a file. It is no different then a text file,
a excel file or any old "Plain Jane" windows file. The front end opens that
file. The only work that occurs server side is the disk read, but nothing
other then a file read occurs.
If indexing or other tasks were occurring server side, then when did such
software get installed server side? Placing word, or an Access mdb file into
some folder does not magic install software on that system. The code +
software runs "where" you have Access installed.
>Further to the discussion of the new A2010 Stored Procedures, if they are
>not supported on link tables (FAQ -
blogs.office.com)
>then I need help to understand how they would be used with a usual
>multi-user FE / BE setup.
Store procedures cannot be called from VBA or forms if you split. However,
if you don't split then you can use them.
However, while store procedures cannot be called from forms or VBA when
split, the table triggers DO work and THEY CAN call store procedures.
In MOST cases your table triggers will call store procedures, not your VBA
or forms.
So in the classic sense in which you have a table triggers calling some
store procedure code?
This setup works even if you split your database.
So the only restriction here is that your front end cannot call store
procedure code WHEN split.
However the table triggers you have in the BE WILL fire, do run.
And when split those triggers can call store procedures in the back end.
So if you comparing a typical access front end, in "most" cases it is likely
the table triggers are calling store procedure code and not your front end
forms + VBA code will calling those procedures.
As noted, in the case that your front end does need to call store procedure
code? Just re-write that code as VBA. So you don't really loose much by
splitting here.
So in summary:
non split database:
Both forms + VBA + table triggers can ALL FREELY call store procedure code
(named data macros).
Data macros can call VBA code.
split:
Table triggers continue to fire, table triggers can call store procedure
code.
Forms + VBA code cannot call store procedure code.
Data macros can call VBA code - that code MUST be in your front end!
So as per above your table triggers (and store procedures) in the back end
can call VBA code if you want - and that VBA code (must) resides in your
front end!!
So at the end of the day, I see little advantage to the fact that when split
your forms + VBA cannot call store procedures - it is usually easy to
re-write code in VBA and call that code. And in both cases the table trigger
can call VBA code.
So the ONLY feature you miss is forms + VBA being able to directly call a
saved store procedure (named data macro).
And as noted, you can in fact have triggers call store procedures and even
VBA code. When you do this, the data macros (store procedures) must be in
the back end.
However, any store procedure or trigger code that calls VBA does require
that VBA exist in the front end.
I would as a general rule avoid having macros call VBA code. If you do this,
then I would for maintains place a copy of the VBA code in both front end
and back end. Since if you open a back end to edit some data - it will
attempt to call the VBA routines which are now not available.
Best regards,
--