---
id: object/table/6316
type: object
title: Table 6316 "Power BI Deployment"
summary: Table 6316 "Power BI Deployment" in Base Application (System.Integration.PowerBI). 10 fields, 11 public procedures. Introduced in BC28, still in BC30, changed in BC29.
tier: official
language: en
tags:
  - table
  - base application
versions:
  introduced: "28"
  last_changed: "29"
  deprecated: null
review:
  state: derived
  by: null
  at: null
  flags: []
generated:
  at: "2026-10-11T00:31:51.816Z"
  pipeline: 0.2.0
  prompts: {}
  input_hash: 2c6a697823b393526ab7ddbed2eb16dd3d0d9614274003df840f017d6cc39b67
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Modules/System/PowerBI/APIs/ReportDeployments/PowerBIDeployment.Table.al
    title: src/Layers/W1/BaseApp/Modules/System/PowerBI/APIs/ReportDeployments/PowerBIDeployment.Table.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn: []
  objects: []
  features: []
  topics: []
  localizations: []
  videos: []
  posts: []
  guidelines: []
  changes:
    - change/bcapps/12242
    - change/bcapps/12189
    - change/bcapps/10348
object_type: table
object_id: 6316
name: Power BI Deployment
namespace: System.Integration.PowerBI
app: Base Application
extends: null
first_version: "28"
last_version: "30"
present_in:
  - "28"
  - "29"
  - "30"
changed_in:
  - "29"
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids: []
counts:
  fields: 10
  procedures: 13
  events: 0
  subscribers: 0
relations:
  out: 0
  referenced_by: 0
  pages: 0
  extended_by: 0
  event_subscribers: 0
  calls: 1
  called_by: 0
  implements: 0
---

# Table 6316 "Power BI Deployment"

> Table 6316 "Power BI Deployment" in Base Application (System.Integration.PowerBI). 10 fields, 11 public procedures. Introduced in BC28, still in BC30, changed in BC29.

Base Application · System.Integration.PowerBI · BC28-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Modules/System/PowerBI/APIs/ReportDeployments/PowerBIDeployment.Table.al) · facts from BC29

## Properties

| Property | Value |
|---|---|
| Caption | Power BI Deployment |
| Access | Public |
| DataClassification | SystemMetadata |

## Fields

Explanation: the field's ToolTip in the code; without one, the ToolTip of a page control bound to the field (marked via the page); without that, its Caption (marked caption) when that differs from the name.

| No. | Name | Type | Explanation | Notes |
|---|---|---|---|---|
| 1 | Report Id | Enum "Power BI Deployable Report" | — | enum [Enum 6316 "Power BI Deployable Report"](../enum/6316.md) |
| 2 | Import ID | Guid | — |  |
| 3 | Uploaded Report ID | Guid | — |  |
| 4 | Report Embed Url | Text[2048] | — |  |
| 5 | Dataset Id | Text[200] | — |  |
| 6 | Deployed Version | Integer | — |  |
| 7 | Retry After | DateTime | — |  |
| 8 | Uploaded Report Name | Text[200] | — |  |
| 9 | Power BI Workspace Id | Guid | — |  |
| 10 | Deployed Workspace Name | Text[200] | — | DataClassification CustomerContent |

## Keys

- PK: Report Id (clustered)

## Procedures

- `GetLatestStateRecord(var PowerBIDeploymentState: Record "Power BI Deployment State"): Boolean`: Retrieves the latest deployment state record. Returns false if none exists.
- `GetLatestCompletedState(): Record "Power BI Deployment State"`: Retrieves the latest completed deployment state record. Returns an empty record if there's none
- `GetUploadStatus(): Enum "Power BI Upload Status"`: Derives the current upload status from the latest Power BI Deployment State record. This is the single source of truth for deployment status.
- `FailCurrentStep(FailedReason: Text; FailedCallstack: Text)`: Marks the latest state record as failed with the given reason. If no state record exists yet (e.g. the very first step failed before any transition), creates one with Status Reached = NotStarted so the failure is never silently lost.
- `ResetDeployment()`: Resets a deployment by deleting all state records. After this, GetUploadStatus() returns NotStarted and the aggregator will include the report as pending work for re-deployment. Used both for retrying failed deployments and for applying version updates.
- `GetDeploymentStatus(): Enum "Power BI Deployment Status"`
- `GetDeploymentOutcome(DeploymentStatus: Enum "Power BI Deployment Status"): Enum "Power BI Deployment Outcome"`
- `QueueForDeployment(ReportId: Enum "Power BI Deployable Report")` (internal)
- `DeleteAllRecords()`: Wipes all local deployment tracking data for the current company across every deployable report. Reports already uploaded to the Power BI workspace are not touched.
- `DeleteAllRecords(InCompany: Text[30])`: Wipes all local deployment tracking data in the specified company. Used by subscribers that need to clear records in a different company than the caller's (e.g. after Copy Company, where the subscriber runs in the source company but must wipe the target).
- `RecordStep(NewStatus: Enum "Power BI Upload Status")`: Creates a new state record for the given status.

Plus 2 local procedures.

## Calls

From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an `Object::"Name"` argument. Interface dispatch and calls through events are not counted, so the list is not complete.

- [Codeunit 6301 "Power BI Service Mgt."](../codeunit/6301.md) (1 call: `FailCurrentStep → GetPowerBiTelemetryCategory`)

## Recent changes

- 2026-10-05 [#12242 29.x: Removing the restriction of deploying Power BI reports only to evaluation companies](../../changes/bcapps/12242.md) (releases/29.x, BC29, feature)
- 2026-10-02 [#12189 Removing the restriction of deploying Power BI reports only to evaluation companies](../../changes/bcapps/12189.md) (main, BC30, feature)
- 2026-09-10 [#10348 Adding a Power BI workspace to Company Information to be used when deploying reports](../../changes/bcapps/10348.md) (main, BC30, feature)

## Across versions

- Present in: BC28-30
- Changed (declaration) in: BC29

Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).

## Ask your agent

Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: `bcatlas_resolve_node(object_type: "table", object_name: "Power BI Deployment")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
