Κοινή χρήση μέσω


Καταχώρηση εξωτερικού εργαλείου

Ορισμένα εργαλεία πρέπει να καταχωρούνται με μη αυτόματο τρόπο με το Power BI Desktop. Για να καταχωρήσετε ένα εξωτερικό εργαλείο, δημιουργήστε ένα αρχείο JSON με το παρακάτω παράδειγμα κώδικα:

{
    "name": "<tool name>",
    "description": "<tool description>",
    "path": "<tool executable path>",
    "arguments": "<optional command line arguments>",
    "iconData": "image/png;base64,<encoded png icon data>"
}

Το αρχείο pbitool.json περιλαμβάνει τα ακόλουθα στοιχεία:

  • name: Δώστε ένα όνομα για το εργαλείο, το οποίο θα εμφανίζεται ως λεζάντα κουμπιού στην κορδέλα Εξωτερικά εργαλεία εντός του Power BI Desktop.
  • description: (προαιρετικό) Δώστε μια περιγραφή, η οποία θα εμφανίζεται ως συμβουλή εργαλείου στο κουμπί κορδέλας Εξωτερικά εργαλεία εντός του Power BI Desktop.
  • path: Εισαγάγετε την πλήρως προσδιορισμένη διαδρομή προς το εκτελέσιμο αρχείο του εργαλείου.
  • arguments: (προαιρετικό) Δώστε μια συμβολοσειρά ορισμάτων γραμμής εντολών με την οποία θα πρέπει να εκκινηθεί το εκτελέσιμο αρχείο του εργαλείου. Μπορείτε να χρησιμοποιήσετε οποιοδήποτε από τα παρακάτω σύμβολα κράτησης θέσης:
    • %server%: Αντικαταστάθηκε με το όνομα διακομιστή και τον αριθμό θύρας της τοπικής παρουσίας των Υπηρεσιών ανάλυσης σε μορφή πίνακα για μοντέλα δεδομένων που έχουν εισαχθεί/DirectQuery.
    • %database%: Αντικαταστάθηκε με το όνομα βάσης δεδομένων του μοντέλου που φιλοξενείται στην τοπική παρουσία των Υπηρεσιών ανάλυσης σε μορφή πίνακα για μοντέλα δεδομένων που έχουν εισαχθεί/DirectQuery.
  • iconData: Εισαγάγετε δεδομένα εικόνας, τα οποία θα αποδοθούν ως εικονίδιο κουμπιού στην κορδέλα Εξωτερικά εργαλεία εντός του Power BI Desktop. Η συμβολοσειρά πρέπει να μορφοποιηθεί σύμφωνα με τη σύνταξη για τα URIs δεδομένων χωρίς το πρόθεμα "data:".

Ονομάστε το αρχείο "<tool name>.pbitool.json" και τοποθετήστε το στον ακόλουθο φάκελο:

  • %commonprogramfiles%\Microsoft Shared\Power BI Desktop\External Tools

Για περιβάλλοντα 64 bit, τοποθετήστε τα αρχεία στον ακόλουθο φάκελο:

  • Program Files (x86)\Common Files\Microsoft Shared\Power BI Desktop\External Tools

Τα αρχεία σε αυτή την καθορισμένη θέση με την επέκταση .pbitool.json φορτώνονται από το Power BI Desktop κατά την εκκίνηση.

Παράδειγμα

Το ακόλουθο αρχείο *.pbitool.json εκκινεί το powershell.exe από την κορδέλα Εξωτερικά εργαλεία και εκτελεί μια δέσμη ενεργειών με την ονομασία pbiToolsDemo.ps1. Η δέσμη ενεργειών διαβιβάζει το όνομα διακομιστή και τον αριθμό θύρας στην παράμετρο -Server και το όνομα μοντέλου σημασιολογίας στην παράμετρο -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" 
} 

Η αντίστοιχη δέσμη ενεργειών pbiToolsDemo.ps1 εξάγει τις παραμέτρους διακομιστή και βάσης δεδομένων στην κονσόλα.

[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'  

Screenshot of PowerShell console output created from the example external tool.

Εικονίδιο URIs δεδομένων

Για να συμπεριλάβετε ένα εικονίδιο στην κορδέλα Εξωτερικά εργαλεία, το αρχείο καταχώρησης pbitool.json πρέπει να περιλαμβάνει ένα εικονίδιοΣτοιχείο δεδομένων.

Screenshot of the external tools ribbon with the tool icons.

Το εικονίδιοΣτοιχείο δεδομένων λαμβάνει ένα URI δεδομένων χωρίς τα δεδομένα: πρόθεμα. Για παράδειγμα, το URI δεδομένων μιας εικόνας ματζέντα png ενός pixel είναι:

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsEAAA7BAbiRa+0AAAANSURBVBhXY/jH9+8/AAciAwpql7QkAAAAAElFTkSuQmCC

Βεβαιωθείτε ότι έχετε καταργήσει τα δεδομένα: πρόθεμα, όπως φαίνεται στο προηγούμενο παράδειγμα του pbitool.json.

Για να μετατρέψετε ένα .png ή άλλο τύπο αρχείου εικόνας σε URI δεδομένων, χρησιμοποιήστε ένα online εργαλείο ή ένα προσαρμοσμένο εργαλείο, όπως αυτό που εμφανίζεται στο ακόλουθο τμήμα κώδικα C#:

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(); 
}