The Access 2013 Client Application
The Access client application sports
the new touch-friendly interface with design inspirations taken from
Windows 8 and the Windows Phone. The Ribbon interface, the backstage
view of database information and application options, trusted documents
and the associated security warnings, navigation panes, and the tabbed
single-document interface (SDI) for form and table manipulation were
all carried forward from the 2010 application version with little more
than cosmetic changes. Another change carried forward from the 2010
version is the use of the ACCDB file format for desktop applications.
One change from previous versions is that there
is now a concept of a user profile in Office applications, including
Access. The user profile allows Access to persist credentials for
services such as SkyDrive and Office 365. The profile either pulls from
the corporate Active Directory, from Office 365’s user profile system,
or from the user’s Windows Live account. Office applications, including
Access, offer the ability to manage multiple accounts, although only
one can be active at a time. The active user account is identified by
name and photo in the top-right corner of the Office application.
When starting with a preconfigured application
template such as the desktop task management application, the
navigation pane is one of the most important user interaction points
for Access application developers. This filterable pane organizes all
the application elements for easy access.You must understand that the navigation pane
supports instant access to tables, queries, forms, reports, macros, and
code modules, as seen in Figure 4.
Two of the most useful navigation pane
configurations, holdovers from Access 2010, are to set the Navigate To
option to the Object Type and [Custom] Navigation. The Object Type view
groups Access objects together by type, whereas the [Custom] Navigation
view groups Access objects together by related user activities.
[Custom] Navigation in a Tasks application is called Tasks Navigation,
and in an Issues application, the navigation option is called Issues
Navigation. You can rename the [Custom] Navigation group inside of the
Navigation Options dialog and explicitly control which Access objects
appear on the Navigation pane.
The Access client application experience for
desktop applications has not significantly changed. Most if not all of
the investment by Microsoft in Access 2013 has been focused on a new
web application model, which has been explicitly designed to simplify
web development.
Access 2013 Web Applications
Microsoft Access 2013 has gone through
a near ground-up rebuild for the user interface. The emphasis of the
Access changes has been on the web experience, which now features a web
application or web app front end driven by HTML, CSS, and JavaScript.
This new front end enables the same rich cross-platform accessibility
experience in the core SharePoint 2013 application.
In addition to the new front end, the back end
for Access web apps has been replaced entirely by SQL Server. Where the
previous version of Access leveraged SharePoint lists as the actual
data storage mechanism for Access 2010 tables, Access 2013
automatically creates a full-blown SQL Server database housed either on
SQL Server or on SQL Azure. SQL Server enables dramatic improvements in
scalability and eliminates many of the problems of user contention and
locked tables. Because of the SQL back end, Access can now store and
rapidly calculate across millions of records. Furthermore, the move to
leverage SQL Server as the back end enables IT to inventory and manage
enterprise Access applications because all the data is stored in SQL
Server.
WARNING What
does the backing of Access applications by SQL Server imply for
financial and IT controls à la SOX and PCI compliance? Business
application developers are now required to have read/write access to
SQL Server databases, which may drive financial reports and may open
material holes in otherwise restricted systems. This is an important
consideration when setting up Access Services because the default
experience is to connect to SQL via Windows Integrated Authentication.
The Access 2013 client application can also be
considered the designer of web applications. Creating a web application
using Access leverages a built-in forms generation engine, which
applies a default layout and CSS-based formatting to the on-screen
elements. This form-template engine ensures that business and IT users
can rapidly create eye-pleasing interfaces that offer a consistent user
experience across apps, regardless of the actual application author.
This web form generation engine automatically creates a consistent
interface from Microsoft’s schema templates, existing data imports, and
custom schemas created in Access. Access can read the data schema, and
generate direct table editing interfaces, which perform like Excel
grids, individual record views, record search interfaces, and
navigation buttons. Should the schema enforce a relationship between
tables, Access automatically creates linked and drill-down enabled
views of this relationship. Should the out-of-the-box interface not
correctly prioritize data elements or navigation experiences, it is a
simple matter to use the Access form designer to reposition or reformat
elements. It is worth noting that the Access form designer does not offer an HTML or code-editing experience.
WARNING The
HTML5 functionality generated by the Access forms engine is extremely
complex and should not be modified. This includes attempts to modify
the look and function of Access web apps via custom CSS or JavaScript.
Similar to end-user experiences with new
SharePoint sites, the approach Microsoft took with Access was to create
a call to action when a new blank application is created. Access 2010
starts users with a blank screen, which frequently causes confusion in
novice users. Access 2013 immediately asks users to add tables to the
application and supports that call to action with both a search
interface and a selection of existing data source connection options.
Power users of Access 2010 and earlier may have
invested energy into automating repetitive tasks and business processes
with VBA. Although VBA does continue to function in the Access desktop
client, web forms cannot leverage VBA. Instead, Access web forms
support a pair of macro designers that can react to user interface and
data changes. These macro designers are explored in more depth later in
the “Database Components” section.
Exploring a Sample Access Web Application
Figure 2 illustrates the basic makeup of an
Access web app with Microsoft’s freely available Customer Billing and
Time Tracking application. This application shares a number of
characteristics with all Access web apps:
- Trimmed down hierarchical breadcrumb navigation bar across the top of the screen.
- Tables representing business entities organized vertically along
the left side of the screen. This list of tables is called the Tile
Pane. When designing applications with Access, every table is added to
the Tile Pane, but each table can be independently hidden.
- Task-oriented views organized horizontally along the top of the
screen. Selecting different nouns changes the available views across
the top of the screen.
The Microsoft application serves as a model of an
Access web app’s capabilities with the inclusion of several YouTube
videos through the clever use of web browser controls on the various
views. Beyond the eye-catching video, this business application does an
excellent job of showcasing the four different view types and macros.
Navigating to the Site Contents page
reveals that the Customer Billing and Time Tracking app is treated by
SharePoint like any other SharePoint app. It can be secured and
removed. The app can also be opened in Access 2013 from the browser
where it can be modified and republished. Should the app be treated as
a template and get published to a number of different sites, the data
in each instance of the app is private to that single site.