Rekisteröi ulkoinen työkalu

Jotkin työkalut on rekisteröitävä manuaalisesti Power BI Desktop. Voit rekisteröidä ulkoisen työkalun luomalla JSON-tiedoston seuraavilla:

{
    "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-tiedosto sisältää seuraavat elementit:

  • name: Anna työkalun nimi, joka näkyy painikkeen kuvatekstinä Power BI Desktopin Ulkoiset työkalut -valintanauhassa.
  • description: (valinnainen) Anna kuvaus, joka näkyy Power BI Desktopin Ulkoiset työkalut -valintanauhassa työkaluvihjeenä.
  • path: Anna työkalun suoritettavan tiedoston täydellinen polku.
  • arguments: (valinnainen) Anna komentoriviargumenttien merkkijono, joita käyttämällä työkalun suoritettava tiedosto tulisi käynnistää. Voit käyttää mitä tahansa seuraavista paikkamerkeistä:
    • %server%: Korvataan paikallisen Analysis Services -taulukon esiintymän palvelinnimellä ja porttinumerolla tuonti- ja DirectQuery-tietomalleja varten.
    • %database%: Korvataan paikallisen Analysis Services -taulukon esiintymässä isännöitävän tietokannan nimellä tuonti- ja DirectQuery-tietomalleja varten.
  • iconData: Anna kuvatiedot, jotka hahmonnetaan painikekuvakkeena Power BI Desktopin Ulkoiset työkalut -valintanauhassa. Merkkijono on muotoiltava data-URI-syntaksin mukaan ilman ”data:”-etuliitettä.

Nimeä tiedosto "<tool name>.pbitool.json" ja sijoita se seuraavaan kansioon:

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

64-bittisissä ympäristöissä sijoita tiedostot seuraavaan kansioon:

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

Määritetyssä sijainnissa olevat tiedostot, joiden tunniste on .pbitool.json, ladataan Power BI Desktopiin sen käynnistyessä.

Esimerkki

Seuraava *.pbitool.json-tiedosto käynnistyy powershell.exe Ulkoiset työkalut -valintanauhasta ja suorittaa komentosarjan nimeltä pbiToolsDemo.ps1 välittämällä palvelimen nimen ja portin numeron -Server-parametrissa ja tietojoukon nimen -Database-parametrissa.

{ 
    "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" 
} 

Vastaava pbiToolsDemo.ps1-komentosarja tulostaa Palvelin- ja Tietokanta-parametrit konsoliin.

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

PowerShell console output

Kuvaketietojen URI-osoitteet

Jos haluat sisällyttää kuvakkeen Ulkoiset työkalut -valintanauhaan, pbitool.json-rekisteröintitiedostossa on oltava kuvakeTieto-elementti.

External tools ribbon with tool icons

IconData-elementti ottaa tietojen URI:n ilman tietoja: etuliite. Esimerkiksi yhden pikselin magenta png -kuvan tietojen URI-osoite on:

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

Muista poistaa tiedot: etuliite yllä olevan pbitool.json-esimerkin mukaisesti.

Jos haluat muuntaa .png tai muun kuvan tiedostotyypin tietojen URI-osoitteeksi, käytä online-työkalua tai mukautettua työkalua, kuten seuraavassa C#-koodikatkelmassa näkyvää työkalua:

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

Katso myös

ulkoiset työkalut Power BI Desktop
Asiakaskirjastot Analysis Servicesiin yhdistämistä varten
Taulukkomuotoinen objektimalli (TOM)