With the release of Dynamics 365 Business Central 2020 release wave 1 so many new lists features that are planned to release from April 2020 through September 2020.
In this blog post, we will see about below listed Service Fundamentals features in detail.
Enable features ahead of time
Administrators can use the new Feature Management page to:
- Learn which new features and feature enhancements can be enabled ahead of time in minor updates.
- Turn individual features on and off again for all users of any environment.
- Safely try out a feature in a new browser tab without enabling the feature for all users.
- Plan an approach to testing and preparation in time for upcoming change. For example, they can test on a sandbox environment with a copy of production data before they enable a feature in production.
There are no features that you can enable ahead of time in Update 16.0 (April 2020). Features will begin to appear in the list starting from Update 16.1.
About the features listed in the Feature Management page:
- Only a subset of features releasing in minor updates are available in the page.
- Features are primarily platform changes that affect the user experience.
- Features are optional for a while, after which they’re permanently enabled in a future service update.
Ability to see current database locks
A new page called Database Locks is available in the client.
The page shows a snapshot of all database locks. Where possible, it displays details on the AL session that is causing the database lock.
Ability to see table sizes
A new page called Table Information shows the following:
- Company Name
- Table Name
- Table No.
- No. of Records
- Record Size
- Size (KB)
Information is shown for all companies for which the user has SUPER permissions.
Ability to view a list of sessions and cancel one or more of them
In the Business Central administration center, an administrator can see a list of active sessions on an environment and cancel one or more of them. All existing resources consumed by a session will also be canceled.
Performance of web service requests and reports added to Application Insights telemetry for partners
The Business Central server will emit telemetry about the execution time and timeouts of web service requests and reports.
Partners and customers can use this data to monitor their environments for performance issues caused by web service requests and reports and be more proactive in preventing these issues from occurring.
Business Central artifacts (Reports, API Pages, and Queries) now can get access to a read-only replica of the database.
The Page, Report, and Query objects have a new property called “DataAccessIntent” that can take values ReadOnly or ReadWrite. This property works as a hint for the server, which will connect to the secondary replica if possible. When a workload is executed against the replica, insert/delete/modify operations are not possible, so a new validation is introduced for ReadOnly objects. Any of these operations will throw an exception at runtime (new compile-time validation will be added in the future).
Resource limits for reports and web service calls
The Business Central server will have new settings where an administrator can set limits on the execution time for reports and SOAP web service calls. When the limit is reached, the server cancels the operation.
In Business Central online (software as a service), the default values are set by the Business Central operations team and cannot be overridden by customers or partners. In the 2020 release wave 1, the default values will be set to hours (actual values are to be determined).
For Business Central (on-premises), an administrator can control the settings in the server.
In this blog post, we will see about below listed Modern Developer Tools features in detail.
Application version for aliasing base application
Embed partners and on-premises solutions can create a parent extension named Application, versioned according to base version, and with an appropriate, unique publisher. This parent extension is mainly used as an indirection proxy, and should contain explicit dependencies to the extensions actually implementing the application. In addition, the propagateDependencies property in the app.json file should be set to true. This will expose the dependencies to any extension taking dependency on the proxy Application version.
Partners will use the Application version property in their extension’s app.json file to specify the expected application version.
In Visual Studio Code, the full set of symbol packages that make up the “application” will be pulled in when specifying an Application version in the app.json file.
An explicit dependency to Microsoft’s Base Application will take priority over the Application version, but is redirected to “application” if the Base Application is not present on the system.
ApplicationVersion only allows resolving dependencies on compile. Whether the extension is in fact compatible with the provided alias is up to the embed extension authors to ensure and test.
Camera/location AL API available in the browser
Developers can now programmatically activate the camera or get the current location coordinates through an AL-based API when Business Central is accessed through the browser. With support for both browser and apps, developers can rest assured that their scenarios light up on any form factor, as long as the user’s device and browser support those capabilities.
- Users remain in control of their privacy settings and can choose to grant or deny access to camera and location similar to other websites.
- CameraProvider.IsAvailable and LocationProvider.IsAvailable now return True if the browser and device support the capability.
- The camera provides a viewport as well as Use and Retake buttons.
- The location is returned as longitude and latitude coordinates.
Multiple variable declarations of the same type in the same line
Declare multiple variables of the same type in the same line, using a comma to separate variable names. For example, “foo, bar : Integer;”
Ability to refactor a field from a table to a table extension
Using Sync-NAVApp, a developer can move a field from a table to a table extension without the need to write upgrade code.
Use the new interface object to declare an interface name along with its methods, and apply the implements keyword along with the interface name(s) on objects that implement the interface methods.
The interface object itself does not contain any code, only signatures, and cannot itself be called from code, but must be implemented by other objects.
The compiler checks to ensure implementations adhere to assigned interfaces.
A new QuickFix CodeAction can be used to insert interface stubs, if the compiler errors on one or more interface implementations are missing.
You can declare variables as a given interface to allow passing objects that implement the interface, and then call interface implementations on the passed object in a polymorphic manner.
Look up events and insert event subscriber in code
Use the new Shift+Alt+E shortcut in the AL code editor to invoke a list of all events.
You can use type ahead to dynamically search and filter the event list
When pressing return to select an event entry, an event subscriber for the event will be inserted at the cursor position in the active AL code editor window.
Obsolete tag property
Objects that support the ObsoleteState property or Obsolete attribute today will get additional ObsoleteTag property for tracking processes and provide additional information on obsoleted objects.
Partners can choose their own scheme for what to track in ObsoleteTag, such as date or build, and it could be provided during development or internal build processes (requiring custom file patching). Developers can also search for ObsoleteTag content across all files (e.g., to get an overview of changes in a certain version).
Source of Information:
Some screenshots are taken from Business Central-What’s New for 2020 Release Wave 1 DYN784PAL – Web Conference.
Stay tuned for more information on Business Central 2020 release wave 1…!!!