Im Hintergrund des Power BI Desktop werkelt ein SQL Server Analysis Service (SSAS) Tabular um die Daten zu liefern. Man kann dies leicht im Windows Task Manger erkennen.

Doch kann man auch außerhalb des Power BI Desktop auf diesen SSAS zugreifen? Die Antwort lautet Ja. Doch ist dieser Zugriff nur so lange verfügbar, wie Power BI Desktop geöffnet ist. Aber besser als nichts. Um die Verbindung herzustellen, benötigt man die Portnummer auf dem der SSAS läuft. Ich will hier drei Möglichkeiten vorstellen, wie man an diese Information kommt.
Die interaktive Variante
Zuerst die einfachste Methode: Man kann mittels des Ressourcemonitors an die Information kommen, welcher Port verwendet wird. Zuerst öffnet man den Ressourcemonitor über Windows Startmenü und die Eingabe von resmon. Anschließend wechselt man auf die Registerkarte „Netzwerk“. Dort lassen sich unter dem Balken „Überwachungsports“ die Ports ermitteln, die für ein bestimmtes Programm benutzt werden.

Die Kommandozeilen-Variante
Die zweite Methode verwendet ein Kommandozeilen-Fenster, um an die Port-Information zu kommen. Über den Befehl
tasklist | findstr msmdsrv
kommt man an die Prozess-ID des SSAS. Anschließend kann man mit dem Befehl
netstat -ano|findstr xxx
die Portnummer ermitteln. Für die xxx muss man die Prozess-ID aus dem vorigen Befehl eintragen.
Die Powershell-Variante
Möchte man die Ermittlung des Ports mit Powershell automatisieren, kann man folgende Befehle nutzen:
$processes = (gwmi win32_process -filter 'name="msmdsrv.exe"'|where {$_.Path -ne $null}|select Handle,Name,Path) foreach ($process in $processes) {Get-NetTCPConnection -OwningProcess $process.Handle | select LocalPort, OwningProcess, @{N=’Path’; E={$process.Path}} -Unique}
Zugriff
Hat man nun den Port ermittelt, kann man mit SQL Server Management Studio (SSMS) (oder dem Tool seiner Wahl) zugreifen. Als Servertyp wählt man dort „Analysis Services“ und verbindet sich mit
<Servername>:<Portnummer>
Anschließend kann man seine DAX-Befehle im SSMS erstellen und ausführen.