UiPath Documentation
orchestrator
latest
false

Guía del usuario de Orchestrator

Última actualización 30 de abr. de 2026

Sobre las colas y las transacciones

Una cola es un contenedor que te permite retener una cantidad ilimitada de elementos. Los elementos en cola pueden almacenar múltiples tipos de datos, como información de facturas o detalles de los clientes. Esta información puede procesarse en otros sistemas: SAP o Salesforce, por ejemplo.

Tanto los datos almacenados en los elementos en cola como sus valores de salida son de formato libre de forma predeterminada.Para aquellas situaciones en las que haga falta un esquema específico, como la integración con otras aplicaciones, el procesamiento de formularios generados por máquinas o el análisis, puedes cargar esquemas JSON personalizados para garantizar que todos los datos de los elementos en cola tengan el formato adecuado.

En Orchestrator, las colas recién creadas están vacías de forma predeterminada. Para rellenarlas con elementos, puedes utilizar la funcionalidad de carga en Orchestrator, o las actividades de Studio.Estas últimas te permiten también cambiar los estados de los elementos y procesarlos. Tan pronto son procesados, los elementos en cola se convierten en transacciones.

Información general de colas

Las colas te permiten crear grandes proyectos de automatización subrayados por una lógica compleja. Por ejemplo, puedes crear un proceso que recopile toda la información de la factura y cree un elemento de cola para cada dato para almacenarlo. Posteriormente, puedes crear otro proceso que recopile la información de Orchestrator y la utilice para realizar tareas adicionales, como:

  • Pagar las facturas en una aplicación diferente.
  • Posponer su pago según su fecha de vencimiento o valor.
  • Enviar correos electrónicos al equipo de contabilidad cada vez que se paga una factura. La página Colas te permite crear nuevas colas, ver las colas creadas anteriormente y acceder a gráficos que muestran el progreso del estado de la transacción a lo largo del tiempo, junto con otros detalles, como el tiempo medio de ejecución y el número total de transacciones correctas.

Los datos disponibles en la cuadrícula de colas se actualizan a intervalos regulares, lo que significa que no siempre se muestran en tiempo real y que son posibles ligeros retrasos. Además, no se ve afectado por las políticas de retención, por lo que archivar elementos de la base de datos no cambia la información disponible en la cuadrícula.

Los estados de los elementos son controlados por los desarrolladores de RPA cuando crean los proyectos de automatización, mientras que los estados de revisión se controlan en Orchestrator y permiten realizar un control de versiones, pero solo de los elementos de la cola que han sido abandonados o han fallado con una aplicación o excepción comercial.

También se pueden asignar elementos fallidos o abandonados a un revisor, que puede cambiarse o modificarse si es necesario en cualquier momento. Todos estos cambios se registran en la pestaña Historial, en la ventana Detalles de auditoría. El revisor es responsable de evaluar el estado actual de las transacciones que se le asignan y cambiar el estado de la revisión. El estado de los artículos en cola que se deben revisar se puede modificar en la página Solicitudes de revisión.

Importante:

Para garantizar que el procesamiento de los elementos de la cola se realice con éxito, debes tener un conjunto de referencia único en el nivel de cola al eliminar la cola por referencia. Si no se mantiene la referencia única, se producirán problemas de acceso de concurrencia, como fallos debido a que no se encuentran datos de transacción (mensaje de error No Transaction Data ). Si la referencia no puede ser única, es recomendable eliminar la cola sin referencia.

Definiciones de esquema

Al crear o modificar una cola, puedes cargar un JSONesquema personalizado para los Datos específicos, Datos de salida y/o los Datos analíticos. Con los esquemas en su sitio, todas las transacciones se validan según el formato proporcionado, y si los datos resultantes no son conformes, el elemento falla con una Excepción de negocio.

Importante:
  • El esquema no se aplica de forma retroactiva a las transacciones existentes; solo a las que se ejecutan después de haber cargado los esquemas.
  • Your schema(s) must not contain an array.
  • A efectos de validación, DateTime se acepta como tipo string .
  • Use of and validation of an Analytics Data schema requires Robots and Activities of version 19.10 or greater.
  • Si los esquemas cargados no contienen una definición de esquema válida URI, se utiliza la definición draft-07 , como en el ejemplo siguiente, como alternativa.
Nota:

Para lograr un mejor control en términos de rendimiento de Orchestrator, el tamaño de los datos específicos de los artículos en cola se limita a 256 000 caracteres o 512 000 bytes. Cualquier cosa que supere este límite no se puede añadir a una cola y devuelve el código de error 403 - Payload Too Large . Si necesitas cargar elementos más grandes, almacena los datos grandes en un almacenamiento externo y solo haz referencia al enlace en el elemento.

Campos de esquema de Borrador-07

Cuando el URI $schema está ausente o no coincide con una versión de esquema reconocida, Orchestrator valida los datos del artículo en cola con la especificación del borrador-07 del esquema JSON. La siguiente tabla describe los campos que puedes incluir en un esquema de borrador-07.

Los campos de nivel raíz pertenecen al objeto de esquema de nivel superior. Los campos a nivel de propiedad pertenecen dentro de cada entrada en el objeto properties .

CampoNivelObligatorioDescripción
type: "object"RaízDeclara que los datos del artículo en cola son un objeto estructurado.
propertiesRaízDefine cada campo esperado y su tipo de datos.
$schemaRaízNoURI de la versión del esquema JSON. Si está ausente o no se reconoce, Orchestrator utiliza la validación de borrador-07.
requiredRaízNoMatriz de nombres de propiedad que deben estar presentes en cada elemento de la cola.
additionalPropertiesRaízNoControla si se aceptan las propiedades no enumeradas en properties .
typePropiedadEspecifica el tipo de datos del campo. Consulta los tipos compatibles en la siguiente sección.
defaultPropiedadNoValor predeterminado para el campo si no se proporciona.
examplesPropiedadNoValores de muestra solo con fines de documentación.
patternPropiedadNoExpresión regular con la que debe coincidir un valor string .
$idRaíz o propiedadNoIdentificador único para el esquema o una propiedad específica.
titleRaíz o propiedadNoEtiqueta legible por humanos para el esquema o propiedad.
Tipos de datos admitidos

El campo type en cada definición de propiedad especifica el formato esperado para el valor de ese campo. Los siguientes valores son válidos para las definiciones de tipo a nivel de propiedad:

TipoDescripción
stringValores de texto. Utilice este tipo para campos DateTime .
integerNúmeros enteros sin un componente decimal.
booleantrue o false valores.
numberValores numéricos, incluidos los decimales.
objectUn objeto estructurado anidado con su propia definición properties .

La siguiente plantilla es un ejemplo de un esquema borrador-07 simple y válido, con un campo de texto obligatorio:

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "fieldName": {
      "type": "string"
    }
  },
  "required": ["fieldName"]
}
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "fieldName": {
      "type": "string"
    }
  },
  "required": ["fieldName"]
}
Ejemplo de esquema completo

El siguiente ejemplo muestra varios tipos de propiedades y campos opcionales:

{
  "definitions": {},
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "http://example.com/root.json",
  "type": "object",
  "title": "The Root Schema",
  "additionalProperties": { "type": "string" },
  "required": [
    "stringTest",
    "intTest",
    "boolTest"
  ],
  "properties": {
    "stringTest": {
      "$id": "#/properties/stringTest",
      "type": "string",
      "title": "The Stringtest Schema",
      "default": "",
      "examples": [
        "stringTest"
      ],
      "pattern": "^(.*)$"
    },
    "intTest": {
      "$id": "#/properties/intTest",
      "type": "integer",
      "title": "The Inttest Schema",
      "default": 0,
      "examples": [
        30
      ]
    },
    "boolTest": {
      "$id": "#/properties/boolTest",
      "type": "boolean",
      "title": "The Booltest Schema",
      "default": false,
      "examples": [
        false
      ]
    }
  }
}
{
  "definitions": {},
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "http://example.com/root.json",
  "type": "object",
  "title": "The Root Schema",
  "additionalProperties": { "type": "string" },
  "required": [
    "stringTest",
    "intTest",
    "boolTest"
  ],
  "properties": {
    "stringTest": {
      "$id": "#/properties/stringTest",
      "type": "string",
      "title": "The Stringtest Schema",
      "default": "",
      "examples": [
        "stringTest"
      ],
      "pattern": "^(.*)$"
    },
    "intTest": {
      "$id": "#/properties/intTest",
      "type": "integer",
      "title": "The Inttest Schema",
      "default": 0,
      "examples": [
        30
      ]
    },
    "boolTest": {
      "$id": "#/properties/boolTest",
      "type": "boolean",
      "title": "The Booltest Schema",
      "default": false,
      "examples": [
        false
      ]
    }
  }
}

Información general de transacciones

La página Transacciones muestra las transacciones de una cola determinada. También muestra sus estados, las fechas en que deben procesarse, el robot del proceso y el tipo de excepción realizada o la referencia asignada, si corresponde.

Puedes buscar una transacción específica o un grupo de ellas, según una referencia personalizada, que se añade a la propiedad Referencia de las actividades Añadir elemento de cola y Añadir elemento de transacción. La referencia puede utilizarse para vincular las transacciones a otras aplicaciones utilizadas dentro de un proyecto de automatización. Además, esta función te permite buscar determinadas transacciones en Orchestrator, según la referencia personalizada facilitada.

También se puede imponer que las referencias de las transacciones sean únicas, a nivel de cola. Esta característica se habilita al crear la cola y se aplica a todas las transacciones, excepto a las transacciones eliminadas o reintentadas. Esto hace que la identificación de un elemento específico resulte sencilla y facilite el proceso de revisión.

Si se encuentra una referencia duplicada al añadir los elementos a una cola, el trabajo falla con un estado de Fallo y muestra el mensaje de error Execution error: UiPath.Core.Activities.OrchestratorHttpException: Error creating Transaction. Duplicate Reference. en la ventana Detalles del trabajo.

Orden de procesamiento

Dentro de cualquier cola, las transacciones se procesan de forma jerárquica, según el siguiente orden:

  1. Elementos que tienen un Plazo, como se indica a continuación:
    • por orden de prioridad; y
    • según el plazo establecido para los elementos con la misma prioridad.
  2. Los elementos sin Plazo, en orden de Prioridad, y
    • según la regla Primera entrada, Primera salida para los elementos con la misma prioridad.

Al establecer una Fecha límite o una Fecha de aplazamiento , recomendamos rellenar los campos respectivos con fechas relativas. Por ejemplo, DateTime.Now.AddHours(2), DateTime.Now.AddDays(10) y DateTime.Now.Add(New System.TimeSpan(5, 0, 0, 0)). Además, puedes utilizar la notación estadounidense para añadir una hora exacta, como 10/15/2019 07:40:00. La corrección automática de esta fecha está disponible, por ejemplo, si escribes 15 10 2019 9:0, se transforma automáticamente en 15/10/2019 09:00:00.

La fecha límite es útil para ordenar tareas con prioridades similares, mientras que Posponer garantiza que una tarea no se inicie antes de la hora especificada. Sin embargo, los dos parámetros no están diseñados para utilizarse juntos.

Las fechas añadidas en Studio para los campos Fecha límite y Posponer se muestran en Orchestrator, en la página Transacciones, debajo de las columnas Fecha límite y Posponer.

Exportar transacciones

Puedes exportar todas las transacciones e información relacionada a una cola determinada a un archivo archivo, seleccionando el botón Exportar, en la página Transacciones. Todas las opciones de filtración de página se aplican también al archivo generado.

Figura 1. Archivo CSV

Captura de pantalla de un archivo CSV

Para garantizar el mejor rendimiento, ten en cuenta que las entradas exportadas no están en orden cronológico inverso.

Predicciones de ANS de Cola

Esta herramienta te ayuda a establecer un ANS (plazo límite de un elemento) para los elementos recién añadidos en una cola. Esto te ayuda a evaluar si pueden procesarse a tiempo, y los recursos que debes asignar para cumplir con su ANS. Cuando haya riesgo de incumplir con el ANS, se te notificará adecuadamente para que puedas realizar los ajustes pertinentes.

El Acuerdo de Nivel de Servicio (SLA) solo se aplica a aquellos elementos que no tienen una fecha límite establecida, lo que significa que un elemento recién añadido sin fecha límite definida de antemano se rellena automáticamente según el valor establecido como SLA. En concreto, el plazo límite de cada elemento está representado por el valor establecido para el ANS de la cola desde el momento en que fue añadido a esta. Por ejemplo, si he fijado el ANS en 2 horas, y añado 3 elementos a la cola, a las 16, 17 y 18 h, entonces los plazos límites de mis elementos serán las 18, 19 y 20 h respectivamente.

La alerta de violación del Acuerdo de Nivel de Servicio (SLA) se activa cada 30 minutos, a partir de 7 minutos después de la hora.

Los elementos con plazo límite (haya sido establecido en Studio o a través de un archivo .csv subido) no se ven afectados por la configuración del ANS.

Importante:
  • The Priority of the items added in a queue after enabling SLA predictions is automatically set to High, regardless of how it was set in Studio or in the .csv file used for upload.
  • No se pueden eliminar los procesos asociados a una cola que tengan predicciones ANS habilitadas.
  • If at least one queue item exceeds its deadline, Over Capacity is displayed in the Necessary Robots (SLA) column and predictions are no longer calculated.
  • Las predicciones se hacen para los elementos de la cola con plazos en las próximas 24 horas y no tienen en cuenta las fechas de aplazamiento de los elementos.

Los desencadenadores en la cola y las predicciones ANS son interdependientes en cuanto a la asociación entre los procesos y la cola. Así que cuando configures una, la otra se rellena por adelantado para que exista paridad entre las configuraciones. Pongamos que defino un desencadenador de cola para que la cola Y utilice un proceso X. Las predicciones ANS para la cola Y solo pueden hacerse mediante el proceso X, por lo que X se rellena por adelantado y queda en modo solo lectura al habilitar el ANS de cola para Y.

SLA de riesgo

También puedes definir un ANS de riesgo para tus elementos, que funciona a modo de zona de amortiguación previa al ANS. Concretamente, los plazos de riesgo de tus elementos se calculan en función del ANS de riesgo, tan pronto se añadió a ella el elemento en la cola. Pongamos que fijo el ANS de riesgo en 2 horas y que añado 3 elementos a la cola a las 16:30, 17:15 y a las 18:45. Entonces mis elementos tendrán plazos límite de riesgo a las 18:30, 19:15 y 20:45 respectivamente.

Una vez haya vencido el ANS de riesgo y el elemento en la cola no haya sido procesado, el elemento pasa a estar en riesgo de no cumplir con su plazo límite. El usuario recibe una notificación para que pueda realizar los ajustes necesarios.

Cola de permisos SLA

Para poder configurar las predicciones ANS de una cola debes tener los siguientes permisos:

  • Ver en Procesos
  • Ver en Colas
  • Editar en Colas (para configurar ANS cuando se edita una cola)
  • Crear en Colas (para configurar ANS cuando se crea una cola)

¿Te ha resultado útil esta página?

Conectar

¿Necesita ayuda? Soporte

¿Quiere aprender? UiPath Academy

¿Tiene alguna pregunta? Foro de UiPath

Manténgase actualizado