Import-ALOpsNavManagementDlls.ps1

function Import-ALOpsNavManagementDlls()
{
    param(
        [string] $ServerInstance
    )

    Write-Host "*** Import NAV/BC Management DLL's"
        
    $ServiceFolder = ""
    if ([string]::IsNullOrEmpty($ServerInstance)){
        Write-Host "*** ServiceTier not specified, loading default assemblies."
        $ServiceFolder = "C:\Program Files\Microsoft Dynamics*\*\Service"
    } else {
        Write-Host "*** Loading assemblies for ServiceTier [$($ServerInstance)]."
        $ServiceFolder = Get-BCServicePath -ServerInstance $ServerInstance
        Write-Host "*** Loading assemblies from: [$ServiceFolder]"        
    }    

    $Resolved = Get-ALOpsBCManagementDlls -SearchPath $ServiceFolder
    if ($null -eq $Resolved.ManagementDll){
        Write-Error -Message "Business Central management module not found under [$($ServiceFolder)]. BC 29 and later ship the module in the Service\Admin folder."
    }
    Write-Host "*** Load module [$($Resolved.ManagementDll.Name)]"
    Import-Module "$($Resolved.ManagementDll.FullName)" -DisableNameChecking -Verbose:$false

    if ($null -eq $Resolved.AppsManagementDll){
        Write-Host "*** BC App Management module: not available (cmdlets are part of the management module)"
    } else {
        Write-Host "*** Load module [$($Resolved.AppsManagementDll.Name)]"
        Import-Module "$($Resolved.AppsManagementDll.FullName)" -DisableNameChecking -Verbose:$false
    }
}