Cómo solucionar el problema de que el formato JSON de columna no se muestra
🔍 WiseChecker

Cómo solucionar el problema de que el formato JSON de columna no se muestra

Aplicó formato JSON a una columna de lista o biblioteca de SharePoint, pero la columna muestra texto sin formato o ningún formato. Este problema suele ocurrir porque el código JSON contiene un error de sintaxis, el tipo de columna no admite la regla de formato o la caché del navegador bloquea la representación. Este artículo explica las causas comunes de los fallos de formato JSON y proporciona métodos paso a paso para diagnosticar y solucionar el problema.

El formato JSON de columna en SharePoint utiliza un esquema específico que debe ser válido y coincidir con el tipo de columna de destino. Cuando el código tiene una coma faltante, un nombre de propiedad incorrecto o un operador no compatible, SharePoint no aplica el formato silenciosamente. Aprenderá a validar su JSON, comprobar la compatibilidad de la columna y eliminar los bloqueadores de representación para que su formato se muestre correctamente.

Siguiendo las instrucciones a continuación, puede identificar la línea exacta que causa el fallo y aplicar una solución confiable. La guía también cubre problemas relacionados, como el formato que no se actualiza después de ediciones y el formato que desaparece después de la migración del sitio.

Conclusiones clave: Diagnóstico de fallos de formato JSON de columna

  • Formateador JSON en SharePoint > Columna > Dar formato a esta columna: Abre el editor JSON donde debe pegar su código y validarlo en vivo.
  • Validador JSON en jsonlint.com: Use esta herramienta externa para verificar errores de sintaxis como comas o corchetes faltantes.
  • Verificación del tipo de columna en la configuración de la lista: El formato JSON solo funciona en tipos compatibles: Línea de texto, Número, Opción, Persona y Fecha/Hora.

ADVERTISEMENT

Por qué el formato JSON de columna no se muestra

SharePoint utiliza un esquema JSON que define cómo aparecen los valores de columna en las vistas de lista. Cuando pega código JSON en el panel de formato, SharePoint lo analiza y aplica las reglas. Si el código tiene algún error de sintaxis (como una coma faltante, un corchete adicional o un nombre de propiedad mal escrito), el analizador se detiene y vuelve a la visualización de texto sin formato predeterminada. El navegador no muestra un mensaje de error de forma predeterminada, lo que dificulta detectar el problema.

Una segunda causa común es la falta de coincidencia del tipo de columna. El esquema de formato JSON incluye operadores condicionales como ==, contains y startsWith. Estos operadores requieren un tipo de datos específico. Por ejemplo, no puede usar startsWith en una columna Número porque los números no admiten métodos de cadena. De manera similar, el token @currentField debe coincidir con el tipo de columna que está formateando.

El almacenamiento en caché del navegador también puede hacer que se muestre un formato obsoleto incluso después de guardar JSON correcto. SharePoint almacena el formato en la caché del navegador por rendimiento. Si la caché no se borra, la versión anterior continúa mostrándose. Esto es común después de editar el JSON varias veces en rápida sucesión.

Tipos de columna compatibles con el formato JSON

Los siguientes tipos de columna admiten formato JSON:

  • Línea de texto
  • Número
  • Opción (solo selección única)
  • Persona o grupo (selección única)
  • Fecha y hora
  • Sí/No
  • Hipervínculo o imagen

Los tipos de columna que NO admiten formato JSON incluyen: Varias líneas de texto, Búsqueda, Metadatos administrados, Moneda (use Número en su lugar) y columnas calculadas. Si aplica formato a una columna no compatible, SharePoint ignora el código por completo.

Pasos para diagnosticar y corregir el formato JSON de columna que no se muestra

Siga estos pasos en orden. Cada paso elimina una posible causa.

  1. Valide la sintaxis JSON usando una herramienta externa
    Abra un validador JSON como jsonlint.com. Copie todo el código JSON de su panel de formato de columna y péguelo en el validador. Haga clic en el botón Validar. Si el validador muestra un error, anote el número de línea y el mensaje. Los errores comunes incluyen: coma faltante entre propiedades, coma final adicional, corchetes no coincidentes y nombres de propiedad sin comillas. Corrija el error en su editor de código y vuelva a validar hasta que el JSON sea válido.
  2. Verifique el tipo de columna en la configuración de la lista
    Vaya a la lista que contiene la columna. Seleccione el icono de engranaje y elija Configuración de lista. Localice el nombre de la columna en la sección Columnas. Haga clic en el nombre de la columna y verifique el campo Tipo. Si el tipo no está en la lista de compatibles anterior, el formato JSON nunca se mostrará. Cambie el tipo de columna a uno compatible o cree una nueva columna con un tipo compatible y mueva su formato allí.
  3. Revise el esquema JSON para detectar operadores no coincidentes
    En su código JSON, busque operadores como ==, !=, contains, startsWith, length y indexOf. Asegúrese de que el operador coincida con el tipo de columna. Para una columna Número, use == o != con valores numéricos. Para una columna de texto, puede usar contains o startsWith. Si usa startsWith en un número, reemplácelo con == y un valor numérico.
  4. Borre la caché del navegador y vuelva a cargar la lista
    Presione Ctrl+F5 (Windows) o Cmd+Shift+R (Mac) para forzar una recarga completa de la página. Esto omite la caché del navegador y obtiene el formato más reciente del servidor. Si el formato ahora aparece, el problema estaba relacionado con la caché. Para evitar futuros problemas de caché, abra la lista en una ventana de incógnito o privada mientras edita el formato JSON.
  5. Pruebe con un fragmento JSON mínimo
    Reemplace todo su código JSON con este ejemplo mínimo:
    { "$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json", "elmType": "div", "txtContent": "@currentField" }
    Guarde el formato. Si la columna ahora muestra el valor del campo dentro de un div, su JSON original tiene un error estructural. Agregue gradualmente sus reglas de formato una por una, probando después de cada adición, hasta encontrar la regla que falla.
  6. Verifique que la columna no esté oculta o eliminada de la vista
    En la lista, seleccione la flecha desplegable junto al encabezado de una columna y elija Configuración de columna > Mostrar/ocultar columnas. Asegúrese de que la columna que está formateando esté marcada. Si está oculta, el formato no se mostrará. También verifique la configuración de la vista: vaya a la lista, haga clic en los tres puntos junto a Todos los elementos y seleccione Editar vista actual. Confirme que la columna esté agregada a la vista.

ADVERTISEMENT

Si el formato JSON aún tiene problemas después de la solución principal

Incluso después de aplicar los pasos anteriores, algunos escenarios causan problemas persistentes de representación. Las siguientes subsecciones cubren los más comunes.

El formato JSON funciona en modo de edición pero no en modo de vista

Esto sucede cuando el código JSON hace referencia a un campo que no existe en la vista actual. Por ejemplo, si su formato usa [$AssignedTo.title] pero la columna AssignedTo no está agregada a la vista, SharePoint no puede resolver la referencia. Agregue la columna faltante a la vista editando la vista y seleccionando la columna. Guarde la vista y vuelva a cargar la lista.

El formato JSON desaparece después de la migración o copia del sitio

Cuando mueve una lista entre sitios usando PowerShell, herramientas de terceros o la función Guardar como plantilla, el formato JSON puede no transferirse. El formato se almacena en el esquema de la columna, que no siempre se exporta. Después de la migración, vuelva a aplicar el formato manualmente. Abra la configuración de la columna, seleccione Dar formato a esta columna y pegue el código JSON original. Guarde el formato.

El formato JSON se muestra diferente en móvil o vista moderna

SharePoint representa el formato JSON de manera diferente en la vista de lista moderna versus la aplicación móvil. Algunas propiedades CSS como padding, margin y flex-direction se comportan de manera inconsistente. Para verificar la representación móvil, abra la lista en un navegador móvil o use las herramientas de desarrollo del navegador para simular una ventana móvil. Ajuste su JSON para usar unidades relativas como em o valores porcentuales en lugar de valores fijos en píxeles.

Formato JSON de columna: tipos de columna compatibles vs no compatibles

Tipo de columna Formato JSON compatible Caso de uso común
Línea de texto Codificación de color condicional basada en el valor de texto
Número Barras de progreso o iconos condicionales para umbrales
Opción Insignias de estado con colores personalizados por opción
Persona o grupo Mostrar foto de perfil y nombre del usuario
Fecha y hora Resaltar fechas vencidas con fondo rojo
Sí/No Mostrar icono de marca de verificación o cruz
Hipervínculo o imagen Botón de enlace personalizado con efecto hover
Varias líneas de texto No Use Línea de texto en su lugar
Búsqueda No Cree una columna calculada para mostrar el valor de búsqueda
Metadatos administrados No Use una columna de texto con ID de término en su lugar
Calculada No Aplique formato directamente a las columnas de origen

Ahora puede diagnosticar sistemáticamente por qué su formato JSON de columna no se muestra. Comience validando la sintaxis con una herramienta externa y confirmando que el tipo de columna sea compatible. Use el fragmento de prueba mínimo para aislar errores. Borre la caché del navegador después de cada edición. Para problemas persistentes, verifique la configuración de la vista y la compatibilidad móvil. La próxima vez que cree una regla de formato, pruébela primero con una sola condición para evitar errores complejos. Consejo avanzado: use la consola de desarrollador del navegador (F12) y busque errores relacionados con JSON en la pestaña Consola mientras se carga la lista; SharePoint puede registrar fallos de análisis allí.

ADVERTISEMENT