Install Product Engineering apps on-premises
- Make sure a Dynamics 365 Business Central installation is up and running, including a database. The example below shows how to create a CRONUS demo environment.
- For example: Download Update 21.5 for Dynamics 365 Business Central 2022 Release Wave 2 from Official Microsoft Download Center
- Install your partner license, replacing the standard Cronus.bclicense.
- Download the latest Quality Management package from:
- Open PowerShell ISE and run as Administrator.
- Import the QM scripts in PowerShell and run the following sections.
The script below is based on Quality Management as an example. Replace the app names where 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
}
Result:
Once completed, the following entries appear in Extension Management (based on the installed apps):
| Name | Publisher | Version | Is Installed | Published As |
|---|---|---|---|---|
| STAEDEAN-Common | STAEDEAN | v.19.0.83403.0 | v | Global |
| PE-Quality Management | STAEDEAN | v.21.0.86838.0 | v | Global |
| PE-Engineering Change Management | STAEDEAN | v.22.0.93690.0 | v | Global |
| STAEDEAN-Lifecycle Base | STAEDEAN | v.23.0.97743.0 | v | Global |
- To access the QM functionality, change to the QM Portal role center.
- To access the ECM functionality, change to the PE Engineering Changes Manager role center.
- Lifecycle Base has no separate role center: type Lifecycle in Search.