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.
Importante
Os bancos de dados do ERP Protheus homologados para integração são: Oracle, SQL Server e a partir da release 12.1.22 também PostgreSQL.
Servidor RPW
A api que realiza a atualização de dados (DBAPI200P) faz uso de componentes Windows, por isso esse processo é exclusivo em servidores RPW Windows. Ou seja, não é possível a execução desse processo utilizando servidor RPW Unix/Linux.
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. 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. É preciso que o ambiente Protheus esteja atualizado com as últimas atualizações disponibilizadas no portal. Suporte apenas na versão 12.1.33 e superiores.
2. Criar uma fonte de dados (ODBC) da base de dados do Protheus para que o APS possa acessá-lo;
3. 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;
4. Consumo de licenças para Webservices do Protheus: para a utilização dos webservices nessa integração sem o consumo de licenças, é necessária a alteração no appserver.ini conforme descrito aqui: Manufatura - Linha Protheus - SIGAPCP - Consumo de licenças na integração do APS x SIGAPCP;
Importante:
O License Server (Protheus e Datasul) devem estar na versão 2014 ou superior.
5. 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 agentes) 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.
Importante
Ao migrar o Protheus para a release 12.1.33 pedimos atenção com relação a chave Security utilizada na autenticação do webservice que teve uma mudança de comportamento.
Até a versão 12.1.27, se essa chave não estivesse especificada, não era exigida a autenticação do usuário na conexão ao webservice do Protheus, a partir da versão 12.1.33, quando está especificada é necessária a autenticação podendo ser apresentado ao usuário a mensagem AUTHENTICATION: USER NOT AUTHORIZED
Em Configurar Portais e Webservices veja o tópico Alteração de Comportamento 2 para maiores detalhes.
6. 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) Agora no VSCode Protheus, será necessário gerar o Client do Webservice. O VSCode já deverá estar conectado ao ambiente Protheus.
Orientações de como gerar os arquivos, acesse: TDS: Geração de cliente de serviço web (WEB Service)
Pode-se utilizar um nome qualquer.
5) Adicioná-lo à workspace e compilar. Se não ocorrerem erros o processo esta finalizado.
6) Caso seja gerado um erro acusando “classe duplicada/Duplicated function” o arquivo deverá ser salvo com nome idêntico ao apresentado na mensagem de erro (logo após as palavras “Encontrada em”/"found in").
7) Remova o arquivo antigo do projeto, adicione o novo e compile-o. Se não ocorrerem erros, o processo está finalizado.
8) Para integração APS x Protheus, além da geração de MTINTEGRATIONAPS, repetir a geração do client dos serviços abaixo:
a. MTPRODUCTIONORDER
b. MTPURCHASESREQUEST
c. MTEXECUTEQUERY (Webservice de atualização de dados, utilizando quando essa opção é selecionado no DB1000)
9) 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 ou realizar a configuração para não consumir licenças nessa integração: Manufatura - Linha Protheus - SIGAPCP - Consumo de licenças na integração do APS x SIGAPCP. 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 parametrização deve ser realizada na rotina DB1000 – Parâmetros Planejamento Avançado e as informações requeridas são:
- ERP Origem: ERP que será integrado com o TOTVS APS;
- Banco de Dados: Banco de dados do ERP integrado com o TOTVS APS;
- Tipo Integração: Datasource - Determina que a atualização de dados será realizada conectando diretamente ao banco de dados do Protheus. Onde os seguintes campos são visíveis: Empresa, Datasource, Usuário e Senha. Webservice: Determina que a atualização de dados será realizada por um webservice do Protheus (MTEXECUTEQUERY). Onde os seguintes campos são visíveis:Empresa, URL WS e Diretório Retorno ERP. Esse modelo de integração da Atualização de Dados é indicado à clientes Protheus que possuem os ambientes hospedados em Cloud. Pois nesse caso, a conexão de banco de dados é realizado pelo webservice, e não diretamente no banco de dados.
- 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;
- URL WS: Determina o endereço (URL) do webservice da atualização de dados. Visível quando tipo de integração selecionado é Webservice.
- Diretório Retorno ERP: Determina o diretório onde os arquivos do webservice de atualização de dados serão gerados. Deve ser, obrigatoriamente, um local acessível na rede interna para utilização do Protheus em Cloud. Visível quando tipo de integração selecionado é Webservice.
- Servidor: nome do servidor em que a base de dados do Microsiga Protheus está hospedada. Esta informação só é obrigatória quando o banco é SQL Server. Quando o banco é Oracle esta informação não é obrigatória, pois a conexão é feita somente pelo Datasource, utilizando o servidor que está gravado no arquivo TNSNAMES.ORA dentro da instalação do Oracle. Quando o banco é Postgres esta informação também não é obrigatória, só é necessário informar a empresa e o datasource. 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.
- Testar Conexão: efetua um teste de conexão com o Banco de Dados, conforme os valores inseridos. Caso tipo de integração for DataSource e banco de dados Oracle ou SQL, será possível selecionar qual driver utilizar - DB1000C (Quando não existir nenhum driver selecionado, serão realizados testes com os drivers existentes e mostrará qual funcionou com sucesso ou se não foi possível encontrar nenhum instalado)
Eis abaixo um exemplo de conexão com os bancos Oracle, SQL Server e Postgres:
Parametrização DB1000 com Banco Oracle:
Parametrização DB1000 com Banco SQL Server:
Parametrização de driver - DB1000C (DataSource com bancos Oracle ou SQL)
Além pode escolher qual driver usar, é possível configurar o tempo de conexão e o tempo de comando.
É exibida a string de conexão de acordo com os parâmetros informados.
Parametrização DB1000 com Banco Postgres:
Parametrização DB1000 com Webservice de atualização de dados, em qualquer banco de dados:
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;
- Se foi possível estabelecer conexão por software específico e ainda assim não foi possível estabelecer a conexão pelo TOTVS APS, é possível que seja necessário configurar um alias de acesso ao servidor do banco de dados SQL. Para realizar esta configuração, execute o procedimento a seguir:
No menu de navegação do Windows, pesquisar por “SQL Server Configuration Manager”:
Navegar entre as configurações Native Client, e selecionar a opção Aliases:
Fazer o procedimento a seguir tanto na versão 32 bits como 64 bits.Caso não exista alias, vá no menu ação e “Novo Alias”:
Abrirá uma janela com alguns campos que devem ser preenchidos da seguinte forma:
Nome do Alias: Deve ser igual ao servidor que foi configurado no DB1000
Número da porta: 1433 (Geralmente esta é a porta do SQL)
Protocolo: TCP/IP
Servidor: É o IP do servidor que se encontra o banco de dados SQL do protheus
3. Confirmação com WebService Protheus
É necessário informar os WebService para cada Estabelecimento do Protheus, isso deve ser realizado no programa DB0136 Cadastro de estabelecimentos do APS.
Características da Integração
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)
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. 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 | SG2 | Operações (PCPA124) | 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 (PCPA200) | Componentes de quantidade variável (G1_FIXVAT = ‘V’) são importados para o APS. Não traz componentes com quantidade fixa. Se filial é 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). Fantasma: No APS, a indicação de fantasma está no relacionamento entre os itens na estrutura. O APS importa todos os itens fantasmas e seus componentes, e na Confirmação NÃO são geradas ordens de produção dos itens fantasmas e esses componentes (empenhos) são vinculados automaticamente à ordem do item pai do fantasma. |
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’). Apesar da Atualização de Dados importar as operações dos itens fantasmas e sequencia-las, é importante que tais operações sejam vinculadas manualmente, no Protheus, ao item pai. Pois no Protheus não é permitido apontamento de operações vinculadas aos itens fantasmas, por esse motivo, ao confirmar a ordem de produção do item pai, as operações vinculadas ao fantasmas não são enviados ao Protheus. Para que as informações e a tabela SHY sejam geradas no Protheus, é necessário ativar o parâmetro MV_PCPATOR. |
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 | MNTA150 | 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”. |
Alternativos | Registro que contém os componentes alternativos de um determinado produto | alternativo-dbr | SGI | Alternativos (MATA010 ) | É necessário que os registros de estruturas sejam atualizados corretamente no APS. Caso algum registro alternativo não possua sua respectiva estrutura, será apresentado uma mensagem. |
(*) 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.
(**) Para essas tabelas caso ocorra problemas que impossibilitem carregar os dados resultantes das queries (timeout) ou query não retorne nenhum registro, todo o processo será interrompido. Assim, evitamos que o APS realize um planejamento com dados inconsistentes.
Caso o cadastro de item por estabelecimento (item-estab-dbr) seja necessário para utilização do conceito Multi-Estabelecimento do APS, é necessário que:
- Se a tabela SB1 seja compartilhada (campo B1_FILIAL = " "), torna-se obrigatório informar dados na tabela SBZ onde o campo BZ_FILIAL não pode estar vazio ou em branco.
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. |
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. Campos do APS e seus correspondentes no Protheus
Campos 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.
Nas tabelas abaixo estão os campos das principais entidades que serão atualizados do Protheus. Os demais campos são informados diretamente no APS.
4.1. Família Materiais
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Cód. Grupo | Família | |
Desc. Grupo | Descrição |
4.2. Item Manufatura
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Política | Na primeira atualização, respeitará a regra abaixo: Fabricados: Se houver lote econômico informado no Protheus, esse item será Lote Econômico, senão será Nível Superior. Comprados: Todos os comprados serão Período Fixo. Nas demais atualizações será mantido o valor parametrizado no APS. A regra acima é desconsiderada caso a query seja personalizada e enviado um valor valido de politica (1 até 6), assim a politica do item será atualizada com o valor personalizado. | |
Lote Mínimo para fabricado e Qtd Embalag para comprado. | Lote Múltiplo | No Protheus, o Lote Mínimo indica a quantidade mínima a ser produzida após o Lote Econômico, ou seja, é similar ao Lote Múltiplo no APS. Para comprados, usamos o campo Qtd. Embalag. do Protheus. |
Lote Econômico | Lote Econômico | |
Tipo Dec. OP Segurança | Quantidade Fracionada Quantidade Segurança | Se Tipo for igual a Normal, virá para o APS marcado como Quantidade Fracionada, caso contrário, virá desmarcado, pois arredonda a fração. |
Entrega | Ressupr Fornec | Para Itens Comprados -No APS é convertido para dias, conforme parametrizado no Protheus. |
Entrega | Ressupr Fabric | Para Itens Fabricados - No APS é convertido para dias, conforme parametrizado no Protheus. |
Filial Custo Stand. | Estabelecimento Valor Item | O campo “Valor item” é exibido em consultas e relatórios, por exemplo a Consulta de Ganho, Consumo e Desembolso (db0416) |
Campos sem correspondente no Protheus: Fator Refugo, Horizonte Fixo, Período Fixo, Quantidade Perda, Ressupr Compras, Ressupr CQ Compras, Prioridade, Planejador, Antecipação, Lote Mínimo, Lote Máximo, Arredonda Sobra, Divide Ordem.
4.3. Ferramenta Produção
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Código | Ferramenta | |
Descrição | Descrição |
4.4. Turno Exceção
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Em decorrência da utilização de arquivos locais para a entidade “Bloqueio de Recursos” no Protheus, ela não é integrada ao APS. Porém, quando há integração com o módulo de Manutenção de Ativos no Protheus, o bloqueio de bens é importado para o APS bastando que na atualização de dados a opção “Turno Exceção” seja diferente de “Não Atualiza”. No Protheus, são informadas as paradas de produção, enquanto no APS o Turno de Exceção refere-se ao tempo útil dos CTs. A integração realiza o de-para dessas informações, convertendo as paradas em tempo de produção conforme os turnos cadastrados. Exemplos: Trabalho das 8:00 as 12:00, e parada das 9:00 as 11:00. O APS cria o turno de exceção das 8:00 as 9:00. Quando a parada engloba todo o turno: Trabalho das 8:00 as 12:00, e parada das 7:00 as 12:00. O APS cria o turno de exceção das 0 as 0, ou seja, não terá disponibilidade nessa data. |
4.5. Grupo de Máquinas (Centro de Trabalho)
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Código C.T. Nome | Grupo Máquina Descrição | A entidade grupo de maquina no APS corresponde à entidade centro de trabalho do Protheus. |
Tipo Operac. (Campo da tabela Operação) | Tratamento Tempo | No Protheus os tipos são tratados por operação e no APS é considerado por Grupo de Máquina. Por padrão, o APS usa o conceito de Tempo Proporcional. Na Atualização de Dados, se houver algum grupo de máquina não existente no APS cujas todas as suas operações utilizam o conceito de Tempo Fixo o APS altera o valor do GM para Fixo. O APS não faz o tratamento nos casos de Ilimitado e/ou Tempo Mínimo. |
4.6. Centro de Trabalho (Recurso)
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Código C.T. | Centro Trabalho | A entidade centro de trabalho no APS corresponde à entidade recurso do Protheus. |
Nome Recurso | Descrição | |
Centro Trab M.O.(efic) | Grupo Máquina Eficiência | Será o valor informado no cadastro de Recurso do Protheus para o campo “M.O.(efic)” (H1_MAOOBRA) corresponde ao múltiplo de 100 no APS, ou seja, se informar 2 no Protheus, será atualizado como 200% no APS. Maiores explicações abaixo. |
4.7. Centro de Trabalho Válido
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Código (Recurso) | Centro Trabalho | Para cadastrar um centro de trabalho válido no Protheus existem 3 opções: |
Nome Recurso | Descrição | |
Centro Trab | Grupo Máquina | |
M.O.(efic) ou Eficien | Performance | Existem 3 formas de atualizar os CTs Válidos. Maiores explicações abaixo. |
Eficiência Centro de Trabalho e Performance CT Válido.
Os campos serão alterados somente na primeira atualização do registro, a partir das seguintes, será mantido o valor informado no APS. Ou seja, sempre que um CT ou CT Válido não existir no APS, o mesmo será atualizado com o valor informado no Protheus, senão será mantido o valor do APS.
Performance do CT Válido.
Existem 3 formas de atualizar os CT Válidos:
1) Recurso alternativo do cadastro de recurso. O campo Performance corresponde ao “M.O.(efic)” (H1_MAOOBRA) do cadastro do recurso alternativo multiplicado por 100.
2) Recurso informado na operação: O campo Performance correspondente ao “M.O.(efic)” (H1_MAOOBRA) do cadastro do recurso informado multiplicado por 100.
3) Recurso alternativo da operação: O campo Performance corresponde ao “Efic” (H3_EFICIEN) informada na tela do alternativo.
Observações:
- O campo eficiência do Centro de Trabalho e performance do CT Válido no APS possui o limite de 999.9 e 999.99, respectivamente, enquanto no Protheus esse limite pode ser ultrapassado. Quando exceder o limite, a atualização de dados considerará o valor padrão do campo, ou seja, 100%, além de informar o usuário sobre essa ação e o motivo.
4.8. Operações da Ordem de Produção
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Operação | Operação | |
Descr. Oper. | Descrição | |
Centro Trab | Grupo Máquina | |
Setup (Hs) | Tempo Preparação | |
Tempo Padrão – Tempo Reportado ou Proporcional a quantidade reportada. | Tempo Máquina | Se quantidade reportada maior zero então tempo-maquin é proporcional a quantidade reportada. Se não Tempo Operação menos o tempo reportado. |
Mão Obra * Tempo Padrão | Tempo Homem | Na atualização de dados, é multiplicado a quantidade de mão de obra (num-homem) pelo tempo maquina já calculado de acordo com a quantidade reportada. |
Tempo | Tempo Reportado (horas) | Deve converter o tempo do protheus, conforme parametrizado (hora ou decimal). |
IMPORTANTE: Não existe tela para consulta das informações da tabela op-ord-dbr no APS.
4.9. Roteiro Fabricação – Operações
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Operação | Operação | |
Descr. Oper. | Descrição | |
Centro Trab | Grupo Máquina | |
Setup (Hs) | Tempo Preparação | |
Tempo Padrão | Tempo Máquina | |
Mão Obra * Tempo Padrão | Tempo Homem | Resultado da multiplicação da quantidade de mão de obra (num-homem) pelo tempo padrão (tempo-maquina). Este valor é alimentado na atualização de dados |
Lote Padrão | Unid. Inicio Validade | Padrão 01/01/0001 |
Fim Validade | Padrão 31/12/9999 | |
Tipo Operac. | Tratamento Tempo (Campo da tabela Grupo de Máquina) | Vide help do campo “Tipo Operac” do Cadastro do Grupo de Máquina (db0107), neste documento |
Campos sem Correspondente no Protheus: Tempo Significativo, Lote Padrão, Lote Múltiplo, Lote Mínimo.
4.10. Roteiro Fabricação – Relação Item x Roteiro
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Produto Descrição | Item Descrição | |
Inic Validade Padrão Fim Validade Padrão | 01/01/0001 31/12/9999 |
Importante: Caso o valor do roteiro de fabricação no Protheus seja diferente de 01 ou exista mais de um roteiro, este roteiro deve ser informado no campo Rt. Op. Padrão (campo B1_OPERPAD da tabela SB1) no Cadastro do Produto (MATA010), caso contrário o APS importará o roteiro 01.
4.11. Roteiro Fabricação – Rede PERT
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Não há | Oper Predec | Código da Operação Predecessora do Item cadastrado no Protheus. No Protheus não existe o conceito de Rede PERT, dessa forma será sempre considerada a sequência ascendente das operações, conforme o código da mesma. |
Não há | Descrição | Descrição da Operação Predecessora do Item cadastrado no Protheus. |
Não há | Op Suces | No Protheus, não há um campo específico para operações predecessoras e sucessoras, a seqüência é definida pela tela “Operações” do módulo de Planejamento de Produção |
Descr. Oper. | Descrição | |
Tempo Sobre | Lote Transferência | Quando o Tipo Sobrep. = Tempo ou Quantidade |
Tempo Sobre | % Overlap | Quando o Tipo Sobrep. = Percentual |
Tempo Fim | Tempo Transp |
Vale salientar que para as ordens de produção firmes o overlap, lote de transferência e tempo de transporte considerados será sempre o da engenharia do produto no Protheus (Exemplo: Se alterar o tempo fim na engenharia do Protheus, afetará as ordens firmes).
4.12. Processo Fabricação – Operações
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Operação | Operação | |
Descr. Oper. | Descrição | |
Centro Trab. | Grupo Máquina | |
Setup (Hs) | Tempo Preparação | |
Mão Obra * Tempo Padrão | Tempo Homem | Resultado da multiplicação da quantidade de mão de obra (num-homem) pelo tempo padrão (tempo-maquina). Este valor é alimentado na atualização de dados. |
Inicio Validade Fim Validade | Padrão 01/01/0001 Padrão 31/12/9999 | |
Tipo Operac. | Tratamento Tempo (Campo da tabela Grupo de Máquina) | Vide help do campo “Tipo Operac” do Cadastro do Grupo de Máquina (db0107), neste documento |
Campos sem Correspondente no Protheus: Tempo Significativo, Lote Padrão, Lote Múltiplo, Lote Mínimo.
4.13. Processo Fabricação – Roteiros
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Não há | Roteiro | Código gerado com base no menor identificador interno das operações deste produto no Protheus (campo SG2.R_E_C_N_O agrupado por SG2.G2_PRODUTO e SG2.G2_FILIAL) |
Não há | Descrição | Formado pelo Código do Produto / Filial |
Não há | Inic Validade | Padrão 01/01/0001 |
Não há | Fim Validade | Padrão 31/12/9999 |
4.14. Processo Fabricação – Processos
Campo no Protheus | Campo no APS | Observação |
---|---|---|
Não há | Roteiro | Idem “Roteiro” da seção “Processo Fabricação – Roteiros” |
Filial | Estabelecimento |
Tais informações poderão ser visualizadas nas próprias telas do sistema, ao clicar no botão que aparecer ao lado direito de cada campo atualizado com informações do Protheus, conforme abaixo:
5. Numeração de ordens de produção e compras
Serão importadas todas as ordens de produção, operações da ordem de produção e ordens de compras (solicitação e pedido de compra do Protheus) para o APS.
- Ordem de Produção: Número da OP + Item + Sequencia + Filial (SC2.C2_NUM + SC2.C2_ITEM + SC2.C2_SEQUEN + SC2.C2_FILIAL). A formatação ficará de “XXXXXX.99.999.99”:
- Quando integrado ao APS, o Protheus não gera as ordens dos intermediários (PIs).
- O campo Grade (SC2.C2_ITEMGRD) não é considerado. Assim, ordens de produção com o mesmo número (SC2.C2_NUM + SC2.C2_ITEM + SC2.C2_SEQUEN + SC2.C2_FILIAL) e grades diferente, será importado apenas a primeira ordem encontrada; - Ordem de Compra: Pode ser importado a partir de uma solicitação de compra, com os campos Número da Solicitação + Item + Filial (SC1.C1_NUM + SC1.C1_ITEM + SC1.C1_FILIAL) ou de um pedido de venda, com os campos Número do Pedido + Item + Filial (SC7.C7_NUM + SC7.C7_ITEM + SC7.C7_FILIAL). Para diferenciar as solicitações e pedidos no APS, será usada a abreviação SC para solicitação de compra e PC para pedido de compra. Essa abreviação estará composta no código da ordem. A formatação ficará de “999999.9999.SC.99” para solicitação de compra e “999999.9999.PC.99” para pedido de compra.
6. Horizonte Fixo e Eliminação de Ordens
6.1. Ordens de Compra
Existem duas maneiras de filtrar as ordens de compra que serão consideradas pelo APS:
- Tipo Ordem: “Firmes” trará somente as ordens com situação “Firme” no Protheus e “Todos” trará todas as ordens sem distinção de situação.
- Horizonte Fixo do item: indica o número de dias necessários para que um fornecedor possa reagir a uma mudança na programação de compras que lhe foi enviada. No APS, é utilizado em conjunto com a data de referência informada na atualização de Dados. Ex: o Item A possui horizonte fixo de 40 dias, então o APS considerará todas as ordens de compras existentes com a data de entrega até 40 dias depois da data de referência.
“Caso a ordem de compra esteja fora dos critérios acima informados pelo usuário na Atualização de Dados, a ordem de compra não será considerada no Planejamento do APS. Na etapa de Confirmação, o APS criará uma listagem (em planilha) sugerindo a eliminação ou a reprogramação dessa ordem de compra pelo usuário. O APS não envia eliminação de ordens de compras ao Protheus.”
Pergunta: Quando utilizar um horizonte fixo maior que o tempo de ressuprimento do fornecedor?
Resposta: quando não é possível adiantar uma ordem de compra que já esteja emitida e necessária para a produção de um item acabado. A desvantagem é o atraso das ordens de produção criadas e vinculadas à referida ordem de compra e conseqüentemente dos pedidos, visto que o APS não altera a data das ordens de compra (pois este tipo de transação envolve um setor fora do controle da empresa e necessita de comunicação com os fornecedores, sem a qual poderia haver grandes impactos para o planejamento da produção).
Pergunta: Quando utilizar um horizonte fixo igual ou próximo ao tempo de ressuprimento?
Resposta: quando é possível adiantar uma ordem que já esteja emitida junto ao fornecedor, ou permitir a criação de uma nova ordem de compra (mesmo gerando excedente de estoque). O APS calcula quando a nova ordem de compra deve ser emitida e entregue, e sugere que o usuário manualmente replaneje a ordem de compra antiga.
Para mais detalhes, verificar na seção “Anexos” um exemplo do horizonte fixo com ordens de compra.
6.2. Ordens de Produção
Existem duas maneiras de filtrar as ordens de produção que serão consideradas pelo APS:
- Tipo Ordem: “Firmes” trará somente as ordens com situação “Firme” no Protheus e “Todos” trará todas as ordens sem distinção de situação.
- Horizonte Fixo do item: similar ao tratamento de horizonte fixo para Ordens de Compra. A diferença está no fato de que as ordens de produção fora do horizonte serão eliminadas na Confirmação, e ordens de produção sugerida pelo APS e marcadas para inclusão pelo usuário serão efetivamente criadas. Outro ponto importante é que ao invés de usar a data de entrega da ordem, como nas Ordens de Compra, para as Ordens de Produção será utilizado a data de início da mesma. O APS não sugerirá o replanejamento das datas das ordens de produção, como é feito para ordens de compras. Isso ocorre porque o controle de produção é feito pelo planejador de produção, que é o usuário responsável pelo APS e o setor de compras envolve setores externos à empresa
Caso a ordem de produção esteja fora dos critérios acima informados pelo usuário na Atualização de Dados, a ordem de produção será marcada para eliminação, a ser feita na etapa de Confirmação, desde que a ordem tenha status “Não iniciada” no Protheus.
Lembrete: quando o Protheus efetuar a eliminação de uma ordem pai, é possível que as respectivas ordens filhas também sejam eliminadas
7. Atributos da rede PERT
No Protheus, essas informações são cadastradas diretamente na operação. No exemplo abaixo:
- Na operação 02 o tipo de sobreposição foi informado como “Quantidade”. Isso será enviado para o APS como um lote de transferência entre as operações 01 e 02, na quantidade informada (40 unidades). A sobreposição é considerada sempre em relação à operação anterior;
- Na operação 03 o tipo de sobreposição foi informado como “Percentual”. Isso será enviado para o APS como um percentual de overlap entre as operações 02 e 03 (30%);
- Na operação 04 o tipo de sobreposição foi informado como “Tempo”. Como não existe esse tipo de sobreposição no APS, ele será convertido em um lote de transferência utilizando a seguinte fórmula:
- Lote Transferência = (Tempo Sobreposição * Lote Padrao) / Tempo Padrao. Neste exemplo teríamos: (0,5 * 100) / 2 = 25 unidades;
O tempo fim será enviado para o APS como tempo de transporte. No exemplo abaixo, haverá 1 hora de tempo de transporte entre as operações 01 e 02, e 3 horas após o término a operação 04.
Como a sobreposição é sempre em relação à operação anterior, caso seja cadastrado uma sobreposição para a primeira operação (01), esse valor será ignorado. O APS não trata sobreposição entre ordens de produção (somente entre operações da mesma ordem).
8. Alteração de datas das ordens de produção
Quando o APS executa o cálculo do planejamento e sequenciamento das ordens, é possível que sugira ao Protheus a alteração das datas início e fim de algumas ordens que estão com status “Firme” no ERP.
Entretanto, é importante ressaltar a influência de alguns parâmetros existentes no Protheus que podem modificar o comportamento da solicitação de alteração enviada pelo APS. Os principais deles estão relacionados ao MATA650 e são:
MV_PAR01: “Calcula Data Prevista”. Caso o valor seja “1” a alocação será pela data início (o cálculo da data término considerará o lead-time do item e será feito a partir da data início), caso o valor seja “2” a alocação será pela data fim (justamente o inverso da opção anterior);
MV_PAR07: “Altera Data Empenho/Ordem Produção Filhas”. Caso o valor seja “1”, o Protheus respeitará exatamente as datas início e fim enviadas pelo APS e efetuará a alteração também para as ordens de produção filhas.
Para verificar os valores destes parâmetros, deve-se seguir os passos abaixo:
1 – Acessar o SIGACFG e ir a Dicionário -> Base de Dados;
2 – Expandir o menu da empresa exibida e selecionar o item “Perguntas”;
3 – Clicar na lupa (botão “Pesquisar”) e informar “MTA650”. À direita serão listados os parâmetros correspondentes ao MATA650 (criação de ordem de produção) e a partir daí eles poderão ser visualizados/editados;
9. Criação dos empenhos das ordens de produção
Durante a criação de ordens de produção na integração do APS, por padrão o Protheus sempre irá calcular os empenhos da ordem de produção de acordo com o cadastro da estrutura.
É possível que o Protheus crie estes empenhos de acordo com o cálculo realizado pelo APS, sem a necessidade de realizar novamente a explosão da estrutura durante a criação da ordem.
Este processo é controlado utilizando a tag ListOfMaterialOrders da mensagem de criação de ordens (MtProductionOrder), conforme a regra a seguir:
- A lista de empenhos da ordem será considerada somente para a criação de ordens de produção. Para alteração de ordens, não existirá alteração de empenhos.
- Quando esta lista for enviada no arquivo de integração e existir ao menos um empenho registrado na lista, a criação da ordem de produção não irá realizar a criação padrão dos empenhos com base na estrutura do produto (SG1), e os empenhos da ordem de produção serão registrados através da execução automática da rotina MATA381, obedecendo os componentes recebidos nesta lista.
- Quando esta lista não for enviada ou for enviada sem nenhum empenho, a criação da ordem de produção irá fazer a criação dos empenhos com base na estrutura do produto (SG1), da mesma maneira que é o comportamento atual do processamento.
A lista ListOfMaterialOrders pode ter vários empenhos, sendo que cada empenho é identificado pela tag MaterialOrder. Dentro da tag MaterialOrder devem existir as seguintes informações:
Tag | Coluna SD4 | Observação | Obrigatório |
---|---|---|---|
MaterialCode | D4_COD | Código do produto empenhado | Sim |
MaterialQuantity | D4_QUANT e D4_QTDEORI | Quantidade do empenho | Sim |
MaterialDate | D4_DATA | Data do empenho | Sim |
ActivityCode | D4_OPERAC | Código da operação para consumo do empenho | |
WarehouseCode | D4_LOCAL | Código do armazém. Se vazio será utilizado o armazém padrão do produto | |
PertMaterialNumber | D4_TRT | Sequência (TRT) do componente na estrutura | |
OriginMaterialCode | D4_PRDORG | Código do produto origem. Somente quanto o empenho é de um produto alternativo |
Importante: A geração da Lista de Materiais a partir do APS será feita quando o Cenário de Planejamento (DB0101) estiver parametrizado para Consumo de Item Alternativo. Esta funcionalidade está disponível a partir da Release 12.1.2403
Rotinas da Integração
1. Atualização de Dados – Planejamento
Na Atualização de dados, após realizar as configurações descritas no tópico Pré-Requisitos, basta selecionar as entidades que se deseja importar e clicar em Executar. Observação: O campo empresa no programa DB0100 deve estar parametrizado para a atualização executar corretamente.
Para mais detalhes sobre as opções de Ordens de Produção e Ordens de Compra, consultar neste documento o item que fala sobre Horizonte Fixo.
2. Confirmação Programação
O processo de Confirmação da Programação é realizado através WS diretamente no Protheus. A integração é realizada de forma síncrona: a mensagem é postada no WS qual retorna uma mensagem de retorno, de sucesso ou erro.
65
Vale lembrar que na confirmação o usuário poderá decidir se as ordens de produção que forem selecionadas para confirmação no Protheus serão criadas como “Prevista” ou “Firme”. Ao confirmar as ordens como tipo “Prevista”, não serão eliminadas as ordens previstas já existentes no Protheus, mas será aplicado o conceito de Horizonte Fixo. Após serem criadas as ordens de produção, compra e operações, a numeração destas ordens é retornada ao APS, para que seja possível verificar as consultas e relatórios já com a numeração das ordens criadas no Protheus.
Através da rotina Monitor de Integração APS (DB0297) que será aberto logo após a confirmação , é possível verificar os registros já atualizados no Protheus, além dos possíveis erros ocorridos durante a criação das ordens e operações:
Nota: - Para mais detalhes sobre as rotinas utilizadas na integração, acesse o Manual de Referência do TOTVS APS.
4. Erros Comuns na Parametrização da Integração APS x Protheus
Situação:
Na Confirmação de Dados o Protheus retorna a mensagem “Um ou alguns campos obrigatórios não foram preenchidos no objeto Grid”.
Soluções:
1 - Verificar campos do Protheus que foram alterados para obrigatório na base de dados do cliente. O APS pode não estar enviando alguma informação que passou a ser obrigatória no Protheus, porém é irrelevante para o APS. Neste caso deve-se avaliar se realmente o campo deve ser obrigatório e no caso de resposta positiva, possivelmente será necessário uma customização na Confirmação do APS.
2 – No caso do campo com problema ser “Armazém”, verificar o campo “Armazém Pad.” do cadastro de Produtos do Protheus. O APS não envia a informação do Armazém para o Protheus, desta maneira o ERP Protheus assume o valor do Armazém Pad cadastrado para o Produto (campo B1_LOCPAD da tabela SB1). Caso o campo B1_LOCPAD esteja preenchido, e ocorre o erro "Armazem - C1_LOCAL < - - Invalido" verifique também que o parâmetro MV_APS esteja preenchido com TOTVS.
Situação:
Ao realizar a Atualização de Dados a seguinte mensagem aparece no log:
Ocorreu erro durante acesso a componente da propriedade/metodo: OPEN/EOF/CLOSE.
Soluções:
A mensagem “Ocorreu erro durante acesso a componente da propriedade/método” indica que ocorreu um erro na execução da query, e a mesma não retornou as informações.
Verifique as mensagens que aparecem nas linhas seguintes, elas podem elucidar o motivo do erro. Exemplos de erros:
1– “Invalid object name SB1000”: a empresa foi parametrizada errada (00). Verificar na tela Parâmetros do Planejamento Avançado (DB1000) na aba ERP se as configurações do ERP Origem, Banco de Dados e Empresa estão corretas. Também deve ser verificado se o usuário informado possui autorização para leitura do banco de dados. Após ajustado as configurações, deve ser efetuado um teste de conexão através do botão “Testar Conexão”.
2 – “Tempo limite de consulta excedido”: a query está estourando o limite de tempo (timeout) estabelecido no banco. Verifique junto ao administrador do banco se possível sanear a tabela ou criar algum índice para melhor o tempo de execução.
Caso o erro persista, deve ser analisado qual das entidades importadas pelo APS esta apresentado o erro – isso pode ser feito rodando a Atualização de Dados desmarcando a opção que se acredita que esteja com erro ou verificando o ponto onde o erro ocorreu no clientlog. Caso seja identificado que o erro ocorre apenas para alguma entidade, solicite ao suporte uma cópia da query (ou acesse o fonte dbapi200p.i, caso tenha acesso ao mesmo). Executar a query em qualquer editor SQL compatível com o banco de dados utilizado.
Requisitos de Hardware
Este item tem por objetivo divulgar recomendações sobre o uso de hardware relacionados ao TOTVS APS, e algumas informações sobre configuração dos mesmos. Estas recomendações têm por intenção ajudar nossos clientes na configuração do seu ambiente utilizando-o ao máximo, obtendo uma melhor relação custo/benefício. Porém não representam compromissos com tecnologias ou algum fornecedor em especial por parte da TOTVS. A decisão sobre a tecnologia e fornecedor é de competência do cliente, bem como o nível de serviço, segurança e confiabilidade que deseja do seu ambiente. As posições deste relatório também podem ser alteradas, isto devido à evolução das tecnologias e dos nossos produtos.
É importante lembrar que o ambiente cliente/servidor utilizado pelo TOTVS APS é de complexidade maior que um ambiente host-based. A correta configuração e tuning de todas as partes do ambiente (servidores, redes, clientes, banco de dados, etc.) é importante para o funcionamento do TOTVS APS, pois caso uma das partes esteja mal configurada toda a performance do ambiente poderá ser afetada.
As recomendações e exemplos citados abaixo levam em consideração somente o uso do TOTVS APS e outros softwares de uso genérico (Office e E-mail). No caso de instalação de outros softwares no mesmo ambiente (que não sejam ligados ao TOTVS APS é importante levar isto em consideração, pois as recomendações e exemplos abaixo podem não ser suficiente).
Requisitos para instalação da Área de Trabalho (Cliente):
- O sistema operacional deve ser Windows NT ou superior devido a capacidade de gerenciamento de memória.
- Recomenda-se a seguinte configuração para uma boa performance, no caso de instalação de PCs como estação de trabalho (Fat Client):
Recomendada | |
---|---|
Processador | Core DUAL CORE ou CORE 2 DUO (ou similar) |
Cache Interno | 1 GB |
Memória | 3 GB |
Disco | 100 GB |
Placa Rede | 10/100 Mbits |
Vídeo | SVGA (1024 x 768) min |
Obs.: Essas recomendações se aplicam a ambiente e tecnologias atuais.
TOTVS APS até pode ser executado em estações com menos memória , ou uma CPU menos potente, entretanto a performance estaria abaixo do aceitável. Não recomendamos o uso de estações menores que o mínimo pois a performance não atenderá as necessidades dos usuários em nenhum caso. Caso a sua empresa possua muitas estações com configurações inferiores a mínima recomendada, sugerimos utilizar o recurso de Servidores de Terminais Gráficos que irá utilizar este hardware já existente.
A configuração recomendada atende a maioria dos usuários, contudo para usuários mais exigentes talvez exista a necessidade de uma configuração melhor. Compreende-se por usuário mais exigente aquele que utilize processos mais pesados (necessidade de uma CPU melhor e uma placa de rede mais rápida e/ou ligada em uma porta de switcher dedicada para ele) ou de um usuário que use várias aplicações simultâneas (necessidade de mais memória para executar processos como Office, E-mail, CAD, EIS, etc. ao mesmo tempo).
Recomendamos a última configuração para novos equipamentos, caso a empresa venha adquirir novas estações e queira utilizá-las por um longo tempo sem necessidade de upgrade e sem ficarem obsoletos. Também foram levadas em consideração quais as configurações que os fornecedores de hardware estão oferecendo atualmente, e que tenham uma boa relação custo/benefício.
No caso das placas de rede recomenda-se comprar placas de fornecedores de primeira linha (Ex.: 3COM, Cabletron, outros). Isto porque estas placas são mais performáticas, tem drivers suportados pela Microsoft, e tem muitos menos problemas de compatibilidade. Ou seja, a confiabilidade, performance e qualidade são muito mais altas, com um acréscimo muito pequeno de custo.
Requisitos para outros Tipos de Instalação: Para outros tipos de instalação como Servidor de Aplicação, Banco de Dados e Programas sugerimos fazer um serviço de SIZING.
Anexos
1. Roteiro de Configuração de Web Services e Portal Protheus
Este boletim tem o objetivo de estabelecer um roteiro de configuração e utilização do Portal Protheus em uma rede corporativa (LAN). Esse roteiro de configuração destina-se aos analistas e técnicos de infra-estrutura.
Mais detalhes consulte o documento Roteiro de Configuração de Web Services e Portal Protheus (portal_roteiro_config_web_services_portal_protheus.pdf).
2. Boletim Técnico – Integração com TOTVS APS
Este boletim técnico traz informações adicionais aos usuários Protheus de como realizar a integração com o TOTVS APS. Esse boletim encontra-se disponível através do Portal de Clientes (suporte.totvs.com). Escolher no menu a opção Microsiga Protheus, e na consulta informar o chamado SCUJNA.
Produto | Microsiga Protheus Planejamento e Controle de Produção versão 10 | Chamado | SCUJNA |
Data da criação | 08/09/2010 | Data da revisão | 09/07/15 |
País(es) | Brasil | Banco(s) de Dados | TopConnect/DBAccess |
FNC | 00000019006/2010 | ||
Aplicabilidade | Campo específico para o Gestão de Frotas – Ficará oculto no modelo de boletim |
3. Exemplo de uso de horizonte fixo para Ordens de Compra
O horizonte fixo do item indica o número de dias necessários para que um fornecedor possa reagir a uma mudança na programação de compras que lhe foi enviada.
Na Atualização de dados, as ordens de compra que estiverem fora do horizonte fixo do item não serão consideradas no planejamento. O objetivo é evitar que alguma produção atrase por aguardar uma compra que esteja numa data futura (fora do horizonte fixo), e poderia ser adiantada. Desta forma, o APS poderá sugerir uma nova data para a ordem de compra, numa data mais próxima. Exemplo:
Tempo de ressuprimento do item comprado (lead time compra): 30 dias
Horizonte fixo: 30 dias (recomenda-se que seja igual ou maior que o tempo de ressuprimento)
Lead time de produção: 1 dia
Data de entrega do pedido de venda do cliente: daqui a 6 meses
Máxima antecipação do item produzido: 1 mês
Num planejamento, o APS sugere a ordem de compra da matéria-prima para daqui a 4 meses (1 mês de máxima antecipação + 1 mês de lead time de compra).
Neste caso, o ideal seria não confirmar essa ordem de compra, já que ela está fora do horizonte fixo do item. Mas caso a ordem de compra seja confirmada, na próxima atualização de dados o APS irá marcar essa ordem de compra como fora do horizonte, e não irá considerá-la no cálculo.
Consideremos agora que o pedido do cliente foi adiantado em 5 meses (entrega em 1 mês). Nesse caso, precisamos adiantar a ordem de compra para entrega em 1 mês.
O que o APS faz: como a OC atual está fora do horizonte, o APS não irá considerá-la no cálculo. Irá calcular uma OC para emissão na data atual, e entrega em 1 mês. Ao confirmar, o APS irá verificar que existe uma OC para o mesmo item fora do horizonte fixo, e não irá criar a nova OC. Irá sugerir a alteração da data de entrega da OC atual.
O que aconteceria se o horizonte do item estivesse com um valor alto (nesse caso, maior que 150 dias ou 5 meses): o APS iria considerar a OC atual como dentro do horizonte, e mesmo com o pedido do cliente adiantado em 5 meses, a ordem de produção seria programada somente para quando a OC atual chegar. Ou seja, o pedido do cliente seria entregue com atraso.
Importante: Para as Ordens de Produção a data considerada para verificar o horizonte é a data de início da ordem. Já no caso das Ordens de Compra é considerado a data de entrega da mesma.
4. Exemplo de uso de horizonte fixo para Ordens de Compra
Quando utilizado o módulo PMS do Protheus para gerenciar projetos, os materiais são comprados para serem utilizados em um projeto específico, sem a permissão de usar os recursos para outro projeto. O PMS gera pedidos de venda que são importados para o APS, que consequentemente gerarão ordens de produção. Os insumos destas ordens de produção são tratados como ordens de compra no APS e por tal motivo é necessário vincular a Ordem de Compra (dos insumos) à Ordem de Produção a qual ela será alocada (projetos). Este vínculo acontece quando habilitada uma função especial criada especificamente para este tipo de controle no APS. Isto foi feito via função especial (e não de forma oficial no produto) pois contempla apenas uma parte da integração entre PMS x APS. Veja no esquema abaixo como é o fluxo dos dados:
O vínculo do PMS com o APS é tratado nas seguintes rotinas:
Atualização de Dados: Quando uma solicitação de compra ou pedido de compra vier do Protheus com o número de ordem de produção informada e o item tiver política Nível Superior, Configurado ou Ordem, o APS associará a o pedido ou solicitação de compra ao pedido de venda da ordem de produção. Tal associação garantirá que, na fase de Explosão, os itens da ordem de compra sejam exclusivamente consumidos pelo pedido de venda relacionado. Caso a solicitação de compra esteja vinculada a um pedido de compra (que é o resultado do agrupamento de várias solicitações de compra), o APS tratará o pedido de compra do Protheus como ordem de compra no APS, porém criando parcelas para manter a rastreabilidade com as solicitações de compra e considerando o saldo do pedido de compra na distribuição destas parcelas.
OBS: as informações de projeto e ordem de produção ligada à ordem de compra não são gravadas nas tabelas do APS, apenas qual o pedido de venda está relacionado à ordem de compra.
Confirmação: quando executada a confirmação de ordens, o APS enviará, somente para a ordem de compra, a ordem de produção que a gerou, independente da política do item. Caso haja alguma ordem de compra confirmada mas sua respectiva ordem de produção não foi confirmada, isto será mostrado como alerta no relatório de confirmação mas efetivará a criação da ordem de compra no Protheus. Já o vínculo da ordem de compra com o projeto deverá ser feito de maneira específica dentro dos WebServices do Protheus, criando registros na tabela AFG.
OBS: na Atualização de Dados, é verificado se a ordem de compra está vinculada a uma ordem de produção que não existe mais no Protheus. Isso pode acontecer quando é criada uma estrutura macro no PMS, gerando pedidos e ordens de produção iniciais. Porém, quando esta estrutura ganha uma versão mais detalhada, são deletadas as ordens de produção iniciais para que sejam geradas outras mais detalhadas. Neste caso, o APS enviará para a confirmação a nova ordem de produção pai da ordem de compra.
5. Ordens de beneficiamento e autorizações de entrega
ORDENS DE BENEFICIAMENTO
O tratamento das ordens de beneficiamento oriundas do Protheus ocorre por meio de uma estrutura adequada para tal, a saber:
- O item final (acabado) deverá ser o item beneficiado;
- O item a beneficiar não deverá possuir estrutura e deverá ser filho do item acabado;
- Um item de serviço que também seja filho do item acabado para caracterizar que há uma operação terceirizada. Este item não terá estoque.
O APS tratará esta estrutura tal como os demais itens e gerará as Solicitações de Compras vinculadas à Ordem de Produção do item acabado, inclusive com a mesma numeração.
AUTORIZAÇÃO DE ENTREGA
As autorizações de entrega são importadaa pelo APS para composição do saldo previsto de entrada. Já para as necessidades de compra identificadas pelo APS, o Protheus busca por contratos de parceria disponíveis e, caso existam, gera uma autorização de entrega. Caso não existam contratos disponíveis, será gerada uma solicitação de compra.