Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion GroupsFormsForms ProgrammingQueriesModules / DAO / VBAReports / PrintingMacrosDatabase DesignSecurityConversionImporting / LinkingSQL Server / ADPMultiuser / NetworkingReplicationSetup / ConfigurationDeveloper ToolkitsActiveX ControlsNew UsersGeneral 1General 2
Access DirectoryToolsTutorialsUser Groups
Related Topics
SQL ServerOther DB ProductsMS OfficeMore Topics ...

MS Access Forum / New Users / February 2008

Tip: Looking for answers? Try searching our database.

Split database

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Matt - 29 Feb 2008 14:46 GMT
I need to work on the front end of my database, but will not have exclusive
use.  I know this is probably an obvious question but I am always skeptical
of anything.  The question is, there shouldn't be any problem copying the
front end to another location, changing the name, developing it, then pasting
it over my current front end right?  And will it hurt my back end?
Harlan - 29 Feb 2008 14:52 GMT
Matt,
No, there won't be problems with the back end if you do this..... BUT
REMEMBER, the copy of the front end will still be linked to the tables in
the back end unless you remove the links... so "data" changes WILL affect
the back end if you don't de-link those tables.

I usually IMPORT the tables into my "test" front end and delete the links to
the real back end... then after making all my changes to the front end,
delete the imported tables and reattach (re-link) to the correct back end
prior to deployment of the new front end.

HTH
Harlan
>I need to work on the front end of my database, but will not have exclusive
> use.  I know this is probably an obvious question but I am always
[quoted text clipped - 3 lines]
> pasting
> it over my current front end right?  And will it hurt my back end?
Matt - 29 Feb 2008 15:03 GMT
Gravy, I appreciate the response!

> Matt,
> No, there won't be problems with the back end if you do this..... BUT
[quoted text clipped - 16 lines]
> > pasting
> > it over my current front end right?  And will it hurt my back end?
Albert D. Kallal - 29 Feb 2008 18:05 GMT
> Matt,
> No, there won't be problems with the back end if you do this..... BUT
[quoted text clipped - 6 lines]
> delete the imported tables and reattach (re-link) to the correct back end
> prior to deployment of the new front end.

Deleting the table links, and then importing that back end tables is a lot
of work, and is prone to many errors. With your suggestion after making your
changes, you then have to re-link back to the production back end, you now
have to DELETE ALL of tables. And, then have to link to each back end table
ONE BY ONE. (that is a LOT of work here).

Furthermore how are you going to distinguish  between the many tables that
are often placed in the front end? Any Combo boxes or selection lists that
are not user changed should be placed in the front end. (why drag a table
over a network into the front end, when you can simply place the table in
the front and where it belongs -- this gives you much better performance as
for those tables and drop lists they do not need to be transferred or the
network).

The part that seems strange here is that after you delete all of the tables
you imported, you are suggesting to re-link to the back end (that means
re-link ONE TABLE AT A TIME to the back end). Many of my applications  have
30, or even 50+ tables, and have to add back the table links one at a time
is a LOT of work. (perhaps it's just a typo on your part, and you didn't
really mean to suggest this process)

The suggested approach:

You make a copy of both the front end and the backend onto your development
computer. You then simply use the linked table manager, and link your front
to your "copy" of the backend. You're now free to develop new forms reports,
and modify or write new code for your application. You can even test
sensitive and dangerous code that deletes data, and once again you don't
want to  do that on production data

Furthermore while most of your code will work with non linked tables,
testing debugging and developing an application with non linked tables, and
then simply changing it to linked tables in a production environment can
introduce bugs and code that will not function. For example the following
line of code works with local tables, but if you link the table the
following piece of code fails:

  Set rst = CurrentDb.OpenRecordset("tablename", dbOpenTable)

if you use linked tables, the above must become

  Set rst = CurrentDb.OpenRecordset("tablename")
or
  Set rst = CurrentDb.OpenRecordset("tablename", dbOpenDynaset)

So, you can well see its a bad idea to write and develop code in a non
linked environment, and then all of a sudden deploy that code and
application that's not been tested with linked tables to all your users. In
other words as you develop, test, and write your code, any of the pitfalls
and problems that arise by using linked tables will be instantly noticeable
to you. With your suggestion, developers will not be working and writing
code with linked tables, and then your pushing out code into production
*with* linked tables. It means your code you write has not been battle
hardened or even tested by you in the final environment its going to be run
under.

So, it is suggested you use linked tables. When you finished make a few
changes, you simply take this front end, and now use the linked table
manager to link to the production back end. You then create the mde, and
deploy that to your users. There is no need to create the table links again,
or delete a whole bunch of tables, and then try to re-link one by one to the
back end...

While we're at this, the production front should be converted to a mde.

The other issue to point out here is the original poster said he can't work
on the front end while people are using it, and that means the front end is
being shared by MORE then one user (or is not being placed on EACH
workstation). That is a incorrect setup, and is not the recommended
approach, and one of the reasons why you split is so that you can have more
than one user in their OWN copy of the application that is placed on EACH
workstation.

Signature

Albert D. Kallal    (Access MVP)
Edmonton, Alberta Canada
pleaseNOOSpamKallal@msn.com

 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.