Set Transaction Status
Set Transaction Status
Sección titulada «Set Transaction Status»Tipo: queue-set-transaction-status · Paquete: Queue Activities v1.0.0 · Salida: —
Cierra la transacción de un item: lo marca como successful (procesado bien) o failed (procesado con error). Es lo que hace el performer al terminar con cada item. El item debe estar in_progress y haber sido tomado por esta ejecución con Get Queue Item.
Parámetros requeridos
Sección titulada «Parámetros requeridos»| Parámetro | Editor | Descripción |
|---|---|---|
item | expresión | El ZoanQueueItem devuelto por Get Queue Item (ej. = item). |
status | enum | successful (éxito) o failed (error). |
Parámetros opcionales
Sección titulada «Parámetros opcionales»| Parámetro | Editor | Descripción |
|---|---|---|
output | JSON | Objeto con el resultado del procesamiento. Solo para status = successful. Queda guardado en item.Output. |
exception | JSON | Objeto con el detalle del error (ej. { "type": "...", "message": "..." }). Solo para status = failed. |
retryable | booleano | Solo para failed. true (por defecto) = respeta el auto-retry de la cola. false = marca fallo inmediato sin reintento. |
Cuándo usar retryable = false
Sección titulada «Cuándo usar retryable = false»Por defecto, un item failed se reintenta si la cola tiene auto-retry y quedan reintentos. Eso es lo correcto para errores del sistema (la web se cayó, un timeout). Pero para errores de negocio —un dato inválido, un campo faltante— reintentar daría exactamente el mismo error: ahí usa retryable = false para fallar de una vez. Ver reintentos.
Ejemplo
Sección titulada «Ejemplo»Procesar el item dentro de un Try / Catch y reportar según el resultado:
Try └─ body: (… procesar la factura …) Set Transaction Status item = = item status = successful output = { "validada": true, "revisadaPor": "bot" } └─ catch (err): Set Transaction Status item = = item status = failed exception = { "message": = err.Message } retryable = trueActividades relacionadas
Sección titulada «Actividades relacionadas»- Get Queue Item — tomar el item antes de cerrarlo.
- Postpone Transaction — en vez de cerrar, aplazar el item.
- Try / Catch — capturar el error para reportarlo.