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'
Kuvaketietojen URI-osoitteet
Jos haluat sisällyttää kuvakkeen Ulkoiset työkalut -valintanauhaan, pbitool.json-rekisteröintitiedostossa on oltava kuvakeTieto-elementti.
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)