Integrações / ERP / QAD Adaptive ERP
Guia de integração do QAD Adaptive ERP para programação da produção com SkyPlanner APS
Este guia de integração do QAD Adaptive ERP mostra aos parceiros e às equipas de TI como ligar o QAD Adaptive ERP ao SkyPlanner APS, incluindo instalações das anteriores versões QAD Enterprise Edition e MFG/PRO. O SkyPlanner integra-se com o QAD Adaptive ERP nos dois sentidos, através das interfaces do próprio QAD:
- O SkyPlanner recebe ordens de fabrico e respetivas operações, artigos, estruturas de produto, gamas operatórias, centros de trabalho, calendários de produção, existências e encomendas de compra.
- As datas programadas de lançamento e de conclusão são enviadas de volta para Work Order Maintenance (16.1).
- Os registos de tempos dos operadores são enviados de volta como Labor Feedback by Work Order (16.20.1) e as quantidades concluídas como Work Order Receipt (16.11).
- Os webhooks do SkyPlanner enviam as alterações à programação assim que ocorrem.
Durante a implementação inicial, a equipa SkyPlanner configura a integração de acordo com a sua configuração QAD e presta suporte após a entrada em produção. Este guia destina-se a parceiros e programadores que pretendam participar ou desenvolver a sua própria solução com base na REST API documentada do SkyPlanner (referência da API).
Interfaces de integração do QAD
O QAD oferece três vias para integrar um sistema externo de programação da produção:
- QAD QXtend Inbound (QXI). O QAD descreve-o como “a Web services-based, SOAP-compliant, XML framework, enabling complete platform-independent access to QAD Enterprise Applications business functionality.” (uma estrutura XML baseada em serviços Web e compatível com SOAP, que permite acesso completo às funcionalidades de negócio do QAD Enterprise Applications, independentemente da plataforma). Cada pedido é um QDoc que executa um programa QAD com as mesmas validações do respetivo ecrã e devolve um QDoc de resposta. Os QDocs disponibilizados incluem
maintainItemMaster,maintainRoutingemaintainPurchaseOrder. Para programas sem um QDoc disponibilizado, a ferramenta QGen do QAD mapeia o programa do menu: “QGen is used to map custom programs or QAD Enterprise Applications programs that do not have released QDoc schemas and events files.” (O QGen permite mapear programas personalizados ou programas QAD Enterprise Applications sem esquemas QDoc e ficheiros de eventos disponibilizados). O próprio QAD utiliza esta via: “QAD Production Scheduler uses QAD QXtend to update work orders.” (O QAD Production Scheduler utiliza o QAD QXtend para atualizar ordens de fabrico). (Guia do QXtend) - QAD QXtend Outbound (QXO). O QXO “exports user-configurable business objects as XML QDocs out of QAD products.” (exporta objetos de negócio configuráveis pelo utilizador a partir dos produtos QAD, sob a forma de QDocs XML). Os objetos de negócio padrão incluem Item, Product Structure, Routing, Work Center, Department, Inventory Transaction e Inventory Status.
- REST APIs para documentos de negócio. Desde o Adaptive ERP 2022.1, “Query REST APIs are now available for business documents,” (estão disponíveis REST APIs de consulta para documentos de negócio), com filtragem, ordenação, paginação e dados parciais. Estas APIs estão documentadas no Swagger da sua instância (notas de versão).
As operações de escrita passam pelo QXtend. As operações de leitura passam pelo QXO e pelas REST APIs de consulta.
Autenticação e licenciamento
- QXtend Inbound. Com a opção Require Authentication ativada no recetor, cada QDoc inclui um Session ID ou um nome de utilizador e palavra-passe QAD. O QXI verifica os direitos de acesso do utilizador ao menu antes de executar o programa.
- Utilizador de integração. Crie um utilizador QAD dedicado, com acesso apenas aos programas de menu chamados pela integração: Work Order Maintenance, Labor Feedback by Work Order, Work Order Receipt e os programas de dados mestre.
- Licença QXtend. O licenciamento do QXtend é feito por agentes e recetores. O guia do QAD indica que o tráfego de serviços Web de e para uma aplicação externa não é gratuito, pelo que deve confirmar a licença QXtend antes de iniciar o projeto.
No SkyPlanner, a REST API autentica os pedidos com um token de API no cabeçalho Authorization-Token (SkyPlanner Settings > API) e está documentada em Swagger/OpenAPI. O tutorial de integração explica passo a passo as primeiras chamadas.
Eventos e alterações de dados
O QXtend Outbound é o mecanismo do QAD para comunicar alterações de dados. “A change occurs to watched data in QAD Enterprise Applications. Change notifications are written out to the qxevents database.” (Quando os dados monitorizados no QAD Enterprise Applications são alterados, as notificações de alteração são gravadas na base de dados qxevents). O QXO gera então os QDocs e envia-os “to a directory location where the subscriber polls for and picks up new QDocs,” (para uma diretoria que o subscritor consulta periodicamente para recolher novos QDocs) ou para um serviço Web à escuta num URL.
O SkyPlanner subscreve as publicações do QXO como serviço Web e consulta periodicamente as REST APIs de consulta para obter o que o QXO não abrange. Work Order não é um dos objetos de negócio padrão do QXO. Por isso, a integração adiciona um objeto de negócio QXO sobre as tabelas de ordens de fabrico (wo_mstr, wr_route) ou consulta as ordens de fabrico através das REST APIs de consulta em intervalos de poucos minutos.
O SkyPlanner envia webhooks quando o estado ou a programação se alteram, pelo que a escrita de dados de volta no QAD é acionada por eventos.
Mapeamento de dados
| Objeto QAD (programa, interface) | Objeto do SkyPlanner | Sentido | Frequência |
|---|---|---|---|
| Artigos (Item Master Maintenance 1.4.1; QXO Item) | Produtos e materiais | QAD → SkyPlanner | Carga inicial e, depois, a cada alteração via QXO |
| Estruturas de produto (13.5; QXO Product Structure) | Estrutura do produto, subprodutos e materiais por produto | QAD → SkyPlanner | Carga inicial e, depois, a cada alteração via QXO |
| Gamas operatórias (14.13.1; QXO Routing): fila de espera, preparação, execução, espera, movimentação | Etapas do processo com durações e tempos de preparação e desmontagem | QAD → SkyPlanner | Carga inicial e, depois, a cada alteração via QXO |
| Centros de trabalho (14.5) e departamentos (14.1; QXO Work Center, Department) | Centros de trabalho, grupos de centros de trabalho, eficiências | QAD → SkyPlanner | Carregamento inicial; raramente depois |
| Calendários de produção e dos centros de trabalho | Turnos e dias não úteis | QAD → SkyPlanner | Diariamente, ou gestão dos turnos no SkyPlanner |
| Ordens de fabrico (16.1) com a respetiva gama operatória (16.13.13) e componentes | Ordens e tarefas com prazos e necessidades de materiais | QAD → SkyPlanner | Objeto QXO personalizado ou consultas REST em intervalos de poucos minutos |
| Existências (QXO Inventory Status, Inventory Transaction) | Saldos de existências | QAD → SkyPlanner | A cada alteração ou de hora a hora |
| Encomendas de compra com prazos de entrega | Encomendas de compra, materiais a receber por data de entrega | QAD → SkyPlanner | Consultas de hora a hora ou a cada execução da programação |
| Datas de lançamento e de conclusão das ordens de fabrico (Work Order Maintenance 16.1, QXtend Inbound QDoc) | Início e fim planeados por ordem | SkyPlanner → QAD | Quando a programação muda, através de um webhook do SkyPlanner |
| Labor Feedback by Work Order (16.20.1): tempos de preparação e de execução por operação | Registos de tempos e confirmações dos operadores | SkyPlanner → QAD | Por confirmação ou por turno, se essa opção for escolhida |
| Work Order Receipt (16.11) | Quantidades concluídas | SkyPlanner → QAD | Por confirmação, se essa opção for escolhida |
| Não existe no QAD | Matriz de tempos de preparação, ferramentas como recursos de capacidade finita, máquinas e pessoal alternativos | Gerido no SkyPlanner | Configurado durante a implementação inicial |
Modelos de integração
1. Carga inicial dos dados mestre. Leia artigos, estruturas de produto, gamas operatórias, centros de trabalho e calendários através do QXO ou das REST APIs de consulta. Defina cuidadosamente o mapeamento dos centros de trabalho: um centro com quatro máquinas passa a um grupo de centros de trabalho ou a quatro centros de trabalho. As linhas de produção repetitiva de Production Line Maintenance também podem tornar-se centros de trabalho.
2. Sincronização das ordens de fabrico. Leia as ordens de fabrico com planeamento firme e as já lançadas, com as respetivas gamas operatórias e componentes, bem como as encomendas de compra em aberto. O SkyPlanner considera o material encomendado disponível na data de entrega da encomenda de compra e atualiza as existências quando esta é marcada como Delivered.
Programe ordens de fabrico, não ordens planeadas pelo MRP. Primeiro, as ordens planeadas têm de passar a ordens de fabrico com planeamento firme ou lançadas no QAD.
3. Escrita da programação no QAD. Quando o motor posiciona ou desloca uma ordem, um webhook do SkyPlanner aciona um QDoc QXtend Inbound em Work Order Maintenance (16.1). A data de lançamento é definida com base na primeira operação programada e a data de conclusão com base na última. O QXtend executa o programa com as validações do próprio QAD e devolve um QDoc de resposta que a integração verifica.
A sequência das operações em cada máquina permanece no SkyPlanner e chega aos operadores através de Mobile Confirmations. Assim, a integração não interfere com o bloqueio das gamas operatórias que o QAD aplica às ordens lançadas.
4. Confirmações na produção. Os operadores registam o trabalho com SkyPlanner Mobile Confirmations ou Production Timer, e os registos de tempos mantêm a programação atualizada. Cabe-lhe decidir se os tempos reais são enviados de volta para o QAD. Se optar pelo envio, os tempos de preparação e de execução são enviados para Labor Feedback by Work Order por operação, e as quantidades concluídas para Work Order Receipt. Caso contrário, a mão de obra continua a ser registada no QAD como até aqui.
5. Regras de responsabilidade e de resolução de conflitos. Documente-as antes da entrada em produção:
| Dados | Sistema responsável |
|---|---|
| Artigos, estruturas de produto, gamas operatórias, quantidades e estado das ordens de fabrico | QAD |
| Sequência das operações, horas de início e de fim, atribuição de máquinas | SkyPlanner |
| Datas de lançamento e de conclusão das ordens de fabrico | O SkyPlanner escreve, o QAD armazena |
| Matriz de tempos de preparação, necessidades de ferramentas e operadores, recursos alternativos | SkyPlanner |
| Turnos e dias não úteis | Um único sistema, escolhido na definição do âmbito |
| Mão de obra, saídas de componentes e receções | QAD, com registo direto ou envio a partir dos registos de tempos do SkyPlanner |
Escolha um único sistema para escrever as datas das ordens de fabrico. O SkyPlanner não precisa de nenhum módulo de programação do QAD, pelo que substitui as ferramentas de programação ou outros sistemas como responsável pela escrita das datas das ordens que programa.
Etapas habituais do projeto
A implementação fica normalmente concluída em poucas semanas após o início do acompanhamento inicial. Antes disso, valide a programação durante o período de avaliação gratuita de 30 dias, com centros de trabalho, gamas operatórias e ordens de fabrico em aberto exportados do QAD em CSV ou Excel.
- Mapeamento. Defina a tabela de mapeamento, as regras de responsabilidade, os estabelecimentos e domínios abrangidos, as frequências de sincronização e se os dados de mão de obra serão enviados de volta.
- Acesso ao QAD. Crie o utilizador de integração, confirme o licenciamento do QXtend e configure o recetor QXtend e o subscritor QXO. Comece por testar num domínio de testes.
- Configuração dos QDocs. Utilize os QDocs disponibilizados quando existirem e, quando necessário, gere QDocs com o QGen para Work Order Maintenance, Labor Feedback by Work Order e Work Order Receipt.
- Carga inicial. Artigos, estruturas de produto, gamas operatórias, centros de trabalho e calendários.
- Sincronização de ordens de fabrico e encomendas de compra. Eventos QXO ou consultas periódicas REST com filtros, paginação e novas tentativas.
- Configuração das restrições no SkyPlanner. Matriz de tempos de preparação, ferramentas, número de operadores por tarefa e máquinas ou pessoal alternativos.
- Escrita da programação no QAD e testes em paralelo. Envie as datas a partir dos webhooks do SkyPlanner, execute em paralelo com o plano atual, compare as datas e corrija os dados mestre.
- Entrada em produção. Ative a escrita de dados no QAD assim que os dados coincidirem.
O que prever numa integração com o QAD Adaptive ERP
- Novas execuções do CRP. O CRP reprograma todas as operações em aberto das ordens de fabrico selecionadas. O QAD só mantém as datas manuais quando “you also adjusted the work order release and due date to match,” (também ajustou as datas de lançamento e de conclusão da ordem de fabrico para que coincidam), que é precisamente o que o SkyPlanner grava. Execute o CRP depois de gravar os dados no QAD ou exclua as ordens que o SkyPlanner programa.
- As gamas operatórias ficam fixas após o lançamento. “Once the work order status is Exploded, Allocated, or Released, no more changes can be made to the routing.” (Assim que a ordem de fabrico passa ao estado Exploded, Allocated ou Released, deixa de ser possível alterar a gama operatória.) Leia a gama operatória no momento do lançamento e altere apenas as gamas de ordens planeadas ou planeadas firmes.
- Unidades de tempo das gamas operatórias. Os tempos de preparação e de execução contam para a carga, enquanto “queue, wait, and move times are excluded from load calculations.” (os tempos em fila, de espera e de movimentação são excluídos dos cálculos de carga). No SkyPlanner, modele a fila, a espera e a movimentação como etapas que apenas consomem tempo e verifique se o tempo de execução é por unidade ou por ordem.
- Capacidade de processamento do QXtend. A QAD alerta que “UI API adapter performance may be unacceptable when processing high volumes of data or real-time transactions.” (o desempenho do adaptador UI API pode ser inaceitável ao processar grandes volumes de dados ou transações em tempo real). Envie apenas as ordens alteradas, em lotes, e utilize QDocs nativos quando existirem.
- Domínios e unidades. As instalações QAD com vários domínios mantêm os centros de trabalho e as ordens de fabrico por domínio e unidade. Associe cada unidade abrangida pelo projeto a um grupo próprio de centros de trabalho.
- Produção repetitiva e discreta na mesma instalação. As linhas Advanced Repetitive utilizam programas de produção repetitiva, não ordens de fabrico. Durante a definição do âmbito, decida quais as linhas que o SkyPlanner irá programar.
Quem configura e presta suporte à integração com o QAD
- A equipa SkyPlanner configura a integração durante a implementação e presta suporte após a entrada em produção, abrangendo os QDocs, as subscrições QXO e as consultas REST acordados. Cada fábrica utiliza o QAD de forma diferente, e é nesta configuração que esse conhecimento se aplica.
- O seu parceiro QAD pode participar. O parceiro conhece os seus domínios, personalizações e licenciamento e pode configurar o QXtend, os QDocs QGen e o utilizador de integração em conjunto com a equipa SkyPlanner.
- Os seus próprios programadores podem desenvolver a partir da integração, utilizando a REST API do SkyPlanner com um token de API. Basta um token de API para começar, e a equipa SkyPlanner presta assistência quando necessário. Consulte a documentação de integração do SkyPlanner.
O SkyPlanner está disponível a partir de 199 € por mês, com 5 centros de trabalho incluídos e faturação mensal. O orçamento da integração é apresentado antecipadamente, em função dos seus processos e necessidades, juntamente com o seu plano. Consulte os preços, a programação da produção com QAD Adaptive ERP, respeitando a capacidade real das máquinas e das equipas, a página do QAD Adaptive ERP e a página de integrações com ERP.
O que dizem os fabricantes sobre o SkyPlanner
2 hpoupadas por semana
“Com o SkyPlanner, o nosso planeamento da produção passou das folhas de cálculo Excel para a otimização da produção em tempo real.”
Kalle Kalliomäki, especialista em cadeia de abastecimento
UTU · Quadros elétricos e aparelhagem de manobra
O planeamento da produção permite poupar 2 horas de trabalho por semana, e uma nova fila de tarefas chega à linha em segundos.
+90%de eficiência na produção
“A eficiência na produção aumentou 90%.”
Abdul Rucyinga, responsável de TI
Laboratory & Allied · Fabrico de produtos farmacêuticos
A eficiência na produção aumentou 90%, e criar um plano otimizado para três meses, abrangendo todos os centros de trabalho, demora menos de 30 minutos.
1.000+ordens de fabrico programadas automaticamente
“Temos um controlo diferente sobre a produção, e o nosso conhecimento da capacidade está num nível completamente diferente.”
Hannu Ryynänen, diretor executivo
Mamec · Misturadores industriais, bombas e fabrico por contrato de alta tecnologia
Milhares de ordens de fabrico são programadas automaticamente, com uma visão da produção em tempo real para toda a organização.
99,2%de fiabilidade das entregas
“O SkyPlanner deu-nos visibilidade para identificar estrangulamentos e tornou a gestão da produção mais clara.”
Toni Tuori, responsável de produção
Piristeel · Sistemas de segurança para coberturas e de águas pluviais
A fiabilidade das entregas atingiu 99,2% este ano, e a programação permite poupar até quatro horas de trabalho por dia.
Perguntas frequentes
O QAD Adaptive ERP tem uma API para ordens de fabrico?
Sim. O QXtend Inbound executa o Work Order Maintenance e os programas de chão de fábrica através de SOAP e de QDocs XML, gerados com o QGen quando não existe um QDoc disponibilizado. As REST APIs de documentos de negócio permitem também fazer consultas com filtragem e paginação.
O QAD suporta webhooks?
O mecanismo do QAD para comunicar alterações de dados é o QXtend Outbound: os triggers das tabelas registam as alterações, e o QXO entrega os QDocs num URL de um serviço web ou num diretório consultado periodicamente. Os webhooks do próprio SkyPlanner enviam as alterações à programação assim que ocorrem.
Como são gravadas no QAD as datas programadas?
Através de um QDoc do QXtend Inbound no Work Order Maintenance (16.1), que define as datas de lançamento e de conclusão da ordem de fabrico a partir da programação do SkyPlanner. O QAD valida o QDoc com as mesmas regras do ecrã e devolve um QDoc de resposta.
Como chegam ao QAD as confirmações dos operadores?
Os tempos de preparação e de execução são registados através de Labor Feedback by Work Order (16.20.1), e as quantidades concluídas através de Work Order Receipt (16.11), em ambos os casos por QDocs do QXtend Inbound. A decisão de enviar estes registos para o QAD é tomada durante a definição do âmbito.
Um parceiro QAD deve propor o QAD Advanced Scheduling ou o SkyPlanner?
O SkyPlanner, quando o cliente trabalha com ordens de fabrico discretas e pretende ter, em semanas, uma programação operacional que respeite a capacidade real das máquinas e das equipas. A QAD descreve o Advanced Scheduling como uma programação linha a linha para cada fábrica, apresentada em conjunto com o DSCP Production Planning e o Redzone (QAD). O SkyPlanner liga-se através do QXtend, programa cada máquina, operador, ferramenta e material, replaneia automaticamente e permite um número ilimitado de utilizadores, a partir de 199 € por mês.
Podemos testar o SkyPlanner antes de desenvolver a integração?
Sim. O teste gratuito de 30 dias permite utilizar até 20 centros de trabalho com importações de dados do QAD em CSV ou Excel, sem necessidade de cartão de crédito. Inicie o teste ou fale com a equipa comercial para definir o âmbito da integração.