SharePoint Apps Offline and Intro to SharePoint Designer

In the last post, I described how you can publish an Access database to SharePoint.  This time, we'll look at taking that database back offline, making data changes while disconnected, and re-synching.  I'll also briefly discuss updating the thin client version of the application using SharePoint Designer.

Opening the Application from SharePoint

When the database is published to SharePoint, it moves the data into WSS lists and the database front-end into a document library as described in the last post.  Opening the app is as simple as going to the document library and double-clicking:

After double-clicking on the app, you'll be prompted to open read-only or for edit, and since we're making design changes, we'll choose edit.

This causes a local copy to be saved to your machine, so the SaveAs dialog is brought up and you can simply choose a location for the database.

(Click image to enlarge)

The database remembers where it came from in SharePoint, so it is easy to publish changes back to the server by clicking the "Publish to SharePoint Site" button.

(Click image to enlarge)

Working Offline

Taking the application offline, is available with one click from the External Data tab.

Since we've already saved a local copy, we're not prompted to do that again.  When I click "Work Offline" the data from the web is brought down to the local Access file and cached in local tables.  The links to the SharePoint tables are cut, but of course are remembered for resynch. 

Now you're free to update the local data while offline, and the application behaves much like it did online.

(Click image to enlarge)

While the application is offline, of course other users may update data on SharePoint.  They might do this through the browser or through the SharePoint web UI.  Here they're using the Access Grid control:

(Click image to enlarge)

When you return to the network and want to resynchronize changes, it is again one click:

Now however, there are some data conflicts, so you're presented with conflict resolution UI.

(Click image to enlarge)

After resolving any data conflicts, the application is back online, and all changes are made directly against the linked tables.

Updating the Browser UI with SharePoint Designer

SharePoint Designer is a new product that makes it easy to design SharePoint web applications.  You can use it to build a thin client that provides a similar experience to the Access thick client UI.  The first step is to open the SharePoint site in SPD, then either start a new page or open one that you'd like to customize.  In this case we'll customize the All Items view of the Issues list:

(Click image to enlarge)

Then we'll convert the view from a SharePoint List View to a "Data View", which allows extensive customization through XSLT.  This is done from the right-click menu in SPD:

(Click image to enlarge)

Now the data view can be edited directly, and updating the columns and formatting is much like a grid view in Access:

(Click image to enlarge)

SPD has a data source task pane that is quite similar to the Add Existing Field taskpane in Access:

SharePoint Designer provides a rich set of tools for working with both the data and its presentation.  It is based on web technologies, so writing code is quite different, but the general concept and much of the UI is very similar.  For more information on SharePoint Designer, please see Alex Malek's blog and the Office SPD page

Next Time

In the next post, I'll discuss building workflows in SharePoint Designer and using those in Access.  After that, we'll move back to more Access client app developer focused topics.

Office Blogs Comments

Comments: (59) Collapse

  • I like how Access 2007 is coming along and by looking at comments such as the one posted by MikeC#, I can see that some people have not understood what Access 2007 is about, or Microsoft or Dubya, so hands off all three of them!

  • MikeC# "AL, it is clear, M$ has killed Access Projects" No Mike, it isn't clear. You have some problems with Access 2007 ADP's, ok ... but Access 12 supports Access Data Projects. Bye

  • Stuart, 1. M$ recommends AGAINST the use of Access Projects.

    2. There is NO information about Access Project in Access 07.

    3. Access03 projects are unusable with Access 07. How much clearer does it need to be made? Really, ADP as an application platform is dead. M$ will hem and haw about how you can create an ADP to do a “little” app. But even they will tell you that ADP is dead for any “significant” app. M$ is not outright cutting ADP because it may seem rude to them to completely pull the plug (after they created ADPs, recommended them, etc), but ironically, stringing you along is even ruder. You REALLY need to define what you mean by “support”. By “support” you mean that you can create an ADP file with Access07? Yes, Access07 does that. By “support” you mean that you can create a production ADP application with Access07? No, Access07 does not do that. Access07 does not even work with existing ADP applications. Google the word “failure” and you will find an inept puppet at the top of the list. – just like Access07 is.

  • When people run out of ideas to support their beliefs, they resort to pranks.

  • To the Access Team It looks like you guys have been doing a lot of good work and for that I applaud you. But I've been developing with ADP since Access 2000 and have much time and money invested in these projects. I need to be able to easily modify my Command Bars with GUI tools not VBA code in Access 2007. And please don't abandon your support for ADPs. Thanks

  • Dale, I know that you did not address me, but I can answer since I too have used the simple GUI setup of MenuBars and ToolBars for years. I also use VB code with these "Classic" MenuBars/ToolBars and I have used VB code to manipulate the hideously fat menu bar ribbon ad thingy and big office file button in Access07. "I need to be able to easily modify my Command Bars with GUI tools not VBA code in Access 2007." The facts are: There are NO tool bar GUI tools in Access07, period. And using an Access03 MenuBar/ToolBar in Access07 is unworkable as they are relegated to an "Addins" tab. RUNNING an Access03 file under Access07 will bring them back and remove the fat menu thingy - but you MUST use Access03 to develop them in so there is no point to using Access07 if you want/need a simple MenuBar or ToolBar. “And please don't abandon your support for ADPs” – sadly, they have. But things change, ADP development was bound to end at some point since M$ will only support mind share products. Like people with the blind faith meme burned into their mind: the way is the way; it is what it is, etc – they don’t have the capacity to think outside the rut in their collective mind. By the way, this blog is going way. As soon as Office 07 goes RTM, poof. The marketing and the buying by the gullible masses will continue unabated whether or not Access07 can actually do something efficiently or not.

  • After reading all the above comments I can say this is certainly a lively blog. Clearly the Microsoft staff and the professional developers care deeply about the product. I am really pleased Microsoft are pouring so many resources into Access 2007. This proves Microsoft do see a future in Access. I look forward to using the new version to some extent. I think Clint's list of improvements is impressive. However, I do wish some of the fundamental developer features of Access (custom menubars, user-level security, replication) were in the new accdb format. Since they are not we will either roll-out new applications using XP runtime or see how well our frontends convert to A2007 mdb - - hoping that Microsoft decide to reintroduce these in Access vNext. Nigel

  • There is a good deal of steam expressed in some of these posts. I think that's hard on the Microsoft team who are in a complex position to say the least. But the reason for the heat is pretty clear. A long time ago Microsoft built an incredibly useful software development tool, Access. Developers lept on it and pushed it to the max for over a decade. For it's part, for all of the time that it's been a booming success, Microsoft hardly lifited a finger to further the Access platform. When it came out that Access 12 was finally going to get some serious attention and funding, the Access devs as a group went "Whoopee! About time!"; there were expectations. But, basically not only have few of our needs and wants been addressed, there are some significant reductions in fuctionality with Access 12. Overall it seems to be becoming less of a dev tool than it was before. So, most Access devs are either pissed or in a state of shock. This isn't what we expected, at all. I've not posted on this blog for a while because I've started to realize that Microsoft is going to blow it with my massively productive programing environment. I'm looking, and finding, elsewhere. I'm not very enticed alternate Microsoft offerings partially because as a result of this (and other stuff) I don't have a lot of confidence that Microsoft is really set up to help small shops like mine. Too massive, too many agendas. Yes, it's too bad. Eric said "Change is hard" re all the beefing here, but it's not that devs here are resistant to "change". Not at all. Many of us just don't have to like the direction that the product is being taken. If it does not suit our needs any more, that's not resistance to change, that's resistance to losing capabilities! We were looking for a shift in the opposite direction from what we're getting (an over-simplification to be sure).

  • MichaelS: "But, basically not only have few of our needs and wants been addressed, there are some significant reductions in fuctionality with Access 12. Overall it seems to be becoming less of a dev tool than it was before. So, most Access devs are either pissed or in a state of shock. This isn't what we expected, at all" Me: I'm in a state of shock ;-) In my opinion, without custom MenuBars it's impossible to make an Access Application... Ribbons (that aren't simply customizable) can't replace a classic MenuBar. I think Access program managers don't know Access by developers point of view. Bye

  • Hi Clint, Thanks for your reply earlier. I can certainly understand why you wish to make the experience for new users a lot better and I salute your efforts in that regard. I think the template makeover is a very good thing as, curiously, the only template use I have actually seen in the wild has been by professional developers and not by new users! While it is important for new developers to come on board, I still urge you, however, not to underestimate the role of existing developers in the ongoing success of MS Access. If new developers start seeing more and more disatisfaction and resentment from the experienced crowd, they may question whether it is worth them continuing with it. Theres no point getting new people on board if you keep losing the old ones! I am trying to keep an open mind about Sharepoint. While the lack of unique ids, referential integrity, etc is unfortunate, I guess it probably isn't as bad as some of the abominations I have seen created in Excel! I do see the need for simple shared lists and I imagine that this has quite some appeal to both users and IT managers. It will be interesting to see whether they will end up using MS Access for this or just rely on the existing web interface. In either case, I believe that the management of lists will be crucial so that the number of unused or duplicate lists that accumulate over time doesn't obscure the useful ones. What may seem like a great idea early on may become like a curse down the track unless out-of-date lists are routinely culled! Anyway, we must be about due for another post? I look forward to it. -Chris.

  • zen wrote: "In my opinion, without custom MenuBars it's impossible to make an Access Application..." "I think Access program managers don't know Access by developers point of view" Probably they are too young and they haven't never developed DB applications larger then Northwind ;-) Bye

  • Ken is right on target. I highly doubt there is even one person on the Access team who actually spent 1+ years developing a single complex mission-critical, enterprise-level Access application. They seem to view the Access world as a long series of disposable quick and dirty projects. My Access projects are developed and refined over several years, and are designed to be secure and bullet proof, while being used by many simultaneous users, and handling many gigs of data. What we have here is the dumbing-down of Access for the sake of non-programmers. But it won't matter, non-programmers still won't be able to make it work, and developers will lose some of the best features of their favorite tool. Everybody loses. Just great. Don't get me wrong, many of the new features are great. And I would be very happy if the new features were an addition to the current feature set. Unfortunately, they are more of a replacement than an addition. In the end, this means that Access is no longer suitable for many secure, enterprise-level, mission-critical applications.

  • Well apparently none of my questions are going to get answered. Interesting though, I went back and read some of the posts from over a year ago, and even way back then many of the developers were unhappy with how the product was shaping up, and most of those folks are not longer participating on the blog. I guess they gave up when it was clear that nothing was going to significantly change. Here is what Microsoft states in the Office Online web page: "In previous releases of Microsoft Office applications, people used a system of menus, toolbars, task panes, and dialog boxes to get their work done. This system worked well when the applications had a limited number of commands. Now that the programs do so much more, the menus and toolbars system does not work as well. Too many program features are too hard for many users to find. For this reason, the overriding design goal for the new user interface is to make it easier for people to find and use the full range of features these applications provide. In addition, we wanted to preserve an uncluttered workspace that reduces distraction for users so they can spend more time and energy focused on their work. With these goals in mind, we developed a results-oriented approach that makes it much easier to produce great results using the 2007 Microsoft Office applications." What really cracks me up in that statement is the "uncluttered workspace that reduces distraction" line. I've always felt that the CUSTOMIZABLE toolbars were one of the greatest features in Office and was often baffled when other major applications did not include this kind of capability. As far as I'm concerned, that gets thrown out the "Window", so to speak, with the Ribbon interface. I have grown to really dislike it in ALL of the office apps (I just uninstalled the 2007 beta because all office apps were defaulting to the 2007 version and I could not change it by opting for "always use this program to open this type of file"). Surely some, maybe most, people will like the new interface. That remains to be seen. But to take a wonderful developer tool and just cripple it by not even having options to go with one interface style or another, and remove functionality that people have used effectively for years, is truly a demonstration of total lack of regard for the Access developer community.

  • Well I have to add my complete disappointment in what is happening to Access 2007 I too am a professional Access developer and now I feel I need to start re-training as the future of Access bleak for Developers. All these comments above a t right on target! I would like to hear a response from Clint and Eric and not just a dodge answer. I fully agree with AL some of the new features are awesome and I was really pumped and looking forward to A 2007, but now I see what is now going to be missing and how bad Share Point is a data repository... Well I am now deflated beyond belief. Come on Access t Team, please support your developer community. I really really do not think you appreciate how big and important this community is and how you are basically leaving us high and dry.

  • I share most of the opinions stated above. I've been frustrated by the limitations and the wrong direction Access goes from the very first moment on. I could not understand why all the suggestions from developers that can be found on thousends of websites, blogs, forums where not regarded after 4 years of development. Instead there were added many new features that don't make life easier (ribbon) or are completely worthless (sharepoint). (Astonishing rarely expressed here: For me the greatest disapointment is the unchanged VBA environment - 10 years old and a joke compared to other systems like eclipse. Even the too small sized references dialog remains in old state - the VBA 6.5 team just would have to change the dialog resource in vbe6intl.dll - a job of 10 minutes ...) But let's look at the other side:

    Access 2007 will

    - bring new users to Access. Excel maniacs will try starting by using templates. They will give up when things will become complicated. It will be developers like us to then make the best of these so called databases. Some jobs plus?!

    - bring millions of new users to public newsgroups and forums. What a success!

    - give authors the opportunity to write more books than ever about Access2007!

    - bring training companies many new customers trying to understand what a database is.

    - give add-in developers possibilities for a wide range of functionality to fill the gaps that MS left. Be excited to choose amongst hundreds of graphical ribbon editors we will surely see... All this will spread the market, create new jobs and ensure that Access will be well alive.

Comments

Comments: (loading) Collapse