Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Einige Tools müssen manuell bei Power BI Desktop registriert werden. Um ein externes Tool zu registrieren, erstellen Sie eine JSON-Datei mit dem folgenden Beispielcode:
{
"name": "<tool name>",
"description": "<tool description>",
"path": "<tool executable path>",
"arguments": "<optional command line arguments>",
"iconData": "image/png;base64,<encoded png icon data>"
}
Die pbitool.json Datei enthält die folgenden Elemente:
- Name: Geben Sie einen Namen für das Tool an, der im Menüband "Externe Tools" in Power BI Desktop als Schaltflächenbeschriftung angezeigt wird.
- beschreibung: (optional) Geben Sie eine Beschreibung an, die als QuickInfo auf der Menübandschaltfläche "Externe Tools" in Power BI Desktop angezeigt wird.
- Pfad: Geben Sie den vollqualifizierten Pfad zur ausführbaren Datei des Tools an.
-
argumente: (optional) Stellen Sie eine Zeichenfolge mit Befehlszeilenargumenten bereit, mit denen die ausführbare Datei des Tools gestartet werden soll. Sie können einen der folgenden Platzhalter verwenden:
- %server%: Ersetzt durch den Servernamen und die Portnummer der lokalen Instanz von Analysis Services Tabular für importierte/DirectQuery-Datenmodelle.
- %database%: Ersetzt durch den Datenbanknamen des Modells, das in der lokalen Instanz von Analysis Services Tabular für importierte/DirectQuery-Datenmodelle gehostet wird.
- iconData: Stellen Sie Bilddaten bereit, die im Menüband "Externe Tools" in Power BI Desktop als Schaltflächensymbol gerendert werden. Die Zeichenfolge sollte gemäß der Syntax für Daten-URIs ohne das Präfix "data:" formatiert werden.
Benennen Sie die Datei "<tool name>.pbitool.json" , und platzieren Sie sie im folgenden Ordner:
%commonprogramfiles%\Microsoft Shared\Power BI Desktop\External Tools
Platzieren Sie die Dateien für 64-Bit-Umgebungen im folgenden Ordner:
- Programme (x86)\Common Files\Microsoft Shared\Power BI Desktop\External Tools
Dateien an diesem angegebenen Speicherort mit der Erweiterung .pbitool.json werden beim Starten von Power BI Desktop geladen.
Example
Die folgende Datei *.pbitool.json startet powershell.exe über das Menüband "Externe Tools" und führt ein Skript namens pbiToolsDemo.ps1aus. Das Skript übergibt den Servernamen und die Portnummer im parameter -Server und den Semantikmodellnamen im parameter -Database.
{
"version": "1.0.0",
"name": "External Tools Demo",
"description": "Launches PowerShell and runs a script that outputs server and database parameters. (Requires elevated PowerShell permissions.)",
"path": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"arguments": "C:\\pbiToolsDemo.ps1 -Server \"%server%\" -Database \"%database%\"",
"iconData": "image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsEAAA7BAbiRa+0AAAANSURBVBhXY/jH9+8/AAciAwpql7QkAAAAAElFTkSuQmCC"
}
Das entsprechende pbiToolsDemo.ps1 Skript gibt die Server- und Datenbankparameter in die Konsole aus.
[CmdletBinding()]
param
(
[Parameter(Mandatory = $true)]
[string] $Server,
[Parameter(Mandatory = $true)]
[string] $Database
)
Write-Host ""
Write-Host "Analysis Services instance: " -NoNewline
Write-Host "$Server" -ForegroundColor Yellow
Write-Host "Dataset name: " -NoNewline
Write-Host "$Database" -ForegroundColor Green
Write-Host ""
Read-Host -Prompt 'Press [Enter] to close this window'
Symboldaten-URIs
Um ein Symbol im Menüband "Externe Tools" einzuschließen, muss die pbitool.json Registrierungsdatei ein iconData-Element enthalten.
Das iconData-Element verwendet einen Daten-URI ohne das Präfix "data:" . Beispielsweise lautet der Daten-URI eines Magenta-PNG-Bilds mit einem Pixel:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsEAAA7BAbiRa+0AAAANSURBVBhXY/jH9+8/AAciAwpql7QkAAAAAElFTkSuQmCC
Entfernen Sie unbedingt das Daten: Präfix, wie im vorherigen Beispiel in pbitool.json gezeigt.
Um einen .png oder einen anderen Bilddateityp in einen Daten-URI zu konvertieren, verwenden Sie ein Onlinetool oder ein benutzerdefiniertes Tool, z. B. das im folgenden C#-Codeausschnitt gezeigte:
string ImageDataUri;
OpenFileDialog openFileDialog1 = new OpenFileDialog();
openFileDialog1.Filter = "PNG Files (.png)|*.png|All Files (*.*)|*.*";
openFileDialog1.FilterIndex = 1;
openFileDialog1.Multiselect = false;
openFileDialog1.CheckFileExists = true;
bool? userClickedOK = openFileDialog1.ShowDialog();
if (userClickedOK == true)
{
var fileName = openFileDialog1.FileName;
var sb = new StringBuilder();
sb.Append("image/")
.Append((System.IO.Path.GetExtension(fileName) ?? "png").Replace(".", ""))
.Append(";base64,")
.Append(Convert.ToBase64String(File.ReadAllBytes(fileName)));
ImageDataUri = sb.ToString();
}