functions/common/Import-BcManagement.ps1

function Import-BcManagement {
<#
.SYNOPSIS
⚠️ Diese Funktion ist veraltet und wird zukünftig durch 'Import-DynamicsNavModule' ersetzt.
 
.DESCRIPTION
Importiert die PowerShell-Module 'Microsoft.Dynamics.Nav.Management.dll' und 'NAVWebClientManagement.psm1'
basierend auf der installierten Business Central-Version.
 
Diese Funktion wird durch 'Import-DynamicsNavModule' ersetzt, die eine flexiblere und robustere Modul-Erkennung bietet.
 
.PARAMETER MajorVersion
Die Major-Version der installierten Business Central-Instanz (z. B. 14, 20, 24).
 
.OUTPUTS
Pfad der importierten Moduldateien (falls erfolgreich).
 
.EXAMPLE
Import-BcManagement -MajorVersion 20
 
.Notes
Diese Funktion ist veraltet. Verwende stattdessen:
    Import-DynamicsNavModule -PlatformVersion '200' -ModuleType 'Management'
#>


    [CmdletBinding()]
    param (
        [Parameter()]
        [int]$MajorVersion
    )

    Write-Warning "⚠️ 'Import-BcManagement' ist veraltet und wird demnächst entfernt. Bitte verwende stattdessen 'Import-DynamicsNavModule'."

    if ($BcInstallationProperty = Get-BcInstallationProperty -MajorVersion $MajorVersion -Component Service)
    {
        $BcManagementPath = (Join-Path $BcInstallationProperty.Path 'Management')
        $MicrosoftDynamicsNavManagementFilePath = (Join-Path $BcManagementPath 'Microsoft.Dynamics.Nav.Management.dll')
        if (Test-Path -Path $MicrosoftDynamicsNavManagementFilePath -PathType Leaf)
        {
            Write-Information 'Import Microsoft.Dynamics.Nav.Management.dll'
            Write-Information $MicrosoftDynamicsNavManagementFilePath
            Import-Module "$($MicrosoftDynamicsNavManagementFilePath)" -NoClobber
            Write-Output "$($MicrosoftDynamicsNavManagementFilePath)"
        }
        else
        {
            Write-Warning 'Business Central Service Management Module not found (not installed?)'
        }
    }
    else
    {    
        Write-Warning 'BcInstallationProperty not found (not installed?)'
    }

    if ($BcInstallationProperty = Get-BcInstallationProperty -MajorVersion $MajorVersion -Component WebClient)
    {
        $NAVWebClientManagementPath = (Join-Path $BcInstallationProperty.Path 'Modules\NAVWebClientManagement')
        $NAVWebClientManagementFilePath = (Join-Path $NAVWebClientManagementPath 'NAVWebClientManagement.psm1')
        if (Test-Path -Path $NAVWebClientManagementFilePath -PathType Leaf)
        {
            Write-Information 'Import NAVWebClientManagement.psm1'
            Write-Information $NAVWebClientManagementFilePath
            Import-Module "$($NAVWebClientManagementFilePath)"
            Write-Output "$($NAVWebClientManagementFilePath)"
        }
        else
        {
            Write-Warning 'Business Central Web Client Management Module not found (not installed?)'
        }
    }
    else
    {    
        Write-Warning 'BcInstallationProperty not found (not installed?)'
    }
}