📋 Manual para Solucionar el Error CDS0006: TimeZoneIndependent DateTimeBehavior
en Power Platform y Dynamics 365 Sales
Error Inicial:
El error CDS0006: TimeZoneIndependent DateTimeBehavior is not supported by BC Runtime
indica que el campo está configurado con un comportamiento Independiente de la zona horaria
, el cual no es compatible con el entorno de Business Central Runtime. Esto significa que no puedes editar o cambiar este comportamiento directamente desde la interfaz de usuario de Power Platform o Dynamics 365 Sales.
Permisos Necesarios
Para realizar estos cambios, debes contar con uno de los siguientes roles:
- System Customizer: Permite personalizar tablas y columnas.
- Administrador del Sistema: Tiene permisos completos para realizar cualquier modificación.
Si no cuentas con estos permisos, solicita al administrador del sistema que te los otorgue.
Solución Paso a Paso
Paso 1: Acceder a Power Platform
- Ingresa al portal de Power Apps: https://make.powerapps.com.
- Asegúrate de estar en el entorno correcto donde se encuentran los datos y columnas que necesitas modificar.
- Inicia sesión con un usuario que tenga permisos de System Customizer o Administrador del Sistema.
Paso 2: Localizar la Tabla y el Campo que Deseas Modificar
- En el menú de la izquierda, selecciona Dataverse y luego Tablas.
- Busca la tabla donde se encuentra el campo problemático (ejemplo: «Customer Risk Request»).
- Haz clic en la tabla para acceder a sus detalles.
Paso 3: Verificar y Configurar la Columna
- Dentro de la tabla seleccionada, haz clic en Columnas.
- Localiza el campo
ize_requestdate
,ize_resolutiondate
, oize_coverageexpirationdate
.
❗Nota Importante: No es posible modificar directamente el campo.
Ni en Power Platform

Ni en CRM Sales, Configuración avanzada

La configuración de TimeZoneIndependent
es un ajuste que no puede ser modificado una vez que el campo ha sido creado. Por lo tanto, la única manera de solucionar este problema es eliminar el campo y volver a crearlo con el comportamiento adecuado.
Paso 4: Eliminar y Volver a Crear el Campo
- Eliminar el campo:
- Haz clic en el campo y selecciona la opción Eliminar.
- Confirma la eliminación. Advertencia: asegúrate de que no haya datos críticos que dependan de este campo antes de eliminarlo.
- Crear un nuevo campo:
- Haz clic en + Agregar columna.
- Define el nuevo campo con el mismo nombre lógico o uno nuevo si deseas.
- Selecciona el tipo de datos como Fecha y hora y establece el comportamiento a User Local o DateOnly en lugar de
TimeZoneIndependent
. - Configura las opciones adicionales según sea necesario y guarda los cambios.
- Publicar los cambios:
- Después de crear el nuevo campo, selecciona la opción Publicar todo para asegurarte de que los cambios se apliquen correctamente.
🚀 Verificación y Pruebas Finales
- Verifica que el nuevo campo funcione correctamente y que no aparezcan advertencias de
CDS0006
. - Asegúrate de que cualquier flujo de trabajo, reglas de negocio, o procesos que usen este campo se actualicen para utilizar el nuevo campo.
Alternativa (Método Avanzado) Usando el SDK de Dynamics 365 o PowerShell
Si no deseas eliminar y volver a crear el campo, y prefieres intentar ajustar el comportamiento mediante código, puedes hacerlo usando el SDK de Dynamics 365. Sin embargo, este enfoque es menos recomendado y se debe considerar como última opción.
Código de Ejemplo para el SDK de Dynamics 365 (C#)
csharpCopiar código// Ejemplo de código C# utilizando el SDK de Dynamics
static void UpdateBehaviorOfDateTimeColumn(IOrganizationService service)
{
// Recuperar la columna que deseas modificar
RetrieveAttributeRequest retrieveColumnRequest = new RetrieveAttributeRequest
{
EntityLogicalName = "nombre_de_entidad",
LogicalName = "ize_coverageexpirationdate",
RetrieveAsIfPublished = false
};
RetrieveAttributeResponse attributeResponse = (RetrieveAttributeResponse)service.Execute(retrieveColumnRequest);
DateTimeAttributeMetadata retrievedAttributeMetadata = (DateTimeAttributeMetadata)attributeResponse.AttributeMetadata;
// Cambiar el comportamiento a UserLocal o DateOnly
retrievedAttributeMetadata.DateTimeBehavior = DateTimeBehavior.UserLocal;
retrievedAttributeMetadata.Format = Microsoft.Xrm.Sdk.Metadata.DateTimeFormat.DateOnly;
// Actualizar el atributo
UpdateAttributeRequest updateRequest = new UpdateAttributeRequest
{
Attribute = retrievedAttributeMetadata,
EntityName = "nombre_de_entidad",
MergeLabels = false
};
service.Execute(updateRequest);
// Publicar los cambios
PublishXmlRequest pxReq = new PublishXmlRequest
{
ParameterXml = "<importexportxml><entities><entity>nombre_de_entidad</entity></entities></importexportxml>"
};
service.Execute(pxReq);
}
- Este código se debe utilizar con cuidado y requiere conocimientos técnicos en C# y el SDK de Dynamics 365.
⚠️ Notas Importantes:
- Método Recomendado: Eliminar y volver a crear el campo es el enfoque más seguro y garantizado para resolver el problema.
- Campos en Soluciones Gestionadas: Si el campo es parte de una solución gestionada, ponte en contacto con el proveedor de la solución para que realice los cambios.
- Pruebas: Realiza siempre los cambios en un entorno de desarrollo antes de aplicarlos en producción para evitar interrupciones.
Este manual proporciona un enfoque claro y seguro para resolver el problema del campo TimeZoneIndependent
y asegurar la correcta funcionalidad en tu entorno de Power Platform o Dynamics 365 Sales.