Forum Discussion
MS Access
George Hepworth Thanks George for your response. How do I find the "Sync" button in Access? Also, I am assuming that if I make any changes to the Front End I will need to have all the users download the revised ACC file to their machines again. Is that correct?
When you use SharePoint lists as your tables for an Access relational database application, you are able to cache a local copy. Specify that option here and do not check the option to clear the cache.
What will happen is that, when a user disconnects and works offline, their work is stored in that local cache. Then, when they reconnect later, Access compares their local cache to the live SharePoint lists. If there are differences, i.e. additions, updates or deletions, Access will present the user a dialog allowing them to accept or reject each difference. This works quite well, but if the number of changes is large, and if multiple users have all changed the same record, it can be a bit tedious to work through and make good decisions.
So the synching is triggered automatically when the accdb detects a live connection and does its check between what is locally cached and what is now stored in the SharePoint lists.
- dajohnson162000hotJun 04, 2020Copper ContributorThanks George. I understand better the syncing relationship between SP lists and Access tables. What if I add new forms etc. to my front end local copy and then upload it to SP, will other users see those new forms without downloading the new front end locally to their machines?
- George HepworthJun 04, 2020Iron Contributor
dajohnson162000hot Sorry, I forgot to address that portion of your query.
Each time you create a new version of the Front End accdb (or the compiled version accde) you will have to distribute that new FE to each user.
One way to think about this is to put it into the context of all relational database applications.
They have a data layer, which consists of the tables holding the data. In Access, that can be local Access tables, but it can also be any one of a large number of data storage tools, including the SharePoint lists. In other relational database application, the same is also true. A web page, for example, can work with data in SQL Azure or SQL Server, MySql, and so on.
They have an interface layer, which consists of forms in Access, or web pages in a browser-based application.
They have a logic layer, which consists of the code that manipulates both data and objects.
In the Access version, the FE accdb (or accde) is the interface layer. Access can connect to a data layer which is another accdb, a SQL Server database, or, in this case, SharePoint lists, and so on.
What you are doing, is in essence, putting the interface, or FE, on a SharePoint site for deployment to each user. The SharePoint lists are separate, i.e. they are part of the data layer.
- dajohnson162000hotJun 08, 2020Copper ContributorGeorge, Thanks so much! Yes, I was suspecting what you have stated to be the case. If I run queries to pull data--no worries. The FE is a fixed object that when I change I just need to republish the updated version to the users machines. Got it! If it's ok I would like to stay in touch with you if I happen to encounter any problems. Thanks! David