Opret en semantisk model-app med GitHub Copilot

Brug denne opskrift til at skabe en analytisk app forbundet til en semantisk model med GitHub Copilot-agent-tilstand. Copilot støtter dataapp-skabelonen, tilføjer en Fabric semantisk model-connector, opretter DAX-forespørgsler og visualiseringer og validerer appen.

Dataapp-skabelonen leverer Fabric-autentificering, vejledning til DAX-generering, visuelle komponenter og browservalidering. Connectoren giver delegeret semantisk modeladgang via Fabric Apps-klienten. Du kan få mere at vide under Opret en app, der er forbundet til en semantisk model.

I dette selvstudium skal du:

  • Forbered GitHub Copilot til agentdrevet udvikling.
  • Spørg Copilot om at støtte dataapp-skabelonen.
  • Forbind appen til en semantisk model.
  • Byg en interaktiv salgspræstationsudforsker.
  • Gennemgå og valider de genererede ændringer.
  • Udrul appen til Fabric.
  • Verificér udrulningen og åbn appen.

Forudsætninger

  • Node.js 20 eller senere.
  • Visual Studio Code.
  • GitHub Copilot i Visual Studio Code med agent-tilstand tilgængelig.
  • En GitHub konto med adgang til GitHub Copilot.
  • En Microsoft-konto med adgang til Fabric.
  • Et Fabric-arbejdsområde, hvor du har tilladelser til bidragsyger, medlem eller administrator.
  • Fabric Apps-arbejdsbelastningen er aktiveret for din lejer.
  • Lejerindstillingen Semantic Model Execute Queries REST API-lejeren er aktiveret.
  • Bygge- og læsetilladelser på en semantisk model, der hostes på Fabric- eller Power BI-kapacitet.
  • Arbejdsområde-ID og objekt-ID for den semantiske model.

Bemærk

Copilot beder om godkendelse, før den udfører terminalkommandoer. Du skal også gennemføre interaktiv browser-login, når Rayfin CLI anmoder om det.

Open GitHub Copilot-agent mode

  1. Åbn Visual Studio Code.
  2. Åbn forældremappen, hvor du vil have Copilot til at oprette projektet.
  3. Åbn chat.
  4. Vælg Agenttilstand .
  5. Bekræft, at agenten har adgang til terminalen og arbejdsområdet.

Åbn ikke en mappe, der indeholder urelaterede filer, som du ikke ønsker, at Copilot skal inspicere eller ændre.

Stilads data-appen

Kopier følgende prompt ind i Copilot Chat:

Set up a new Fabric data app for me, end to end.

Create the project in a folder named sales-insights. Before changing code, read any
copilot-instructions.md files and agent guidance included in the scaffolded project.

Do the work yourself instead of only printing instructions:
1. Run `npm create @microsoft/rayfin@latest -- "sales-insights" --template dataapp --workspace <workspace-name>`.
2. In the scaffolded project, run `npx rayfin connector add --type fabric-semanticmodel --workspace-id <workspace-id> --item-id <semantic-model-item-id> --name salesModel --operations executeQuery`.
3. Run the version-matched npm install command printed by the connector command.
4. Open and inspect the scaffolded project. Explain the data app template's DAX query,
   visualization, data grid, theme, and browser-validation patterns.
5. Configure the template to use ConnectorsRayfinClient, the generated salesModel
   schema, and the fabricSemanticModel() runtime. Don't retain or add a direct
   Execute Queries REST API client.
6. If authentication is required, run `npx rayfin login` and pause while I complete
   sign-in.
7. Run the existing build and report any errors.
8. Summarize the scaffolded app and wait for my semantic model requirements.

Ask before making a destructive change or using a force option.

Erstat <workspace-name>, <workspace-id>, og <semantic-model-item-id> med værdier for dit Fabric-arbejdsområde og semantiske model. Godkend kommandoerne, mens Copilot kører dem, og fuldfør Rayfin-login-flowet, når du bliver bedt om det.

Spørg Copilot om at bygge din app

Beskriv appens målgruppe, spørgsmål, interaktioner og visualiseringer. Connectoren salesModel identificerer allerede den semantiske model.

Brug følgende prompt som en startopskrift på en salgspræstations-explorer. Tilpas forretningskravene til felter, der er tilgængelige i din model.

Use the existing salesModel connector to build a sales performance explorer for
sales managers.

Requirements:
- Inspect the generated connector schema and semantic model metadata before editing.
  Use actual table, measure, and column names instead of guessing them.
- Show KPI callouts for the model's revenue, order volume, and margin measures when
  those measures are available.
- Add a time-series chart for sales performance, a bar chart that compares a useful
  business category, and a detailed data grid.
- Add date and category filters, and use the template's cross-highlighting behavior.
- Use the template's DAX generation patterns and visual primitives. Minimize the
  number of DAX queries and don't duplicate queries for the same data.
- Submit DAX with client.connectors.salesModel.executeQuery(), check the returned
  status, and handle success and error results.
- Apply the semantic model's format strings consistently to cards, charts, tooltips,
  and the data grid.
- Include loading, empty, and error states.
- Don't add mock data, embed credentials, or implement a separate authentication flow.
- Preserve the template's Fabric authentication and the semantic model connector.
- Don't add dependencies unless they're necessary.

Before editing, inspect the relevant files and give me a short implementation plan.
Ask me to clarify any model fields that are ambiguous. Then make the changes, run
the existing build, and use the template's browser validation workflow to check the
layout at desktop and mobile sizes. Explain any errors you fix.

Gennemgå Copilot's plan, før den redigerer projektet. Hvis planen ikke matcher dine krav, så ret den i Chat, før du godkender implementeringen.

Gennemgå de genererede ændringer

Når Copilot er færdig, kan du bede den gennemgå sit arbejde:

Review the changes you made against every requirement in my previous prompt.

Check for:
- DAX queries that reference fields that aren't in the semantic model.
- Duplicate or unnecessary DAX queries.
- Hard-coded sample data, credentials, access tokens, or a second sign-in flow.
- Formatting that ignores the semantic model's format strings.
- Charts, filters, cross-highlighting, or data grid interactions that don't work.
- Missing loading, empty, or error states.
- TypeScript or build errors.

Fix confirmed issues, run the existing build and browser validation, and summarize
the final behavior.

Inspicer versionsversionsversionsdifferentialet i Visual Studio Code. Vær særligt opmærksom på:

  • Connector-konfigurationen salesModel , det genererede skema og DAX-forespørgsler.
  • Servicekonfiguration i rayfin/rayfin.yml.
  • Nye afhængigheder i package.json.
  • Autentificering ændres eller direkte REST-opkald, der omgår forbindelsen.
  • Hemmeligheder eller legitimationsoplysninger, som du ikke må begå.

Udrul og verificér forbindelsen til den semantiske model

Spørg Copilot om at udrulle appen og verificere dens forbindelse:

Deploy the app with `npx rayfin up`, then run `npx rayfin up status` and confirm
that the deployment is healthy. Give me the Fabric portal link from the command
output.

Don't add mock data if a semantic model query fails. Check the workspace and model
IDs in the connector configuration, the Semantic Model Execute Queries REST API
tenant setting, my Build and Read permissions, the DAX query, the connector error
result, and the browser console. Report the exact failure and the corrective action.

Åbn appen fra Fabric-portalen for at teste live semantiske modelforespørgsler.

Valider appen

Spørg Copilot om at køre projektets eksisterende validering:

Validate the app without adding new tools.

1. Run the existing build and type-check commands from package.json.
2. Run the template's browser validation at desktop and mobile sizes.
3. Check for clipped charts, unreadable labels, empty visuals, and console errors.
4. Tell me which semantic model queries and user interactions I must verify in the
    Fabric portal.
5. Fix confirmed build, type, or layout errors, and rerun the failed check.

I Fabric-portalen kan du bekræfte de acceptkriterier, du har givet Copilot. Testautentificering, filtre, krydsmarkering, dataformatering, tomme tilstande, fejlhåndtering og resultaterne fra hver visuel test.

Udrul den færdige app

Efter du har gennemgået ændringerne og testet appen, så bed Copilot om at implementere den:

Deploy the reviewed app to Fabric.

1. Show me the current git diff and summarize what will be deployed.
2. Run `npx rayfin up`.
3. Run `npx rayfin up status`.
4. Confirm that the deployment is healthy.
5. Give me the hosted app URL and Fabric portal link from the command output.

Stop and explain the issue if deployment or verification fails.

Den samme npx rayfin up kommando opdaterer en eksisterende deployment, når du fortsætter med at udvikle appen.

Fortsæt iterationen med Copilot

Brug fokuserede prompts til senere ændringer. Inkluder den ønskede adfærd, berørte brugere, begrænsninger og valideringstrin.

Add a product detail view to the sales performance explorer.

Open the view when a user selects a product in the data grid. Use fields and measures
that exist in the semantic model, reuse existing query results where practical, and
preserve filters and formatting. Run the existing build and browser validation, then
list the interactions and DAX results I should verify in the Fabric portal.

Hold hver anmodning lille nok til at kunne gennemgå dem. Gør en arbejdstilstand, før du beder Copilot om at foretage en stor eller potentielt ødelæggende ændring.

Fejlsøg Copilot-arbejdsgangen

Copilot printer kun kommandoer

Sig til Copilot, at han selv skal køre kommandoerne og rapportere resultaterne. Bekræft, at chatten er i agenttilstand , og at terminaladgang er aktiveret.

En kommando venter på login.

Fuldfør browserens login-flow. Fortæl derefter Copilot, at indloggingen er fuldført, så det kan fortsætte.

Copilot redigerer den forkerte mappe

Stop agenten, åbn den stillede projektmappe i Visual Studio Code, og start en ny chat fra det arbejdsområde.

Implementeringen lykkes, men forespørgsler i semantiske modeller fejler

Spørg Copilot om at tjekke connectorens arbejdsområde og model-ID'er, Semantic Model Execute Queries, REST API-lejerindstillingen, dine Build- og Read-tilladelser, den genererede DAX, connector-fejlresultatet og browserkonsollen. Erstat ikke fejlede forespørgsler med mock-data.

Copilot foreslår--force

Krav Copilot til først at vise de potentielt destruktive skemaoperationer. Accepter --force kun, når du forstår og godkender det mulige datatab.

For andre problemer, se Fejlfinding Fabric Apps.