Struttura del progetto per un oggetto visivo di Power BI

Il modo migliore per iniziare a creare un nuovo oggetto visivo di Power BI è tramite lo strumento per oggetti visivi di Power BI, pbiviz.

Per creare un nuovo oggetto visivo di Power BI, passare alla directory in cui si vuole crearlo ed eseguire il comando seguente:

pbiviz new <visual project name>

Questo comando crea una cartella di Power BI contenente i file seguenti:

project
├───.vscode
│   ├───launch.json
│   └───settings.json
├───assets
│   └───icon.png
├───node_modules
├───src
│   ├───settings.ts
│   └───visual.ts
├───style
│   └───visual.less
├───capabilities.json
├───package-lock.json
├───package.json
├───pbiviz.json
├───tsconfig.json
└───tslint.json

Descrizione dei file e delle cartelle

Questa sezione offre informazioni per ogni cartella e ogni file all'interno della directory creata dallo strumento pbiviz per oggetti visivi di Power BI.

.vscode

Questa cartella contiene le impostazioni per il progetto VS Code.

Per configurare l'area di lavoro, modificare il file .vscode/settings.json.

Per altre informazioni, vedere Impostazioni per l'utente e l'area di lavoro.

assets

Questa cartella contiene il file icon.png.

Lo strumento per oggetti visivi di Power BI usa questo file come nuova icona visiva di Power BI nel riquadro di visualizzazione di Power BI. Questa icona deve essere un file PNG con dimensioni di 20 pixel per 20 pixel.

src

Questa cartella contiene il codice sorgente dell'oggetto visivo.

In questa cartella lo strumento per oggetti visivi di Power BI crea i file seguenti:

  • visual.ts: codice sorgente principale dell'oggetto visivo. Informazioni sull'API per gli oggetti visivi.
  • settings.ts: codice delle impostazioni dell'oggetto visivo. Le classi nel file rappresentano un'interfaccia per la definizione di proprietà dell'oggetto visivo personalizzate.

style

Questa cartella contiene il file visual.less, al cui interno si trovano gli stili dell'oggetto visivo.

capabilities.json

Questo file contiene le proprietà e le impostazioni principali (o funzionalità) dell'oggetto visivo. Consente all'oggetto visivo di dichiarare le funzionalità, gli oggetti, le proprietà e il mapping della vista dati supportati.

package-lock.json

Questo file viene generato automaticamente per tutte le operazioni in cui npm modifica l'albero node_modules o il file package.json.

Per altre informazioni su questo file, vedere la documentazione di npm-package-lock.json ufficiale.

package.json

Questo file descrive il pacchetto del progetto. Contiene informazioni sul progetto, ad esempio autori, descrizione e dipendenze del progetto.

Per altre informazioni su questo file, vedere la documentazione di npm-package.json ufficiale.

pbiviz.json

Questo file contiene i metadati dell'oggetto visivo.

Per visualizzare un file pbiviz.json di esempio con commenti che descrivono le voci dei metadati, vedere la sezione sulle voci dei metadati.

tsconfig.json

File di configurazione di TypeScript.

Questo file deve contenere il percorso del file *.ts in cui si trova la classe principale dell'oggetto visivo, come specificato nella proprietà visualClassName nel file pbiviz.json.

tslint.json

Questo file contiene la configurazione di TSLint.

Voci di metadati

I commenti nelle didascalie del codice seguente del file pbiviz.json descrivono le voci dei metadati. Alcuni metadati, ad esempio il nome e il messaggio di posta elettronica dell'autore, sono necessari prima di poter creare il pacchetto dell'oggetto visivo.

Nota

{
  "visual": {
     // The visual's internal name.
    "name": "<visual project name>",

    // The visual's display name.
    "displayName": "<visual project name>",

    // The visual's unique ID.
    "guid": "<visual project name>23D8B823CF134D3AA7CC0A5D63B20B7F",

    // The name of the visual's main class. Power BI creates the instance of this class to start using the visual in a Power BI report.
    "visualClassName": "Visual",

    // The visual's version number.
    "version": "1.0.0.0",
    
    // The visual's description (optional)
    "description": "",

    // A URL linking to the visual's support page (optional).
    "supportUrl": "",

    // A link to the source code available from GitHub (optional).
    "gitHubUrl": ""
  },
  // The version of the Power BI API the visual is using.
  "apiVersion": "2.6.0",

  // The name of the visual's author and email.
  "author": { "name": "", "email": "" },

  // 'icon' holds the path to the icon file in the assets folder; the visual's display icon.
  "assets": { "icon": "assets/icon.png" },

  // Contains the paths for JS libraries used in the visual.
  // Note: externalJS' isn't used in the Power BI visuals tool version 3.x.x or higher.
  "externalJS": null,

  // The path to the 'visual.less' style file.
  "style": "style/visual.less",

  // The path to the `capabilities.json` file.
  "capabilities": "capabilities.json",

  // The path to the `dependencies.json` file which contains information about R packages used in R based visuals.
  "dependencies": null,

  // An array of paths to files with localizations.
  "stringResources": []
}