Fluxo de trabalho de orquestração de pedido que gera uma ordem baseada em regra..

É possível revisar o fluxo de trabalho de orquestração de pedido de alto nível de uma ordem baseada em regra

Figura 1. Fluxo de trabalho de orquestração de pedido
fluxo de trabalho de orquestração de pedido.

Um pedido complexo baseado em regras que é dividido em vários pedidos secundários com interdependências entre eles passa principalmente pelos três estágios de processamento a seguir no aplicativo IBM Sterling® Order Management System :

Validação

Quando um pedido do OrderType como 'CustomerOrder' é criado no IBM Sterling Order Management System, ele é enviado para um sistema externo de Rules Engine, como o Operational Decisions ManagerODM), para validação. Um serviço SDF é chamado no evento OnSuccess da transação ORDER_CREATE .. O serviço posta uma mensagem para a fila de validação e um servidor de integração aciona o processo de validação de pedido chamando uma API customizada
  • Se a validação for bem sucedida, o status do pedido será alterado para InProgress pela transação ORDER_PROCESS A transação ORDER_PROCESS é uma transação ChangeOrderStatus derivada.. O evento OnStatusChange é configurado para colocar uma mensagem na fila de decomposição.
  • Se a validação falhar, a ORDER_PROCESS transação será chamada para alterar o status do pedido para Suspended (Aguardando validação) e uma exceção do ExceptionType como OrderValidationException será criada usando a createException API.

Decomposição

Uma ordem validada é enviada de volta para o mecanismo de regras para obter o conjunto decomposto de ordens executáveis Quando uma mensagem é descartada na fila de decomposição, um servidor de integração seleciona essa mensagem e aciona o processo de decomposição de ordem chamando uma API customizada A API customizada prepara um documento de entrada contendo detalhes do pedido, bem como detalhes do item e constrói uma solicitação de entrada para fazer uma chamada de API remota para um sistema de mecanismo de regras externo, como o ODM

A resposta recebida da API remota é então processada e a transação createOrder é chamada para criar todos os pedidos decompostos no aplicativo IBM Sterling Order Management System. Esses pedidos decompostos são mantidos no aplicativo IBM Sterling Order Management System como pedidos de vendas com relacionamento pai-filho entre eles. No final do processo de decomposição de ordem, uma mensagem é solta na fila de execução do plano de construção.

Execução e Cumprimento

Quando uma mensagem é recebida em uma fila de execução, um servidor de integração aciona o processo de execução de ordem chamando uma API customizada A API customizada cria o documento de entrada para fazer uma chamada de API remota para um sistema de mecanismo de regras externo, como o ODM para buscar a sequência de execução de ordem

A resposta recebida do mecanismo de regras é processada e a sequência de execução da ordem é mantida no aplicativo IBM Sterling Order Management System.

A implementação da API customizada processa essas dependências e identifica o pedido sem dependências como o pedido que é elegível para o processo de cumprimento.. Para iniciar o cumprimento de pedidos elegíveis, o status dos pedidos decompostos elegíveis é alterado para 'Pronto para Cumprimento' usando a transação ORDER_PROCESS .. Todos os pedidos que estão no status 'Pronto para Cumprimento' são elegíveis para serem selecionados por qualquer sistema de cumprimento. Quando o sistema de atendimento tiver concluído o processamento desses pedidos, ele deverá chamar o IBM Sterling Order Management System para alterar o status desses pedidos para "COMPLETED" (concluído) usando a transação ORDER_COMPLETE. A transação ORDER_COMPLETE é derivada do evento changeOrderStatus e OnStatusChange é ativada e configurada para chamar o serviço EvaluateOrderDependency que atualiza a sinalização de dependência em relacionamentos de todos os outros pedidos que são dependentes da ordem concluída.

Uma mensagem é postada na fila chamando o serviço PostMsgToEvaluateDependencyQ para cada pedido atualizado. Um servidor de integração seleciona essa mensagem e chama uma API customizada que avalia se essa ordem não tem mais dependências pendentes Se o pedido for um pedido decomposto, seu status será alterado para "Pronto para Cumprimento".. Se o pedido for um pedido do cliente, seu status será alterado para Concluído, o que encerra o processo