Link Search Menu Expand Document

Business Central Powershell

Table of contents

  1. Modules Management
    1. Import Modules
  2. Used Variables
  3. Extensions Management
    1. Get all extensions list
    2. Publish extension
    3. Install extension
    4. Uninstall extension
    5. Uninstall all extensions at once
    6. Unpublish extensions
  4. Objects Exporting
    1. Export all objects from NAV Database to text file
    2. Export filtered objects
    3. Exports all objects and split into single-object files

Modules Management

Import Modules

Import-Module “C:\Program Files\Microsoft Dynamics 365 Business Central\140\Service\NAVAdminTool.ps1” -force

Import-Module “C:\Program Files (x86)\Microsoft Dynamics 365 Business Central\140\RoleTailored Client\NAVModelTools.ps1” -force

Used Variables

$serverInstance = “PT_BC_CU2”

$extensionName = “Extension1”

$extensionVersion = “1.0.0.0”

Extensions Management

Get all extensions list

Get-NAVAppInfo -ServerInstance -Tenant

Skip the tenant parameter to see all tenant extensions.

Get-NAVAppInfo -ServerInstance $serverInstance

Publish extension

Publish-NAVApp -ServerInstance -Path

Publish-NAVApp -ServerInstance $serverInstance -Path 'C:\Temp\navapp.app'

Install extension

Install-NAVApp -ServerInstance -Name -Version

Install-NAVApp -ServerInstance $serverInstance -Name $extensionName -Version $extensionVersion

Uninstall extension

Uninstall-NAVApp -ServerInstance -Name -Version

Uninstall-NAVApp -ServerInstance $serverInstance -Name $extensionName -Version $extensionVersion

Uninstall all extensions at once

Get-NAVAppInfo -ServerInstance $serverInstance -Tenant default | % { Uninstall-NAVApp -ServerInstance $serverInstance -Name $_.Name -Version $_.Version } 

Unpublish extensions

Unpublish-NAVApp -ServerInstance -Name -Version

Unpublish-NAVApp -ServerInstance $serverInstance -Name $extensionName -Version $extensionVersion 

Objects Exporting

Export all objects from NAV Database to text file

Export-NAVApplicationObject "" -DatabaseServer -ExportTxtSkipUnlicensed

Example: Exports all objects from NAV2015AP-APP-TEST to NAV2015-All-Objects.txt

Export-NAVApplicationObject NAV2015AP-APP-TEST “E:\NAV2015-Objects\All-Objs\NAV2015-All-Objects.txt" -DatabaseServer MYP-RPAIVA\SQL2017 -ExportTxtSkipUnlicensed

Export filtered objects

Export-NAVApplicationObject "" -Filter '' -DatabaseServer -ExportTxtSkipUnlicensed

Example: Exports codeunits 80..84 from the NAV2015AP-APP-TEST to COD80-84.txt

Export-NAVApplicationObject NAV2015AP-APP-TEST “E:\NAV2015-Objects\All-Objs\NAV2015-All-Objects.txt" -Filter 'Type=Codeunit;Id=80..84' -DatabaseServer MYP-RPAIVA\SQL2017 -ExportTxtSkipUnlicensed

Exports all objects and split into single-object files

Export-NAVApplicationObject “" -Filter '' -DatabaseServer -DatabaseName -ExportTxtSkipUnlicensed | Split-NAVApplicationObjectFile -Destination ""

Example: Exports all objects and split V2015AP-APP-TEST* to Splitted-Objs folder

Export-NAVApplicationObject "E:\NAV2015-Objects\All-Objs\NAV2015-All-Objects.txt" -DatabaseServer MYP-RPAIVA\SQL2017 -DatabaseName NAV2015AP-APP-TEST -ExportTxtSkipUnlicensed | Split-NAVApplicationObjectFile -Destination "E:\NAV2015-Objects\Splitted-Objs"