How to install Product Engineering apps on-premises

  1. Make sure to have a Dynamics 365 Business Central installation up and running including a database. The below example shows how to create a CRONUS demo environment.
  2. Download the latest Quality Management package from:
  3. Open PowerShell ISE and run as Administrator.
    • Import the QM scripts in PowerShell and run the following sections

Note: The script below is based on Quality Management as example replace with the other apps names where and when applicable: TI-Engineering Changes, TI-Lifecycle Base

Install the NAV Modules:

Import-Module "C:\Program Files\Microsoft Dynamics 365 Business Central\220\Service\Microsoft.Dynamics.Nav.Management.psm1"
Import-Module "C:\Program Files\Microsoft Dynamics 365 Business Central\220\Service\NavAdminTool.ps1"

Update the variables (replace parts as required):

$apps = "TI-Common,Quality Management" 
$serverInstance = 'BC215'
$buildArtifactFolder = "C:\IEMOnPrem\21.4.84356.0"
$appsSplit = $apps.Split(',')
$i = $appsSplit.Count 

When updating an existing installation, first uninstall the extensions:

Do{
    $i--
  Write-Host "Uninstall & Unpublish $($appsSplit[$i])"

  $installedAppVersion = Get-NAVAppInfo -ServerInstance $serverInstance|Where-Object { $_.Name -eq $appsSplit[$i] }|%{"$($_.Version.Major).$($_.Version.Minor).$($_.Version.Build).$($_.Version.Revision)"}
  Uninstall-NAVApp -Name $appsSplit[$i] -ServerInstance $serverInstance -Version $installedAppVersion
  Unpublish-NAVApp -Name $appsSplit[$i] -ServerInstance $serverInstance -Version $installedAppVersion 
}
Until($i -eq 0) 

Install, or update, the extensions:

$apps.Split(',') | ForEach-Object {
    $appName = $_
    $AllAppFiles = Get-ChildItem -Path $buildArtifactFolder -Filter "*.app" -Recurse
    foreach ($AllAppFile in $AllAppFiles) {if ((Get-NAVAppInfo -Path $AllAppFile.FullName |Select-Object -expand Name) -eq $appName){$appFileName = $AllAppFile.FullName} }
    Write-Host "Install $_ ($appFileName)"
    $newAppVersion = Get-NAVAppInfo -Path $appFileName|%{"$($_.Version.Major).$($_.Version.Minor).$($_.Version.Build).$($_.Version.Revision)"}

    # for initial install use Install-NAVApp, for updates use Start-NAVAppDataUpgrade
    Publish-NAVApp -Path $appFileName -ServerInstance $serverInstance
    Sync-NAVApp -Name $appName -ServerInstance $serverInstance -Version $newAppVersion
    #Start-NAVAppDataUpgrade -Name $appName -ServerInstance $serverInstance -Version $newAppVersion
    Install-NAVApp -Name $appName -ServerInstance $serverInstance -Version $newAppVersion
}

Once completed you must find the following entries in extension management (based on the installed apps):

Name Publisher Version Is Installed Published As
TI-Common To-Increase B.V. v.19.0.83403.0 v Global
Quality Management To-Increase B.V. v.21.0.86838.0 v Global
TI-Engineering Changes To-Increase B.V. v.22.0.93690.0 v Global
TI-Lifecycle Base To-Increase B.V. v.23.0.97743.0 v Global

For access to the QM functionality change to the QM Portal role center.
For access to the ECM functionality change to the PE Engineering Changes Manager role center.
For Lifecycle Base is no separate role center, type Lifecycle in Search