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.
Vista TMDL le permite escribir scripts, modificar y aplicar cambios a los objetos del modelo semántico con un editor de código moderno, utilizando el Lenguaje de Definición de Modelos Tabulares (TMDL) en Power BI Desktop, lo que mejora la eficacia del desarrollo y proporciona una visibilidad completa y control sobre los metadatos del modelo semántico.
Vista TMDL ofrece una experiencia alternativa al modelado semántico mediante código, en lugar de una interfaz gráfica de usuario, como Vista modelo.
La vista TMDL ofrece las siguientes ventajas:
- Mejora de la eficiencia del desarrollo con un editor de código enriquecido que incluye búsqueda y reemplazo, métodos abreviados de teclado, ediciones multi-línea y mucho más.
- Aumentar la reutilización mediante la fácil creación, el uso compartido y la reutilización de scripts TMDL entre desarrolladores de modelos semánticos. Por ejemplo, use un sitio de SharePoint centralizado para compartir fácilmente objetos de modelo semántico reutilizables, como tablas de calendario o grupos de cálculo de inteligencia de tiempo.
- Obtener más control y transparencia, mostrando todos los objetos y propiedades del modelo semántico, y permitiendo cambios en los elementos que no están disponibles en la interfaz de usuario de Power BI Desktop, como IsAvailableInMDX o DetailRowsDefinition.
Habilitación de la característica de vista previa
Para usar la vista TMDL , debe habilitar la función de previsualización. En Power BI Desktop, seleccione Archivo > Opciones y configuración > Opciones > Características de vista previa y seleccione el cuadro situado junto a Vista TMDL.
Script para TMDL
En Power BI Desktop, seleccione el icono vista TMDL situado en el lado izquierdo de la ventana, como se muestra en la siguiente imagen.
Cuando se abre la vista TMDL, el editor de código está inicialmente vacío. Puede crear scripts de cualquier objeto de modelo semántico, como una tabla, una medida o una columna seleccionando los objetos del panel datos de y arrastrándolos al editor de código:
Cuando se usa la vista TMDL y se arrastra el objeto desde el panel Datos, Power BI scripta los metadatos de objeto completos en la pestaña actual como TMDL, o abre una nueva pestaña si la pestaña actual no está vacía, como un createOrReplace script TMDL de los objetos seleccionados, como se muestra en la siguiente imagen:
Como alternativa, puede hacer clic con el botón derecho en un objeto en la vista Datos y seleccionar Script TMDL para abrir en una nueva pestaña o al Portapapeles, como se muestra en la siguiente imagen:
Sugerencia
Se admite la selección múltiple presionando la tecla CTRL antes de crear scripts de los objetos en el editor de código de vista TMDL.
Editor de código
Una vez que haya scriptado un objeto de modelo semántico o pegado el script TMDL en el editor de código, puede usar las características de experiencia de código completas que ofrece el editor de código de vista TMDL. Las características de la experiencia de código permiten explorar los metadatos del modelo o realizar modificaciones que se pueden aplicar posteriormente al modelo semántico.
Resaltado semántico
El resaltado semántico está integrado en el editor de código, lo que mejora la legibilidad aplicando colores diferentes a partes del código en función del significado. Esta codificación de colores facilita la comprensión de la estructura y la funcionalidad del código TMDL, como se muestra en la siguiente imagen.
También puede expandir o contraer secciones del script TMDL, como se muestra en la imagen siguiente:
Autocompletar
Autocompletar está integrado en el editor de código y ofrece sugerencias inteligentes mientras escribe. Autocompletar puede acelerar el flujo de trabajo, reducir la posibilidad de errores y ayudarle a comprender las opciones de código mediante la sugerencia dinámica de posibles valores o propiedades teniendo en cuenta la posición del cursor.
También puede desencadenar la característica de autocompletar en cualquier ubicación presionando Ctrl+Espacio.
Información sobre herramientas
El tooltip contextual se muestra al pasar el ratón, proporcionando información sobre cada objeto o propiedad TMDL.
Acciones de código
Cuando el cursor está sobre un subrayado ondulante o un texto seleccionado, la vista TMDL muestra un icono de bombilla que indica las acciones de código disponibles, como generar etiquetas de linaje o corregir el nombre de las propiedades.
Formato de código
Para dar formato al código TMDL, presione Mayús + Alt + F o haga clic en la opción Formato de la cinta de opciones.
También puede dar formato al texto seleccionado mediante la opción "Formato de selección" en el menú contextual.
Diagnósticos de errores
El diagnóstico de errores integrado del editor de código le ayuda a identificar y corregir problemas resaltando los errores del lenguaje TMDL en el editor de código, con mensajes detallados que proporcionan instrucciones para resolverlos. Además, hay disponible un resumen de errores en el panel Problemas, lo que permite una navegación sencilla a la ubicación del error en el editor de código, como se muestra en la siguiente imagen.
Aplicación de cambios en el modelo semántico
Cuando esté listo, puede seleccionar el botón Aplicar para ejecutar el script TMDL en el modelo semántico y aplicar los cambios de código TMDL.
Cuando se ejecuta correctamente, se muestra una notificación y el cambio de modelado se aplica al modelo semántico.
En caso de error, se muestra una notificación de error para mostrar que los cambios de modelado no se aplicaron al modelo semántico. Para ver más información sobre el error, seleccione el vínculo Mostrar detalles de la notificación, que luego expande el panel Salida y muestra los detalles del error.
Nota
La vista TMDL modifica solo los metadatos del modelo semántico, sin actualizar los datos ni afectar al informe. Si los cambios requieren una actualización de datos, como modificar una expresión de PowerQuery o una expresión de columna calculada, debe actualizar manualmente la tabla o el modelo para que los cambios surtan efecto. Además, cambiar el nombre de un campo en la vista TMDL puede interrumpir los objetos visuales del informe que usan ese campo.
Vista previa de los cambios en el modelo semántico
La vista TMDL permite obtener una vista previa de los cambios de script mostrando una vista previa del modelo semántico antes y después de la ejecución del script, que se muestra como una diferencia de código TMDL. La vista previa de los cambios de script es especialmente útil al copiar scripts de otros orígenes, permitiéndole evaluar su impacto antes de ejecutarlos contra el modelo semántico.
Al seleccionar el botón Vista previa se muestra una diferencia tmDL del modelo semántico antes y después de ejecutar el script TMDL en la pestaña abierta.
Aparece una ventana en paralelo en el panel derecho, como se muestra en la siguiente imagen.
Los cuadros rojos y verdes resaltan los cambios, con los cuadros rojos indicando líneas quitadas o modificadas, y los cuadros verdes indicando nuevas líneas.
Nota
La comparación no se realiza directamente con el script TMDL que se muestra actualmente, sino que es más bien una comparación completa del modelo semántico antes y después de ejecutar el script. Por lo tanto, algunas propiedades se pueden ordenar de forma diferente a lo que se muestra en la pestaña, cumpliendo con el orden predeterminado de la propiedad o objeto TMDL.
La versión preliminar es de solo lectura, pero puede seguir editando el script. Para actualizar la vista previa después de los cambios, seleccione el botón Actualizar versión preliminar , como se muestra en el banner de la imagen siguiente.
Hay una barra de herramientas en la esquina superior derecha de la pantalla de vista previa que permite navegar por todas las diferencias de código, lo que le permite alternar entre diferencias en línea o en paralelo, ver u ocultar regiones sin cambios y cerrar la vista de vista previa.
Hay algunas consideraciones que debe tener en cuenta al obtener una vista previa de los cambios en el modelo semántico:
- La vista TMDL restablece las configuraciones de vista de forma predeterminada en cada ejecución de vista previa.
- Una versión preliminar solo se ejecuta con un cambio TMDL válido. Los scripts TMDL no válidos no ejecutarán una vista previa y se mostrará un error en el panel Salida.
Pestañas de script TMDL
En la vista TMDL puede tener varias pestañas de script a la vez, cualquiera de las cuales se puede cambiar o quitar.
El contenido de las pestañas de la vista TMDL se guarda en el archivo de informe cuando se guarda el informe de Power BI Desktop, de modo que puede continuar donde lo dejó la próxima vez que abra el archivo de informe de Power BI Desktop. Al guardar en un proyecto de Power BI (PBIP), cada pestaña de script se guarda como un archivo .tmdl en la carpeta \TMDLScripts, como se muestra en la siguiente imagen.
Sugerencia
Puede abrir y editar scripts TMDL en Visual Studio Code y se volverán a cargar correctamente después de reiniciar Power BI Desktop.
Los paneles Problemas y Salida muestran errores y mensajes específicos de la pestaña de script seleccionada y visualizada en ese momento. Al cambiar a otra pestaña de script TMDL, se actualizan ambos paneles con información específica de la pestaña seleccionada y mostrada actualmente.
Puede seleccionar el botón Borrar para vaciar los mensajes del panel Salida.
Los mensajes solo se conservan para cada sesión de Power BI Desktop, por lo que reiniciar Power BI Desktop borra todos los mensajes de salida de todas las pestañas de script.
Solicitud de actualización de nivel de compatibilidad
El nivel de compatibilidad de un modelo semántico de Power BI determina las características a las que se puede acceder. La vista TMDL permite agregar cualquier objeto o propiedad de Analysis Services, incluso si no está disponible en el nivel de compatibilidad actual. Al aplicar un cambio que requiera una actualización de nivel de compatibilidad, la vista TMDL proporciona un mensaje que indica qué objeto u objetos requieren la actualización.
Cambio de nombre de objeto con la vista TMDL
Para cambiar el nombre de un objeto dentro de la vista TMDL, es necesario scriptar su elemento primario. Por ejemplo, cambiar el nombre de una columna requiere generar scripts para la tabla, mientras que cambiar el nombre de una tabla requiere generar scripts para todo el modelo semántico. Obtenga más información sobre la jerarquía del modelo de objetos tabulares en el siguiente documento: Jerarquía del modelo de objetos tabulares.
Con la vista TMDL, el cambio de nombre masivo se puede realizar de forma eficaz mediante patrones de búsqueda y reemplazo sencillos. Por ejemplo, puede cambiar el nombre de todas las columnas de tabla a minúsculas siguiendo estos pasos.
Abra la vista TMDL y cree un script en la tabla que desea modificar.
Presione CTRL+F para abrir el cuadro de diálogo buscar y reemplazar, asegúrese de que la opción Expresión regular está habilitada.
Escriba los siguientes patrones en los campos buscar y reemplazar y seleccione Reemplazar todo.
Acción | Patrón/Reemplazo |
---|---|
Buscar | (^\s+column\s+)(.+) |
Reemplazar | $1\L$2 |
Ejecute el script TMDL para cambiar el nombre de todas las columnas de tabla a minúsculas al instante:
Observe que el nombre de columna será diferente de la propiedad sourceColumn.
La sincronización entre la tabla del modelo semántico y la consulta de Power Query se basa en sourceColumn, lo que mantiene los nombres independientes. Al abrir el editor de Power Query, se mostrarán los nombres de columna que coinciden con sourceColumn, en lugar del nombre de columna del modelo. Además, cambiar el nombre de una columna en la interfaz de usuario no agregará automáticamente un paso de cambio de nombre a la consulta hasta que sourceColumn y el nombre de columna sean idénticos.
Vista TMDL y proyecto de Power BI
Cuando guarda su trabajo como un proyecto de Power BI (PBIP), obtiene acceso a los metadatos de definición de su modelo semántico como archivos TMDL, lo que proporciona una experiencia útil de control de código fuente y codesarrollo, al tiempo que le permite realizar cambios en el modelo semántico fuera de Power BI Desktop. Sin embargo, si modifica los archivos TMDL dentro del PBIP, debe reiniciar Power BI Desktop para volver a cargar esos cambios. En cambio, la vista TMDL sigue un modelo mental de scripting, lo que le permite aplicar cambios de forma eficaz directamente al modelo semántico que se edita en Power BI Desktop mediante TMDL, independientemente de si el formato de archivo es PBIX o PBIP.
Puede integrar perfectamente ambas experiencias. Por ejemplo, puede actualizar la definición de TMDL en PBIP para obtener cambios rápidos sin iniciar Power BI Desktop y usar la vista TMDL cuando Power BI Desktop ya está abierto para implementar eficazmente una serie de cambios en el modelo semántico mediante TMDL. Ambos enfoques ofrecen una experiencia de codificación TMDL enriquecida y coherente.
Casos de uso comunes para la vista TMDL
escenario: necesito reutilizar o compartir una tabla de modelo semántico con su definición completa, incluidas las columnas, la expresión de Power Query y la ordenación por configuración, y otras en otro modelo semántico.
solución: Abrir el modelo semántico con la tabla, crear un script con la vista TMDL. Copia el script en la otra ventana de Power BI Desktop, abre la pestaña vista TMDL y aplica el script.
Escenario: He nombrado todas mis tablas con los prefijos "dim_" o "fact_". Me gustaría quitar estos prefijos sin actualizar manualmente cada una de las más de 100 tablas.
Solución: Abrir la vista TMDL, crear el script del modelo semántico, buscar el prefijo (se admiten expresiones regulares) y reemplazarlo con un texto vacío.
Escenario: Necesito crear una perspectiva en mi modelo semántico para utilizar la función de objetos visuales personalizados. Sin embargo, no puedo crearlo ni editarlo mediante la interfaz gráfica de Power BI Desktop.
solución: Abrir la vista TMDL, crear una nueva pestaña vacía (o usar el script desde una perspectiva existente) y, a continuación, crear o editar la perspectiva mediante TMDL. Este método también se aplica a otros metadatos del modelo semántico que carecen de una interfaz gráfica, como traducciones, expresiones de fila de detalle y otras.
createOrReplace
perspective SalesView
perspectiveTable Sales
perspectiveMeasure 'Sales Amount'
perspectiveMeasure 'Sales Qty'
perspectiveColumn Quantity
perspectiveColumn 'Amount'
escenario: necesito modificar la expresión de Power Query de mi tabla sin desencadenar una actualización.
Solución: Script de la tabla, modifique la expresión de Power Query y aplique los cambios. La vista TMDL no requiere actualizar los datos.
Escenario: necesito cambiar el modo de almacenamiento de mi tabla de DirectQuery a Importar y viceversa
Solución: Escriba el script de la tabla, actualice el modo de partición y aplique los cambios.
escenario: necesito realizar una copia de seguridad de la definición del modelo semántico antes de realizar cambios significativos y revertir fácilmente a una definición anterior, si es necesario.
Solución: Crear un script del modelo semántico o de partes específicas de las que desea realizar una copia de seguridad, hacer los cambios en otras vistas y, si es necesario, volver a la vista TMDL para restaurar la metainformación previa ejecutando el script guardado.
Consideraciones y limitaciones
La vista TMDL está actualmente en versión preliminar, por lo que debe tener en cuenta las siguientes limitaciones:
- Puede usar la vista TMDL para editar cualquier objeto o propiedad dentro de un modelo semántico. Sin embargo, las modificaciones incompletas o incorrectas pueden provocar un comportamiento inesperado. Para obtener más instrucciones sobre estas operaciones, consulte el artículo Creación de modelos.
- La paleta comandos muestra algunos comandos que no se admiten actualmente.
- La configuración de la Integración Git inicial desde el área de trabajo no incluirá los scripts de vista TMDL guardados en el modelo semántico publicado. Obtenga más información en el artículo integración de Git de Fabric.
- No se pueden crear scripts de grupos de exploradores de modelos, como Medidas, Columnas, etc.
Contenido relacionado
En los artículos siguientes se describe más sobre TMDL y sus usos.