Los metadatos del conjunto de documentos no se sincronizan con los archivos: causa raíz y solución
🔍 WiseChecker

Los metadatos del conjunto de documentos no se sincronizan con los archivos: causa raíz y solución

Cuando actualiza los metadatos de un conjunto de documentos en SharePoint, espera que esos valores aparezcan en cada archivo del conjunto. Muchos usuarios descubren que los metadatos no se sincronizan con los archivos, dejando columnas vacías o desactualizadas en documentos individuales. Este problema ocurre porque SharePoint almacena los metadatos del conjunto de documentos a nivel del conjunto, no a nivel de archivo individual, y el mecanismo de propagación integrado no se activa automáticamente en todos los escenarios. Este artículo explica la causa raíz del fallo de sincronización y proporciona una solución paso a paso para propagar los metadatos del conjunto de documentos a todos los archivos del conjunto.

Conclusiones clave: Solución para la sincronización de metadatos del conjunto de documentos

  • Los metadatos del conjunto de documentos se almacenan a nivel del conjunto: Los archivos heredan los valores solo cuando la acción de propagación se ejecuta manualmente o se configura en un flujo de trabajo.
  • Flujo de trabajo de SharePoint Designer 2013: El método más confiable para sincronizar los metadatos del conjunto con todos los archivos al actualizarlos.
  • Configuración de columnas en el tipo de contenido: Debe tener habilitada la opción “Propagar cambios a los elementos del conjunto de documentos” para cada columna sincronizada.

ADVERTISEMENT

Por qué los metadatos del conjunto de documentos no se sincronizan con los archivos

Un conjunto de documentos en SharePoint es un tipo de contenido especial que agrupa varios archivos. Los campos de metadatos del conjunto de documentos son columnas compartidas: aparecen en la página de propiedades del conjunto y en cada archivo del conjunto. Sin embargo, los valores que ingresa en el conjunto no se escriben automáticamente en los archivos individuales. SharePoint trata el conjunto de documentos como un contenedor, no como un elemento principal que propaga datos hacia abajo de forma predeterminada.

El mecanismo de sincronización requiere un desencadenante específico. SharePoint incluye una función de propagación que copia los metadatos del conjunto de documentos a sus archivos, pero esta función debe habilitarse por columna y luego ejecutarse. Sin ese desencadenante, los archivos conservan sus propios valores de metadatos, que a menudo están vacíos o desactualizados.

La causa raíz es la ausencia de un receptor de eventos automático que propague los cambios de metadatos. Cuando actualiza una columna en el conjunto de documentos, SharePoint no actualiza automáticamente los archivos que contiene. La acción de propagación debe iniciarse manualmente, mediante un flujo de trabajo o mediante una solución personalizada. Este diseño evita problemas de rendimiento en conjuntos grandes, pero deja a muchos usuarios confundidos cuando los metadatos no se sincronizan.

Pasos para sincronizar los metadatos del conjunto de documentos con los archivos

Utilice el siguiente método para habilitar y ejecutar la sincronización de propagación. Este proceso utiliza SharePoint Designer 2013, que aún es compatible con SharePoint local y SharePoint Online (modo clásico). Si utiliza SharePoint Online moderno, considere un flujo de Power Automate como alternativa.

  1. Habilite la propagación en el tipo de contenido del conjunto de documentos
    Vaya a Configuración del sitio > Tipos de contenido del sitio. Busque el tipo de contenido del conjunto de documentos. Haga clic en él y luego en Configuración del conjunto de documentos. En “Tipos de contenido permitidos”, asegúrese de que los tipos de contenido que desea sincronizar estén listados. Desplácese hasta “Columnas compartidas” y seleccione las columnas que deben sincronizarse con los archivos. Marque la casilla “Propagar cambios a los elementos del conjunto de documentos” para cada columna. Haga clic en Aceptar.
  2. Cree un flujo de trabajo de SharePoint Designer 2013 en el conjunto de documentos
    Abra SharePoint Designer 2013. Conéctese a su sitio. En Objetos, seleccione la lista o biblioteca que contiene los conjuntos de documentos. Haga clic en Flujos de trabajo > Nuevo > Flujo de trabajo de SharePoint 2013. Asígnele el nombre “Sincronizar metadatos del conjunto de documentos”.
  3. Configure el flujo de trabajo para propagar los metadatos al cambiar
    En el diseñador de flujos de trabajo, agregue un paso que se ejecute “cuando se crea un elemento” y “cuando se modifica un elemento”. Agregue una acción: “Llamar servicio web HTTP”. Utilice el siguiente punto final REST:
    _api/web/lists/getbytitle('YourLibrary')/items(CurrentItem:ID)/DocumentSetFields/Propagate
    Establezca los encabezados de solicitud para aceptar JSON e incluya el valor de digest. Esta acción activa la propagación para el conjunto de documentos actual.
  4. Publique y asocie el flujo de trabajo
    Guarde el flujo de trabajo y publíquelo. Asocie el flujo de trabajo con el tipo de contenido del conjunto de documentos en la biblioteca. Configure el flujo de trabajo para que se inicie automáticamente cuando se cree o modifique un elemento.
  5. Pruebe la sincronización
    Agregue un nuevo conjunto de documentos o actualice los metadatos de uno existente. Verifique los archivos dentro del conjunto: sus metadatos ahora deben coincidir con los valores del conjunto. Si la sincronización falla, verifique que la URL del punto final REST sea correcta y que el nombre de la biblioteca coincida exactamente.

ADVERTISEMENT

Problemas comunes cuando los metadatos del conjunto de documentos no se sincronizan

Las actualizaciones de metadatos solo funcionan en conjuntos recién creados

Si habilita la propagación solo después de que los conjuntos ya existen, es posible que los conjuntos existentes no se sincronicen. Ejecute el flujo de trabajo manualmente en cada conjunto de documentos existente o use un script de PowerShell para activar la acción de propagación en todos los conjuntos. En PowerShell, use el método CSOM DocumentSet.Propagate en cada conjunto.

Los valores de columna aparecen en blanco en los archivos después de la propagación

Esto ocurre cuando la columna no está marcada como columna compartida en la configuración del conjunto de documentos. Verifique que la columna esté en la lista “Columnas compartidas” y que la casilla de propagación esté seleccionada. También confirme que la columna exista en el tipo de contenido del archivo.

El flujo de trabajo falla con “Acceso denegado”

La cuenta del flujo de trabajo necesita al menos permisos de edición en la biblioteca. Si usa un flujo de trabajo de SharePoint 2013 con paso de aplicación, el flujo de trabajo se ejecuta con privilegios de cuenta de sistema, lo que omite las comprobaciones de permisos. Alternativamente, use un flujo de Power Automate con la acción “Enviar una solicitud HTTP a SharePoint” y proporcione las credenciales del propietario del sitio.

Propagación manual vs. flujo de trabajo vs. Power Automate: diferencias clave

Elemento Propagación manual (Configuración del sitio) Flujo de trabajo de SharePoint Designer Flujo de Power Automate
Desencadenante Ninguno: debe ejecutarse por conjunto Automático al crear o modificar un elemento Automático al crear o modificar un elemento
Facilidad de configuración Simple: solo casillas de verificación Moderada: requiere Designer y llamada REST Moderada: requiere acción HTTP y digest
Fiabilidad para conjuntos grandes Buena: acción integrada de SharePoint Buena: se ejecuta sincrónicamente Regular: puede agotar el tiempo de espera en conjuntos con muchos archivos
Compatible con SharePoint Online Sí (solo modo clásico) Sí (solo modo clásico) Sí (moderno y clásico)

Después de habilitar la configuración de columna de propagación y configurar un flujo de trabajo automático, los metadatos del conjunto de documentos se sincronizarán con los archivos de manera consistente. Pruebe la configuración con un conjunto pequeño primero. Si usa SharePoint Online moderno, cambie a Power Automate para una mejor compatibilidad. Para un control avanzado, examine el punto final REST _api/web/lists/getbytitle('Library')/items(ID)/DocumentSetFields/Propagate: activa la misma propagación que usa la casilla manual.

ADVERTISEMENT