Power BI Connector 1.0.0.1
The Power BI Connector lets you refresh datasets and dataflows in Power BI from RunMyJobs.
Prerequisites
- RunMyJobs 9.2.9 or later.
- Connection component 1.0.0.4 or later. Note that the Connections component will be installed or updated automatically if necessary when you install this extension.
- Azure Connections Extension 1.0.0.3 or later (automatically installed by the Catalog when you install the Azure Machine Learning Connector).
- A Process Server with the ServiceForRedwood_PowerBIConnector service. For more information, see Connectors and Process Servers.
Contents of the Component
The Power BI Connector consists of the following objects:
Object Type | Name |
---|---|
Application | GLOBAL.Redwood.REDWOOD.PowerBI |
Constraint Definition | REDWOOD.Redwood_PowerBIDataflowConstraint |
Constraint Definition | REDWOOD.Redwood_PowerBIDatasetConstraint |
Constraint Definition | REDWOOD.Redwood_PowerBIWorkspaceConstraint |
Process Definition | REDWOOD.Redwood_PowerBI_RefreshDataflow |
Process Definition | REDWOOD.Redwood_PowerBI_RefreshDataflowTemplate |
Process Definition | REDWOOD.Redwood_PowerBI_RefreshDataset |
Process Definition | REDWOOD.Redwood_PowerBI_RefreshDatasetTemplate |
Process Definition | REDWOOD.Redwood_PowerBI_EnhancedDatasetRefreshTemplate |
Process Definition Type | REDWOOD.Redwood_PowerBIConnector |
Library | REDWOOD.Redwood_PowerBIConnector |
Configuration Options
To set the fetch transaction retry delay or the maximum number of fetch transaction retries for dataflows, you can update following registry entries.
Configuration Option | Description | Minimum | Default |
---|---|---|---|
/configuration/jcs/apps/PowerBI/Dataflow/FetchTransactionRetryDelay | Duration to wait between attempts to fetch the dataflow refresh transaction. This is only needed to fetch the transaction the first time after starting a new refresh. | 0.03 seconds | 0.25 seconds |
/configuration/jcs/apps/PowerBI/Dataflow/FetchTransactionMaxRetries | Maximum number of attempts to fetch the dataflow refresh transaction. This is only needed to fetch the transaction the first time after starting a new refresh. | 1 retry | 20 retries |
In addition, you can customize timeouts by setting the Azure Connections Configuration Options.
Process Definitions
Redwood_PowerBI_RefreshDataflow
Lets you refresh a Power BI dataflow.
Parameters
Tab | Name | Description | Documentation | Data Type | Direction | Default Expression | Values |
---|---|---|---|---|---|---|---|
Parameters | connection
|
Connection | The Connection for Power BI. | String | In |
|
|
Parameters | workspace
|
Workspace | The Power BI Workspace that contains the dataflow to refresh. | String | In |
|
|
Parameters | dataflowID
|
Data Flow | The ID of the dataflow to refresh. | String | In |
|
|
Parameters | monitor
|
Monitor to completion | Determines whether the refresh should be monitored to completion. | String | In | No | Yes, No |
Parameters | transactionId
|
Transaction ID |
|
String | Out |
|
|
Redwood_PowerBI_RefreshDataflowTemplate
Template for refreshing a dataflow in Power BI.
Parameters
Tab | Name | Description | Documentation | Data Type | Direction | Default Expression | Values |
---|---|---|---|---|---|---|---|
Parameters | connection
|
Connection | The Connection for Power BI. | String | In |
|
|
Parameters | workspace
|
Workspace | The Power BI Workspace that contains the dataflow to refresh. | String | In |
|
|
Parameters | dataflowID
|
Data Flow | The ID of the dataflow to refresh. | String | In |
|
|
Parameters | monitor
|
Monitor to completion | Determines whether the refresh should be monitored to completion. | String | In | No | Yes ,No |
Parameters | transactionId
|
Transaction ID |
|
String | Out |
|
|
Redwood_PowerBI_RefreshDataset
Lets you refresh a Dataset in Power BI.
Parameters
Tab | Name | Description | Documentation | Data Type | Direction | Default Expression | Values |
---|---|---|---|---|---|---|---|
Parameters | connection
|
Connection | The Connection for Power BI. | String | In |
|
|
Parameters | workspace
|
Workspace | The Power BI Workspace that contains the dataset to refresh. | String | In |
|
|
Parameters | datasetId
|
Data Set | The ID of the dataset to refresh. | String | In |
|
|
Redwood_PowerBI_RefreshDatasetTemplate
Template for refreshing a Power BI dataset.
Parameters
Tab | Name | Description | Documentation | Data Type | Direction | Default Expression | Values |
---|---|---|---|---|---|---|---|
Parameters | connection
|
Connection | The Connection for Power BI. | String | In |
|
|
Parameters | workspace
|
Workspace | The PowerBI Workspace that contains the dataset to refresh, | String | In |
|
|
Parameters | datasetId
|
Data Set | The ID of the dataset to refresh. | String | In |
|
|
Redwood_PowerBI_EnhancedDatasetRefreshTemplate
Template for performing an enhanced refresh on a Power BI dataset.
If you do not provide any Parameters in the Source field of the Definition tab, Power BI considers the refresh to be standard (not enhanced), which means it cannot be tracked. Consequently, RunMyJobs adds a message to the Process's stdout.txt
file indicating that the refresh request started successfully, but there is no tracking info so the Process will complete immediately.
If the enhanced refresh generates any messages (usually due to errors), RunMyJobs collects them after the refresh is complete and writes them to the messages.txt
Process file.
Parameters
Tab | Name | Description | Documentation | Data Type | Direction | Default Expression | Values |
---|---|---|---|---|---|---|---|
Parameters | connection
|
Connection | The Connection for Power BI. | String | In |
|
|
Parameters | workspace
|
Workspace | The Power BI Workspace that contains the dataset to refresh. | String | In |
|
|
Parameters | datasetId
|
Data Set | The ID of the dataset to refresh. | String | In |
|
|
Refresh Request Parameters | type
|
Type | The type of processing to perform. Types align with the TMSL refresh command types. | String | In | automatic | full, clearValues, calculate, dataOnly, automatic, defragment |
Refresh Request Parameters | commitMode
|
Commit Mode | Determines whether to commit objects in batches or only when complete. | String | In | transactional | transactional, partialBatch |
Refresh Request Parameters | maxParallelism
|
Maximum Parallelism | Determines the maximum number of threads that can run the processing commands in parallel. | Number | In | 10 |
|
Refresh Request Parameters | retryCount
|
Retry Count | Number of times the operation will retry before failing. Temporary internal errors may trigger a retry of the refresh, even if this parameter is set to 0. | Number | In | 0 |
|
Refresh Request Parameters | applyRefreshPolicy
|
Apply Refresh Policy | If an incremental refresh policy is defined, this determines whether to apply the policy. | String | In | true | true, false |
Parameters | refreshId
|
Refresh ID |
|
String | Out |
|
|
Setup
To install the Power BI Connector and create a Connection to Azure AD:
-
Locate the Power BI Connector component in the Catalog and install it.
Procedures
Refreshing a Power BI Dataflow
Note: This Process Definition will initiate a refresh in Power BI, but will not monitor it to completion unless you set Monitor to completion to Yes.
To refresh a Power BI dataflow:
-
Right-click the Redwood_PowerBI_RefreshDataflow and choose Submit.
-
In the Parameters tab, select values from the dropdown lists, starting from the top:
-
Choose an Azure AD Connection from the Connection dropdown list.
-
Choose the workspace that contains the dataflow from the Workspace dropdown list.
-
Choose the dataflow you want to refresh from the Data Flow dropdown list.
-
-
Click Submit.
Refreshing a Power BI Dataflow with a Template
Note: This Process Definition will initiate a refresh in Power BI, but will not monitor it to completion unless you set Monitor to completion to Yes.
To create a customized Process Definition, optionally with default values, for refreshing a Power BI dataflow:
-
Right-click the Redwood_PowerBI_RefreshDataflowTemplate Process Definition and choose New (from Template) from the context menu. The New Process Definition pop-up window displays.
-
Choose a Partition.
-
Enter a Name.
- Delete the default Application value (if any) and substitute your own Application name if desired.
-
In the Parameters tab, enter any Default Expressions you want to use.
-
When specifying the Connection value, use the format
EXTCONNECTION:<partition>.<connection name>
.
-
-
Save and then submit the new Process Definition.
Refreshing a Power BI Dataset
To perform a basic refresh of a Power BI dataset:
-
Right-click the Redwood_PowerBI_RefreshDataset and choose Submit.
-
In the Parameters tab, select values from the dropdown lists, starting from the top:
-
Choose an Azure AD Connection from the Connection dropdown list.
-
Choose the workspace that contains the dataset from the Workspace dropdown list.
-
Choose the dataset you want to refresh from the Data Set dropdown list.
-
-
Click Submit.
Performing a Basic Refresh a Power BI Dataset with a Template
To create a customized Process Definition, optionally with default values, to perform a basic refresh of a Power BI dataset:
-
Right-click the Redwood_PowerBI_RefreshDatasetTemplate Process Definition and choose New (from Template) from the context menu. The New Process Definition pop-up window displays.
-
Choose a Partition.
-
Enter a Name.
- Delete the default Application value (if any) and substitute your own Application name if desired.
-
In the Parameters tab, enter any Default Expressions you want to use.
-
When specifying the Connection value, use the format
EXTCONNECTION:<partition>.<connection name>
.
-
-
Save and then submit the new Process Definition.
Performing an Enhanced Refresh of a Power BI Dataset with a Template
To create a customized Process Definition, optionally with default values, to perform an enhanced refresh of a Power BI dataset:
-
Right-click the Redwood_PowerBI_EnhancedDatasetRefreshTemplate Process Definition and choose New (from Template) from the context menu. The New Process Definition pop-up window displays.
-
Choose a Partition.
-
Enter a Name.
- Delete the default Application value (if any) and substitute your own Application name if desired.
-
In the Parameters tab, enter any Default Expressions you want to use.
-
When specifying the Connection value, use the format
EXTCONNECTION:<partition>.<connection name>
.
-
-
Save and then submit the new Process Definition.
Note: By default, the template includes only certain Parameters with default values. However, you can add your own Parameters in the Source field, and specify their default values in the Parameters tab. A list of available parameters can be found here: Microsoft-us/power-bi/connect-data/asynchronous-refresh#parameters
Note: Redwood recommends setting only the Parameters you want to send with the enhanced refresh request, rather than sending all Parameters with default values every time.