Cada orden puede tener varias dependencias, así como varias órdenes dependientes. La aplicación almacena cada borde como un registro individual que identifica el pedido así como su orden dependiente. Las dependencias deben ser acíclicas.
Ejemplo: Dependencias de ejecución
La aplicación también realiza un seguimiento de si se resuelve una dependencia para un sistema perimetral o no. Esto ayuda a captar todos los pedidos que todavía no se han procesado y que son elegibles para ser recogidos para su proceso. Por ejemplo, considere la siguiente estructura de árbol de dependencias de ejecución:Figura 1. Estructura de árbol de ejemplo de relación de dependencia de ejecución
La aplicación inserta los registros siguientes en la tabla YFS_TRANSACTIONAL_RELATION.
Tabla 1. Registros de ejemplo en la tabla YFS_TRANSACTIONAL_RELATION para dependencias de ejecución
Este pedido
Orden relacionada
Tipo de relación
IsDependencyResolved
Order-1
Order-11
DEPENDE_DE
Order-1
Order-12
DEPENDE_DE
Order-1
Order-13
DEPENDE_DE
Order-11
Order-111
DEPENDE_DE
Order-11
Order-112
DEPENDE_DE
Order-11
Order-131
DEPENDE_DE
Order-12
Order-131
DEPENDE_DE
Order-13
Order-131
DEPENDE_DE
Order-13
Order-132
DEPENDE_DE
Order-132
Order-1322
DEPENDE_DE
Order-1322
Order-1321
DEPENDE_DE
Order-1321
Order-131
DEPENDE_DE
En este ejemplo, los pedidos que están listos para ser procesados son los que no tienen dependencias identificadas.
En la primera ronda: Order-111, Order-112, Order-131 se procesan. Cuando se procesan estas órdenes o se realiza el trabajo, sus órdenes dependientes deben tener los bordes respectivos marcados como resueltos.
Después de la primera ronda de proceso, la aplicación inserta o actualiza los registros siguientes en la tabla YFS_TRANSACTIONAL_RELATION.
Tabla 2. Registros de ejemplo en la tabla YFS_TRANSACTIONAL_RELATION para dependencias de ejecución
Este pedido
Orden relacionada
Tipo de relación
IsDependencyResolved
Order-1
Order-11
DEPENDE_DE
Order-1
Order-12
DEPENDE_DE
Order-1
Order-13
DEPENDE_DE
Order-11
Order-111
DEPENDE_DE
S
Order-11
Order-112
DEPENDE_DE
S
Order-11
Order-131
DEPENDE_DE
S
Order-12
Order-131
DEPENDE_DE
S
Order-13
Order-131
DEPENDE_DE
S
Order-13
Order-132
DEPENDE_DE
Order-132
Order-1322
DEPENDE_DE
Order-1322
Order-1321
DEPENDE_DE
Order-1321
Order-131
DEPENDE_DE
S
De forma similar, la aplicación sigue procesando las órdenes relacionadas y cuando se procesan las órdenes o se realiza el trabajo, sus órdenes dependientes deben tener los bordes respectivos marcados como resueltos. Por último, después de procesar todos los pedidos dependientes cuando se procesa Order-1 o se realiza el trabajo, sus pedidos dependientes deben tener los respectivos bordes marcados como resueltos. Puesto que Order-1 no tiene pedidos dependientes, el proceso se ha completado.