Microsoft Dynamics NAV Tablet Client
Microsoft Dynamics NAV 2015 introduces a new interface called Microsoft Dynamics NAV Tablet client. The Microsoft Dynamics NAV Tablet client allows users in small and medium sized businesses to access data from a tablet. Developing for Microsoft Dynamics NAV Tablet client is very similar to developing for the Microsoft Dynamics NAV Web client using the Microsoft Dynamics NAV Development Environment.

Microsoft Dynamics NAV for Tablets
Along with Microsoft Dynamics NAV Tablet client comes the Dynamics NAV app, which is available in the Windows Store, on Google Play, and in the Apple Store.

Small Business – Tablet Profile
In Microsoft Dynamics NAV 2015, there is a new profile, the Small Business – Tablet profile. This is based on the same Role Center (9022) as the Small Business profile, but is designed for the form factor limitations related to tablets. This profile is ideal for showcasing the tablet experience using Dynamics NAV for iPad, Dynamics NAV for modern Windows, or Dynamics NAV for Android. The new profile is also ideal for developers who may use this as an example when designing for tablets.

Opening Microsoft Dynamics NAV Web client and Microsoft Dynamics NAV Tablet client with Profile ID
In Microsoft Dynamics NAV you can now open the Microsoft Dynamics NAV Web client and Microsoft Dynamics NAV Tablet client with a specified profile ID. 

Encryption
Several encryption functions have been added to enable developers to add security for encrypting and decrypting data and key management.

Compiling Objects
Performance when compiling objects in Microsoft Dynamics NAV Development Environment has been improved.

Data Upgrade
Microsoft Dynamics NAV 2015 introduces a new way of running the data upgrade logic that migrates data from the old table structure of an earlier Microsoft Dynamics NAV version to the new table structure of the current version.

The data upgrade process is now prepared and run with the help of new type of codeunit called the upgrade codeunit. The data upgrade process has been enhanced significantly to optimize the performance and provide developers with a superior tool for testing, automating, tracking progress and troubleshooting the data upgrade code. The new data upgrade approach has the following benefits and features:

  • Simplifies the upgrade environment because all steps are performed by the latest version of the Microsoft Dynamics NAV.
  • Increases the data upgrade performance because it is possible to run upgrade functions of upgrade codeunits in parallel (at the same time) and across companies.
  • Reduces the amount of code that is required to handle the data upgrade because several operations are now executed automatically by Microsoft Dynamics NAV Server.
  • Minimizes the number of manual actions that must be performed during the data upgrade, which makes the data upgrade process less error-prone.
  • Uses familiar upgrade toolkit design concepts, such as upgrade tables and upgrade functions.
  • Includes end-to-end sample Windows PowerShell scripts that perform a complete data upgrade.

Database Schema Synchronization
Microsoft Dynamics NAV 2015 introduces several improvements to the table schema synchronization process that improve performance and make it more explicit and controllable. The improvements give you with the flexibility to decide when and how the table changes are synchronized with corresponding tables in the SQL Server.

In Microsoft Dynamics NAV 2015, changes to the database schema are no longer synchronized automatically to the database when a client connects to a Microsoft Dynamics NAV Server instance. Instead, you specify when to synchronize schema changes in the development environment or the Microsoft Dynamics NAV 2015 Administration Shell. For example, when you change a table object and compile the table, you can choose to synchronize the change to the database immediately or later. In a production environment, you apply changes to the database schema by running the Sync-NAVTenantWindows PowerShell cmdlet with the Mode parameter set to the relevant synchronization mode.

The schema synchronization design provides the following features and benefits:

  • On-demand schema synchronization and monitoring
    As a developer or system administrator, from the development environment or Microsoft Dynamics NAV 2015 Administration Shell, you control when to perform the schema synchronization and how to synchronize table changes. This enables you to plan and schedule the schema synchronization on a case-by-case basis. Additionally, you can monitor the progress and state of the business (tenant) database at any time.
  • Non-blocking and increased productivity
    Schema synchronization has become more granular. You perform schema synchronization for a single table or for all tables at the same time. When one table is being synchronized, you are no longer blocked from making changes to other tables.
  • Capability to provide additional instructions in upgrade codeunits
    By using upgrade codeunits, you can provide instruction for the schema synchronization to perform additional tasks, such as automatically moving or copying data into upgrade tables, validating the table changes before applying them, or forcefully applying them when it is required.

Automatic Deployment of Microsoft .NET Framework Interoperability and Control Add-in Assemblies
Microsoft Dynamics NAV 2015 makes it easier for the system administrators to deploy client-side assemblies for .NET Framework interoperability and client control add-ins on computers that are running the Microsoft Dynamics NAV Windows client or Microsoft Dynamics NAV Development Environment. You can now install the assemblies in the Add-ins folder on the computer that is running Microsoft Dynamics NAV Server. By default, this is the C:Program FilesMicrosoft Dynamics NAV80ServiceAdd-ins folder. When an operation from the client requires an assembly, Microsoft Dynamics NAV Server automatically deploys the assembly to a temporary folder on the client computer.

For example, if Microsoft Dynamics NAV Windows client opens a page that contains a control add-in, Microsoft Dynamics NAV Server will find the control add-in assembly by name in the Add-ins folder. Then, it deploys the assembly to the client computer in the %TEMP%Microsoft Dynamics NAVAdd-Ins folder of the user who is running the client. Subsequently, the deployed assembly will be used whenever the page is opened.

Similarly, if the development environment requires a control add-in, for example, when you compile an object, then the control add-in assembly will be deployed by the Microsoft Dynamics NAV Server to the local temporary folder for the current user on the computer that is running the development environment.

Microsoft Dynamics NAV Best Practice Analyzer Includes Single Sign-on Verification
The Best Practice Analyzer includes a scan option that verifies the configuration of the Microsoft Dynamics NAV deployment for single sign-on with Office 365. The scan checks that the Microsoft Dynamics NAV Server and Microsoft Dynamics NAV web server instances are configured correctly to authenticate Microsoft Dynamics NAV users with Windows Azure Active Directory and an Office 365 account. The scan returns a list of any issues that are found and provides links to information about how to resolve the issues. For more information, see the Help that is available in the navbpa.chm file that is provided with the Best Practice Analyzer on the Microsoft Dynamics NAV 2015 installation media.

Help Server Configuration
You can now configure Help Server to use the “https” protocol in addition to “http.” In addition, you can specify a subpath in the url, which can be useful in organizing your Help content. To enable either of these scenarios, include “http” in the beginning of your Help Server setting.

UI Elements Removal
Depending on the setting in the UI Elements Removal field in the Microsoft Dynamics NAV Server Administration tool, only UI elements on objects in the license or on objects that the user has permissions for will appear in the user interface.

New Windows PowerShell Cmdlets
New Windows PowerShell cmdlets have been introduced to aid in merge operations, administration tasks, and for importing and exporting data.

Cmdlets for Merging Application Objects
Microsoft Dynamics NAV includes Windows PowerShell cmdlets that help you compare and merge application objects. You can use Microsoft Dynamics NAV cmdlets to modify application object source files in the Microsoft Dynamics NAV 2015 Development Shell, or by importing the Microsoft.Dynamics.NAV.Model.Tools.psd1 module into the Windows PowerShell Integrated Scripting Environment (ISE). The application merge utilities that are available in the Microsoft Dynamics NAV 2015 Development Shell install when you choose the Developer option in Microsoft Dynamics NAV 2015 Setup, or if you add the development environment to another installation option.

Cmdlets for Handling Captions
You can use this set of cmdlets to update captions in application object files.

Cmdlet

Description

Export-NAVApplicationObjectLanguage

Exports captions from the specified text files with Microsoft Dynamics NAV application objects. The captions are exported to text files.

Import-NAVApplicationObjectLanguage

Imports strings in the specified language into text files that contain Microsoft Dynamics NAV application objects.

Join-NAVApplicationObjectLanguageFile

Combines multiple text files with captions for Microsoft Dynamics NAV application objects into one text file.

Remove-NAVApplicationObjectLanguage

Deletes captions in the specified language from Microsoft Dynamics NAV application objects.

Split-NAVApplicationObjectLanguageFile

Splits a text file that contains multilanguage captions for two or more application objects into separate text files for each application object.

Test-NAVApplicationObjectLanguageFile

Tests captions in Microsoft Dynamics NAV application objects to test to validate if they have translated strings for the specified languages.

Cmdlets for Administering Office 365 Setup
With Microsoft Dynamics NAV 2015, several new PowerShell cmdlets are available to automate processes around setting up single sign-on for Office 365 and creating test certificates. The following cmdlets have been added.

Cmdlet

Description

Set-NavSingleSignOnWithOffice365

Performs configuration changes to support single sign-on with Office 365 for Microsoft Dynamics NAV Windows client and Microsoft Dynamics NAV Web client.

New-NavSelfSignedCertificate

Facilitates creating self-signed certificates that are used to protect the communication between a NAV Service and a Microsoft Dynamics NAV Web client.

Cmdlets for Exporting and Importing Data using .navdata Files
You can export a company from a Microsoft Dynamics NAV database and import it into another database, and you can export and import other types of data such as global data, application data, and application objects. In earlier versions of Microsoft Dynamics NAV, you exported and imported this type of data as part of backing up and restoring databases. In Microsoft Dynamics NAV 2015, you can do this by using Windows PowerShell cmdlets, or by using the Microsoft Dynamics NAV Windows client.

Microsoft Dynamics NAV includes three new Windows PowerShell cmdlets that help you automate processes around exporting companies and other data to .navdata files and importing the data into another database. The following cmdlets have been added in Microsoft Dynamics NAV 2015.

Cmdlet

Description

Export-NAVData

Exports data from a Microsoft Dynamics NAV database. You can export company-specific data, and you can choose to include global data, application data, or application objects.

Import-NAVData

Imports data into a Microsoft Dynamics NAV database from a file. You can import all data in the file, or you can choose to include specific companies, global data, application data, or application objects.

You can only import an application into an empty database.

Get-NAVDataFile

Gets information from a file that has been exported from a Microsoft Dynamics NAV database. The extracted information includes the types of data that the file contains and any company names.

Cmdlets for Upgrading Data in the SQL Server Dtabase
Microsoft Dynamics NAV 2015 Administration Shell includes the following cmdlets for upgrading data in the SQL Server database when the table schema changes.

Cmdlet

Description

Start-NAVDataUpgrade

Starts the data upgrade process for upgrading the data in the business (tenant) database.

Resume-NAVDataUpgrade

Resumes a data upgrade process that has been suspended because of an error.

Stop-NAVDataUpgrade

Stops a data upgrade process.

Get-NAVDataUpgrade

Gets information about the data upgrade process that is currently running or the last completed data upgrade process.

Report Layouts
Microsoft Dynamics NAV 2015 includes the following new features for creating report layouts.

Word Report Layouts
In earlier versions of Microsoft Dynamics NAV, you could only design the layout of reports by using Visual Studio Report Designer or Microsoft SQL Server Report Builder. With Microsoft Dynamics NAV 2015, you can design report layouts by using Microsoft Word 2013. Word report layouts are built on Word custom XML parts that dynamically map a report dataset into a report at runtime.

Customizing and Managing Report Layouts from the Microsoft Dynamics NAV Clients
You can customize Word and RDLC report layouts from the Microsoft Dynamics NAV Windows client and Microsoft Dynamics NAV Web client by using Word 2013 and SQL Server Report Builder, respectively. This enables users to make variations of layouts, and then use the variations when they view and print reports as needed.

New Report Functions
The following functions have been added in Microsoft Dynamics NAV 2015 to support new report layout implementation.

Function

Description

SAVEASXML

Saves a report as an .xml file on the computer that is running Microsoft Dynamics NAV Server.

WORDXMLPART

Returns the report data structure as structured XML that is compatible with Word Custom XML parts.

WORDLAYOUT

Gets the Word report layout that is used on a report and returns it as a data stream.

RDLCLAYOUT

Gets the RDLC layout that is used on a report and returns it as a data stream.

HASCUSTOMLAYOUT

A function in codeunit 1 that determines whether a report has an active custom Word layout or RDLC layout at run time.

MERGEDOCUMENT

A function in codeunit 1 that loads the custom Word layout that is active on report and displays it in the targeted format, such as Word or PDF.

REPORTGETCUSTOMRDLC

A function in codeunit 1 that loads the proper custom RDLC layout for a report at run time and uses the layout to render the report.

Enhanced Cues
Cues appear as tiles in the Microsoft Dynamics NAV client that display business data and key performance indicators (KPIs) on Role Centers. Microsoft Dynamics NAV 2015 includes the following new features that expand the functionality of Cues and enable you to customize their appearance.

Colored Indicators
You can configure the Cue to display a bar along its upper border that changes color based on the data in the cue.

New Images
You can change the image that displays on the Cue or set up the Cue without an image. There are several images to choose from.

Support for Normal Fields
In earlier Microsoft Dynamics NAV versions, you could only set up Cues based on FlowFields. In Microsoft Dynamics NAV 2015, you can also use fields that have the FieldClass Normal. This extends your choices for the source of Cue data, such as using query objects.

Support for Decimal Data Type
In earlier Microsoft Dynamics NAV versions, you could only set up Cues to display on Integer data types. In Microsoft Dynamics NAV 2015, you can also use a Decimal data type. This gives you data aggregation possibilities in addition to COUNT, such as SUM, MAX, MIN, and AVG.

Custom Formatting of Data
Using the AutoFormatType and AutoFormatExpr properties, you customize the format of the value in a Cue. For example, you can set the number of decimal places, or place a symbol such as a currency sign or percentage sign before or after a value.

New Properties and Controls for Pages

ShowMandatory Property
With Microsoft Dynamics NAV a new property called ShowMandatory has been introduced on page fields. The ShowMandatory property is set on page fields and marks the field with a red asterisk on the UI.

UpdatePropagation Property
In Microsoft Dynamics NAV a new property called UpdatePropagation is added to page fields. The introduction of this property makes it possible to update a parent page from a subpage automatically without using the page Refresh button.

Scope Property
In Microsoft Dynamics NAV a new property called Scope is added to page actions. The introduction of this property specifies the scope of an action to be either page-specific, or specific to a repeater control.

FixedLayout Control
Microsoft Dynamics NAV now supports using the FixedLayout control on the Microsoft Dynamics NAV Web client.

Development Environment Enhancements

Auto-generating of C/AL variable and parameter names for complex data types
In the C/AL Globals and C/AL Locals windows, when you add a variable or parameter that has the data type Codeunit, Page, Testpage, Report, Query, or XMLport, the Name field will be automatically generated just by setting the DataType and SubType fields. The generated name is based on the name that is assigned to the associated Microsoft Dynamics NAV object. You can change the generated name as you want.

Commenting and uncommenting multiple lines of C/AL Code
The development environment includes the Comment Selection and Uncomment Selection options, which enable you to comment and uncomment multiple lines of C/AL code with the click of a button.

Non-default property values are bold
Microsoft Dynamics NAV objects have many properties that you can view and set from the Properties window in the development environment. Property values that are not the default value of the property appear as bold in the Properties window.

C/AL functions are local by default
Unlike in earlier Microsoft Dynamics NAV versions, now when you create a function in the C/AL code of a Microsoft Dynamics NAV object, such as a codeunit or page, the function is set as a local function by default. By default, the Local property of new functions is now set to Yes instead of to No. Being local means that the function is not accessible outside the object in which is it defined.

New Development Environment Commands
The following commands have been added to the finsql.exe, which enables you to perform tasks at a command prompt:

Command

Task

BuildVirtualMetadata

Regenerates C# and metadata information for virtual tables in a specified database.

DeleteObjects

Delete Microsoft Dynamics NAV objects from a specified database.

CreateLanguage

Create language captions on Microsoft Dynamics NAV objects in a specified database.

ExportLangModule

Export a Microsoft Dynamics NAV language module from a specified database.

ImportLangModule

Import a Microsoft Dynamics NAV language module to a specified database.

ExportTranslate

Export text strings from a specified database to a file.

ImportTranslate

Import text strings from a file to a specified database.

New C/AL Functions

Function

Description

GETLASTERROROBJECT

A system function for error handling that gets the last System.Exception object that occurred.

EXPORTDATA

Exports data from the Microsoft Dynamics NAV database to a file. The data is not deleted from the database.

IMPORTDATA

Imports data from a file that has been exported from a Microsoft Dynamics NAV database.

DATAFILEINFORMATION

Specifies data from a file that has been exported from a Microsoft Dynamics NAV database.

EXECUTE

Runs a report in the preview or processing only mode with a given set of parameters without using a request page.

PRINT

Prints a report with a given set of parameters without using a request page.

RUNREQUESTPAGE

Runs the request page for the report, but the report is not run.

SAVEAS

Runs a report without using a request page and saves the result as a .pdf, .xlsx, .docx, or.xml type file.