Microsoft Access - Latest Innovations and the Road Ahead - Access DevCon 2023
The Microsoft Access team provides updates on Code Signing, Dataverse, In-App Messaging, the Edge Browser Control, and future development priorities.
One of the highlights of the annual DevCon Vienna conference is the update from the Microsoft Access team.
Team lead/acting product manager, Dale Rector, along with Access software engineers Sachin Arunkumar, Courtney Owen, and Joe Jimenez, provided this year's update. The team covered the following topics:
- VBA Code Signing
- Dataverse
- In-App Messaging
- New Browser Control
- Future Development Priorities
See below for details from the session.
Improvements to VBA Code Signing
Microsoft Access engineer Sachin Arunkumar presented the latest improvements to the VBA Code Signing feature (for which he is the lead developer):
- The signature is automatically copied to the runtime database.
- Support for runtime files including Accdr file format.
- Automatically re-sign the VBA code upon saving, provided that the original certificate is still accessible.
- Provide an option to trust the publisher at startup.
- Enable trusting the publisher even if the full menus are unavailable.
Ben Sacherich asked in the chat how often this new feature is used:
[BEN]: I'm curious how many people are using a VBA code certificate like being described here. Can you react with a heart if you use it?
Access MVPs Philipp Stiefel and Adrian Bell both reacted to indicate they use the feature, and Sachin responded with some in-house info later in the chat:
[SACHIN]: Despite being a newer feature, we're seeing pretty good usage. Another point is that signing the Access DB will also bypass MOTW (Mark Of The Web) flag check
That last point about code signing bypassing the MOTW check is especially important given the new VBA policy of blocking all code in documents and files downloaded from the internet.
Improvements to Dataverse Connector
Courtney Owen, lead developer on the Access Dataverse Connector, provided updates on the Dataverse Connector and Microsoft's new "In-App Messaging" marketing tool.
- Single/Double Support - we previously blocked these field types for export
- Rich Text Support - we previously blocked this field type for export
- Export to Dataverse Solution - can now select to export to a particular solution
- Detailed Export Report - provides detailed report post-export
- Numerous Bug Fixes
- Performance Improvements (coming soon) - improvements from Dataverse that should improve table export time
In-App Messaging
This new "feature" is common to several (all?) applications in the Microsoft Office suite.
Its main purpose is to inform existing Office users of little-known or underutilized features. It would be a nice feature to incorporate in our own applications. Unfortunately, it's not something available to us currently and it does not sound like there are any plans to make it available in the future.
The "Experience the latest VBA Macro Code Signing feature!" pop-up tip in the screenshot below is an example of this new "In-App Messaging" feature.
Here is a summary of the new feature from Courtney's slides:
- Goal is to keep users informed and engaged
- Teaching callouts announce new features
- Working with Microsoft Marketing team to create "campaigns" to help identify user sets (e.g., Designers) and cater specific information to these user sets
New Edge Browser Control Updates
Microsoft released the new Edge browser control to insiders and beta testers recently. Joe Jimenez, the primary developer of the feature, provided some information on the new control.
The bullet points below came directly from Joe's slides.
Modern Browser Backwards Compatibility
- Goal was to make switching from old browser to new browser as seamless as possible
- Some properties will not be supported
• Transform property (very little usage according to Microsoft telemetry)
• OnProgressChange event (not supported in WebView2)
• Progress property
• Object property - No existing VBA API for WebView2
Important VBA Changes
- Old browser - Has
Object
property - The Object property allows you to use the MSHTML VBA API built into IE to interact with the browser
- Example:
Me.WebBrowserO.Object.Document.parentWindow.execScript "alert('hello from access');"
- New Browser - No
Object
property - Added necessary APIs directly into Access
- Example:
Me.EdgeBrowserO.ExecuteJavascript "alert('hello from access');"
- Notice how second example doesn't use the Object property
Most MSHTML APIs [i.e., the old browser control] are directly related to a JavaScript API, so it is recommended that [the new browser control methods]ExecuteJavascript
andRetrieveJavascriptValue
be used to call those JavaScript APIs when working with the new browser.
Future Work
The team finished their presentation with a list of some of the other features they are either working on or are under consideration:
- Increase Ace limits on number of open tables/cursors - some of these limits were set when there were other constraints more likely to be hit first, but solutions hit this limit more often now
- Large Address Aware - although more users are switching to 64-bit Office, there are enough 32-bit users to make this valuable
- Support larger forms for larger monitors - As large monitors become more common, the limits on Access' form size becomes more of a constraint. There are issues to resolve here (e.g., backward compatibility), and we may also decide to do some work around zooming or responsive forms as part of this work.
- Modern Charts - Although feedback for Modern Charts is generally positive, we understand that they lack some of the flexibility that our legacy Charts provide
- Updated SQL Editor - Getting further out now, but still something we have in the planning horizon