DvSchemaSync puede sincronizar la mayoría de las tablas de Dataverse con Azure SQL Database. En esta página se explica qué tablas son compatibles y cuáles son las limitaciones.
Tipos de tablas
Tablas personalizadas (entidades):
Todas las tablas personalizadas creadas en su entorno Dataverse son totalmente compatibles. Esto incluye tablas con prefijos personalizados (por ejemplo, cr123_customtable), así como tablas de soluciones instaladas.
Tablas estándar:
Se admiten las tablas estándar comunes de Microsoft Dataverse, incluidas las de cuenta, contacto, cliente potencial, oportunidad, caso y la mayoría de las demás tablas relacionadas con CRM.
Tablas del sistema:
Hay disponibles tablas del sistema limitadas para la sincronización. Entre ellas se incluyen tablas como Usuario del sistema, Equipo, Unidad de negocio y Moneda de transacción, que a menudo son necesarias para informar sobre relaciones.
Tablas que se sincronizan habitualmente
Las siguientes tablas estándar se sincronizan con frecuencia con fines de generación de informes:
| Nombre de la tabla | Nombre lógico | Notas |
|---|---|---|
| Cuenta | cuenta | Organizaciones, empresas |
| Contacto | contacto | Personas físicas |
| Responsable | cliente potencial | Oportunidades de venta |
| Oportunidad | oportunidad | Oportunidades de venta |
| Caso | Incidente | Casos/tickets de servicio |
| Actividad | indicador de actividad | Correos electrónicos, llamadas, tareas, etc. |
| Usuario del sistema | systemuser | Usuarios para búsquedas de propiedad |
| Equipo | equipo | Asignaciones de equipo |
| Unidad de negocio | businessunit | Jerarquía organizativa |
| Moneda | transactioncurrency | Referencias de moneda |
Limitaciones
Tablas que no se pueden sincronizar:
• Tablas virtuales: las tablas respaldadas por fuentes de datos externas no se pueden sincronizar.
• Tablas elásticas: las tablas respaldadas por Azure Cosmos DB tienen patrones de consulta diferentes.
• Columnas de imagen/archivo: las columnas de datos binarios se omiten durante la sincronización.
💡 Sugerencia: Si una tabla no aparece en la lista de selección, es posible que sea una tabla virtual o que no tenga permisos de lectura concedidos al usuario de la aplicación.
Tablas creadas por DvSchemaSync
Además de sincronizar las tablas de Dataverse, DvSchemaSync crea varias tablas de sistema en la base de datos SQL para admitir búsquedas de conjuntos de opciones, historial de auditoría e informes más completos.
Tablas de conjuntos de opciones
optionset (conjuntos de opciones locales)
Tabla consolidada que contiene todas las definiciones de conjuntos de opciones locales (listas de selección) de todas las entidades sincronizadas. Se crea al seleccionar «OptionSet (sys)» en el panel Tablas del sistema.
| Columna | Tipo | Descripción |
|---|---|---|
| id | INT IDENTITY | Clave principal generada automáticamente |
| entity_logical_name | NVARCHAR(100) | La tabla que contiene este conjunto de opciones (por ejemplo, cuenta) |
| attribute_logical_name | NVARCHAR(100) | El nombre de la columna (por ejemplo, industrycode). |
| valor_opción | INT | El valor numérico de la opción |
| option_label | NVARCHAR(400) | La etiqueta de visualización de la opción |
| option_lcid | INT | Código de idioma (predeterminado 1033 = inglés) |
| option_color | NVARCHAR(50) | Código de color si está definido en Dataverse |
| state_code | INT | Estado asociado (para las opciones de motivo del estado) |
status_optionset (Estado y motivo del estado)
Una tabla consolidada específica para conjuntos de opciones relacionadas con el estado (statecode, statuscode y listas de selección). Se crea al seleccionar «Estado», «Motivo del estado» o «Listas de selección» en el panel Tablas del sistema.
El esquema es idéntico al de la tabla de conjuntos de opciones, lo que le permite consultar los valores de estado por separado de las listas de selección generales.
Tablas de auditoría
audit (Registros de auditoría)
Contiene registros de auditoría de Dataverse que muestran quién cambió qué y cuándo. Se crea al seleccionar «audit» en el panel Tablas del sistema. Requiere que la auditoría esté habilitada en su entorno Dataverse.
| Columna | Tipo | Descripción |
|---|---|---|
| auditid | UNIQUEIDENTIFIER | Clave principal: ID único del registro de auditoría |
| action | INT | Código de acción (1 = Crear, 2 = Actualizar, 3 = Eliminar, etc.) |
| action_name | NVARCHAR(100) | Nombre de la acción legible para humanos |
| objectid | UNIQUEIDENTIFIER | ID del registro que se modificó |
| objecttypecode | INT | Código de tipo de entidad del registro modificado |
| entity_name | NVARCHAR(128) | Nombre lógico de la entidad (por ejemplo, contacto) |
| userid | UNIQUEIDENTIFIER | ID del usuario que realizó el cambio |
| createdon | DATETIME2 | Cuándo se produjo el cambio |
| changedata | NVARCHAR(MAX) | JSON que contiene cambios detallados de atributos |
| synced_on | DATETIME2 | Cuando este registro se sincronizó con SQL |
auditdetail (Cambios en los atributos de auditoría)
Contiene cambios detallados a nivel de atributos extraídos del JSON changedata de la tabla de auditoría. Cada fila representa un campo que ha cambiado, con los valores antiguos y nuevos. Se crea automáticamente al sincronizar los registros de auditoría.
| Columna | Tipo | Descripción |
|---|---|---|
| auditdetailid | UNIQUEIDENTIFIER | Clave principal: ID único del registro de detalles |
| auditid | UNIQUEIDENTIFIER | Clave externa de la tabla de auditoría |
| attributename | NVARCHAR(100) | Nombre lógico del campo modificado |
| oldvalue | NVARCHAR(MAX) | Valor anterior (sin procesar) |
| newvalue | NVARCHAR(MAX) | Nuevo valor (sin procesar) |
| valorantiguo_formateado | NVARCHAR(MAX) | Valor anterior (etiqueta de visualización) |
| newvalue_formatted | NVARCHAR(MAX) | Nuevo valor (etiqueta de visualización) |
| fecha_modificada | DATETIME2 | Cuándo se produjo el cambio |
Ejemplo: Consultar el historial de auditoría con detalles
SELECT a.entity_name, a.action_name, a.createdon, d.attributename, d.oldvalue_formatted, d.newvalue_formatted FROM audit a JOIN auditdetail d ON d.auditid = a.auditid WHERE a.entity_name = 'contact' ORDER BY a.createdon DESC
✓ Ventajas: estas tablas del sistema le permiten crear informes de seguimiento de auditoría que muestran quién cambió qué y cuándo, crear paneles de cumplimiento normativo y resolver valores de conjuntos de opciones en etiquetas sin búsquedas manuales.