Table Field Groups: Dropdown and Brick

A table can optionally have Field Groups. In NAV 2016 you have two types of Field Groups:

– Dropdown: determines which fields will be displayed when a table lookup will occur in the Windows Client
– Brick: the layout will change dynamically based on the type of device you are using (tablet client, phone client, web client). Want to know more? Please check the MSDN at https://msdn.microsoft.com/en-us/library/mt299400(v=nav.90).aspx

When there are no Field Groups defined, the first two fields of the primary key will be displayed and the first text field when the table will be ‘looked up’ in a DropDown.

Table Basics and the TableType Property

In this post I will tell something about tables, especially about the basics and a new property that has been introduced in NAV 2016, the Tabletype property.

The basics:

– Every table has properties and triggers
– Every table field also has properties and triggers
– Every table has keys and field groups
– Keys also have properties

So let’s check the properties of a table. To do that, go to the object designer and edit a table by clicking the Design button. After clicking the Table Designer open. Now press Shift + F4 to see the properties of a field. In order to view the table properties go to an empty line and press Shift + F4. You will now see a list of table properties. For example:

Enable: enable or disable the field
Editable: configure the field to be editable
NotBlank: forces the user to specify an entry in this field

In Microsoft Dynamics NAV 2016 you can define two types of external tables: Microsoft Dynamics CRM tables and SQL Server tables. You create an external table by specifying the type of in the TableType property. On MSDN you can find more information about this functionality ‘TableType Property

There are four table triggers:

– OnInsert
– OnDelete
– OnRename
– OnModify

There are two field triggers
– OnValidate
– OnLookup

Keys
A Primary Key is used to make each record unique in a table. Of course a table can have more keys. The first key is automatically the primary key. A key can consist of 1 or more fields. The second, third etc. are secondary keys.

Management Cmdlets for Microsoft Dynamics NAV 2016

Microsoft Dynamics NAV 2016 (build 42815) comes with a module called ‘Microsoft.Dynamics.Nav.Management’. When you import this module you will get the ability to run the following ¬†Powershell Cmdlets:

Copy-NAVCompany
 Dismount-NAVTenant
 Export-NAVApplication
 Export-NAVData
 Export-NAVEncryptionKey
 Export-NAVServerLicenseInformation
 Get-NAVAddIn
 Get-NAVAppInfo
 Get-NAVApplication
 Get-NAVAppTenant
 Get-NAVCompany
 Get-NAVDataFile
 Get-NAVDataUpgrade
 Get-NAVServerConfiguration
 Get-NAVServerInstance
 Get-NAVServerPermission
 Get-NAVServerPermissionSet
 Get-NAVServerSession
 Get-NAVServerUser
 Get-NAVServerUserPermissionSet
 Get-NAVTableConnection
 Get-NAVTenant
 Get-NAVWebServerInstance
 Get-NAVWebService
 Import-NAVData
 Import-NAVEncryptionKey
 Import-NAVServerLicense
 Install-NAVApp
 Invoke-NAVCodeunit
 Mount-NAVApplication
 Mount-NAVTenant
 New-NAVAddIn
 New-NAVCompany
 New-NAVDatabase
 New-NAVEncryptionKey
 New-NAVServerConfiguration
 New-NAVServerInstance
 New-NAVServerPermission
 New-NAVServerPermissionSet
 New-NAVServerUser
 New-NAVServerUserPermissionSet
 New-NAVTableConnection
 New-NAVWebServerInstance
 New-NAVWebService
 Publish-NAVApp
 Remove-NAVAddIn
 Remove-NAVApplication
 Remove-NAVCompany
 Remove-NAVServerInstance
 Remove-NAVServerPermission
 Remove-NAVServerPermissionSet
 Remove-NAVServerSession
 Remove-NAVServerUser
 Remove-NAVServerUserPermissionSet
 Remove-NAVTableConnection
 Remove-NAVWebServerInstance
 Remove-NAVWebService
 Rename-NAVCompany
 Repair-NAVApp
 Resume-NAVDataUpgrade
 Set-NAVAddIn
 Set-NAVServerConfiguration
 Set-NAVServerInstance
 Set-NAVServerPermission
 Set-NAVServerPermissionSet
 Set-NAVServerUser
 Set-NAVWebServerInstanceConfiguration
 Start-NAVDataUpgrade
 Stop-NAVDataUpgrade
 Sync-NAVTenant
 Uninstall-NAVApp
 Unpublish-NAVApp

I will focus on specific NAV Cmdlets in future posts so stay tuned!