Histórico da Página
Integração TOTVS APS x Protheus
Contexto de negócio
O TOTVS APS é uma ferramenta avançada de planejamento da produção, que é executada independente do ERP. Têm como principais características: a rapidez e desempenho no processamento; a precisão nas programações geradas; a elevada capacidade de refletir a realidade operacional dos diferentes sistemas de produção e a alta tecnologia com que são desenvolvidos.
Veja abaixo o que o TOTVS APS pode responder:
- O que, quanto e quando produzir;
- O que, quanto e quando comprar;
- Em que máquina produzir;
- A que horas começar;
- Quando liberar o material para a fábrica;
- Qual a melhor sequência de produção/setups;
- Como reagir a eventos inesperados;
- A necessidade de turnos adicionais ou horas extras;
- Quando será possível entregar cada pedido;
- O que está restringindo a produção;
- Onde investir para melhorar a entrega.
Sendo que os Resultados gerados são:
- Mais precisão nos Prazos de Entrega;
- Redução das Despesas Operacionais;
- Diminuição do lead-time de produção;
- Flexibilização da Produção;
- Agilidade nas Reprogramações;
- Aumento no Ganho pela Otimização das Restrições;
- Redução dos Estoques de matéria-prima, processo e produto acabado.
O TOTVS APS necessita de várias informações oriundas do ERP para realizar o planejamento de produção, tais como a lista de materiais, processos de fabricação dos produtos, ordens de compra, produção em andamento, pedidos e previsões de venda, posição de estoque entre outros.
Esta integração viabiliza aos clientes TOTVS que utilizam o ERP Protheus como seu sistema de gestão empresarial usufruir dos benefícios do sistema APS.
Configuração da Integração APS x Protheus
Existem três pontos de integração do APS com o Protheus:
1. Atualização de Dados - Planejamento: responsável por buscar no ERP as informações que o APS necessita para realizar o Planejamento da Produção. Devido ao alto volume de dados, neste ponto o APS irá buscar as informações via acesso direto ao banco de dados do Protheus;
2. Atualização de Dados - Pontos de Controle: o APS também irá acessar via banco de dados às informações do Protheus necessárias para o controle de produção realizado pelo gerenciamento de pulmões (módulo Buffer Management);
3. Confirmação da Programação: o APS irá enviar ao Protheus as informações necessárias para confirmação de ordens de produção e compras, via Web Services Protheus.
A Confirmação de Programação realiza os seguintes passos:
- A Confirmação gera a mensagem com as informações a serem enviadas ao Protheus (Ordens de Compra, Produção e Operações).
- O WS Protheus tenta gravar as informações no Protheus.
- O WS retorna o número dos documentos criados (OPs, operações e OCs) e / ou os erros encontrados ao tentar criá-los no Protheus.
1. Protheus
1. Verificar se o Protheus está atualizado na última versão disponível;
Eis a lista das rotinas utilizadas para integração APS e Protheus. No ambiente do cliente, todas essas rotinas devem estar com data igual ou superior as indicadas abaixo.
Rotina | Descrição | Data de Atualização |
---|---|---|
MATA110 | Solicitação de Compra | 10/12/2013 |
MATA650 | Ordem de Produção | 16/12/2013 |
MATXALC | Funções genéricas de alçada | 19/11/2013 |
WSMAT110 | Web Services de SC | 15/05/2013 |
WSMAT650 | Web Services de OP | 10/09/2013 |
WSAPSINT | Web Services de Integração APS | 29/08/2013 |
WSMATSTRUCT | Estruturas de classe WS | 02/03/2013 |
XMLWSCVS | Status de erro do WS | 29/10/2014 |
A versão do programa pode ser verificada no Inspetor de objetos do Protheus:
2. O banco de dados do ERP Protheus deverá ser Oracle ou MS-SQL. Para isso, configurar o arquivo appserver.ini do servidor do Protheus, informando na propriedade “TopDatabase” a string referente ao banco do Protheus (“MSSQL” para SQL Server e “ORACLE” para Oracle)
3. Criar uma fonte de dados (ODBC) da base de dados do Protheus para que o APS possa acessá-lo;
4. Parâmetros: para acessar a tela de parâmetros, execute o Protheus e informe na tela de Parâmetros Iniciais, o Programa Inicial SIGACFG. Configure os seguintes parâmetros:
- Preencher parâmetro MV_APS com TOTVS;
- Caso deseje utilizar quantidades negativas no Protheus, deverá habilitar o parâmetro MV_NEGESTRUT;
- As ordens que forem geradas pelo TOTVS APS não sofrerão efeito dos parâmetros MV_GERAOPI e MV_GERASC (utilizados no Microsiga Protheus para gerar Solicitações de Compras e Ordens de Produção dos semielaborados). Isso ocorre porque o TOTVS APS envia ao Microsiga Protheus tudo que deve ser criado de SCs e OPs. As ordens de produção criadas no Protheus continuam respeitando os parâmetros acima citados;
5. Obter licenças para Web services do Protheus: para a utilização de web services no Protheus são necessárias liberações de licenças do tipo TOTVS I;
6. Executar o programa update para criação da tabela de operações da ordem SHY: na entrada do Protheus digitar o programa U_UPDPCP16. O programa tem interface de Wizard. Basta avançar os passos selecionando as opções conforme vão aparecendo e concluir.
7. Configurar Web Services Protheus:
- Parametrizar um WebServices do Protheus para cada filial envolvida na integração. Exemplo: Filial 1 – http://servidor:8010/ws1; Filial 2 – http://servidor:8010/ws2;
- Cada WebService deve possuir pelo menos um agente ativo e disponível para integração com APS, pois são geradas chamadas simultâneas para ordem de compra, ordem de produção e operação. Para garantir um bom desempenho na integração é sugerido, no mínimo, a utilização de cinco JOBS (cinco licenças) para cada filial que executará o planejamento APS x Protheus;
- Configuração do .ini do Protheus com web services, esse ponto é vital para o funcionamento da integração, os web services deverão estar parametrizados conforme o exemplo abaixo:
[HTTP]
ENABLE=1
PATH=C:\p10\Protheus_Data\web\ws
PORT=8010
ENVIRONMENT=ENVIRONMENT
UPLOADPATH=\Protheus_Data\web\ws
[JOB_WS_0101]
TYPE=WEBEX
ENVIRONMENT=ENVIRONMENT
INSTANCES=5,5
SIGAWEB=WS
INSTANCENAME=WS
ONSTART=__WSSTART
ONCONNECT=__WSCONNECT
PREPAREIN=01,01
[localhost:8010/ws]
ENABLE=1
PATH=C:\p10\Protheus_Data\web\ws
ENVIRONMENT=ENVIRONMENT
INSTANCENAME=WS
RESPONSEJOB=JOB_WS_0101
DEFAULTPAGE=wsindex.apw
[ONSTART]
JOBS= JOB_WS_0101
Os parâmetros que serão modificados são:
a. ENVIRONMENT: Colocar o ambiente. Exemplo: PRODUCAO, TESTE, DESENVOLVIMENTO;
b. PORT: Endereço da porta que rodará o serviço (pode ser qualquer uma disponível);
c. [JOB_WS_0101]: Nome do JOB Responsável pelo serviço (É sugerido utilizar algo pra identificar que o JOB é referente a uma determinada Empresa e Filial) Exemplo: JOB_WS0101, JOB_WS0102;
d. INSTANCES: O Primeiro valor antes da vírgula se refere à quantidade de JOBS que iram iniciar junto do serviço. O segundo valor é referente ao Número de JOBS para executar o serviço (sugerimos ao menos cinco para bom desempenho). Exemplo: INSTANCES=3,5. Reservo cinco Jobs para o meu serviço, porem inicio apenas três. Se for necessário usar os outros dois Jobs, ele irá verificar se eles estão disponíveis, e daí utilizar o serviço. Sugerimos que a quantidade de Jobs reservada e iniciada sejam as mesmas, pois já é reservado o numero necessário para a integração, tendo um bom desempenho.
e. PREPAREIN: O primeiro valor antes da vírgula se refere ao código da empresa cadastrada no ambiente Protheus. O segundo valor é referente ao código da filial. Exemplo: PREPAREIN=01,01;
f. [localhost:8010/ws]: Deve-se colocar no formato <Servidor>:Port/<Nome do WS dessa filial> Exemplo: Server:8010/ws_01;
g. RESPONSEJOB: Deve ser o nome do JOB parametrizado conforme o tópico ‘c’;
h. JOBS: Deve ser parametrizado com os Jobs de todas as filiais separados por vírgula ex: JOB_WS0101, JOB_WS0102;
i. Caso se tenha mais filiais, deve-se repetir dos passos C ao G para cada filial, e também colocar nos JOBS (tópico h), o nome do JOB responsável por cada filial adicionada.
8. Atualizar clientes dos WebServices que serão utilizados pela integração, que são: MTPurchasesRequest, MTProductionOrder e MTIntegrationAPS;
1.1. Atualizando Client WebServices
1) Através de um navegador de internet, acessar a lista de serviços do WS Protheus (através da URL utilizada no totvsappserver.ini). Clicar no serviço a ter o client atualizado. Exemplo: http://servidor:8010/ws1
2) Na tela seguinte serão apresentados os detalhes do serviço acessado. Clicar no link a direita do texto “Descrição do Serviço (WSDL)”.
3) Após clicar no link será aberta uma nova janela no navegador. Nesta janela deverá ser copiada a URL contida na barra de endereços.
4) Acessar o Totvs Developer Studio (Protheus) e acessar o menu Arquivo/Novo, em seguida acessar o menu Ferramentas/Gerar Client WebService.
5) Na janela exibida, informar a URL copiada e confirmar. No novo arquivo será gerado o código do client ws.
6) Salvar o arquivo com um nome qualquer, adicioná-lo ao projeto e compilar. Se não ocorrerem erros o processo esta finalizado.
7) Caso seja gerado um erro acusando “classe duplicada” o arquivo deverá ser salvo com nome idêntico ao apresentado na mensagem de erro (logo após as palavras “Encontrada em”).
8) Remova o arquivo antigo do projeto, adicione o novo e compile-o. Se não ocorrerem erros, o processo está finalizado.
9) Para integração APS x Protheus: gerar o client dos serviços:
a. MTINTEGRATIONAPS
b. MTPRODUCTIONORDER
c. MTPURCHASESREQUEST
10) No log do Protheus podem ser encontradas as mensagens de erro ocorridas durante seu uso. Seguem abaixo as mais comuns e como proceder para sua correção.
Erro | Mensagem | Solução |
---|---|---|
Não foi possível post em... HELP... | O erro ocorre quando por algum motivo não foi possível estabelecer comunicação com o servidor. Possíveis soluções: 1) Verificar a disponibilidade de licenças Protheus. Mensagens de erro iniciadas por este assistente indicam retorno negativo em alguma validação do Protheus. Na maioria dos casos isto ocorre quando há inconsistências nos dados recebidos pelo WebService, como, por exemplo, valores inválidos, campos obrigatórios não preenchidos, cadastros incorretos etc. | |
Type mismatch... Array out of bounds... Variable does not exist... | Tratam de erros de codificação nos programas do Protheus. Nestes casos é gerado um log de erro no arquivo error.log do diretório system no caminho de instalação do sistema que permite a análise do erro por analistas conhecedores do Microsiga Protheus. Nestes casos deve-se entrar em contato com a equipe de suporte Microsiga Protheus. |
2. TOTVS APS
A partir da release Datasul 11.5.3, a parametrização ocorre na rotina DB1000 – Parâmetros Planejamento Avançado e as informações requeridas são:
- Diretório Retorno: informar o diretório das informações de retorno do ERP para o APS, após a confirmação da programação. Neste diretório serão gravadas informações referentes a ordens de produção (e suas operações) e ordens compras criadas no ERP, que serão utilizados pela rotina Monitor de Integração APS (DB0299). Deve ser preferencialmente um diretório de rede, pois será utilizado pela sessão do Agente EAI Receiver para gerar os arquivos necessários para o Monitor de Integração APS (DB0299);
- Empresa: A empresa informada se refere à empresa do Protheus e é extremamente importante a parametrização, pois sem isso será impossível executar o procedimento de atualização de dados. Ex.: Se a tabela do banco de dados for SB1010 significa que sua empresa no Protheus é a 01;
- Servidor: nome do servidor em que a base de dados do Microsiga Protheus está hospedada. Este campo não é obrigatório quando o banco é Oracle, pois a conexão é feita somente pelo Datasource, utilizando o servidor que está gravado no arquivo TNSNAMES.ORA dentro da instalação do Oracle. Já para banco SQL Server é este campo é obrigatório (se a base estiver na mesma máquina do APS, pode ser informado o valor “localhost”);
- Datasource: informar a string com o DSN (Data Source Name ou Nome de Fonte de Dados);
- Usuário: informar o usuário do banco do Protheus (seja ele SQL ou Oracle). Caso não haja um usuário, é necessária a criação do mesmo com, no mínimo, permissões de leitura;
- Senha: Senha da base de dados do usuário informado.
A partir da release Datasul 11.5.8 foram implementadas as seguintes opções:
- ERP Origem: ERP que será integrado com o TOTVS APS;
- Banco de Dados: Banco de dados do ERP integrado com o TOTVS APS;
- Testar Conexão: efetua um teste de conexão com o Banco de Dados, conforme os valores inseridos.
Eis abaixo um exemplo de conexão com os bancos Oracle e SQL Server:
Parametrização DB1000 com Banco Oracle – Release Datasul 11.5.8:
Parametrização DB1000 com Banco SQL Server – Release Datasul 11.5.8:
IMPORTANTE:
- Caso ocorra erro de conexão, tentar realizar a conexão do banco de dados utilizando um software específico para a fornecedora de banco de dados. No caso do Oracle, utilizar SQL Plus ou SQL Tools e no caso do SQL Server usar o SQL Managenement Studio;
- Na release Datasul 11.5.7 e anteriores é necessário habilitar a integração com Protheus por intermédio da rotina CD7070 - Liberação de Função Especial, ativando a função “integra-aps-protheus”. Se a banco de dados do Protheus for Oracle, habilitar também a função “protheus-oracle”;
- O botão de teste de conexão e as opções de seleção de ERP e Banco de Dados estão disponíveis apenas para as releases Datasul 11.5.8 e superiores.
3. Confirmação com WebService Protheus
A partir do release 12.1.4 é necessário informar os WebService para cada Estabelecimento do Protheus, isso deve ser realizado no programa DB0136 Cadastro de estabelecimentos do APS.
4. Características da Integração
4.1. Acesso as tabelas no Protheus: Exclusivo x Compartilhado
A integração contempla as situações de tabelas compartilhadas e exclusivas existentes no Protheus, sendo que existem algumas restrições que devem ser respeitadas:
- Estrutura: Não podem existir estruturas diferenciadas para um mesmo item, independente se as tabelas de estrutura e item estejam configuradas como compartilhadas ou exclusivas.
- Caso exista estrutura para mais de uma filial, somente a da primeira filial será considerada;
- Um mesmo código de item não poderá existir em mais de um estabelecimento, pois o controle de Item do APS não é por estabelecimento. Ex: Item 00A41 vinculado ao Estab 1 e 2, sendo que no Estab 1, ele possui a descrição “Madeira” e no Estab 2 possui a descrição “Chapa de Aço” - Para alguns cadastros do Protheus, há uma limitação quando usados de forma exclusiva. Para estas entidades, quando houver registros de filiais distintas, porém de mesmo código, sempre será considerado o primeiro registro encontrado, desconsiderando-se os demais. São estas entidades:
- Recursos;
- Tipo de Produtos;
- Ferramentas;
- Centro de Trabalho;
- Grupo de Produtos;
- Unidade de Medida. - Empresa: a integração APS x Protheus é monoempresa, ou seja, o APS só lê dados de uma só empresa do Protheus.
Assim, para cada empresa existente no Protheus, seria necessário uma base do APS (bancos mgdbr e movdbr)
4.2. Entidades / Transações em comum
Na Atualização de Dados do Planejamento, o APS acessa o banco de dados Protheus para busca de dados das seguintes entidades:
Entidade | Descrição | Alias APS | Alias Protheus | Rotina(s) Protheus | Filtro aplicado | ||
---|---|---|---|---|---|---|---|
Grupo de Estoque* | Classificação dos itens conforme Grupo de Estoque. | grp-estoq-dbr | SX5
| Dicionário de Dados (CFGX031) | Nenhum. | ||
Centro de trabalho* | Indica quais são as máquinas pertencentes a um grupo de máquinas. | ctrab-dbr | SH1 | Recursos (MATA610) | Se alias exclusivo no Protheus e existirem códigos iguais em filiais diferentes, irá considerar o primeiro registro cadastrado. | ||
Ferramenta* | Ferramentas de produção, restritivas e não-restritivas. | ferram-dbr | SH4 | Ferramentas (MATA620) | Se alias exclusivo no Protheus e existirem códigos iguais em filiais diferentes, irá considerar o primeiro registro cadastrado. | ||
Grupo de Máquina * | Agrupamento de máquinas similares. | gm-dbr | SHB | Centro de Trabalho (MATA770) | Se alias exclusivo no Protheus e existirem códigos iguais em filiais diferentes, irá considerar o primeiro registro cadastrado. | ||
Família de Material | Classificação dos itens conforme família de materiais. | familia-dbr | SBM | Grupo de Produtos (MATA035) | Se alias exclusivo no Protheus e existirem códigos iguais em filiais diferentes, irá considerar o primeiro registro cadastrado. | ||
Unidade de Medida | Unidades de medida utilizadas pelos itens. | unid-medid-dbr | SAH | Unidades de Medida (QIEA030) | Se alias exclusivo no Protheus e existirem códigos iguais em filiais diferentes, irá considerar o primeiro registro cadastrado. | ||
Roteiros de Fabricação Centros de trabalhos válidos da operação (opcional) Roteiros do item Processo de fabricação do item Operações do item \ do roteiro | Lista de operações que usadas na fabricação de um ou mais itens.
Máquinas válidas para cada operação. Vincula um roteiro de fabricação a um item.
Indica o roteiro e lista de componentes a ser utilizado na produção conforme parâmetros determinados.
Operações realizadas na fabricação do item. | rot-fab-dbr ctrab-op-dbr rot-item-dbr proces-item-dbr operac-engr | SG2 SH2 SH3 | Operações (MATA632) | Quando houver roteiros de fabricação diferentes por filial: - Além de incluir operações para as filiais diferentes, é necessário que no cadastro de Produto do Protheus os itens existam nas duas filiais (tanto o produto acabado quando seus semiacabados e comprados); - No APS, quando utilizado um cenário monoestabelecimento, o roteiro utilizado será sempre o da filial padrão do item (que será a primeira filial encontrada. Exemplo: 01); - Quando utilizado um cenário multiestabelecimento, o roteiro utilizado será o da malha informada no cenário (exemplo: malha do cenário com estabelecimento 02, usa roteiro da filial 02). | ||
Item | Parâmetros dos itens (normais, DD, configurados). | item-dbr | SB1 | Produtos (MATA010) | Campo “Entra MRP” (B1_MRP) como “Sim”. | ||
Item / Estabelecimento* | Parâmetros dos itens x estabelecimento. | item-estab-dbr | SBZ | Indicadores de Produtos (MATA018) | Nenhum | ||
Estrutura* | Lista de materiais para fabricação do item. | estrut-item-dbr | SG1 | Estruturas (MATA200) | Componentes de quantidade variável (G1_FIXVAT = ‘V’) são trazidos para o APS. Não traz componentes com quantidade fixa. Se alias exclusivo no Protheus e existirem códigos iguais em filiais diferentes, irá considerar o primeiro registro cadastrado. O código da revisão do item (B1_REVATU) deve estar contido entre o código da revisão da estrutura inicial e final (G1_REVINI e G1_REVFIM). | ||
Ordem de Produção / Ordem de Compra | Ordens de compra e produção firmes e previstas existentes no ERP. | ord-dbr | SC1 SC7 SC2 | Solicitações de Compra (MATA110) Pedidos de Compra (MATA120) Ordens de Produção (MATA650) | Documentos sem eliminação de resíduo (C?_RESIDUO <> ‘S’). Documentos com saldo (C?_QUANT > C?_QUJE). Documentos não encerrados (C2_DATRF = ‘’). Ordens de Produção suspensas (C2_STATUS = ‘U’) são importadas e consideradas no APS. Ao alterar o roteiro de uma Ordem de Produção, as operações são "reconstruídas". Exemplo: a OP foi criada com o roteiro 01, que possuía 3 operações (10, 20 e 30). Foi criado o roteiro 02, com uma operação a mais (40) e eliminada uma operação (20). A OP continuará no roteiro 01. Se o usuário alterar na OP o código do roteiro para 02, as operações dessa OP serão atualizadas (será criada a operação 40 e eliminada a operação 20) | ||
Operação da OP | Operações da ordem de produção. | op-ord-dbr | SHY | Ordens de Produção (MATA650) | Operações com saldo (HY_QUANT > 0). Operações não encerradas (H6_PT = ‘T’). Operações vinculadas a itens que não sejam fantasma | ||
Reserva da OP | Reservas da Ordem de produção, indica os itens previstos na fabricação (não indica que o item está reservado no estoque). | res-ord-dbr | SD4 | Ordens de Produção (MATA650) | Reservas com saldo (D4_QUANT <> 0). | ||
Saldos em Estoque | Saldos em estoque oriundos do ERP. | sdo-estoq-dbr | SB2 | Saldos em Estoque | Saldos em estoque oriundos do ERP. | ||
Pedidos de venda . | Pedidos de vendas oriundos do ERP | pdven-dbr | SC5 SC6 SC9 | Pedidos de Venda (MATA410) | Pedidos tipo Normal (C5_TIPO = ‘N’). No processo de Pedidos liberados (SC9) se algum pedido estiver bloqueado (COUNT(SC9.C9_BLCRED) <> 0) então será considerado “Aprovado”. Senão será considerado “Não Aprovado”. Na rotina do Cenário DBR (db0101) é possível parametrizar se serão considerados apenas pedidos de venda aprovado. | ||
Saldo em poder de terceiros | Saldos de estoque em poder de terceiros. | sdo-terc-dbr | SD1 SD2 SF4 | Documento de Entrada (MATA103) Documento de Saída (MATA460A) Tipos Entrada/Saida (MATA080) | Documentos com TES de transferência entre filiais (F4_TRANFIL = ‘1’). B2_QTNP = Entrada Beneficiamento. B2_QNPT = Remessa Beneficiamento D1_QUANT = Quantidade em Trânsito | ||
Fornecedores* | Fornecedores para apontamento de causa de murphies. bmg-fornec | SA2 | Fornecedores (MATA020) | Se alias exclusivo no Protheus e existirem códigos iguais em filiais diferentes, irá considerar o primeiro registro cadastrado. | |||
Depósitos | Depósitos disponíveis para serem vinculados a malha. | bmg-depos | SB2 | Saldos em Estoque (MATA225) | Nenhum | ||
Turno Exceção | Registro de bloqueio de bens do módulo Manutenção de Ativos do Protheus que serão tratados como Turnos Exceção no APS | Det-turno-excec | ST3 ST9 SH1 | Nenhum, mas os dados só serão trazidos caso exista a tabela ST3 e caso na opção “Turno Exceção” seja diferente de “Não Atualiza” |
(*) Para essas tabelas é necessário que o modo de acesso seja compartilhado. Caso o modo de acesso seja exclusivo e haja duplicidade de código do registro, será trazido para o APS somente o primeiro registro encontrado.
Na Atualização de Dados do Pontos de Controle, o APS acessa o banco de dados Protheus para busca de dados das seguintes entidades.
Entidade | Descrição | Alias APS | Alias Protheus | Rotina(s) Protheus | Filtro aplicado |
---|---|---|---|---|---|
Status das Programações | Programação de produção gerada pelo DBR, e atualizada na Atualização Pontos de Controle (BM0200). | bmg-programacao | SC2 SG2 SH6 SC5 | Ordens de Produção (MATA650) Operações (MATA632) Apontamentos (MATA681) Pedidos de Venda (MATA410) | Documentos sem eliminação de resíduo (C?_RESIDUO <> ‘S’). Documentos com saldo (C?_QUANT > C?_QUJE). Documentos não suspensos (C2_STATUS <> ‘U’). Documentos não encerrados (C2_DATRF = ‘’). |
Necessidades de material | Necessidades de Material geradas pelo DBR, e atualizadas na Atualização Pontos de Controle (BM0200). | bmg-necessidades | SD4 SGF | Ordens de Produção (MATA650) Operações X Componentes (MATA635) | Reservas com saldo (D4_QUANT <> |
Inventário das reservas (saldos) | Saldo de Estoque dos Itens MTS, importados na atualização Pontos de Controle (BM0200). | sdo-estoq-mts | SB2 SB8 | Saldos em Estoque (MATA225) Lotes (MATC060) | Saldos disponíveis (B2_STATUS <> ‘2’). |
OC e OP Item MTS | Ordens de Produção e Compra Itens MTS importadas na atualização Pontos de Controle (BM0200). | bmg-ord-mts | SC1 SC7 SC2 | Solicitações de Compra (MATA110) Pedidos de Compra (MATA120) Ordens de Produção (MATA650) | Documentos sem eliminação de resíduo (C?_RESIDUO <> ‘S’). Documentos com saldo (C?_QUANT > C?_QUJE). Documentos não suspensos (C2_STATUS <> ‘U’). Documentos não encerrados (C2_DATRF = ‘’). |
Na Confirmação da Programação, o APS utilizam as seguintes transações para integração:
Entidade | Tipo | Objetivo |
---|---|---|
ConfirmationDBR | Sender | Envia a Ordens de Produção, Operações da Ordem de Produção e Ordens de Compra. |
ReturnConfirmationDBR | Receiver | Recebe o número de cada Ordem de Produção e Compra criada no ERP. |
4.3. Entidades que não são importadas do Protheus
As tabelas listadas abaixo foram entidades identificadas no APS que não possuem correspondência nas tabelas do Protheus, ou não podem ser importadas porque no Protheus não estão gravadas em base de dados. Para cada caso foi adotada uma solução conforme segue.
Note que algumas entidades são de cadastro obrigatório para o funcionamento do APS.
Tabelas em que serão utilizadas informações cadastradas no APS:
Tabela | Solução |
---|---|
Calendário Datas Calendário | Obrigatório cadastrar no APS. Utilizar a rotina Manutenção de calendário (DB0137). |
Turno Turno Dia | Obrigatório cadastrar no APS. Utilizar a rotina Modelos de turnos (DB0138). |
Estabelecimento | Obrigatório cadastrar no APS. Utilizar a rotina Estabelecimento / Filial (DB0136), acessada através da rotina Manutenção Cenário (DB0101) |
Grupo de Maquina x Modelos Turno (Turno GM) | Opcional. Relaciona os modelos de turno utilizados pelo grupo de máquina. Como a informação não existe no Protheus será considerado para todos os grupos de máquina o turno informado nos Parâmetros do Cenário (DB0101). Utilizar a rotina de Relacionamento GM x Turno (DB0139) |
Código Redutor Preparação Matriz Redutor Preparação Recurso Secundário Recurso Secundário x Centro de Trabalho Recurso Secundário x Operação Grupo de Máquina x Grupo de Máquina Alternativo | Opcionais. São informações que devem ser cadastradas diretamente no TOTVS APS, pois não há entidades correspondentes no Protheus. |
Tabelas em que serão criadas com somente um registro (valor fixo):
Linha de Produção | Indica a linha de produção da ordem de produção. |
Planejador | Planejador das ordens de produção. |
Área de Produção | Agrupa os grupos de máquina em áreas. |
Tabelas que não serão consideradas:
As entidades abaixo não serão utilizadas na integração. O APS não trata o conceito de grade existente no Protheus. E para o APS não virão itens com referência.
Referência | Códigos de referência válidos (variações do item). |
Referências do item | Referência do item (variações de um item, como cor ou tamanho). |
Referências da estrutura | Relaciona referências dos itens pais e itens filhos da estrutura. |
Operação Padrão | Operação Padrão da engenharia. |
4.4. Campos do APS e seus correspondentes no Protheus
São os campos que são atualizados no APS através dos dados do Protheus. Os campos que não existem no Protheus podem ser atualizados diretamente no APS. Ao executar novamente o passo da atualização, essas alterações não serão sobrescritas. Porém se o campo existir no Protheus, ou tiver algum correspondente, ele será sobrescrito com o valor vindo do Protheus toda vez que for rodado a atualização e solicitado para atualizar tal tabela.
Linha de ProduçãoIndica a linha de produção da ordem de produção.PlanejadorPlanejador das ordens de produção.Área de ProduçãoAgrupa os grupos de máquina em áreas.
Integração
O que levou a criação da integração / o porquê da integração (Finalidade/Objetivo), de forma macro, o que será integrado do, por exemplo, Vertical com o ERP (BackOffice)
Explique o contexto de negócio ou do problema na qual esta integração estará inserida. Isto inclui o funcionamento da(s) ponta(s) envolvida(s).
Apresentar a integração como uma melhoria para o cenário ou como uma solução para o problema.
- Premissas
Gerais, do Vertical, do BackOffice e dos demais artefatos/sistemas envolvidos
Premissas Gerais
Premissas A
Premissas B
- Arquitetura (Tecnologia)
Escopo
Descreva, dado o contexto, qual o escopo de atuação da integração. Cite as áreas/perfis de usuários e funções impactadas. Se existe uma parte do contexto de negócio que a integração não tenta resolver, deixe explícito.
Defina exatamente o que a integração FAZ, o que ela NÃO FAZ e a sua finalidade.
[O conteúdo poderá estar disponível na ferramenta PMS – Painel de Gestão de Projetos, opção Plano do Projeto]
Como são os processos os que serão integrados, mas com uma visão geral e não só o ponto de integração caso contrário a homologação [ou outro que pegar o documento] não saberá do que se trata no sistema vertical, de forma sucinta, como funciona e o(s) ponto(s) de integração.
Citar a responsabilidade de cada produto.
Descrever com mais detalhes sobre o que será integrado (mas não ser especialista nas entidades/processos, pois suas particularidades serão descritas posteriormente) incluindo diagramas, prints, imagens, etc o que for interessante para auxiliar o entendimento.
Interessante aqui a inclusão de diagramas, imagens, lógicas, fluxo(s) do(s) processo(s) o que considerar interessante e agregador ao documento e ao escopo.
Pré-requisitos instalação/implantação/utilização
Relacione quais são os pré-requisitos (técnicos ou de negócio) para a integração. Este tópico não deve incluir informações da implantação normal do módulo, mas apenas informações específicas da integração. É como se este tópico já partisse do princípio que o módulo que será integrado já está normalmente instalado.
Entre os tópicos deste tópico podemos citar:
- Versões mínimas de produtos.
- Módulos ou programas que geram informações necessárias a integração. Muitas vezes a integração partirá de informações que somente são trabalhadas em um determinado programa ou processo, que deverá estar em uso no cliente.
- Ferramentas que são necessárias a integração, como: EAI, ESB, servidor de WebService etc.
- Aspectos legais nos quais as partes envolvidas na integração devem estar inseridas, caso as informações envolvidas sejam utilizadas para o cumprimento de alguma lei específica.
- Requisitos de hardware ou Software, como servidores, link de internet, capacidade de armazenamento e memória, sistema operacional.
Datasul
Insira aqui as informações pertinentes a Datasul.
Logix
Insira aqui as informações pertinentes ao Logix.
Protheus
Insira aqui as informações pertinentes ao Protheus.
RM
Insira aqui as informações pertinentes ao RM.
Instalação/Atualização
Este tópico tem por objetivo orientar a instalação da integração, visando o seu funcionamento completo. Instalação de produtos ou ferramentas necessárias podem referenciar outros documentos existentes, desde que estejam disponíveis no repositório de documentação da TOTVS ou sejam enviados junto com o documento da integração em si. As informações mínimas necessárias para teste tópico são:
- Procedimentos que devem ser observados quando um dos produtos for atualizado.
- Configuração necessária que deve ser realizada em arquivos de configuração ou programas de parâmetros etc.
- Arquivos diversos que devem ser mantidos em determinados locais para o funcionamento da integração, exemplo: xml, xsd.
- Atualizações necessárias em banco de dados ou instruções para que elas sejam feitas.
- Processos, módulos ou programas que precisam ser instalados ou atualizados. Deve ser definida a versão mínima necessária dos programas envolvidos.
- Ferramentas, servidores ou serviços que precisam ser disponibilizados e configurados, o que pode gerar necessidade de novo hardware ou aumento de capacidade. Exemplo: serviço de WebService.
- Instruções para habilitar a comunicação da ferramenta EAI entre as partes, quais rotas devem ser definidas ou como as transações devem ser habilitadas.
Observação: evite o uso de Prints de telas, facilitando, assim, o trabalho de tradução e versionamento deste documento.
Datasul
Insira aqui as informações pertinentes a Datasul.
Logix
Insira aqui as informações pertinentes ao Logix.
Protheus
Insira aqui as informações pertinentes ao Protheus.
RM
Insira aqui as informações pertinentes ao RM.
Controle de Versão
O grupo TOTVS, representado por suas marcas, irá administrar as demandas de evolução dos layouts e demais ajustes, acordando junto aos solicitantes o prazo de liberação de release.
Todas as evoluções programadas deverão ser discutidas e aprovadas pelas marcas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das marcas e alinhamento com as diretivas definidas pelo Comitê de Integração TOTVS.
Suporte
O suporte aos recursos da Integração será de responsabilidade de todas as linhas, sendo assim as equipes de suporte dos produtos RM Conector e Backoffice Protheus estarão aptas a fazer a primeira análise e, quando necessário, repassar para a equipe mais adequada em cada caso.
Observação: Este modelo de suporte está sendo revisado pela TOTVS.
Transações/Entidades/Mensagens únicas
Apresente quais as transações/entidades que são trocadas e quem envia a informação para quem. Pode (e recomenda-se) ter um diagrama, uma tabela ou afins que apresente este fluxo.
Relacione quais são as mensagem únicas (TOTVSMessage) utilizadas e qual o seu relacionamento com as entidades já existentes do ERPs envolvidos.
Exemplos:
Método | ID | Descrição | Origem | Destino | XSD (versões podem variar) |
Cadastros | 01 | Cliente/Fornecedor | RM | Protheus | CustomerVendor_1_000.xsd |
02 | Moeda | RM | Protheus | Currency_1_000.xsd | |
03 | Unidade de Medida | RM | Protheus | UnitOfMeasure_1_000.xsd | |
04 | Produto | RM | Protheus | Item_?_000.xsd | |
05 | Centro de Custo | RM | Protheus | CostCenter_1_000.xsd | |
06 | Ativos | RM | Protheus | NOVA, Ativo fixo | |
07 | Funcionários | RM | Protheus | Employee_1_000.xsd | |
08 | Projeto | RM | Protheus | Project_1_000.xsd | |
09 | Obra | RM | Protheus | SubProject_1_000.xsd | |
10 | Tarefa | RM | Protheus | TaskProject_1_000.xsd | |
11 | Meio de Pagamento | RM | Protheus | ?????.xsd | |
12 | Condições de pagamento | RM | Protheus | PaymentCondition_1_000.xsd | |
13 | Coligada* | RM | Protheus | Company_1_000.xsd | |
14 | Filial* | RM | Protheus | Branch_2_000.xsd | |
Processos | 15 | Solicitações (compras/armazém) | Protheus | RM | Request_1_000.xsd |
16 | Cancelar movimento (solicitação, OS, etc) | Protheus | RM | CancelRequest_1_000.xsd | |
17 | Cancelar movimento (solicitação, OS, etc) | RM | Protheus | CancelRequest_1_000.xsd | |
18 | Baixa de estoque | Protheus | RM | Request_1_000.xsd | |
19 | Baixa de estoque | RM | Protheus | Request_1_000.xsd | |
20 | Consulta Saldo | Protheus | RM |
| |
21 | Apropriação de custos |
|
| Request _1_000.xsd | |
22 | Geração de OS |
|
|
| |
23 | Consulta de OS |
|
|
| |
24 | Ampliação patrimonial |
|
|
|
Fluxo das Informações
Para cada fluxo de informação descreva, se necessário, alterações de comportamento que o respectivo produto irá sofrer. Por exemplo: quando o Logix recebe o PEDIDO de OUTRO ERP, este pedido não poderá ser alterado no Logix.
Liste quais as entidades integradas e como é o mapeamento entre as diferentes estruturas. Por exemplo: Classe no sistema A vira categoria no sistema B, o campo X é refletido no campo Y etc.
Liste quais transações/operações a integração fará com as entidades relacionadas. Exemplo: Insert de PEDIDO, Insert, update de ITEM, buscar saldo em estoque do ITEM no dia X ou buscar dados do FUNCIONÁRIO.
Cadastros
Descreva características gerais do fluxo de informações e que serão comuns para este tipo de entidade. Características particulares para cada entidade deverão ser citadas em tópicos específicos de cada entidade.
Sempre que existir (a sugestão é sempre criar) e for agregador ao documento acrescentar aqui os diagramas/imagens ou até mesmo colocar tais diagramas diretamente na especificação dos processos
Em seguida faça uma descrição para cada um dos fluxos para cada entidade
<Transação/Entidade>
Identificador da Mensagem: <mensagem>
Versão: <versão>
Módulo <marca 1>: <BackOffice – Gestão xxxxxxx>
Módulo <marca 2>: <SIGAXXX>
Tipo de Envio: <Assíncrona/Síncrona>
Mensagem Padrão | PROTHEUS | RM | ||
Tabela | Campo | Tabela | Campo | |
Code | CTO990 | CTO_SIMB | GMOEDA | SIMBOLO * |
Description | CTO990 | CTO_DESC | GMOEDA | DESCRICAO |
Symbol | CTO990 | CTO_SIMB | GMOEDA | SIMBOLO |
Notas:
Observações sobre comportamento desta mensagem ou dos processos envolvidos nela/para ela
A seguir descrever as variações, particularidades da mensagem e processos (integração) de acordo com cada marca
Limitações/Restrições
Descreva limitações e restrições para a integração que está sendo descrita.
Processos
Descreva características gerais do fluxo de informações e que serão comuns para este tipo de entidade. Características particulares para cada entidade deverão ser citadas em tópicos específicos de cada entidade.
Sempre que existir (a sugestão é sempre criar) e for agregador ao documento acrescentar aqui os diagramas/imagens ou até mesmo colocar tais diagramas diretamente na especificação dos processos
Em seguida faça uma descrição para cada um dos fluxos para cada entidade
<Transação/Processo>
Tipo de Fluxo: Protheus -> RM
Mensagem: Request_1_000
Versão: 1.000
Descrição de todo o comportamento e funcionamento do processo. Breve contexto, origem, regras, integração (geração da mensagem, envio, recebimento no destino), o quê supostamente irá ocorrer no destino, retorno, impacto, consequências, o que foi afetado, como conferir, validar, etc o retorno.
Acrescentar um diagrama do processo.
A seguir descrever as variações, particularidades da mensagem e processos (desta integração) de acordo com cada marca
Notas:
Observações sobre comportamento desta mensagem ou dos processos envolvidos nela/para ela
Limitações/Restrições
Descreva limitações e restrições para a integração que está sendo descrita.
Limitações / Restrições Gerais
Descreva limitações e restrições para cada fluxo descrito no tópico anterior. Exemplo:
- ERP1 envia ITEM cadastrado para o ERP2
ERP1 somente enviará o ITEM se este estiver em uma das famílias cadastradas no parâmetro FAMILIA_INTEGRACAO.
Se o tipo de valorização do estoque for FIFO.
- ERP2 envia PEDIDO cadastrado para o ERP1
O pedido recebido no ERP1 vindo do ERP2 estará bloqueado para alteração.
Como fazer (opcional)
Descreva os passos que viabilizem a integração.
Exemplo:
Os passos para viabilizar a integração são:
- No Logix ou no Protheus efetue o cadastro das seguintes informações: Clientes, fornecedores, transportadores, cidades, cotação de moeda e unidades de medida.
- No Logix cadastrar um novo depositante e efetuar toda a parametrização necessária para a operação de WMS.
- No Logix cadastrar um novo produto que seja controlado pelo WMS, para o depositante cadastrado anteriormente.
- No Logix efetuar um processo de recebimento para o produto cadastrado anteriormente, utilizando uma nota fiscal provisória (tipo “A”).
- No Protheus consultar a nota fiscal de recebimento que foi registrada no Logix, validando as informações recebidas.
- No Logix efetuar um processamento de regularização fiscal, efetuando a cobertura dos produtos recebidos anteriormente.
- No Protheus verificar se foi efetuado corretamente o relacionamento entre os dois documentos.
- No Logix efetuar um processo de expedição para o novo produto cadastrado, até o momento do envio da mensagem de integração de pedido de venda.
- No Protheus efetuar o faturamento do pedido de venda recebido.
- No Protheus verificar se a nota fiscal gerada contém todas as informações necessárias para o segmento de operador logístico (armazém geral).
- No Protheus efetuar a escrituração fiscal das notas fiscais, verificando se as regras da legislação deste segmento foram respeitadas.
- No Logix é possível consultar o número do pedido de venda gerado para as notas fiscais de retorno simbólico e conta/ordem no programa WMS6333 (Consulta de Documentos). Para os processos de faturamento de serviço o número do pedido está disponível no programa WMS6411 (Movimentos a Faturar).
Situações comuns (opcional)
Descreva situações problemáticas comuns que podem ocorrer durante o funcionamento da integração e como solucioná-los. Neste ponto também é importante dar instruções de como reconhecer e investigar problemas que podem vir a ocorrer durante a integração. Se houver, apresente tabelas de códigos e descrições de erros que a integração poderá apresentar.
Este tópico possivelmente será alimentado com as experiências durante o desenvolvimento da integração e poderá ser realimentado durante o uso da integração no cliente.
Exemplo 1:
Tratamento de erros de integração (Produto A)
Erro | Mensagem | Solução |
Código do erro | Mensagem exibida | Ação a ser tomada para resolução do erro. |
Tratamento de erros de integração (Produto B)
Erro | Mensagem | Solução |
Código do erro | Mensagem exibida | Ação a ser tomada para resolução do erro. |
Exemplo 2:
Quando uma mensagem é enviada do Logix para o Protheus, podem ocorrer situações em que o WebService não estará totalmente funcional. Nestes casos uma mensagem de erro genérica irá aparecer na tela:
Exemplo:
Erro ao enviar a mensagem de Cidade via Integração
Se o arquivo de log for analisado, poderemos ver a falha na comunicação com o sistema destino:
-------------------------------------------------------------------------------
WSCERR044 / Não foi possível POST : URL http://172.16.31.57:8011/ws/FWWSEAI.apw
ADVPL WSDL Client 1.080707 / tst on 20120315 08:49:51
-------------------------------------------------------------------------------
Para resolver este problema, verifique as configurações do sistema de destino, analisando o funcionamento do servidor utilizado para esta comunicação e a habilitação do endereço do WebService.
Checklist de suporte da aplicação
Crie um check-list de verificação de alguns pontos importantes para o funcionamento e atendimento da integração.
Instalação/Configuração
Relacione itens de verificação para garantir que a integração está corretamente instalada e configurada. Isto não pode ser uma cópia do procedimento de instalação/configuração, mas verificações pontuais que podem remeter aos itens da instalação.
Checklist de Verificações:
Relacione itens de verificações para que o atendente possa:
- Identificar o funcionamento da integração;
- Identificar a ocorrências de problemas;
- Coletar evidências do mau funcionamento relatado pelo cliente;
- Realizar possíveis ajustes na integração quanto à configuração ou negócio.