Error en los vínculos de estado del flujo de trabajo después de instalar la CU de julio de 2026

Se aplica a
SharePoint Server Subscription Edition SharePoint Server 2019 SharePoint Server 2016

Síntomas

Cuando se selecciona un vínculo de estado de flujo de trabajo, WrkStat.aspx muestra el siguiente mensaje de error: "El parámetro WorkflowInstanceID no es válido". Esto ocurre porque el valor de WorkflowInstanceID de la dirección URL está sobrecodificado, lo que hace que cada % se codifique como %25 (y, en algunos casos, como %2525).

Estado WorkflowInstanceID Valor
Corregir ...&WorkflowInstanceID=%7b5C3B04B5%2d7099%2d42A9%2d8073%2dEBB154B9EAC9%7d
Broken (doble codificación) ...&WorkflowInstanceID=%257b5C3B04B5%252d7099%252d42A9%252d8073%252dEBB154B9EAC9%257d
Broken (triple codificación) ...&WorkflowInstanceID=%25257b...%25252d...%25257d

Se incluirá una corrección permanente para este error en una próxima actualización de Microsoft SharePoint. Hasta entonces, puede usar la regla de reescritura de direcciones URL de IIS que se proporciona en este artículo como solución alternativa para restaurar los vínculos de estado del flujo de trabajo sin modificar los datos almacenados. La regla corrige la dirección URL mientras se procesa la solicitud. Por lo tanto, no se realizan cambios en los datos almacenados en las listas.

Los vínculos en sí no están dañados en el almacenamiento. El valor de WorkflowInstanceID se sobrecodifica solo cuando se representa la página. Por lo tanto, esta solución alternativa es segura de usar y deja de funcionar automáticamente después de instalar la corrección oficial, porque los vínculos codificados correctamente se dejan sin cambios.

Solución alternativa

Requisitos previos

  • Acceso de administrador a cada servidor front-end web (WFE) de la granja de servidores.

  • IIS URL Rewrite 2.1 instalado en cada WFE. Si el módulo aún no está instalado, descárguelo del sitio web de IIS. (Si el módulo no está instalado, al agregar la regla de reescritura se producirá un error "HTTP 500.19").

Para solucionar este problema, realice los pasos siguientes en cada servidor WFE que sirve a los sitios afectados.

Opción 1: abrir la página Estado del flujo de trabajo mediante el menú

Abra la página Estado del flujo de trabajo desde el menú del documento en lugar de usar el vínculo de estado del flujo de trabajo:

  1. Seleccione el menú situado junto al documento.
  2. Seleccione Más>flujo de trabajo.
  3. Seleccione Estado interno.

Se muestra la página de estado del flujo de trabajo. Consulte las capturas de pantalla siguientes.

workflow-start-page1

workflow-start-page2

Opción 2: Agregar la regla directamente a web.config

Si prefiere editar el archivo manualmente (o si está programando el cambio en varios servidores):

  1. Busque el archivo de la aplicación web de web.config contenido. Normalmente, el archivo se almacena en la siguiente ubicación:

    C:\inetpub\wwwroot\wss\VirtualDirectories\<port>\web.config (<port> is the port of the affected web application, e.g. 80 or 443.)
    
  2. Haga una copia de seguridad del archivo copiándolo en una ubicación segura.

  3. Abrir web.config en un editor de texto y buscar la <system.webServer> sección.

  4. Agregue el <rewrite> bloque que se muestra en el código siguiente a la <system.webServer> sección. Si ya existe una <rewrite> sección, agregue únicamente el <rule> elemento a esta <rules> .

<rewrite> 
  <rules> 
    <rule name="Fix over-encoded WrkStat WorkflowInstanceID" stopProcessing="true"> 
      <match url="^(.*)(_layouts/15/WrkStat\.aspx)$" ignoreCase="true" /> 
      <conditions logicalGrouping="MatchAll" trackAllCaptures="false"> 
        <add input="{QUERY_STRING}" 
             pattern="^(.*)(List|WorkflowInstanceID)=%(?:25)+7b([0-9A-Fa-f]{8})%(?:25)+2d([0-9A-Fa-f]{4})%(?:25)+2d([0-9A-Fa-f]{4})%(?:25)+2d([0-9A-Fa-f]{4})%(?:25)+2d([0-9A-Fa-f]{12})%(?:25)+7d(.*)$" /> 
      </conditions> 
      <action type="Rewrite" 
              url="{R:0}?{C:1}{C:2}=%7b{C:3}%2d{C:4}%2d{C:5}%2d{C:6}%2d{C:7}%7d{C:8}" 
              appendQueryString="false" /> 
    </rule> 
  </rules> 
</rewrite> 
  1. Guarde el archivo. SharePoint recicla automáticamente la aplicación. Por lo tanto, no es necesario restablecer IIS.

Compruebe la solución alternativa

  1. Abra una lista que contenga una columna Estado del flujo de trabajo .
  2. Seleccione un vínculo de estado del flujo de trabajo que anteriormente mostraba el mensaje de error "El parámetro WorkflowInstanceID no es válido".
  3. Compruebe que la página Estado del flujo de trabajo se abre correctamente.
  4. Compruebe que los vínculos de estado del flujo de trabajo que ya estaban funcionando siguen funcionando correctamente. La regla de reescritura corrige solo los vínculos sobrecodificados y deja sin cambios los vínculos codificados correctamente.

Si tiene varios vínculos sobrecodificados, compruebe que los vínculos de doble codificación (%257b...) y triple codificación (%25257b...) se abren correctamente.

Preguntas más frecuentes

¿Esto cambia o daña los datos de mi lista?

No. La sobrecodificación solo se produce cuando se genera el vínculo durante la representación de la página. Los datos subyacentes se almacenan correctamente. Por lo tanto, no hay nada que reparar o convertir. La regla de reescritura simplemente corrige la dirección URL mientras se procesa la solicitud.

¿Tengo que actualizar las direcciones URL que están almacenadas en mis listas?

No. No modifiques manualmente las direcciones URL almacenadas. El valor se genera cada vez que se representa la página. Después de instalar la corrección permanente, los vínculos se generarán correctamente sin ningún cambio adicional.

¿Debo aplicar esta solución alternativa en todos los servidores?

Sí. Aplique la solución alternativa en todos los servidores de front-end web (WFE) que sirven a los sitios afectados. Como alternativa, si usas un proxy inverso o un equilibrador de carga que admita la reescritura de direcciones URL, puedes aplicar una regla equivalente en su lugar.

¿Es necesario restablecer IIS?

No. Después de editar web.config o aplicar la regla a través de la interfaz gráfica de usuario, SharePoint recicla automáticamente la aplicación.