Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Permitimos la posibilidad de actualizar conexiones para informes de Power BI con DirectQuery y refrescar.
Importante
Este también es un cambio importante en cómo podía configurarlo en versiones anteriores.
Prerrequisitos
- Descargue la versión más reciente de Power BI Report Server y Power BI Desktop para Power BI Report Server.
- Un informe guardado con Power BI Desktop optimizado para el Servidor de Informes, con metadatos de conjunto de datos mejorados habilitados.
- Informe que usa conexiones con parámetros. Solo los informes con conexiones y bases de datos con parámetros se pueden actualizar después de la publicación.
- En este ejemplo se usan las herramientas de PowerShell de Reporting Services. Puede lograr lo mismo mediante las nuevas API REST.
Crear un informe con conexiones parametrizadas
Cree una conexión de SQL Server a un servidor. En el ejemplo siguiente, nos conectamos al localhost a una base de datos denominada ReportServer y extraemos datos de ExecutionLog.
Este es el aspecto de la consulta M en este punto:
let Source = Sql.Database("localhost", "ReportServer"), dbo_ExecutionLog3 = Source{[Schema="dbo",Item="ExecutionLog3"]}[Data] in dbo_ExecutionLog3Seleccione Administrar parámetros en la cinta del Editor de Power Query.
Cree parámetros para el nombre del servidor y el nombre de la base de datos.
Edite la consulta para la conexión inicial y mapee la base de datos y el nombre del servidor.
Ahora la consulta tiene el siguiente aspecto:
let Source = Sql.Database(ServerName, Databasename), dbo_ExecutionLog3 = Source{[Schema="dbo",Item="ExecutionLog3"]}[Data] in dbo_ExecutionLog3Publique ese informe en el servidor. En este ejemplo, el informe se denomina executionlogparameter. La imagen siguiente es un ejemplo de una página de administración de orígenes de datos.
Actualización de parámetros mediante las herramientas de PowerShell
Abra PowerShell e instale las herramientas más recientes de Reporting Services siguiendo las instrucciones de https://github.com/microsoft/ReportingServicesTools.
Para obtener el parámetro del informe, use la nueva API DataModelParameters de REST mediante la siguiente llamada de PowerShell:
Get-RsRestItemDataModelParameters '/executionlogparameter' Name Value ---- ----- ServerName localhost Databasename ReportServerGuardamos el resultado de esta llamada en una variable:
$parameters = Get-RsRestItemDataModelParameters '/executionlogparameter'Mapear a un diccionario para acceder a los valores de los parámetros.
$parameterdictionary = @{} foreach ($parameter in $parameters) { $parameterdictionary.Add($parameter.Name, $parameter); }Esta variable se actualiza con los valores que necesitamos cambiar.
Actualice los valores de los parámetros deseados:
$parameterdictionary["ServerName"].Value = 'myproductionserver' $parameterdictionary["Databasename"].Value = 'myproductiondatabase'Con los valores actualizados, podemos usar el commandlet
Set-RsRestItemDataModelParameterspara actualizar los valores en el servidor:Set-RsRestItemDataModelParameters -RsItem '/executionlogparameter' -DataModelParameters $parameters $parameterdictionary.ValuesUna vez actualizados los parámetros, el servidor actualiza los orígenes de datos enlazados a los parámetros. Volviendo al cuadro de diálogo Editar origen de datos , debería poder establecer credenciales para el servidor y la base de datos actualizados.
Contenido relacionado
¿Más preguntas? Pruebe a preguntar a la comunidad de Power BI