Versiones de suscripción de evento

Workfront tiene dos versiones de suscripciones a eventos. Este artículo describe las diferencias entre ellos.

La nueva versión no es un cambio en la API de Workfront, sino un cambio en la funcionalidad de suscripción de evento.

La capacidad de actualizar o reducir las suscripciones a eventos garantiza que, cuando se realicen cambios en la estructura de los eventos, las suscripciones existentes no se rompan, lo que le permite probar y actualizar a la nueva versión sin interrupciones en la suscripción de evento.

Al actualizar o reducir la suscripción de evento a otra versión, se reciben eventos duplicados para cada entrega de evento durante un periodo de cinco minutos después del cambio de versión. Los duplicados incluyen una de cada versión de suscripción de evento 1 y una versión 2. Esto garantiza que no se pierda ningún evento debido al cambio de la versión de suscripción del evento.

Para obtener información sobre los extremos utilizados para actualizar o degradar suscripciones de evento, consulte Control de versiones de suscripciones de evento en el artículo API de suscripción de evento.

IMPORTANT
Las siguientes versiones afectarán al control de versiones de suscripciones a eventos:
  • Versión 25.2 (10 de abril de 2025): todas las suscripciones nuevas creadas después de la versión 25.2 se crean como Versión 2.
  • 15 de enero de 2026: todas las suscripciones de la versión 1 restantes se migran a la versión 2.

Cambios entre las versiones 1 y 2

Se han realizado los siguientes cambios para las suscripciones de evento Versión 2:

Cambios generales

Campos afectados
Versión 1 (comportamiento anterior)
Versión 2 (Cambiar)
Acción de corrección
Valores de parámetro calculados
Cualquier objeto creado a partir de una plantilla que incluya un formulario personalizado con valores de parámetros calculados, se enviará un evento CREATE y, a continuación, se enviará un UPDATE con los valores de los parámetros (incluidos los campos calculados y sus valores).
Cuando se crea un objeto a partir de una plantilla que incluye un formulario personalizado con valores de parámetros calculados, solo se envía un evento CREATE que contiene valores de parámetro, incluidos campos calculados.
Si tiene una suscripción para UPDATE eventos y espera recibir un evento UPDATE después de crear un objeto con valores de parámetros calculados, ya no recibirá ese evento UPDATE. Si desea ver los valores de parámetros calculados al crear el objeto, debe crear una suscripción adicional de CREATE.
Campos de tipo de selección múltiple

Para cualquier tipo de evento que contenga un cambio en un campo de tipo de selección múltiple, si el campo solo contuviera un valor, se convertiría en y se enviaría como una cadena. De lo contrario, se enviaría como una matriz.

Ejemplos:

  • myMultiSelectField: ["oneValue"] se convierte y se envía como myMultiSelectField: "oneValue".
  • myMultiSelectField: ["first", "second"] se envía como myMultiSelectField: ["first", "second"].

Independientemente de cuántos valores haya en la matriz, se envía como una matriz.

Ejemplos:

  • myMultiSelectField: ["oneValue"] se envía como myMultiSelectField: ["oneValue"].
  • myMultiSelectField: ["first", "second"] se envía como myMultiSelectField: ["first", "second"].
Si tiene una suscripción con un filtro en un campo de selección múltiple y el valor como cadena, debe crear una nueva suscripción con el mismo filtro que tenga el valor como matriz.

Cambios específicos de objeto

Código de objeto
Campos afectados
Versión 1 (comportamiento anterior)
Versión 2 (Cambiar)
Acción de corrección
ASSGN
  • projectID
  • taskID
  • opTaskID
  • customerID
Cuando se actualizó este objeto, el evento UPDATE a veces mostraba incorrectamente el cambio de los campos afectados de null a ID value.
Todos los eventos UPDATE muestran el valor correcto para los campos afectados.
Ninguno. Si tiene un filtro en los campos afectados, recibirá un evento UPDATE solo si estos campos han cambiado realmente, no si ha cambiado algún otro valor.
DOCU
  • referenceObjID
Cuando se actualizaba cualquier valor de parámetro en este objeto, el evento UPDATE mostraba incorrectamente el cambio de campo afectado de null a object id.
Todos los eventos UPDATE muestran el valor correcto para los campos afectados.
Ninguno. Si tiene un filtro en los campos afectados, recibirá un evento UPDATE solo si estos campos han cambiado realmente, no si ha cambiado algún otro valor.
  • groups
Cuando se eliminaba un documento, el evento DELETE mostraba incorrectamente el campo afectado como una matriz vacía en el estado antes.
El evento DELETE muestra correctamente el campo afectado en el estado antes.
Ninguno. El evento DELETE se enviará, pero ahora mostrará los datos correctos para el campo afectado.
DOCV
  • proofDecision
  • proofName
  • proofProgress
Cuando se actualizara este objeto, se enviarían dos eventos UPDATE. El primero no incluyó los campos afectados, mientras que el segundo sí lo hizo.
Todas las actualizaciones de campo, incluidos los campos afectados, están presentes en un único evento UPDATE y no se envía un segundo evento innecesario.
Ninguno. Si tiene un filtro en los campos afectados, los eventos se entregan en el primer evento.
EXPNS
  • topReferenceObjCode
  • referenceObjectName
Cuando se actualizaba cualquier valor de parámetro en un Expense, el evento UPDATE mostraba incorrectamente el cambio topReferenceObjCode de EXPNS a PROJ y el cambio de referenceObjectName de null a string value of project name.
Todos los eventos UPDATE muestran el valor correcto para los campos afectados.
Ninguno. Si tiene un filtro en los campos afectados, recibirá un evento UPDATE solo si estos campos han cambiado realmente, no si ha cambiado algún otro valor.
  • topReferenceObjCode
  • referenceObjectName
Cuando se eliminó un objeto Expense, se envió un evento UPDATE cambiando los campos afectados a null antes de que se enviara el evento DELETE.
No se envió el evento UPDATE adicional. El evento DELETE tiene valores correctos para los campos afectados en el estado antes.
Si tiene un filtro para los campos afectados en UPDATE eventos y espera recibirlo cuando se elimine el objeto, ya no recibirá ese evento UPDATE. Si desea ver estos campos cuando se elimine el objeto, debe crear una suscripción adicional de DELETE.
HOUR
  • projectID
  • taskID
  • roleID
  • timesheetID
  • hourTypeID
  • projectOverheadID
  • referenceObjID
  • referenceObjCode
  • securityRootID
Cuando se eliminó este objeto, el evento DELETE mostró incorrectamente los campos afectados como null en el estado antes.
El evento DELETE muestra correctamente los campos afectados en el estado antes.
Ninguno. El evento DELETE se sigue enviando, pero ahora muestra los datos correctos para los campos afectados.
OPTASK
  • rootGroupID
Cuando se actualizaba cualquier valor de parámetro en este objeto, el evento UPDATE mostraba incorrectamente el cambio de campo afectado de null a ID value.
Todos los eventos UPDATE muestran el valor correcto para el campo afectado.
Ninguno. Si tiene un filtro en el campo afectado, recibirá un evento UPDATE solo si ese campo ha cambiado realmente, no si ha cambiado algún otro valor de parámetro.
  • resolveProjectID
  • resolveTaskID
  • resolvingObjID
Cuando se actualizó este objeto, el evento UPDATE a veces mostraba incorrectamente el cambio de los campos afectados de null a ID value.
Todos los UPDATE eventos mostrarán el valor correcto para los campos afectados.
PROJ
  • rootGroupID
Cuando se actualizaba cualquier valor de parámetro en este objeto, el evento UPDATE mostraba incorrectamente el cambio de campo afectado de null a ID value.
Todos los eventos UPDATE muestran el valor correcto para el campo afectado.
Ninguno. Si tiene un filtro en el campo afectado, recibirá un evento UPDATE solo si ese campo ha cambiado realmente, no si ha cambiado algún otro valor de parámetro.
  • convertedOpTaskID
Cuando se actualizó este objeto, el evento UPDATE a veces mostraba incorrectamente el cambio de los campos afectados de null a ID value.
Todos los eventos UPDATE muestran el valor correcto para el campo afectado.
Ninguno. Si tiene un filtro en el campo afectado, recibirá un evento UPDATE solo si ese campo ha cambiado realmente, no si ha cambiado algún otro valor de parámetro.
TASK
  • rootGroupID
Cuando se actualizaba cualquier valor de parámetro en este objeto, el evento UPDATE mostraba incorrectamente el cambio de campo afectado de null a ID value.
Todos los eventos UPDATE muestran el valor correcto para el campo afectado.
Ninguno. Si tiene un filtro en el campo afectado, recibirá un evento UPDATE solo si ese campo ha cambiado realmente, no si ha cambiado algún otro valor de parámetro.
  • convertedOpTaskID
Cuando se actualizó este objeto, el evento UPDATE a veces mostraba incorrectamente el cambio de los campos afectados de null a ID value.
Todos los eventos UPDATE muestran el valor correcto para el campo afectado.
Ninguno. Si tiene un filtro en el campo afectado, recibirá un evento UPDATE solo si ese campo ha cambiado realmente, no si ha cambiado algún otro valor de parámetro.

Actualización de la versión de suscripción del evento en un escenario de Workfront Fusion

Workfront Fusion utiliza suscripciones de eventos para inspeccionar los cambios en Workfront en los escenarios de déclencheur. Puede actualizar la versión de suscripción de evento que Fusion utiliza directamente en un escenario mediante el módulo Workfront > Actualizar versión de carga útil de eventos.

Para obtener instrucciones sobre el uso de este módulo, consulte Módulos de Workfront en la documentación de Workfront Fusion.

Para obtener recursos sobre cómo preservar los escenarios de Workfront Fusion durante la actualización de la suscripción al evento, incluida una grabación del seminario web, consulte Conservación de los escenarios de Fusion durante la actualización de las suscripciones a eventos V2.

recommendation-more-help
5f00cc6b-2202-40d6-bcd0-3ee0c2316b43