Now Wave2 blogging is allowed, there are many topics that I want to share with you .. really, a lot. Time is not on my side – I’m in full preparation for Directions and NAVTechDays, so let’s see.
Today, while working on my SaaS-deployment-pipeline in DevOps with ALOps, I DID find the time to say a few words on one of the topics I’m quite excited about: Shortcutkeys in the webclient, or in other words: full keyboard shortcut support!
In my “real world”, users (yes, I do have customers, although people sometimes seem to be thinking otherwise.. ) have been asking this for quite some time .. and finally I can tell them: it works like it should!
Obviously you already knew about this, because I already announced it here (and specifically here by Microsoft) – just kidding ;-).
How it works?
Very simple: you have a “ShortCutKey” property on action, where you can set the ShortCutKey like this example:
I guess that doesn’t need too much of explanation, does it ;-)? You can simply do it the same for your actions. And I can tell you: it works! :-).
Knowing this, let’s dive a bit into what Microsoft did…
Did Microsoft apply it to the Base Application?
Absolutely. Even more, at the current version (a bit depending on localization), I found 1370 places where Microsoft added a ShortCut! I can only imagine they were able to convert that from the Base Application ;-).
This made me think though – are there THAT many shortcuts we need to start learning by heart?
I decided to dive a little bit more into it, by analysing all the shortcuts by creating a PowerShell script that loops all al files of the Base Application, and lists all ShortCutKey properties in a csv file. You can find the script here: https://github.com/waldo1001/blog.CALAnalysis/blob/master/ShortCutKeys/GetShortCutKeys.ps1
You can find the output in that same repo, but here is the overview of all shortcuts that I found are implemented:
ShortCutKey | # of Actions | Explanation |
Alt+D | 356 | Dimensions |
Ctrl+Delete | 1 | Delete Remark: this is only applied on Page“ItemAvailabilitybyTimeline“ |
Ctrl+F11 | 17 | Reconcile SplitWhseActivityLine |
Ctrl+F7 | 183 | Navigate to “Entries” |
Ctrl+F9 | 43 | “Finish” “Release” “Release to Ship” Approve Release UnappliedEntries |
Ctrl+Right | 2 | Post Only on (BC)O365SalesInvoice Page |
F7 | 154 | Statistics |
F9 | 101 | Post |
Return | 93 | Open This is an interesting one … |
Shift+Ctrl+D | 4 | Dimensions Only on these journals:
|
Shift+Ctrl+F | 1 | SuggestWorksheetLines on CashFlowWorksheet |
Shift+Ctrl+F9 | 1 | “Post and Print Put-away” on WarehouseReceipt |
Shift+Ctrl+I | 92 | Item & Tracking Lines |
Shift+Ctrl+L | 2 | Run (All) on Test Suite |
Shift+F11 | 24 | Apply Entries |
Shift+F7 | 228 | Card / Show Document (why not “Enter”? :-)) |
Shift+F9 | 68 | Post & Print |
As you see, not really THAT many, but very useful nevertheless..
Now obviously the next question:
Can we change a ShortCutKey from within an app?
And yes you can! So, if Microsoft has forgotten any, you can add them! Here is an example:
As you can see, in this case, I didn’t just add a ShortCutKey, but I even changed the “ALT+D” to something else. And it works .. . Not sure we should all be doing this – and also not sure if everyone would do this, what would happen with conflicting shortcutkeys (although, I guess the “first of last one wins”?), but now at least, you know it’s possible!
If you want to play with Wave 2, get started here:
https://freddysblog.com/2019/07/31/preview-of-dynamics-365-business-central-2019-release-wave-2/