pbi_refresh_model
Refreshes the local Power BI Desktop model (not Service), optionally specific tables. Reports status, duration, rows per table, and flags empty results; includes timeout handling for missing credentials.
Instructions
Refresca el modelo LOCAL abierto en Power BI Desktop (no el Service).
type: full | calculate | clear_values (tambien automatic | data_only).
tables: lista opcional de tablas a refrescar; si se omite, todo el modelo.
Los errores de credenciales/origen se reportan.
timeout_seconds (600 por defecto, 0 lo desactiva): un refresh
lanzado por XMLA no puede mostrar el dialogo de credenciales de
Desktop, asi que un origen sin credenciales guardadas deja al motor
esperando para siempre y no hay ninguna ventana que cerrar. Al
agotarse el plazo se pide la cancelacion al motor y se devuelve
refresh_timeout enumerando los origenes que REQUIEREN credenciales
-no si las tienen: eso Desktop no lo expone- y si la cancelacion se
confirmo o el comando pudo quedar corriendo.
Devuelve estado, duracion y rows_by_table: cuantas filas quedaron
en cada tabla refrescada. Un refresh puede terminar en 'ok' y haber
cargado CERO filas -credenciales que devuelven vacio, un filtro de
fecha que no alcanza nada, un origen que cambio de esquema-, asi que
las tablas vacias salen ademas en warnings. Si no se pudo contar, se
dice; no se inventa el numero.
En un proyecto .pbip los datos NO se guardan: viven en la sesion de Desktop y al reabrir hay que refrescar otra vez. Lo que persiste al guardar es la definicion (TMDL + PBIR).
Exige confirm=true desde 2.0.0. Hasta entonces era la unica tool
destructiveHint sin confirmacion junto con pbi_open_and_refresh: un
agente que decide por «¿tiene confirm?» no veia nada que preguntar.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | full | |
| tables | No | ||
| confirm | No | ||
| request_id | No | ||
| timeout_seconds | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |