Integrações / ERP / Sage 100
Guia de integração do Sage 100 para programação da produção com o SkyPlanner APS
Este guia de integração do Sage 100 mostra aos parceiros Sage e às equipas de TI como ligar o Sage 100 ao SkyPlanner APS. Abrange os dois produtos com este nome: o Sage 100 nos EUA e no Canadá, com Production Management, e o Sage 100 na Alemanha e na Áustria, com Sage 100 Produktion. A integração entre o SkyPlanner e o Sage 100 funciona nos dois sentidos:
- O SkyPlanner recebe as ordens de fabrico (Work tickets ou Fertigungsaufträge) com as respetivas operações (steps ou Arbeitsgänge), bem como centros de trabalho, artigos, existências e encomendas de compra.
- As datas planeadas são enviadas de volta para cada operação (step ou Arbeitsgang).
- Os registos de tempo dos operadores são enviados de volta como registos de mão de obra (US) ou Rückmeldungen (DE).
Durante a implementação inicial, a equipa SkyPlanner configura a integração de acordo com a sua instalação do Sage 100 e presta apoio 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 a REST API documentada do SkyPlanner (referência da API).
Sage 100 dos EUA: interfaces de integração
O Sage 100 dos EUA funciona numa infraestrutura local, em instalações Standard, Advanced ou Premium. As interfaces de integração encontram-se no servidor do Sage 100.
Business Object Interface (BOI).
“The Business Objects Interface allows third-party developers with the necessary skills to access Sage 100 programs and applications using Component Object Model (COM).” (A Business Objects Interface permite que programadores externos com as competências necessárias acedam aos programas e aplicações através do Component Object Model (COM).) (Ajuda do Sage 100) O portal de programadores da Sage descreve-a como “Sage 100’s internal API layer, giving you access to the same logic used by the application itself.” (A camada interna da API, que dá acesso à mesma lógica utilizada pela própria aplicação.) (developer.sage.com) A BOI é a via de escrita: cada criação ou atualização passa pelas mesmas validações que uma ação de um utilizador no Sage 100.
ODBC.
O controlador ODBC do ProvideX lê tabelas do Sage 100 para relatórios e leituras em massa. Na edição Advanced, está disponível um controlador ODBC cliente/servidor. A integração utiliza ODBC para ler em massa ordens de fabrico, artigos e encomendas de compra, e BOI para escrever.
Visual Integrator (VI).
As tarefas de importação e exportação do VI transferem dados entre o Sage 100 e ficheiros ou fontes ODBC. Segundo a Sage: “One of the most powerful features of the Visual Integrator module is its ability to directly import data from and export data to an ODBC data source.” (Uma das funcionalidades mais poderosas do módulo Visual Integrator é a capacidade de importar e exportar dados diretamente de e para uma fonte de dados ODBC.) (fonte) O VI faz parte do pacote Essentials e é adequado para a troca de dados através de ficheiros.
O eBusiness Web Services utiliza SOAP e abrange “the Sage 100 sales order, customer, and customer contact entities.” (As entidades de encomendas de venda, clientes e contactos de clientes.) (fonte) Pode transmitir encomendas de venda, enquanto os dados de produção passam pela BOI e pelo ODBC.
A integração é executada junto do Sage 100, com um utilizador Sage 100 que dispõe de permissões para as tarefas de Production Management, Inventory e Purchase Order utilizadas. O tráfego de saída é dirigido à REST API do SkyPlanner através de HTTPS.
Sage 100 alemão: interfaces de integração
O Sage 100 alemão funciona em Microsoft SQL Server, com instalação local ou na variante na nuvem. A Sage indica que é possível “Partnerlösungen via API-Schnittstelle ergänzen” (adicionar soluções de parceiros através de uma interface API) (Sage 100). Os complementos de produção apresentados pela Sage baseiam-se no Sage AppDesigner e nos objetos de negócio do Sage 100.
A integração segue a mesma via que as soluções dos parceiros Sage: lê Fertigungsaufträge, Arbeitsgänge, Arbeitsplätze, Ressourcenlisten, Artikel e Bestellungen da base de dados SQL Server do Sage 100. As datas de Arbeitsgang e as Rückmeldungen são enviadas de volta pela via de escrita acordada entre o seu parceiro Sage e a equipa SkyPlanner durante a definição do âmbito, para que os registos sigam a lógica do próprio Sage 100. O seu parceiro Sage confirma a versão (por exemplo, 9.0) e a configuração de acesso.
Autenticação e acesso
| Sistema | Método de autenticação |
|---|---|
| Sage 100 dos EUA, BOI | Sessão de um utilizador Sage 100 no servidor do Sage 100, com permissões atribuídas por função para cada tarefa utilizada |
| Sage 100 dos EUA, ODBC | DSN na instalação do Sage 100, com acesso de leitura |
| Sage 100 alemão | Utilizador Sage 100 para gravar os dados enviados de volta e acesso de leitura ao SQL Server, acordados com o seu parceiro Sage |
| SkyPlanner | Token de API no cabeçalho Authorization-Token, criado no SkyPlanner em Settings > API |
A REST API do SkyPlanner está documentada em Swagger/OpenAPI. O tutorial de integração explica passo a passo as primeiras chamadas.
Deteção de alterações
As alterações no Sage 100 são detetadas através de leituras programadas. Leia as ordens de fabrico abertas (Work tickets ou Fertigungsaufträge) a intervalos curtos, e as existências e encomendas de compra de hora a hora. Filtre por estado e datas de alteração para que cada leitura transfira apenas o que mudou.
O SkyPlanner envia webhooks quando a programação muda, pelo que a gravação dos dados de volta no Sage 100 é acionada por eventos.
Mapeamento de dados
| Sage 100 (US) | Sage 100 (DE) | Objeto no SkyPlanner | Sentido | Frequência |
|---|---|---|---|---|
| Item | Artikel | Produtos e materiais | Sage 100 → SkyPlanner | Carregamento inicial, depois diariamente |
| Bill of Materials, materiais do modelo | Stückliste na Ressourcenliste | Estrutura do produto, subprodutos, materiais por produto | Sage 100 → SkyPlanner | Quando há alterações |
| Centro de trabalho: trabalhadores ou máquinas, horas por dia da semana, períodos de encerramento | Arbeitsplatz, Ressource (Mitarbeiter, Maschine) | Centros de trabalho, grupos de centros de trabalho, pessoal, turnos | Sage 100 → SkyPlanner | Carregamento inicial |
| Operações do modelo de ordem de fabrico, códigos de atividade | Arbeitsplan, Arbeitsgänge com Rüst- e Stückzeiten | Etapas do processo com tempos de preparação e execução | Sage 100 → SkyPlanner | Quando há alterações |
| Ordem de fabrico com operações e data de entrega | Fertigungsauftrag com Arbeitsgänge, Liefertermin | Ordens e tarefas com datas de entrega | Sage 100 → SkyPlanner | Leitura a intervalos curtos |
| Quantidades em stock por armazém | Lagerbestand | Saldos de existências | Sage 100 → SkyPlanner | De hora a hora |
| Linhas de encomendas de compra, datas de necessidade | Bestellungen, Liefertermine | Encomendas de compra com data prevista de entrega | Sage 100 → SkyPlanner | De hora a hora |
| Linhas de encomendas de venda, datas de entrega acordadas | Kundenaufträge | Datas de entrega ao cliente, prioridade do cliente | Sage 100 → SkyPlanner | Leitura a intervalos curtos |
| Datas das operações da ordem de fabrico (BOI) | Arbeitsgang-Termine | Início, fim e centro de trabalho planeados por operação | SkyPlanner → Sage 100 | Quando há alterações, via webhook |
| Labor Entry, conclusão da ordem de fabrico (BOI) | Rückmeldung: Zeiten, Mengen | Registos de tempo e confirmações dos operadores | SkyPlanner → Sage 100 | Por confirmação ou por turno |
| Não guardado no Sage 100 | Não guardado no Sage 100 | Matriz de tempos de preparação, ferramentas como recursos de capacidade limitada, operadores por tarefa, centros de trabalho alternativos | Mantido no SkyPlanner | Implementação inicial |
Modelos de integração
1. Carregamento inicial dos dados mestre. Carregue primeiro os artigos e os centros de trabalho, depois os modelos ou Arbeitspläne com as respetivas operações. Um centro de trabalho na versão dos EUA com três máquinas e dois operadores passa a ser representado no SkyPlanner por três centros de trabalho, um grupo de centros de trabalho e duas pessoas. Cada um passa a ter a sua própria linha temporal.
2. Sincronização de ordens. Leia as ordens de fabrico abertas (Work tickets ou Fertigungsaufträge) com as respetivas operações, bem como as existências e as encomendas de compra em aberto. O SkyPlanner verifica tanto as existências como as entregas previstas antes de programar uma tarefa. O Sage 100 continua a propor trabalho e o SkyPlanner programa as ordens que forem lançadas.
3. Envio da programação de volta ao Sage 100. Para cada operação que o motor programou ou deslocou, o SkyPlanner envia o início, o fim e o centro de trabalho planeados. Na versão dos EUA, a integração atualiza as datas das operações da ordem de fabrico através da BOI. No Sage 100 alemão, atualiza as datas de Arbeitsgang pela via acordada durante a definição do âmbito. O Sage 100 mantém a gestão das quantidades, das afetações e do apuramento de custos.
4. Confirmações na fábrica. Os operadores registam o trabalho com o SkyPlanner Mobile Confirmations ou o Production Timer, e os registos de tempo mantêm a programação atualizada. No Sage 100 dos EUA, o tempo registado dá origem a um Labor Entry associado à operação da ordem de fabrico, e a confirmação final conclui a ordem. No Sage 100 alemão, dá origem a uma Rückmeldung com tempos e quantidades. Se a sua fábrica já regista tempos em Betriebsdatenerfassung ou numa aplicação de códigos de barras, escolha um único canal de registo.
5. Responsabilidade pelos dados e regras de conflito. Documente estas regras antes da entrada em produção:
| Dados | Sistema responsável |
|---|---|
| Artigos, listas de materiais, modelos, quantidades das ordens, custos | Sage 100 |
| Sequência das operações, horas de início e fim, atribuição a centros de trabalho | SkyPlanner |
| Matriz de tempos de preparação, ferramentas, operadores por tarefa, recursos alternativos | SkyPlanner |
| Mão de obra e Rückmeldungen | Sage 100, alimentado pelos registos de tempo do SkyPlanner |
A principal fonte de conflitos é a utilização de um segundo sistema de programação. Se os responsáveis pela programação continuarem a executar o Enhanced Scheduling no Sage 100 dos EUA, ou a arrastar tarefas no Plantafel do Sage 100 alemão, as datas ficam sob o controlo de dois sistemas. Deixe o SkyPlanner gerir as datas das operações. Com o Autopilot, o SkyPlanner reprograma automaticamente sempre que há alterações na produção.
Etapas habituais do projeto
A implementação fica normalmente concluída num prazo de semanas após o início da implementação inicial. Antes disso, valide a programação durante o período de avaliação gratuita de 30 dias, com uma exportação em CSV ou Excel das ordens de fabrico em aberto ou dos Fertigungsaufträge. O projeto segue depois estas etapas:
- Definição do âmbito. Confirme o produto (Sage 100 dos EUA ou alemão), a versão e a instalação, os métodos de leitura e escrita, as frequências de sincronização e o canal de registo de tempos.
- Acesso. O seu parceiro Sage configura o utilizador do Sage 100, as respetivas permissões e o acesso à base de dados.
- Carregamento inicial. Artigos, centros de trabalho, modelos ou Arbeitspläne, listas de materiais e turnos.
- Sincronização de ordens. Leitura periódica de ordens de fabrico ou Fertigungsaufträge, encomendas de compra e existências.
- Configuração de 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 Sage 100. Primeiro, as datas planeadas das operações; depois, os registos de mão de obra e Rückmeldungen.
- Testes em paralelo e entrada em produção. Compare as datas com o plano atual, corrija os dados mestre e, em seguida, ative a escrita no Sage 100.
O que prever numa integração com o Sage 100
- Saiba qual o Sage 100 que utiliza. O Sage 100 dos EUA e o alemão têm modelos de dados e interfaces diferentes. Identifique o produto e a versão na primeira reunião de definição do âmbito.
- Centros de trabalho que agrupam várias máquinas. Nos EUA, cada centro de trabalho é uma unidade de capacidade de “one or more persons or machines” (uma ou mais pessoas ou máquinas). Decida, para cada centro de trabalho, se corresponde a um centro de trabalho no SkyPlanner, a vários ou a um grupo.
- Tempos de preparação e execução. Os modelos e os Arbeitspläne contêm os tempos que o SkyPlanner utiliza na programação. Compare-os com os tempos reais de execução antes da entrada em produção.
- Calendários. No Sage 100 dos EUA, os centros de trabalho incluem horários por dia da semana e períodos de encerramento. Carregue-os como turnos no SkyPlanner e acrescente depois os turnos e as ausências de cada operador no SkyPlanner.
- Unidades de medida. As operações podem ser executadas por peça, por lote ou por hora. Defina a correspondência da unidade de cada operação.
- Permissões do BOI. O BOI respeita a segurança por funções do Sage 100. A falta de uma permissão para uma tarefa impede a escrita. Teste cada operação de escrita com o utilizador da integração.
- Um único sistema responsável pelas datas. Desative as execuções de programação em paralelo ou as movimentações no Plantafel assim que o SkyPlanner passar a gerir as datas.
Integração com o Sage 100: quem configura e presta suporte
- A equipa SkyPlanner configura a integração durante a implementação inicial e presta suporte após a entrada em produção.
- O seu parceiro Sage pode participar. O parceiro conhece a sua versão do Sage 100, configura utilizadores e permissões e confirma o acesso à base de dados.
- Os seus programadores podem desenvolver funcionalidades adicionais com base na REST API documentada do SkyPlanner. Basta um token de API para começar, e a equipa SkyPlanner ajuda sempre que necessário.
Uma vez estabelecida a ligação, o motor Arcturus programa a produção com base nas ordens atualizadas do Sage 100 e atribui datas planeadas a cada operação. 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 conjunto com o seu plano, de acordo com o seu processo e as suas necessidades. Assim, conhece o custo total antes de começar. Consulte os preços, as funcionalidades e veja como o planeamento do próprio Sage 100 se compara na página sobre programação da produção no Sage 100, respeitando a capacidade real das máquinas e do pessoal. Encontra uma visão geral na página do Sage 100. O Sage 200 e o Sage X3 têm guias próprios, disponíveis nas páginas do Sage 200 e do Sage X3. Os restantes ERP estão na página de integrações com ERP.
Opiniões de fabricantes sobre o SkyPlanner
6 mesesde capacidade disponível visível para a equipa comercial
“O SkyPlanner cria uma base sólida e fiável para todo o planeamento da produção.”
Anu Järvinen, diretora de produção
Fredman Operations · Papéis para embalagens aptos para contacto alimentar
A equipa comercial vê a capacidade disponível com seis meses de antecedência, e os pedidos de alteração da programação que demoravam uma hora ou mais recebem agora resposta em segundos.
100%de fiabilidade das entregas desde 2021
“O SkyPlanner dá-nos visibilidade sobre a capacidade e torna o planeamento previsível.”
Dan Berglund, COO/CFO
Opes Corporation · Indústria química e alimentar
A fiabilidade das entregas manteve-se nos 100% durante todo o período de utilização do SkyPlanner, desde 2021.
Perguntas frequentes
O Sage 100 tem uma REST API para ordens de trabalho?
O Sage 100 dos EUA disponibiliza a sua lógica de negócio através do Business Object Interface, com ODBC para leitura e Visual Integrator para processamento de ficheiros. O SkyPlanner lê as ordens de trabalho através de ODBC e BOI e escreve as datas das operações e os registos de mão de obra através de BOI. No Sage 100 alemão, a leitura é feita a partir da base de dados SQL Server, e o método de escrita é definido com o seu parceiro Sage durante a definição do âmbito.
Quem desenvolve a integração com o Sage 100?
A equipa SkyPlanner configura a integração bidirecional de acordo com a sua instalação do Sage 100 durante a implementação inicial e presta suporte após a entrada em produção. O seu parceiro Sage configura utilizadores, permissões e acesso à base de dados e pode participar no projeto. Os seus programadores também podem desenvolver funcionalidades com base na REST API documentada do SkyPlanner. Basta um token de API para começar.
Como são gravadas as datas planeadas no Sage 100?
No Sage 100 dos EUA, a integração atualiza as datas planeadas de cada operação da ordem de trabalho através de BOI e efetua os lançamentos em Labor Entry a partir dos registos de tempo dos operadores. No Sage 100 alemão, atualiza as datas dos Arbeitsgang de cada Fertigungsauftrag e regista Rückmeldungen através do método de escrita que o seu parceiro Sage e a equipa SkyPlanner estabelecem durante a definição do âmbito.
O Sage 100 pode enviar alterações em tempo real?
O SkyPlanner recolhe as alterações do Sage 100 através de leituras programadas: as ordens em aberto são lidas em intervalos curtos, e as existências e encomendas de compra de hora a hora. No sentido inverso, os webhooks do SkyPlanner enviam as alterações da programação assim que ocorrem.
Podemos testar o SkyPlanner antes de desenvolver a integração?
Sim. A avaliação gratuita de 30 dias permite utilizar até 20 centros de trabalho, com importação das suas ordens de trabalho ou Fertigungsaufträge em CSV ou Excel, sem necessidade de cartão de crédito. Inicie a avaliação ou fale com a equipa comercial para definir o âmbito da integração.