Pedidos derivados
Pedidos derivados são pedidos subordinados criados a partir da ordem-pai, mas uma vez criados, não mantêm mais uma referência ao pai. O ciclo de vida deles é independente do pai e eles não fornecem qualquer propagação de status com relação à ordem-pai, nem são atualizados com quaisquer mudanças na ordem-pai.
Uma ordem em camadas é definida como "Derivada" se não tiver que concluir seu processo de cumprimento antes de sua ordem-pai poder ser considerada cumprida. Por exemplo, uma ordem de compra pode ser "derivada" a partir de uma ordem planejada.
Geralmente, o ciclo de vida da ordem-pai já terminou no momento em que um pedido derivado é criado a partir dela (por exemplo, criar uma ordem de cumprimento a partir de uma ordem planejada) ou uma ordem completamente nova precisa ser gerada para algum processamento paralelo (por exemplo, criar pedidos de troca para devoluções antes de a disposição de retorno ser concluída). Um link é mantido entre um pedido derivado e uma ordem-pai somente para progressão de rastreamento da ordem-pai em vários outros documentos.
A criação de pedidos derivados requer que duas transações abstratas, "Incluir no pedido derivado" e "Criar pedido derivado" sejam criadas. Essas transações podem ser copiadas durante a configuração da transação para criar transações significativas apropriadas. Ambas as transações podem ter vários status de coleta e um único status de entrega. Para obter mais informações sobre os detalhes da implementação, consulte o Javadoc da API do createDerivedOrder
Um pedido pode ter vários pedidos derivados da mesma quantidade, mas como as ordens encadeadas são criadas para concluir o cumprimento da ordem-pai, uma unidade na ordem-pai pode pertencer a uma e somente uma ordem encadeada.