Histórico da Página
Integração PCP Protheus x PPI-Multitask
Contexto de negócio
- MES
Manufacturing Execution Systems, ou simplesmente MES, é o termo utilizado para designar os sistemas focados no gerenciamento das atividades de produção e que estabelecem uma ligação direta entre o Planejamento e o Chão de Fábrica. Os sistemas MES geram informações precisas e em tempo real, que promovem a otimização de todas as etapas da produção, desde a emissão de uma ordem até o embarque dos produtos acabados.
A importância destes sistemas vem da lacuna que normalmente existe entre o ERP (Entreprise Resource Planning) e os softwares específicos da linha de produção. O MES pode importar dados do ERP e integrá-los com o dia a dia da produção, gerenciando e sincronizando as tarefas produtivas com o fluxo de materiais.
Considerando que na cadeia de suprimento o maior valor agregado costuma estar na produção, faz todo sentido investir em sistemas que otimizem o fluxo, controle e qualidade do material (Fonte: PPI-Multitask). - Planejamento e Controle da Produção
A reunião dos meios de produção (matéria-prima, mão de obra e equipamentos) possibilita a fabricação de produtos que surgem pela ação dos Sistemas produtivos. Os planos que servem de guia na execução e no controle da produção são comandados pelo órgão auxiliar denominado Planejamento e Controle da Produção (PCP), que dita normas à linha de produção, visando a um fluxo ordenado e contínuo do processo produtivo. - Chão de Fábrica
Permite ao usuário planejar, "apontar" e monitorar as atividades executadas em cada centro de trabalho da fábrica e máquina, possibilitando uma visão integrada das operações realizadas, em execução e a serem processadas. Permite o Gerenciamento e Monitoramento dos resultados (produtividade, eficiência, atrasos, qualidade, utilização, níveis de parada, motivos de refugo, desvio de tempo real / padrão, etc) obtidos. Na utilização integrada ao MES, os apontamentos serão realizados pelo sistema MES.
Sistemas Envolvidos
PCP PROTHEUS
- PCP - SIGASFC PROTHEUS
PC-FACTORY (PPI MULTITASK)
Integração
O objetivo da Integração PC Factory (software MES da empresa PPI Multitask) X PROTHEUS é disponibilizar aos clientes TOTVS uma nova opção para controle da produção por meio da automação dos processos, permitindo a atualização e extração de informações de forma on-line de modo a simplificar o fluxo dos clientes.
Escopo
Permite a integração entre o módulo PCP e SIGASFC do Protheus com o MES PC-Factory da PPI-Multitask, que tem como objetivo controlar os apontamentos das ordens de produções. O Protheus tem como responsabilidade a criação das ordens de produção e o PC-Factory, os apontamentos.
A integração contempla as seguintes rotinas e processos na FASE 1:
- Parametrização: Permite parametrizar a utilização da integração, indicando se está ATIVA. Indica se ocorrerá a geração dos arquivos XMLs das informações que serão trafegadas entre os sistemas e, também possibilita definir os filtros que serão aplicados nas informações.
- Integradores: Os "adapters" são as funções responsáveis por enviar ou receber as informações que são trafegadas entre os sistemas PCP Protheus e PC-Factory. A integração contempla as seguintes informações: Produto, local de estoque, recurso, ordens de produção, apontamento de produção e apontamento de parada.
- Pendências: Permite gerenciar as pendências de envio do PCP Protheus para o PC-Factory bem como verificar o histórico e erros do processo da integração.
- WebService: Permite processar os apontamentos de produção e parada enviados do PC-Factory para o Protheus.
- Sincronização: Permite realizar a sincronização dos dados entre o PCP Protheus e o PC-Factory. Poderá enviar os dados dos Produtos, Local de Estoque, Recurso e Ordem de Produção.
- Log de Importação: Permite consultar o processo de integração dos apontamentos de produção e paradas enviados do PC-Factory para o Protheus.
A integração contempla as seguintes rotinas e processos na FASE 2:
A fase 2 contempla o consumo dos componentes, movimentações efetuadas pelo PC-Factory e saldos em estoque. Também considera o sistema SIGASFC - Chão de Fábrica.
- Parametrização: Permite parametrizar a utilização da integração, indicando se está ATIVA. Indica se ocorrerá a geração dos arquivos XMLs das informações que serão trafegadas entre os sistemas e também possibilita definir os filtros que serão aplicados nas informações.
- Integradores: Os "adapters" são as funções responsáveis por enviar ou receber as informações que são trafegadas entre os sistemas Protheus e PC-Factory. A integração contempla as seguintes informações: Produto, local de estoque, recurso, máquinas, ferramentas, roteiro, estrutura, endereço, ordens de produção, saldos em estoque, movimentos e transferências de estoque, apontamento de produção, apontamento de parada e recusa.
- Pendências: Permite gerenciar as pendências de envio do Protheus para o PC-Factory, bem como verificar o histórico e erros do processo da integração.
- WebService: Permite processar os apontamentos de produção e parada enviados do PC-Factory para o Protheus.
- Sincronização: Permite realizar a sincronização dos dados entre o Protheus e o PC-Factory. Poderá enviar os dados dos Produtos, Local de Estoque, Recurso, Máquina, Roteiro, Estrutura, Endereço, Saldo em Estoque e Ordem de Produção.
- Log de Importação: Permite consultar o processo de integração dos apontamentos de produção, paradas e recusas enviados do PC-Factory para o Protheus.
Pré-requisitos instalação/implantação/utilização
Para a versão 12 do Protheus, deve-se aplicar o pacote de atualizações a partir da versão 12.1.10 na Fase I.
Também é possível utilizar na versão 11.80.14 para Fase I e 11.80.17 para Fase II. Deve-se executar a atualização de dicionário com o programa U_UPDPCP34.
A Build deve ser igual ou superior a 7.00.131227A e data 08/09/2014.
Endereço de IP e porta liberada para execução do WebService. Estes dados serão utilizados no arquivo APPSERVER.INI na sessão WEBSERVICE.
Deve atualizar o arquivo APPSERVER.INI na sessão WEBSERVICE.
Para configurar um WebService deve-se verificar o documento de configuração a seguir: http://tdn.totvs.com/pages/viewpage.action?pageId=6064937
Exemplo :
;CONFIGURACAO WEBSERVICE
[HTTP]
enable=1
port=8090
[10.80.62.219:8090]
ENABLE=1
Trace=1
PATH=C:\TOTVS 11\Microsiga\Protheus_Data\web\ws
ENVIRONMENT=mssqlserver
INSTANCENAME=WS
RESPONSEJOB=JOB_WS_9901
DEFAULTPAGE=wsindex.apw
[JOB_WS_9901]
SECURITY=1
TYPE=WEBEX
ENVIRONMENT=mssqlserver
INSTANCES=1,20
SIGAWEB=WS
INSTANCENAME=WS
ONSTART=__WSSTART
ONCONNECT=__WSCONNECT
;FIM CONFIGURACAO WEBSERVICEIMPORTANTE
Informações | ||
---|---|---|
| ||
O nome do Webservice a ser utilizado no TOTVSMES é o WSPCP. Não é utilizado o EAI. |
Também deve-se atualizar no arquivo APPSERVER.INI na sessão PROXY (caso exista proxy configurado)
[PROXY]
Enable=1
Server=proxy-jv.jv01.local
Port=8080
User=XXXXX
Password=*******
Nota | ||
---|---|---|
| ||
Existe um wizard para facilitar a criação dos webservices Protheus. Verificar em: http://tdn.totvs.com/display/framework/Como+iniciar+um+servidor+de+Webservices+no+Protheus |
Quadro de compatibilidade:
Versão Protheus | Versão PC-Factory | Conteúdo |
---|---|---|
PCP PROTHEUS 11.80.14, 12.1.10 | Fase 1 | |
PCP PROTHEUS 11.80.18, 12.1.14 | 4.0.1713.2002 |
|
PCP - PROTHEUS 11.80.17, 12.1.16 | 4.0.1713.2002 |
|
PCP - PROTHEUS 11.80.17, 12.1.16 | 4.0.1714.1002 |
|
PCP - PROTHEUS 11.80.21, 12.1.16 | 4.0.1714.1002 |
|
PCP - PROTHEUS 12.1.19 |
|
Autenticação
Quando o usuário e a senha estiverem cadastrados no PCPA109 (Parâmetros de Integração MES), folder Segurança, estes dados serão enviados na mensagem para que o PC-Factory efetue a autenticação.
Estes dados serão enviados no cabeçalho da mensagem da seguinte forma:
Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l
Onde: O valor será usuário:senha criptografado em Base64.
O recebimento das mensagens também seguirá mesmo modelo, porém o PC-Factory enviará um usuário do Protheus.
Informações | ||
---|---|---|
| ||
Para configurar a autenticação no recebimento, o appserver.ini deve ter o campo SECURITY=1, conforme exemplo de configuração do WebService. |
Security = 0 -> Não utiliza autenticação.
Security = 1 -> Utiliza autenticação
Instalação/Atualização
A integração Protheus x PC-Factory PPI-Multitask é ativada por intermédio dos seguintes passos:
- Abrir o programa de Parâmetros da integração: PCPA109 (Atualizações -> Integração MES-> Parâmetros).
- Setar o campo Ativo para "1- Ativo".
- No campo caminho Informar a URL do WebService da PPI-Multitask.
- Verificar a conectividade do WebService por meio do botão Testar.
- Indicar se a integração irá gerar fisicamente os arquivos XML.
- Configurar os filtros para cada informação que será trafegada entre os sistemas.
- Confirmar a ativação por meio do botão CONFIRMA.
O botão de Testar verifica se é possível realizar a conexão com o WebService informado no campo Caminho. Este botão tem dois retornos:
- Conexão com o WebService realizada com Sucesso.
- Não foi possível realizar a conexão com o WebService do PC-Factory.
Selecionando o campo Gera XML, serão gerados os XML das mensagens trocadas. Se não estiver selecionado, será gravado apenas em tabelas. A geração dos arquivos não é obrigatória. Serve como uma ferramenta útil para encontrar problemas e poderá ser gravado no diretório de XMLs enviados com sucesso ou XMls pendentes.
Os nomes do arquivos seguirão o seguinte padrão:
OK_<MSG>_<DATAHORA>_<REGISTRO>
PEND_<MSG>_<DATAHORA>_<REGISTRO>
ERR_<MSG>_<DATAHORA>_<REGISTRO>
Em que: OK - Se mensagem entregue sem problemas
PEND- Se mensagem não foi enviada
ERR - Se mensagem enviada, porém retornou erro.
MSG - Nome da mensagem. Ex.: Item, Wharehouse, Workcenter, etc.
DATAHORA: Data e Hora do envio
REGISTRO: Código do registro que está sendo enviado. Ex.: Código do item, número da ordem, etc.
Para cada arquivo movimentado (produto, local de estoque, recurso, ferramenta, máquina, roteiro, estrutura, endereço, movimentos, saldos e ordem de produção) terá um folder. Para cada folder, será possível montar filtros e definir parametrizações. Os filtros serão utilizados nas rotinas que enviarão informações ao PC-Factory, permitindo selecionar o que deve ser enviado. Serão exibidos os campos da tabela selecionada (folder) e operadores para que sejam montados os filtros. Se não existir nenhum filtro cadastrado todo registro incluído, alterado ou excluído será enviado ao PC-Factory. Para montar os filtros o usuário requer conhecimento do dicionário de dados pois é utilizado diretamente o nome das tabelas e dos campos.
Exemplo:
Montar um filtro para que somente seja enviado os produtos que sejam classificados como Produto Acabado. O filtro será: B1_TIPO = "PA"
O envio de informações do Protheus para o PC-Factory PPI-Multitask ocorre nas seguintes transações:
- Cadastro, alteração e exclusão de produto MATA010, local de estoque AGRA045 e recurso MATA610, SFCA006 e SFCA002;
- Cadastro e alteração de ordens MATA650;
- Processo para FIRMAR ordens MATA651;
- Manutenção das operações MATA632;
- Manutenção dos empenhos, MATA380 e MATA381;
- Cadastro, alteração e exclusão de Operações x Componentes MATA637;
- Carga máquina MATA690;
- Cálculo do MRP MATA712 (versão 11.8) ou PCPA107 (versão 12);
- Cadastro, alteração e exclusão de estrutura, MATA200;
- Splits de produção gerados pelas rotinas que manipulam ordem e o SFCA310 Apontamento Modelo 1 do Chão de Fábrica;
- Cadastro, alteração e exclusão do endereço MATA015;
- Cadastro, alteração e exclusão de ferramentas MATA620.
- Atualização de saldos.
- NF de Entrada - Rotinas que executam a função B2ATUCOMD1;
- NF de Venda - Rotinas que executam a função B2ATUCOMD2;
- Mov. Internas - Rotinas que executam a função B2ATUCOMD3;
- Inclusão de saldo MATA220 e MATA805.
O envio de informações do PC-Factory PPI-Multitask para o Protheus ocorre nas seguintes transações:
- Cadastro de motivos de parada SFCA004;
- Cadastro de motivos de refugo SFCA003;
- Movimentações avulsas de estoque. Entrada MATA250. Saída MATA240;
- Transferência de estoque MATA261;
- Apontamento de produção MATA681 e SFCA310;
- Apontamento de parada MATA682 e SFCA311.
- Recusa/Apontamento de perda MATA685.
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.
Nota | ||
---|---|---|
| ||
Esse modelo de suporte está sendo revisado pela TOTVS. |
Transações/Entidades/Mensagens únicas
As seguintes transações serão trocadas entre a TOTVS e a PPI-Multitask:
Método | ID | Descrição | Origem | Destino | XSD (versões podem variar) | Programas | Tabela |
Cadastros | 01 | Produto | Protheus | PC-Factory | Item_3_001.xsd | MATA010 | SB1 |
02 | Local de Estoque | Protheus | PC-Factory | Warehouse_1_001.xsd | AGRA045 | NNR | |
03 | Máquinas | Protheus | PC-Factory | Machine_1_000.xsd | MATA610 SFCA002 | SH1 CYB | |
04 | Recursos | Protheus | PC-Factory | Resource_1_000 | MATA620 SFCA006 | SH4 CYH | |
05 | Estrutura | Protheus | PC-Factory | ItemStructure_1_000 | MATA200 | SG1 | |
06 | Roteiro | Protheus | PC-Factory | ItemScript_1_000 | MATA632 MATA637 | SG2 | |
07 | Ordem de Produção | Protheus | PC-Factory | ProductionOrder_2_004.xsd | MATA650 MATA651 MATA380 MATA381 MATA690 MATA712 PCPA107 SFCA310 | SC2 | |
08 | Endereço | Protheus | PC-Factory | AddressStock_1_000 | MATA015 | SBE | |
09 | Estoque | Protheus | PC-Factory | ItemStockLevel_1_000 | B2ATUCOMD1 B2ATUCOMD2 B2ATUCOMD3 MATA220 MATA805 | SB2 SB8 SBF | |
Processos | 09 | Motivo de Parada | PC-Factory | Protheus | StopReason_1_000 | CFGX016 SFCA004 | SX5 CYN |
10 | Motivo de Refugo | PC-Factory | Protheus | WasteReason_1_000 | CFGX016 SFCA003 | SX5 CYO | |
11 | Apontamento de Produção | PC-Factory | Protheus | ProductionAppointment_2_000 | MATA681 SFCA316 | SH6 SD3 CYV | |
12 | Apontamento de Parada | PC-Factory | Protheus | StopReport_1_001 | MATA682 SFCA311 | SH6 CYX | |
13 | Estoque - Request | PC-Factory | Protheus | StockLevel_2_00 | SB2 SB8 SBF | ||
14 | Movimentações | PC-Factory | Protheus | MovementsInternal_1_001 | MATA240 MATA250 | SD3 | |
15 | Transferência | PC-Factory | Protheus | TransferWarehouse_1_003 | MATA261 | SD3 | |
16 | Recusa | PC-Factory | Protheus | Refusal_1_000 | MATA685 | SBC |
Fluxo das Informações
Fluxo das informações das transações:
- Produto, local de estoque e recurso: no momento da criação, alteração ou exclusão de um produto no programa MATA010, de um local de estoque no programa AGRA045 ou de um recurso nos programas MATA610 ou SFCA006 ou SFCA002 (máquina) e ferramentas no MATA620. Os programas verificam se a integração está ativa e, se estiver ativa, efetuam o envio do cadastro para o PC-Factory. Caso não ocorrer erro, o cadastro não apresentará nenhuma mensagem, porém se ocorrer erro uma mensagem será exibida questionando se deseja criar uma pendência de envio no programa PCPA110. Se optar por gerar a pendência o processo, será comitado no Protheus e a atualização para o PC-Factory deverá ser realizada por meio do PCPA110.
Na engenharia também são integrados os cadastros de estrutura MATA200 e roteiro MATA632 ou MATA637, e endereços MATA015, sempre quando ocorrer a criação, alteração ou exclusão de um registro. - Ordem de produção: no momento da criação ou alteração de uma ordem de produção, ou durante a alteração da situação de uma ordem (alocação/carga máquina, requisição, alteração de operações ou empenhos, MRP, criação de splits), o programa irá verificar se a integração está ativa e, se estiver ativa, irá efetuar o envio do cadastro para o PC-Factory. Se não ocorrer erro, o cadastro não apresentará nenhuma mensagem. Caso ocorra erro, uma mensagem será exibida* e uma pendência de envio poderá ser criada no programa PCPA110. Ao final do processo das rotinas que processam múltiplas ordens, como por exemplo carga máquina, serão exibidas as quantidades de registros que foram enviados ao PPI-Multitask e também os que tiveram pendência de envio. Obs.: Algumas rotinas geram pendências sem realizar o questionamento devido ao número de ordens processadas.
Rotinas que foram afetadas pela integração: Manutenção de Ordens (MATA650), Rotina para Firmar Ordens (MATA651), Manutenção das Operações (MATA632 ou MATA637), Manutenção dos Empenhos (MATA380 e MATA381), Carga Máquina (MATA690) e MRP (MATA712), Splits de produção (SFCA310). - Programa de gerenciamento de pendências PCPA110 - este programa tem por função administrar as pendências/exceções referentes à integração que são criadas quando a mensagem não for enviada ao PC-Factory, sejam elas, pendências ou erro. Permite o reprocessamento de uma mensagem, exclusão de uma pendência e a visualização do XML, além de possuir filtro por data de envio, transação, tipo de pendência e rotina geradora. A rotina também permite consultar as mensagens enviadas com sucesso.
- Programa de Sincronização PCPA111 - permite o envio das informações do produto, local de estoque, recurso, ferramentas, roteiro, estrutura, endereço, saldo em estoque e ordem de produção e tem como objetivo efetuar uma atualização da base de dados do PC Factory. Além dos filtros definidos no PCPA109, também será possível adicionar novos filtros para cada tabela.
- Apontamento de produção: Esta rotina consiste no WebService para receber os apontamentos de produção realizados no PC-Factory. Poderá processar apontamentos de produção e parada de recurso. Executará o mesmo processo que as rotinas MATA681 e MATA682. Quando o Chão de Fábrica estiver instalado, executará o mesmo processo que a rotina SFCA316 e SFCA311.
O fluxo da integração será o seguinte:
a. Operador efetua reporte normalmente conforme sua operação no PC-Factory.
b. Em um processo batch ou disparado paralelamente no sistema, ocorre a montagem da mensagem (XML) conforme Schema de Mensagem Única TOTVS e o envio dessa mensagem(XML) para o Protheus; que validará a mensagem e encaminhará ao respectivo adapter de negócio (MATA681/MATA682 ou SFCA316/SFCA311) para processamento.
c. Em caso de erros, esse reporte ficará com um status de pendente para envio dentro do software MES e o usuário poderá tomar ações no próprio PC Factory (o Protheus não manterá rastreabilidade das mensagens recebidas, mas registrará em LOG o processamento).
d. Em caso de sucesso no reporte, será retornado ao PC-Factory o número do registro do reporte realizado no Protheus. Esse número poderá ser utilizado em caso de estorno. - Atualização de saldo no PC-Factory ocorrerá das seguintes formas:
a. Request: o PC-Factory solicita um saldo gerando mensagem XML de request. Nesta mensagem pode solicitar o saldo por item, por local de estoque, entre outros.
b. Atualização Protheus: Quando ocorrer uma atualização de saldo no Protheus deverá enviar uma mensagem XML ao PC-Factory. São consideradas as principais rotinas do ERP, como Nota fiscal de entrada e venda e algumas movimentações internas e a inclusão de saldo via MATA220 e MATA805. - Movimentações de estoque: Quando o PC-Factory realiza movimentações de estoque e transferências, estas movimentações serão atualizadas no Protheus.
No caso das movimentações, se for E (entrada), deverá executar o MATA250. Se for S (saída), deverá executar MATA240. Nos casos de transferências executará o MATA261. - Recusa/Apontamento de perda. Esta rotina consiste no WebService para receber os registros de recusa realizados no PC-Factory. Executará o mesmo processo que as rotinas MATA685.
- Consulta de Log de importação PCPA112: Essa rotina consiste na consulta dos registros dos apontamentos que foram processados pela integração Protheus x PC-Factory. Rotina deverá exibir os apontamentos efetuados e o status de cada processo.
Ponto de Entrada
Para facilitar o uso da integração e tornar o uso flexível em qualquer ambiente produtivo, foram criados alguns pontos de entrada para solucionar possíveis situações específicas não atendidas pelo processo padrão e também, permitir configurações mais precisas no uso da integração:
Apontamento: O ponto de entrada MATI681CRG permite adicionar informações que serão utilizadas no apontamento da produção e no apontamento de parada, tabela SH6. Exemplo: Caso exista algum campo específico ou tabela específica não tratada pela integração, poderá usar essa função para setar seu conteúdo. Detalhes em: MATI681CRG - Adicionar informações Adapter do apontamento.
Apontamento: O ponto de entrada MT680VAL permite validar se alguma informação deverá ser obrigatória como tempo, quantidade, entre outros. Essas validações ficarão a cargo dos clientes, pois cada um terá sua regra. Detalhes em: MT680VAL - Inclusão das Produções.
Apontamento: O ponto de entrada MATI680OPR permite alterar o código da operação recebida no apontamento da produção. Detalhes em: MATI681OPR - Alterar código operação mensagem apontamento produção.
Apontamento: O ponto de entrada MTI681QTAP permite alterar a quantidade recebida no apontamento da produção. Este ponto de entrada é indicado para aplicar o fator de conversão na quantidade do apontamento quando ERP e PC-Factory trabalham com unidade de medida diferente. Detalhes em: MTI681QTAP - Alterar quantidade do apontamento ProductionAppointment.
Apontamento: O ponto de entrada MATI681EXC permite verificar se o apontamento será executado ou não. Este ponto de entrada é indicado para validações que impeçam o apontamento de produção e parada. Também usado para casos em que é necessário atualizar alguma informação antes do apontamento (exemplo: estornar um endereçamento). Detalhes em: MATI681EXC - Processa mensagem Apontamento.
Apontamento: O ponto de entrada MT681ALXML permite modificar qualquer informação da mensagem. Este ponto é indicado para empresas que possuem produtos com controles distintos entre o ERP e o PC-Factory. Por exemplo, controla Lote no PC-Factory e não controla no ERP. O Lote é gerado no XML e retirado via ponto de entrada. Detalhes em: MT681ALXML - Alterar informações XML ProductionAppointment.
Ordem de Produção: O ponto de entrada MTI650ADOP permite adicionar uma nova operação na mensagem de ordens de produção. Para cada operação que está sendo enviada, este ponto de entrada será executado uma vez. Detalhes em: MTI650ADOP - Adicionar nova operação Adapter ordem de produção.
Ordem de Produção: O ponto de entrada MTI650FCOP permite alterar fator de conversão da segunda unidade de medida da operação que será enviada na mensagem de ordens de produção. Detalhes em: MTI650FCOP - Alterar fator de conversão segunda unidade de medida da operação Adapter ordem de produção.
Ordem de Produção: O ponto de entrada MTI650QTOP permite alterar a quantidade da operação que será enviada na mensagem de ordens de produção. Detalhes em: MTI650QTOP - Alterar quantidade da operação adapter ordem de produção.
Ordem de Produção: O ponto de entrada MTI650UMOP permite alterar a segunda unidade de medida da operação que será enviada na mensagem de ordens de produção. Detalhes em: MTI650UMOP - Alterar segunda unidade de medida da operação Adapter ordem de produção.
Ordem de Produção: O ponto de entrada MTI650TMAC permite alterar o tempo de máquina (TimeMachine) na mensagem de ProductionOrder. Detalhes em: MTI650TMAC - Alterar quantidade do tempo de máquina no adapter ProductionOrder.
Ordem de Produção: O ponto de entrada MTI650LOTE permite gerar o Lote da ordem na tag LotCode na mensagem ProductionOrder. Detalhes em: MTI650LOTE - Adicionar lote na mensagem de Ordens de produção.
Ordem de Produção: O ponto de entrada MTI650UTTP permite alterar o valor enviado na tag UnitTimeType. Detalhes em: MTI650UTTP - Alterar o valor da tag UnitTimeType da mensagem ProductionOrder.
Cadastros: O ponto de entrada PCPXFUNPPI permite inibir a integração em determinada rotina. Exemplo: Caso não deseje que na criação de ordens MATA650 ocorra a integração, poderá utilizar essa função para inibir o uso. Detalhes em: PCPXFUNPPI - Rotinas que não realizam integração com o PC-Factory.
Cadastro de Item: o Ponto de entrada PCPADDTAGS permite incluir tags específicas nas mensagens padrões TOTVS. Está habilitado para o cadastro de item MATA010. Detalhes em: PCPADDTAGS - Adicionar informações XML Integração TOTVS MES.
Cadastro de Processos: o Ponto de entrada PCPADDTAGS permite incluir tags específicas nas mensagens padrões TOTVS. Está habilitado para o cadastro de roteiro MATA632. Detalhes em: PCPADDTAGS - Adicionar informações XML Integração TOTVS MES.
Cadastro de Processos: O ponto de entrada MTI632UTTP permite alterar o valor enviado na tag UnitTimeType. Detalhes em: MTI632UTTP - Alterar o valor da tag UnitTimeType da mensagem ItemScript.
Cadastro de Máquina: O ponto de entrada MTI610UTTP permite alterar o valor enviado na tag UnitTimeType. Detalhes em: MTI610UTTP - Alterar o valor da tag UnitTimeType da mensagem Machine.
Movimentos internos. Os pontos de entrada MATI250CRG e MATI240CRG possibilitam alguma validação específica. Essas validações ficarão a cargo dos clientes, pois cada um terá sua regra. Não podem ser alterados os valores dos campos que foram gerados pela mensagem. Detalhes em: MATI240CRG - Adicionar informações Adapter de movimentações internas e MATI250CRG - Adicionar informações Adapter de movimentos de produção.
Transferências: O ponto de entrada MI261RCV possibilita a não execução da integração. Detalhes em: MI261RCV - Executar integração TransferWarehouse.
Recusa: O ponto de entrada MATI685EXC permite verificar se a recusa será executado ou não. Este ponto de entrada é indicado para validações que impeçam o apontamento de recusa ou atualizações de informações necessárias para realizar a recusa. Detalhes em: MATI685EXC - Processa mensagem recusa.
Executar em várias filiais
Em um ambiente com várias filiais é necessário apenas um WEBSERVICE sendo executado. O que indica a filial onde é processado o apontamento são as TAG´s:
<CompanyId>10</CompanyId>
<BranchId>CLSC0001</BranchId>
Obs.: Quando essas tags estiverem em branco, o sistema considera o que estiver definido no APPSERVER.ini na sessão WEBSERVICE campo PrepareIn.
[WebServices]
PrepareIn=99,01
Controle de latência
Existem situações em que o tempo de espera do webservice é menor que o tempo de processamento das importações para o ERP. Pode ocorrer a situação em que o ERP continue processando a importação e o WebService do PC-Factory para de esperar a resposta. Quando o PC-Factory não recebe a resposta a tempo, o mesmo arquivo é reenviado, podendo gerar duplicidade no processamento da mensagem.
Solução:
Controlar ID do PC-Factory para as mensagens recebidas. Todas as mensagens recebidas deverão ter esse tratamento:
- ProductionAppointment
- StopReport
- MovementsInternal
- TransferWarehouse
- StopReason
- WasteReason
Nos XML´s será usada a TAG Key name = "IDPCfactory"
<BusinessEvent>
<Entity>Entity</Entity>
<Event>upsert</Event>
<Identification>
<key name="IDPCFactory">29892829</key>
</Identification>
</BusinessEvent>
O retorno com erro apresenta a mensagem com o seguinte padrão:
<ProcessedOn>2017-03-28T09:11:17</ProcessedOn>
<Status>ERROR</Status>
<ListOfMessages>
<Message type="ERROR" code="N">MENSAGEM</Message>
</ListOfMessages>
</ProcessingInformation>
O XML de retorno deverá respeitar a seguinte regra:
- Quando ID já processado e contêm ERRO
Retorna o ID PC-Factory na tag <UUID>
Na tag Message type="ERROR" code="2", utiliza o 2 para indicar erro.
A mensagem será: ID xxxx já processado. Status: mensagem de erro”.
Exemplo: <Message type="ERROR" code="2">ID productionappointment-0038 já processado. Status: ProductionOrderNumber não cadastrada no Protheus.</Message>
- Quando ID já processado com sucesso
Retorna o ID PC-Factory na tag <UUID>
Na tag Message type="ERROR" code="3", usa o 3 para indicar o processamento com sucesso.
A mensagem será: "ID xxxx já processado. Status: ID do Protheus" ou "ID xxxx já processado. Status: Reprocessado. ID do Protheus" quando o PC-Factory enviar mais de uma vez.
Exemplo 1: <Message type="ERROR" code="3">ID productionappointment-0038 já processado. Status: 5091</Message>
Exemplo 2: <Message type="ERROR" code="3">ID productionappointment-0038 já processado. Status: Reprocessado. 5091</Message>.
- Quando ID já está na base mas em processamento
Retorna o ID PC-Factory na tag <UUID>
Na tag Message type="ERROR" code="4", usa o 4 para indicar que está em processamento.
A mensagem será: ID xxxx está sendo processado pelo Protheus.
Exemplo: <Message type="ERROR" code="4">ID apapapapeaaa está sendo processado pelo Protheus.</Message>
Nota | ||
---|---|---|
| ||
O retorno, quando mensagem processada "de primeira", dentro do tempo de espera do webservice, será "1" - Processado de primeira vez com ERRO ou OK. Exemplo: Com Erro: <ProcessingInformation> <ProcessedOn>2017-03-28T09:00:03</ProcessedOn> <Status>ERROR</Status> <ListOfMessages> <Message type="ERROR" code="1">ProductionOrderNumber não cadastrada no protheus.</Message> </ListOfMessages> </ProcessingInformation> Com Sucesso: <ProcessingInformation> <ProcessedOn>2017-03-28T08:57:28</ProcessedOn> <Status>OK</Status> </ProcessingInformation> <ReturnContent> <ListOfInternalId> <InternalId> <Name>PRODUCTIONAPPOINTMENTINTERNALID</Name> <Destination>5090</Destination> </InternalId> </ListOfInternalId> </ReturnContent> |
Situações inesperadas que podem ocorrer: a parada do serviço do Protheus, banco de dados fora do ar, falta de energia, entre outros. Se ocorrer durante o processamento da integração, o registro do PC-Factory (ID do PC-Factory) pode ficar travado e a mensagem não sai da fila de processamento. Para tratar essa situação:
O PC-Factory tenta enviar por determinado tempo, tempo esse parametrizado no PC-Factory. Caso continue recebendo a mesma mensagem depois do tempo parametrizado, o PC-Factory gera uma pendência de envio e passa para o próximo registro. Ao passar para o próximo registro, um contador de mensagens não enviadas é gerado. Quando esse contador atinge um limite (parametrizado), o processo de integração é paralisado para que os usuários possam resolver o problema. O controle de processamento ficará registrado em tabela de LOG SOH.
Abaixo tabela dos códigos enviados:
Code | Message | Tabela de controle - SOH.OH_STATUS |
---|---|---|
1 | Processado na primeira tentativa com ERRO ou OK | 1 ou 2 |
2 | Registro já processado com retorno de erro | 2 |
3 | Registro já processado com sucesso | 1 |
4 | Registro em processamento | 0 |
Informações | ||
---|---|---|
| ||
|
Autenticação
Quando o usuário e a senha estiverem cadastrados no PCPA109 (Parâmetros), folder Segurança, estes dados serão enviados na mensagem para que o PC-Factory efetue a autenticação.
Estes dados serão enviados no cabeçalho da mensagem da seguinte forma:
Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l
Onde: O valor será usuário:senha criptografado em Base64.
O recebimento das mensagens também seguirá o mesmo modelo, porém o PC-Factory enviará um usuário do Protheus.
Informações | ||
---|---|---|
| ||
Para configurar a autenticação no recebimento, o appserver.ini deve ter o campo SECURITY=1, conforme exemplo de configuração do WebService. |
Security = 0 -> Não utiliza autenticação.
Security = 1 -> Utiliza autenticação
Rotinas
Parametrização - PCPA109
A parametrização terá influência direta sobre os registros que serão movimentados entre os dois sistemas.
A rotina de parametrização terá os seguintes campos:
- Ativo: Indica se a integração está ativa. Ao selecionar esse campo, os demais são habilitados. Se este campo estiver desmarcado, nenhuma outra ação poderá ser realizada na rotina.
- Caminho: Indica o caminho do WebService do PC-Factory. Após o caminho, terá um botão testar para verificar se webservice está ativo.
- Terá um painel XML.
Neste painel poderá indicar:
- Gera XML - Ao selecionar esse campo, irá gerar os XML das mensagens trocadas. Se não estiver selecionado, será gravado apenas em tabelas. A geração dos arquivos não é obrigatória. Serve como uma ferramenta útil para encontrar problemas. O envio sempre será feito com base do que estiver registrado nas tabelas.
- Enviados - Diretório onde serão salvos os XMLs enviados com sucesso ao PC-Factory
- Pendência - Diretório onde serão salvos os XMLs que não foram enviados ao PC-Factory
Os nomes do arquivos seguirão o seguinte padrão:
OK_<MSG>_<DATAHORA>_<REGISTRO>
PEND_<MSG>_<DATAHORA>_<REGISTRO>
ERR_<MSG>_<DATAHORA>_<REGISTRO>
Em que: OK - Se mensagem entregue sem problemas
PEND- Se mensagem não foi enviada
ERR - Se mensagem enviada, porém retornou erro.
MSG - Nome da mensagem. Ex.: Item, Wharehouse, Workcenter, etc.
DATAHORA: Data e Hora do envio
REGISTRO: Código do registro que está sendo enviado. Ex.: Código do item, número da ordem, etc.
Obs.: Se selecionar o Gera XML, deverão ser informados os diretórios.
Para cada arquivo movimentado terá um folder. Para cada folder será possível montar filtros. Esses filtros serão utilizados nas rotinas que enviarão informações ao PC-Factory, permitindo selecionar o que deve ser enviado. Serão exibidos os campos da tabela selecionada (folder) e operadores para que sejam montados os filtros. Além de filtros, alguns arquivos possuem parametrizações.
A rotina terá os seguintes folders:
- Produto
- Local de Estoque
- Recurso
- Máquina
O folder máquina somente será exibido quando o chão de fábrica estiver em uso. - Ferramenta
- Ordem de Produção
Painel MRP: Indica como o sistema deverá se comportar em relação as ordens geradas pelo MRP. Terá as seguintes opções:
"Não integra": As ordens geradas pelo MRP não serão enviadas ao PC-Factory pelo cálculo do MRP
"Gera Pendência": As ordens geradas pelo MRP ficarão registradas nas pendências de envio
"Integra": As ordens geradas pelo MRP serão enviadas ao PC-Factory pelo cálculo do MRP.
Painel "Consumo de componentes". Determinar como será o consumo dos componentes. Esse campo pode conter os seguintes valores:
"1" - BackFlush: Sempre irá realizar a baixa dos componentes conforme o definido na engenharia.
"2" - Consumo Real: Irá consumir conforme lista de componentes.
Painel "Operações": Define se o filtro criado no folder "Roteiros" deve ser utilizado para filtrar as operações da ordem de produção.
Painel "Refugo":
- Define o local de estoque/depósito para o item refugado quando o refugo for o mesmo produto da ordem de produção. Quando o depósito - "WharehouseCodeTo" vier em branco na
- mensagem ProductionAppointment, usar o que foi definido no parâmetro.
Painel "APS": Define se a integração considera ordens geradas pelo APS.
- Roteiros
- Estrutura
- Endereço
- Movimentos e transferência
Os movimentos de estoque, entrada ou saída e também as transferências são arquivos recebidos pelo Protheus. Não necessita de filtros, porém deverão ser criados alguns parâmetros para o processamento. São eles:
Tipo de Movimento de Entrada: Usar campo SOE.OE_VAR1
Tipo de Movimento de Saída: Usar campo SOE.OE_VAR2
Tipo de Movimento Co-produto: Usar campo SOE.OE_VAR3
Estes tipos de movimentos são cadastrados no MATA230 - Saldo estoque
Para o folder Saldo de estoque terá a opções de três filtros. Tabela SB2, SB8 e SBF.
Também poderá indicar em qual processo de movimentação deverá enviar o saldo ao PC-Factory
Em que:
Nota Fiscal de Entrada : SOE.OE_VAR1 (Marcado = 1; Desmarcado = 0 )
Nota Fiscal de Venda : SOE.OE_VAR2 (Marcado = 1; Desmarcado = 0 )
Movimentações Internas: SOE.PARINTG (Marcado = 1; Desmarcado = 0 )
Implantação de Saldo: SOE_OE_VAR3(Marcado = 1; Desmarcado = 0 )
Estas opções são válidas somente para o envio do Protheus para o PC-Factory. Para o request (solicitação do PC-Factory) não terá filtros. - Segurança
Utilizado para realizar o controle autenticação na troca de mensagem entre os sistemas. Permite informar usuário e senha que devem ser válidos no PC-Factory, ou seja, informar o usuário e senha cadastrado no PC-Factory.
Sincronização - PCPA111
A sincronização é o processo que será utilizado para popular ou atualizar a base do PC-Factory com os dados do Protheus. O funcionamento se dará da mesma forma que as demais rotinas de integração, enviando uma mensagem XML ao WebService do PC-Factory, respeitando as parametrizações definidas no PCPA109. A única diferença é que serão visualizados todos os dados da tabela que estiver sendo integrada (respeitando os filtros) ao invés de apenas um único registro.
Pendências - PCPA110
Rotina para reenviar as mensagens não enviadas ao sistema PC-Factory, sejam elas pendências ou erro. A rotina também possibilita consultar as mensagens enviadas (LOG de envio).
Poderá verificar as pendências e log das mensagens trafegadas entre os sistemas:
- Cadastro de Estruturas
- Produto/Item
- Local de Estoque (depósitos)
- Recurso PCP
- Ordens de produção (Operações, Roteiros, Componentes, Splits)
- Recursos do chão de fábrica - Ferramentas, Equipe e Operador
- Ferramentas
- Máquinas do Chão de Fábrica
- Roteiro - Operações
- Endereços
- Saldo
Possui as seguintes opções:
- Reprocessar:
Para cada linha selecionada deverá executar o envio das mensagens. - Excluir
Deverá excluir os registros selecionados - Salvar XML
Esta opção permite salvar o XML em um diretório local da máquina que está processando a rotina de pendências. - Atualizar
Irá refazer a pesquisa dos registros, atualizando os dados na tela
Log de Importação - PCPA112
Ao receber dados do PC-Factory, o WebService Protheus grava as informações para que possam ser consultadas (tabela SOG). Abaixo a lista das movimentações que geram LOG:
- Apontamento de produção
- Apontamento de parada
- Motivo de Refugo
- Motivo de Parada
- Movimentações de Estoque
- Transferência
Mensagens
Cadastros
Transação Item: Item_3_001.xsd
Identificador da Mensagem: Item
Versão: 3_001
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Protheus | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|
BusinessContentType | CompanyId | Código da Empresa Logada | CHAR(02) | |||
BranchId | CódigoFilial | SB1.B1_FILIAL | CHAR(02) | TBLInProduct.PlantCode | CHAR(15) | |
CompanyInternalId | Empresa+Filial | EMPRESA + SB1.B1_FILIAL | ||||
Code | Código do Produto | SB1.B1_COD | CHAR(15) | TBLInProduct.Code | CHAR(20) | |
Name | Descrição do produto | SB1.B1_DESC | CHAR(30) | TBLInProduct.Name | CHAR(70) | |
InternalId | Empresa+filial+código do produto | EMPRESA + SB1.B1_FILIAL + SB1.B1_COD | ||||
ShortName | Nome curto | SB1.B1_DESC | CHAR(30) | TBLInProduct.SecondName | CHAR(30) | |
Active | Item ativo? | SB1.B1_ATIVO | CHAR(01) | TBLInProduct.FlgEnable | SMALLINT | |
UnitOfMeasureCode | Unidade de Medida | SB1.B1_UM | CHAR(02) | TBLInProduct.Unit1code | CHAR(05) | |
UnitOfMeasureInternalId | Empresa+filial+unidade de medida | EMPRESA + SB1.B1_FILIAL + SB1.B1_UM | ||||
StockGroupCode | Grupo de Estoque | SB1.B1_GRUPO | CHAR(04) | |||
StockGroupInternalId | Empresa+filial+grupo de estoque | EMPRESA + SB1.B1_FILIAL + SB1.B1_GRUPO | ||||
StockGroupDescription | Descrição do grupo estoque | SBM.BM_DESC | CHAR(30) | |||
StandardWarehouseCode | Local de Estoque | SB1.B1_LOCPAD | CHAR(02) | |||
StandardWarehouseInternalId | Empresa+filial+local de estoque | EMPRESA + SB1.B1_FILIAL + SB1.B1_LOCPAD | ||||
StandardWarehouseDescription | Descrição Local de Estoque | NNR.NNR_DESCRI | CHAR(40) | |||
EconomicLot | Lote econômico | SB1.B1_LE | DEC(12,2) | |||
MinimumLot | Lote mínimo | SB1.B1_LM | DEC(12,2) | |||
FamilyCode | Família | SB1.B1_FPCOD | CHAR(10) | TBLInProduct.FamilyProductCode | CHAR(15) | |
FamilyInternalId | Empresa+filial+família | EMPRESA + SB1.B1_FILIAL + SB1.B1_FPCOD | ||||
FamilyDescription | Descrição da família | SYC.YC_NOME | CHAR(40) | TBLInProduct.FamilyProductName | CHAR(30) | |
NetWeight | Peso do Item | SB1.B1_PESO | DEC(11,4) | |||
GrossWeigh | Peso bruto | SB1.B1_PESBRU | DEC(11,4) | |||
Trail | Rastro | SB1.B1_RASTRO | CHAR(01) | |||
BinControl | Controla Endereço | SB1.B1_LOCALIZ | CHAR(01) | |||
SecondUnitOfMeasureCode | Segunda Unidade de medida | SB1.B1_SEGUM | CHAR(02) | TBLInProduct.Unit2Code | CHAR(20) | |
SecondUnitOfMeasureInternalId | Empresa+filial+ seg. unidade de medida | EMPRESA + SB1.B1_FILIAL + SB1.B1_SEGUM | ||||
MultiplicationFactorValue | Fator de conversão | SB1.B1_CONV | DEC(5,2) | TBLInProduct.Unit2Factor | DEC(8,4) | |
ProductType | Tipo do Item | SB1.B1_TIPO | CHAR(02) | TBLInProduct.ProductTypeCode | CHAR(15) | |
PackingQuantity | Quantidade Embalagem | SB1.B1_QE | NUM(09) | TBLInProduct.QtyPackage | DEC(19,4) | |
CostCenterCode | Centro de Custo | SB1.B1_CC | CHAR(09) | TBLInProduct.CostCenterCode | CHAR(20) | |
StockControlType | Controle do estoque do item | CHAR(01) |
Nota | ||
---|---|---|
| ||
|
Identificador da Mensagem: Warehouse
Versão: 1_001
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Protheus | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|
BusinessContentType | CompanyId | Código da Empresa | CHAR(02) | TBLInWarehouse.Extcode | CHAR(20) | |
BranchId | Código da Filial | NNR.NNR_FILIAL | CHAR(02) | TBLInWarehouse.PlantCode | CHAR(15) | |
CompanyInternalId | Empresa+Filial | EMPRESA + NNR.NNR_FILIAL | ||||
Code | Código do Local de Estoque(armazém/almoxarifado/depósito) | NNR.NNR_CODIGO | CHAR(02) | TBLInWarehouse.Code | CHAR(15) | |
InternalId | Empresa+Filial+código local | EMPRESA + NNR.NNR_FILIAL + NNR.NNR_CODIGO | ||||
Description | Descrição do Local de Estoque (armazém/almoxarifado/depósito) | NNR.NNR_DESCRI | CHAR(20) | TBLInWarehouse.Name | CHAR(15) | |
Active | Local de Estoque Ativo? | TRUE | CHAR(01) | TBLInWarehouse.FlgEnable | SMALLINT | |
Type | Tipo do Local de Estoque | NNR.NNR_TIPO | CHAR(01) | |||
WarehouseClassification | Classificação | NNR.NNR_INTP | CHAR(01) |
Transação Recurso PCP / Máquina SFC: Machine_1_000.xsd
Identificador da Mensagem: Machine
Versão: 1_000
Módulo Protheus: SIGAPCP, SIGASFC
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Protheus PCP | Tabela Campo: Protheus SFC | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|---|
BusinessContentType | |||||||
Code | Código Máquina | SH1.H1_CODIGO | CYB.CYB_CDMQ | CHAR(20) | TBLInResource.code | CHAR(15) | |
Description | Descrição Máquina | SH1.H1DESCRI | CYB.CYB_DSMQ | CHAR(40) | TBLInResource.Name TBLInResource.Nickname | CHAR(20) | |
WorkCenterCode | Código Centro Trabalho | SH1.H1_CTRAB | CYB.CYB_CDCETR | CHAR(10) | TBLInResource.ManagerGrpCode | CHAR(15) | |
WorkCenterDescription | Descrição Centro Trabalho | SHB.HB_NOME | CYB.CYB_DSCETR | CHAR(40) | TBLInResource.WorkCenterDescription | CHAR(15) | |
CostCenterCode | Código Centro Custo | SH1.H1_CCUST | CYB.CYB_CDCECS | CHAR(20) | |||
ProcessorType | Tipo de Processamento | CYB.CYB_TPPC 1=Monoprocesso;2=Por Batelada; 3=Multiplos Processos;4=Manual | CHAR(01) | ||||
LaborType | Tipo MOD | CYB.CYB_TPMOD 1=Nao Reporta;2=Operador;3=Equipe | CHAR(01) | ||||
VolumeMachineQuantity | Quantidade Volume Máquina | CYB.CYB_QTVMMQ | DEC(12,4) | ||||
EfficiencyMachineValue | Eficiência Máquina | CYB.CYB_VLEFMQ | DEC(05,2) | ||||
OperatorMachineQuantity | Quantidade Operador Máquina | CYB.CYB_QTOEMQ | NUM(02) | ||||
SimultaneousActivityQuantity | Quantidade Operações Simultâneas | CYB.CYB_QTATSM | NUM(03) | ||||
IsSetup | Possui Preparação | CYB.CYB_LGSU | BOOLEAN | ||||
IsOverlapReport | Sobrepõe Apontamento | CYB.CYB_LGOVRP | BOOLEAN | ||||
ProductionAreaCode | Área de Produção | CYB.CYB_CDARPO | CHAR(10) | ||||
InitialValidateDate | Data início validade | CYB.CYB_DTBGVD | DATE | ||||
FinalValidateDate | Data fim validade | CYB.CYB_DTEDVD | DATE | ||||
ListOfResources | |||||||
ResourceType | Tipo do Recurso | CYC.CYC_TPRC 1=Operador;2=Ferramenta; 3=Equipe;4=Equipamento | CHAR(01) | ||||
ResourceCode | Código Recurso | CYC.CYC_CDRC | CHAR(20) | TBLInUser.Code | CHAR(30) | ||
ResourceName | Nome Recurso | CYC.CYC_NMRC | CHAR(40) | TBLInUser.Name TBLInUser.Nickname | CHAR(60) | ||
UnitTimeType | Tipo Medida Tempo | CYC.CYC_TPUNTE 1=Horas;2=Minutos;3=Segundos | CHAR(01) | ||||
StartExpirationDate | Data Início Validade | CYC.CYC_DTBGVD | DATE | ||||
EndExpirationDate | Data Fim Validade | CYC.CYC_DTEDVD | DATE | ||||
CycleQuantity | Número Ciclos | CYC.CYC_QTCI | DEC(11,4) | ||||
IsTimeActivity | Determina tempo | CYC.CYC_LGTEAT | BOOLEAN | ||||
ListOfProductionShifts | |||||||
ProductionShiftCode | Código Modelo Turno | CYL.CYL_CDTN | CHAR(08) | ||||
ProductionShiftDescription | Descrição Modelo Turno | CYL.CYL_DSTN | CHAR(40) | ||||
BeginDate | Data Início Validade | CYL.CYL_DTVDBG | DATE | ||||
EndDate | Data Fim Validade | CYL.CYL_DTVDED | DATE |
No PCP as máquinas são cadastradas na rotina de recursos MATA610 e no Chão de Fábrica a rotina é a SFCA002. A nomenclatura também é alterada. Quando utilizar Chão de Fábrica, será denominada MÁQUINA. Quando utilizar somente o PCP, será RECURSO. A rotina de parâmetros PCPA109 está preparada para apresentar o nome de acordo com o uso do sistema.
Transação Recurso SFC: Resource_1_000
Identificador da Mensagem: Resource
Versão: 1_000
Módulo Protheus: SIGASFC
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Protheus PCP | Tabela Campo: Protheus SFC | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|---|
BusinessContentType | |||||||
Code | Código do Recurso | SH4.H4_CODIGO | CYH.CYH_CDRC | CHAR(06) | TBLTooling.Code | CHAR(15) | |
Name | Nome do Recurso | SH4.H4_DESCRI | CYH.CYH_NMRC | CHAR(40) | TBLTooling.Name | CHAR(50) | |
Type | Tipo do Recurso | 1=Operador;2=Ferramenta; 3=Equipe;4=Equipamento. | CYH.CYH_TPRC 1=Operador;2=Ferramenta; 3=Equipe;4=Equipament | CHAR(25) | |||
ProductionAreaCode | Área de Produção | CYH.CYH_CDARPO | CHAR(10) | ||||
ProductionAreaDescription | Descrição área de produção | CYA.CYA_DSARPO | CHAR(40) | ||||
ItemComponentType | |||||||
ProductionShiftNumber | Turno | SH4.H4_TURNO | CYH.CYH_NRTN | CHAR(05) | |||
LaborCode | MOB | Fixo '1' | CYH.CYH_CDMOD | CHAR(08) | |||
StartExpirationDate | Data validade inicial | Data Atual | CYH.CYH_DTVDBG | DATE | TBLTooling.Period | INT | |
EndExpirationDate | Data validade final | CYH.CYH_DTVDED | DATE | TBLTooling.Period | INT | ||
UnitCycleQuantity | Unidades Ciclos | CYH.CYH_QTUNCI | NUM(07) | ||||
ToolCode | Ferramenta | CYH.CYH_CDMPRC | CHAR(15) | ||||
ToolDescription | Descrição Ferramenta | CYH.CYH_DSMPRC | CHAR(40) |
Nota | ||
---|---|---|
| ||
|
Identificador da Mensagem: ItemStructure
Versão: 1_000
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Protheus | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|
BusinessContentType | CompanyId | Código da Empresa | CHAR(02) | |||
CompanyInternalId | Empresa+Filial | EMPRESA + SG1.G1_FILIAL | ||||
ItemInternalId | Empresa+Filial+código item pai | EMPRESA + SG1.G1_FILIAL + SG1.G1_COD | ||||
ItemCode | Código item pai | SG1.G1_COD | CHAR(15) | TBLInWOHD.ProductCode TBLInWOHD.WOCode | CHAR(30) | |
ItemAmount | Quantidade base do item pai | SB1.B1_QB | NUM(07) | TBLInWOHD.TotalQTY | DEC(19,4) | |
ItemComponentType | ||||||
ItemSequence | Sequência do componente | SG1.G1_TRT | NUM(05) | TBLInBillMat.BillMatExtCode | CHAR(20) | |
ItemComponentCode | Código item componente | SG1.G1_COMP | CHAR(15) | TBLInBillMat.ProductCode | CHAR(20) | |
ItemComponentInternalId | Internal Id do Item Componente | EMPRESA + SG1.G1_FILIAL + SG1.G1_COMP | ||||
InitialDate | Data validade inicial | SG1.G1_INI | DATE | TBLInWOHD.DtPlanStart | DATETIME | |
FinalDate | Data validade final | SG1.G1_FIM | DATE | TBLInWOHD.DtPlanEnd | DATETIME | |
IsGhostMaterial | Indica se é fantasma | SB1.B1_FANTASM | BOOLEAN ( FALSE ou TRUE) | |||
ItemComponentAmount | Quantidade do item componente | SG1.G1_QUANT | DEC(12,6) | |||
LossFactor | Fator de perda | SG1.G1_PERDA | DEC(05,2) | |||
| ||||||
Scriptcode | Código do Roteiro | SGF.GF_ROTEIRO | CHAR(02) | TBLInWOHD.ExtCode | CHAR(20) | |
ScriptAlternative | Alternativo do Roteiro | -- | ||||
ActivityIntenalID | ID Operação | -- | ||||
ActivityCode | Código da Operação | SGF.GF_OPERAC | CHAR(02) | TBLInWodet.Code | CHAR(10) | |
ActivityComponentSequence | Sequência do componente na operação | SGF.GF_TRT | NUM(03) |
Identificador da Mensagem: ItemScript
Versão: 1_000
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Protheus | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|
BusinessContentType | ItemCode | Código item | SG2.G2_PRODUTO | CHAR(15) | TBLInWOHD.ProductCode TBLInWOHD.WOCode | CHAR(20) |
ItemDescription | Descrição do item | SB1.B1_DESC | CHAR(40) | |||
ItemInternalId | Empresa|Filial|Item | EMPRESA + SG2.G2_FILIAL + SG2.G2_PRODUTO | ||||
ScriptCode | Código do Roteiro | SG2.G2_CODIGO | CHAR(02) | |||
ScriptDescription | Descrição Roteiro | -- | CHAR(40) | |||
ScriptAlternative | Roteiro Alternativo | -- | CHAR(02) | |||
ListOfActivity | ||||||
ActivityInternalID | ID Operação | SG2.R_E_C_N_O_ | NUM(05) | |||
ActivityCode | Código da Operação | SG2.G2_OPERAC | CHAR(02) | TBLInWodet.Code | CHAR(10) | |
ActivityDescription | Descrição Operação | SG2.G2_DESCRI | CHAR(60) | TBLInWodet.Name | CHAR(40) | |
MachineCode | Código da Máquina | SG2.G2_RECURSO | CHAR(06) | TBLInWodet.Resource | CHAR(15) | |
ToolCode | Código Ferramenta | SG2.G2_FERRAM | CHAR(06) | |||
ActivityType | Tipo Operação | 1 = Executa operação; 2 = Não executa. | CHAR(01) | |||
WorkCenterCode | Código Centro Trabalho | SG2.G2_CTRAB | CHAR(06) | TBLInWodet.ManagerGrpCode | CHAR(15) | |
WorkCenterInternalId | Id Centro de Trabalho | EMPRESA + SG2.G2_FILIAL + SG2.G2_CTRAB | ||||
UnitItemNumber | Lote padrão | SG2.G2_LOTEPAD | NUM(06) | TBLInWodet. StdSpeed | DEC(28,23) | |
TimeResource | Tempo Recurso | 0 | TBLInWodet. StdSpeed | DEC(28,23) | ||
TimeMachine | Tempo Máquina | SG2.G2_TEMPAD | DEC(05,2) | TBLInWodet. StdSpeed | DEC(28,23) | |
TimeSetup | Tempo Preparação | SG2.G2_SETUP | DEC(05,2) | TBLInWodet. SetUpTime | INT | |
UnitTimeType | Tipo Unidade Tempo | 1 = Horas;2=Minutos;3=Segundos;4=Dias | TBLInWodet. StdSpeedFormat | TINYINT | ||
ScriptAlternative | Alternativo | SG2.G2_ROTALT | CHAR(02) | |||
InitialDate | Data Inicial | SG2.G2_DTINI | DATE | TBLInWodet.DtPlanStart | DATETIME | |
FinalDate | Data Final | SG2.G2_DTFIM | DATE | TBLInWodet.DtPlanEnd | DATETIME | |
PercentageScrapValue | % Refugo | -- | ||||
PercentageValue | Proporção | -- | ||||
ResourceQuantity | Quantidade Recurso | -- |
Nota | ||
---|---|---|
| ||
|
Identificador da Mensagem: AdressStock
Versão: 1_000
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Protheus | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|
BusinessContentType | WarehouseCode | Armazém/Depósito | SBE.BE_LOCAL | CHAR(02) | TBLInAddress.WarehouseCode | CHAR(15) |
LocationCode | Endereço/Localização | SBE.BE_LOCALIZ | CHAR(15) | TBLInAddress.Code | CHAR(15) | |
AdressInternalId | Chave completa endereço | EMPRESA + SBE.BE_FILIAL + SBE.BE_LOCAL + SBE.BE_LOCALIZ | ||||
AdressStockDescription | Descrição do endereço | SBE.BE_DESCRIC | CHAR(30) | TBLInAddress.ExtCode | CHAR(20) |
Identificador da Mensagem: ItemStockLevel
Versão: 1_000
Módulo Protheus: Vários
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Protheus | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|
BusinessContentType | ItemCode | Código do produto | SB2.B2_COD | CHAR(15) | TBLInMovMat.ProductCode | CHAR(20) |
ItemDescription | Descrição do item | SB1.B1_DESC | CHAR(30) | |||
ListOfStock | ||||||
ReferenceCode | Referência | -- | ||||
WarehouseCode | Depósito/Local de estoqe/Armazem | SB2.B2_LOCAL | CHAR(02) | TBLInMovMat.WarehouseCode | CHAR(15) | |
LotCode | Número do Lote | SB8.B8_LOTECTL | CHAR(10) | TBLInMovMat.LotCode | CHAR(41) | |
SubLotCode | Sub-Lote | SB8.B8_NUMLOTE | CHAR(06) | |||
NumberSeries | Número de Série | SBF.BF_NUMSERI | CHAR(20) | |||
AddressCode | Endereço/Localização | SBF.BF_LOCALIZ | CHAR(15) | TBLInMovMat.AddressCode | CHAR(15) | |
LotDueDate | Data de Validade | SB8.B8_DTVALID | DATE | TBLInMovMat.LotDtValidity | DATETIME | |
CurrentStockAmount | Saldo de estoque | SB2.B2_QATU SB8.B8_SALDO SBF.BF_QUANT | DEC(12,2) | |||
BookedStockAmount | Quantidade Reservada | SB2.B2_RESERVA SB8.B8_EMPENHO SBF.BF_EMPENHO | DEC(12,2) | |||
AvailableStockAmount | Saldo disponível | SB2.B2_QATU - SB2.B2_RESERVA SB8.B8_SALDO - SB8.B8_EMPENHO SBF.BF_QUANT - SBF.BF_EMPENHO | DEC(12,2) | |||
QuantityUpdated | Quantidade Atualizada | DEC(12,2) | TBLInMovMat.Qty | DEC(18,2) | ||
InputOutput | Entrada ou Saída | 1 = Entrada ou 2 = Saída | CHAR(01) | TBLInMovMat.Classification | CHAR(15) |
Nota | ||
---|---|---|
| ||
|
Identificador da Mensagem: WasteReason
Versão: 1_000
Módulo Protheus: SIGAPCP/SIGASFC
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Protheus PCP | Tabela Campo: Protheus SFC | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|---|
BusinessContentType | Code | Código Refugo | SX5.X5_CHAVE | CYO.CYO_CDRF | CHAR(08) | TBLOutScrap.Code | CHAR(15) |
Description | Descrição do Refugo | X5_DESCRI X5_DESCSPA X5_DESCENG | CYO.CYO_DSRF | CHAR(40) | TBLOutScrap.Name | CHAR(30) | |
IsRework | Retrabalho | CYO.CYO_LGRT | BOOLEAN | ||||
IsScrapMaterial | Refugo Material | SBE.BE_DESCRIC | CYO.CYO_LGRFMP | BOOLEAN |
Nota | ||
---|---|---|
| ||
|
Versão: 1_000
Módulo Protheus: SIGAPCP/SIGASFC
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Protheus PCP | Tabela Campo: Protheus SFC | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|---|
BusinessContentType | Code | Código Motivo Parada | SX5.X5_CHAVE | CYN.CYN_CDSP | CHAR(10) | TBLOutResourceStatus.Code | CHAR(05) |
Description | Descrição Parada | X5_DESCRI X5_DESCSPA X5_DESCENG | CYN.CYN_DSSP | CHAR(40) | TBLOutResourceStatus.Name | CHAR(30) | |
IsEfficiency | Altera Eficiência | -- | -- | ||||
IsEmailEquipment | E-mail Planejador | -- | -- | ||||
IsServiceRequest | Emite Solicitação Serviço | -- | -- | ||||
IsSetup | Parada Setup | -- | -- | TBLOutResourceStatus.FlgSetup | SMALLINT |
Nota | ||
---|---|---|
| ||
|
Transação Ordem de Produção: ProductionOrder_2_004.xsd
Identificador da Mensagem: ProductionOrder
Versão: 2_003
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona
Mesagem | Tag | Descrição | Tabela/Campo | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|
BusinessContentType | Number | Número Ordem Produção | SC2.C2_NUM + SC2.C2_ITEM + SC2.C2_SEQUEN | CHAR(20) | TBLInWOHD.Code | CHAR(41) |
ProductionOrderUniqueID | Empresa+Filial+Ordem Produção | EMPRESA + SC2.C2_FILIAL + SC2.C2_NUM + SC2.C2_ITEM + SC2.C2_SEQUEN | CHAR(30) | |||
ItemCode | Código Item | SC2.C2_PRODUTO | CHAR(15) | TBLInWOHD.ProductCode | CHAR(20) | |
ItemDescription | Descrição Item | SB1.B1_DESC | CHAR(40) | |||
Type | Tipo da Ordem | 1= Interna; 2=Externa; 3=Interna/Externa; 4=Retrabalho; 5=Conserto; 6=Manutenção; 7=Ativo Fixo; 8=Ferramentaria; 9=Reaproveitamento | CHAR(01) | TBLInWOHD.WoTypeCode | CHAR(20) | |
Quantity | Quantidade | SC2.C2_QUANT | DEC(12,2) | TBLInWOHD.TotalQty | DEC(19,4) | |
ReportQuantity | Quantidade Reportada | SC2.C2QUJE | DEC(12,2) | |||
UnitOfMeasureCode | Unidade Medida | SC2.C2_UM | CHAR(02) | TBLInWoDet.Unit1Code | CHAR(05) | |
RequestOrderCode | Código Pedido Ordem Produção | SC2.C2_PEDIDO | CHAR(06) | |||
StatusOrderType | Estado da ordem | Prevista/Aberta = 1 Iniciada = 6 Encerrada Parcial/Total = 7 Ociosa = 9 | CHAR(01) | TBLInWOHD.Status | SMALLINT | |
WarehouseCode | Código Depósito | SC2.C2_LOCAL | CHAR(02) | TBLInWOHD.AuxCode1 | CHAR(20) | |
EndOrderDateTime | Data Fim Ordem Produção CP | SC2.C2_DATPRF | DATE | TBLInWOHD.DtPlanEnd | DATETIME | |
StartOrderDateTime | Data Início Ordem Produção CP | SC2.C2_DATPRI | DATE | TBLInWOHD.DtPlanStart | DATETIME | |
AbbreviationProviderName | Nome Cliente | SC5.C5_CLIENTE ( SA1.A1_NOME) | CHAR(30) | |||
ScriptCode | Código Roteiro | SC2.C2_ROTEIRO | CHAR(02) | |||
ReportOrderType | Tipo de Reporte | 1 = Ordem; 2 = Operações; 3 = Ponto Controle; 4 = Item | CHAR(01) | |||
ListOfActivityOrders | ||||||
ProductionOrderNumber | Ordem de Produção | SC2.C2_NUM + SC2.C2_ITEM + SC2.C2_SEQUEN | CHAR(20) | TBLInWoDet.Wocode | CHAR(10) | |
ActivityID | ID do Registro | RECNO (SG2,SHY ou SH8) | CHAR(10) | |||
ActivityCode | Código Operação | SG2.G2_OPERAC SHY.HY_OPERAC SH8.H8_OPER | CHAR(02) | TBLInWoDet.WODetCode+Split | CHAR(10) | |
ActivityDescription | Descrição Operação | SG2.G2_DESCRI | CHAR(40) | TBLInWoDet.WODetName | CHAR(30) | |
Split | Desdobramento da operação | SH8.H8_DESDOBR | CHAR(04) | |||
ItemCode | Código do item | SC2.C2_PRODUTO | CHAR(15) | |||
ItemDescription | Descrição do item | SB1.B1_DESC | CHAR(40) | |||
ActivityType | Tipo Operação | 1 - Aponta ; 2-Não Aponta | CHAR(01) | |||
WorkCenterCode | Código Centro de Trabalho | SG2.G2_CTRAB SHY.HY_CTRAB SH8.H8_CTRAB | CHAR(06) | TLBInWODet.ManagerGrpCode | CHAR(15) | |
WorkCenterDescription | Descrição Centro de Trabalho | SHB.HB_NOME | CHAR(30) | |||
UnitTimeType | Tipo Unidade Tempo | 1 - Horas; 2 - Minutos; 3- Segundos; 4 - Dias | CHAR(01) | TLBInWODet.StdSpeedFormat | TINYINT | |
TimeResource | Tempo Recurso (Tempo padrão para um lote) | SG2.G2_TEMPAD | DEC(05,2) | TLBInWODet.StdSpeed | DEC(28,23) | |
TimeMachine | Tempo Máquina (Tempo para fazer toda a ordem) | SG2.G2_TEMPAD * SC2.C2_QUANT SHY.HY_TEMPO SH8.H8_HRINI - SH8.H8_HRFIM | DEC(14,4) | TLBInWODet.StdSpeed | DEC(28,23) | |
TimeSetup | Tempo Preparação | SG2.G2_SETUP SHY.HY_TEMPOS SH8.H8_SETUP | DEC(15,4) | TLBInWODet.SetUpTime | INT | |
TimeMOD | Tempo Homen | -- | ||||
TimeIndMES | Iindicador de tempo no MES | 1 = Tempo Máquina; 2 = Tempo mão-de-obra; 3 = Escolha pelo MES. | CHAR(01) | |||
ScriptCode | Código Roteiro | SG2.G2_CODIGO SHY.HY_ROTEIRO SH8.H8_ROTEIRO | CHAR(02) | |||
LaborCode | Código Mão de Obra Direta | MOD+CC | CHAR(08) | |||
UnitItemNumber | Lote Padrão | SG2.G2_LOTEPAD | NUM(05) | TLBInWODet.StdSpeed | DEC(28,23) | |
IsActivityEnd | Última Operação | Na última operação passar TRUE. Nas demais FALSE. | BOOLEAN | TLBInWODet.ReportTrigger | TINYINT | |
MachineCode | Código Máquina | SG2_RECURSO SHY_RECURSO H8_RECURSO | CHAR(06) | |||
StartPlanDateTime | Data/Hora Início Programação | SHY.HY_HORAINI SC2.C2_DATPRI SH8.H8_DTINI | DATE | TLBInWODet.StartPlanDateTime | DATETIME | |
EndPlanDateTime | Data/Hora Fim Programação | SHY.HY_HORAFIM SC2.C2_DATPRF SH8.H8_DTFIM | DATE | TLBInWODet.EndPlanDateTime | DATETIME | |
ProductionQuantity | Quantidade a produzir na operação | SHY.HY_QUANT SH8.H8_QUANT SC2.C2_QUANT | DEC(12,2) | TLBInWODet.Qty | DEC(19,4) | |
ActivityQuantity | Quantidade da operação | SHY.HY_QUANT SH8.H8_QUANT SC2.C2_QUANT | DEC(12,2) | |||
UnitActivityCode | Unidade de medida | SB1.B1_UM | CHAR(02) | TLBInWODet.Unit1Code | CHAR(5) | |
SecondUnitActivityCode | Segunda unidade de medida na operação | -- | TLBInWODet.Unit2Code | CHAR(5) | ||
SecondUnitActivityFactor | Fator de conversão para segunda un. na operação | -- | TLBInWODet.Unit2Factor | DEC(8,4) | ||
ResourceQuantity | Quantidade de recursos | SG2.G2_MAOOBRA SHY.HY_MAOOBRA | NUM(03) | |||
ListOfMaterialOrders | ||||||
ProductionOrderNumber | Ordem de produção | SC2.C2_NUM + SC2.C2_ITEM + SC2.C2_SEQUEN | CHAR(20) | TBLInBillMat.Wocode | CHAR(41) | |
MaterialID | ID do registro da reserva | SD4.R_E_C_N_O_ | CHAR(10) | |||
MaterialCode | Código Item Reserva | SD4.D4_COD | CHAR(15) | TBLInBillMat.ProductCode | CHAR(20) | |
MaterialDescription | Descrição do Item | SB1.B1_DESC | CHAR(40) | |||
ScriptCode | Código Roteiro | SD4.D4_ROTEIRO | CHAR(02) | |||
ActivityCode | Código Operação | SD4.D4_OPERAC | CHAR(02) | TBLInBillMat.WODetCode | CHAR(10) | |
WarehouseCode | Código Depósito | SD4.D4_LOCAL | CHAR(02) | TBLInBillMat.ExtCode | CHAR(20) | |
MaterialDate | Data Reserva | SD4.D4_DATA | DATE | |||
MaterialQuantity | Quantidade Reserva | SD4.D4_QUANT | DEC(12,2) | TBLInBillMat.TotalQty | DEC(19,4) | |
LotCode | Lote | SD4.D4_LOTECTL | CHAR(10) | |||
PertMaterialNumber | Sequência do item | SD4.D4_TRT | CHAR(03) | |||
RequestType | Tipo da Requisição | SB1.B1_APROPRI | CHAR(01) | TBLInBillMat.Comments | CHAR(500) | |
WarehouseCode | Código Depósito | SD4.D4_LOCAL | CHAR(02) | TBLInMovMat.WarehouseCode | CHAR(15) | |
LotCode | Código Lote | SD4.D4_LOTECTL SDC.DC_LOTECTL | CHAR(10) | TBLInMovMat.LotCode | CHAR(41) | |
LocationCode | Localização/Endereço | SDC.DC_LOCALIZ | CHAR(15) | TBLInMovMat.AddressCode | CHAR(15) | |
ActivityCode | Código Operação | SD4.D4_OPERAC | CHAR(02) | TBLInMovMat.WoDetCode | CHAR(10) | |
ScriptCode | Código Roteiro | SD4.D4_ROTEIRO | CHAR(02) | |||
AllocationQuantity | Quantidade Alocada | SD4.D4_QUANT SDC.DC_QUANT | DEC(12,2) | TBLInMovMat.Qty | DEC(19,4) | |
AllocationType | Tipo Alocação | 1 = Soma;2=Diminui;3=Valor Absoluto | CHAR(01) | TBLInMovMat.AllocationType | INT | |
SubLoteCode | Sub Lote | SD4.D4_NUMLOTE SDC.DC_NUMLOTE | CHAR(06) | |||
NumberSeries | Número de Serie | SDC.DC_NUMSERI | CHAR(20) | |||
LotDueDate | Data de Validade | SD4.D4_DTVALID | DATE | TBLInMovMat.LotDtValidity | DATETIME | |
ListOfQuotaActivity | ||||||
ProductionOrderNumber | Número Ordem Produção | CY9.CY9_NRORPO | CHAR(20) | |||
ControlType | Seleção Split | -- | ||||
ActivityID | ID Operação | CY9.CY9_CDAT | CHAR(10) | |||
ItemCode | Código do iten | CYY.CYY_CDAC | CHAR(15) | |||
ItemDescription | Descrição do item | CYY.CYY_DSAC | CHAR(40) | |||
StartActivityDateTime | Data/Hora Início Atividade | CYY.CYY_DTBGAT / CYY.CYY_HRBGAT | DATETIME | TBLInWODet.StartPlanDateTime | DATETIME | |
EndActivityDateTime | Data/Hora Fim Atividade | CYY.CYY_DTEDAT / CYY.CYY_HREDAT | DATETIME | TBLInWODet.EndPlanDateTime | DATETIME | |
ApprovedQuantity | Quantidade Aprovada | CYY.CYY_QTATAP | DEC(13,4) | |||
ScrapQuantity | Quantidade Refugada | CYY.CYY_QTATRF | DEC(13,4) | |||
MachineCode | Código Máquina | CYY.CYY_CDMQ | CHAR(20) | TBLInWODet.ResourceCode | CHAR(15) | |
MachineDescription | Descrição da Máquina | CYY.CYY_DSMQ | CHAR(40) | |||
ActivityQuantity | Quantidade Prevista | CYY.CYY_QTAT | DEC(12,4) | TBLInWODet.QTY | DEC(19,4) | |
StandardSetup | Tempo Padrão Preparação | CYY.CYY_QTPASU | NUM(10) | |||
StandardActivity | Tempo Padrão Operação | CYY.CYY_QTPAAT | NUM(10) | |||
StandardPostprocessing | Tempo Padrão Pós_processo | CYY.CYY_QTPAPP | NUM(10) | |||
StandardMachine | Tempo Padrão Máquina | CYY.CYY_QTPAMQ | NUM(10) | |||
StandardOperator | Tempo Padrão MOD | CYY.CYY_QTPAOE | NUM(10) | |||
UsedCapacity | Capacidade Utilizada | CYY.CYY_QTVMAT | DEC(12,4) | |||
ActivityTimeQuantity | Hora Disponível Atividade | CYY.CYY_HRDI | CHAR(08) | |||
ReportQuantity | Quantidade Reportada | CYY.CYY_QTATRP | DEC(13,4) | |||
ReworkQuantity | Quantidade Retrabalhada | CYY.CYY_QTATRT | DEC(12,4) | |||
StartSetupDateTime | Data/Hora Início Preparação | CYY.CYY_DTBGSU / CYY.CYY_HRBGSU | DATETIME | |||
EndSetupDateTime | Data/Hora Fim Preparação | CYY.CYY_DTEDSU / CYY.CYY_HREDSU | DATETIME | |||
TimeSetup | Tempo Preparação | CY9.CY9_QTTESU | NUM(10) | TBLInWODet.SetUpTime | TINYINT | |
TimeMachine | Tempo Máquina | CY9.CY9_QTTEMQ | NUM(10) | TBLInWODet.StdSpeed | DEC(28,23) | |
TimeOperator | Tempo MOD | CY9.CY9_QTTERC | NUM(10) | |||
TimePostprocessing | Tempo Pós Processo | CY9.CY9_QTTEPP | NUM(10) | |||
QuotaActivityID | ID Split | CYY.CYY_IDATQO | CHAR(05) | ActivityCode+ TBLInWODet.WODetCode | CHAR(10) | |
WorkCenterCode | Centro de Trabalho | CY9.CY9_CDCETR | CHAR(10) | TBLInWODet.ManagerGrpCode | CHAR(15) | |
ReportedSplit | Split Reportado | CYY.CYY_LGQORP | BOOELAN | |||
StatusActivityType | Estado Operação | CYY.CYY_TPSTAT | CHAR(01) | |||
ToolCode | Ferramenta | CYY.CYY_CDFE | CHAR(20) | |||
ToolQuantity | Quantidade Ferramenta | CYY.CYY_QTFE | NUM(03) |
Nota | ||
---|---|---|
| ||
|
LOGIX x APS x TOTVS MES
Ordens geradas pelo APS serão enviadas via Schedule- PCPA114.
A integração do APS x PROTHEUS x TOTVS MES deverá considerar SOMENTE as ordens de produção alteradas e/ou criadas pelo APS e enviadas ao PROTHEUS.
No PCPA109, folder Ordens de Produção, é possível parametrizar se existe a integração com o APS. O Schedule para o envio de ordens geradas irá executar somente se o parâmetro "APS" estiver assinalado e a integração entre PROTHEUS x APS - MV_APS = 'TOTVS'.
Serão enviadas as ordens com origem no APS, tabela SC2, campos C2_OBS = TOTVSMES e C2_IDAPS preenchido. Também valida se existe dados na tabela SHY.
Para o envio deverá ter um controle do que já foi enviado, utilizando a tabela SOJ. Enviar somente ordens que possuam dados na SOJ com o parâmetro de envio para o MES como "N". Após o envio atualizar esse campo para "S" . Quando o APS atualizar uma ordem, deverá setar novamente o OJ_ENVMES para "N" para que o Schedule possa reenviá-la.
Para cadastrar o Schedule deve-se utilizar o SIGACFG - SCHEDULE. Configuração do Schedule em em: Schedule - Como agendar a execução de rotinas
Processos
Transação Apontamento de Produção: ProductionAppointment_2_000.xsd
Identificador da Mensagem: ProductionAppointment
Versão: 2_003
Módulo Protheus: SIGAPCP/SIGASFC
Tipo de Envio: Síncrona
Nota | ||
---|---|---|
| ||
Esta mensagem será gerada pelo PC-Factory e enviado ao Protheus. |
Mensagem | Tag | Descrição | Tabela/Campo Protheus PCP | Tabela Campo Protheus SFC | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|---|
BusinessContentType | MachineCode | Máquina | SH6.H6_RECURSO | CYV.CYV_CDMQ | CHAR(06) | TBLOutInteg.ResourceCode | CHAR(15) |
ProductionOrderNumber | Ordem de Produção | SH6.H6_OP | CYV.CYV_NRORPO | CHAR(20) | TBLOutInteg.WOCode | CHAR(41) | |
ActivityCode | Operação | SH6.H6_OPERAC | CYV.CYV_CDAT | CHAR(02) | TBLOutInteg.WODetCode | CHAR(10) | |
Split | Split | SH6.H6_DESDOBR | CYV.CYV_IDATQO | CHAR(04) | TBLOutInteg.WODetCode | CHAR(10) | |
ActivityID | ID Operação | -- | -- | ||||
ItemCode | Produto | SH6.H6_PRODUTO | CYV.CYV_CDACRP | CHAR(15) | TBLOutInteg.ProductCode | CHAR(20) | |
ApprovedQuantity | Quantidade Aprovada | SH6.H6_QTDPROD | CYV.CYV_QTATAP | DEC(11,2) | TBLOutInteg.Qty | DEC(19,4) | |
ScrapQuantity | Quantidade Refugada | SH6.H6_QTDPERD | CYV.CYV_QTATRF | DEC(11,2) | TBLOutInteg.Qty | DEC(19,4) | |
ReworkQuantity | Quantidade Retrabalhada | -- | -- | ||||
StartSetupDateTime | Data/Hora Início Preparação | -- | CYV_DTBGSU CYV_HRBGSU | DATETIME | |||
EndSetupDateTime | Data/Hora Fim Preparação | -- | CYV_DTEDSU CYV_HREDSU | DATETIME | |||
SetupCode | Código Preparação | -- | CYV_CDSU | CHAR(10) | |||
OpTimeInt | Tempo Operação | -- | CYV.CYV_QTTERP | NUM(10) | |||
ProductionShiftCode | Código Modelo Turno | -- | CYV.CYV_CDTN | CHAR(08) | |||
ProductionShiftNumber | Número Turno | -- | CYV.CYV_NRTN | CHAR(05) | TBLOutInteg.Shift | SMALLINT | |
DocumentCode | Documento | -- | CYV.CYV_NRDO | CHAR(20) | TBLOutInteg.DocNumber | CHAR(20) | |
DocumentSeries | Série Documento | -- | CYV.CYV_NRSR | CHAR(05) | |||
StartReportDateTime | Data/Hora Início Reporte | SH6.H6_DATAINI SH6.H6_HORAINI | CYV.CYV_DTRPBG CYV.CYV_HRRPBG | DATETIME | TBLMSGERP.Start | DATETIME | |
EndReportDateTime | Data/Hora Fim Reporte | SH6.H6_DATAFIN SH6.H6_HORAFIN | CYV.CYV_DTRPED CYV.CYV_HRRPED | DATETIME | TBLMSGERP.End | DATETIME | |
ReversedReport | Estorno do Apontamento | TRUE ou FALSE | TRUE ou FALSE | BOOLEAN | |||
ReversalDate | Data do estorno | -- | CYV.CYV_DTEO | DATE | TBLOutInteg.DTEv | DATETIME | |
ReportDateTime | Data/Hora Reporte | SH6.H6_DTAPONT | CYV.CYV_DTRP CYV.CYV_HRRP | DATETIME | TBLOutInteg.DtEv | DATETIME | |
WarehouseCode | Código Depósito | SH6.H6_LOCAL | CYV.CYV_CDDP | CHAR(02) | TBLOutInteg.WarehouseCode | CHAR(15) | |
LotCode | Lote/Série | SH6.H6_LOTECTL | CYV.CYV_CDLOSR | CHAR(10) | TBLOutInteg.LotCode | CHAR(41) | |
LotDueDate | Data Validade Lote | SH6.H6_DTVALID | CYV.CYV_DTVDLO | DATE | TBLLot.DtValidity | DATETIME | |
CloseOperation | Encerra Operação | SH6.H6_PT | CYV.CYV_LGEDRP | BOOLEAN | |||
LocationCode | Localização | -- | CYV.CYV_CDLC | CHAR(20) | TBLOutInteg.Address1Code | CHAR(15) | |
ListOfReversalAppointments | |||||||
IntegrationReport | Registro a ser estornado | CHAR(10) | TBLOutInteg.TransacType | TINYINT | |||
ReversalType | Tipo do Estorno | CHAR(01) | |||||
ReversalQuantity | Quantidade revertida | -- | DEC(18,4) | ||||
WasteAppointment | |||||||
WasteCode | Código Refugo | SBC.BC_MOTIVO | CY0.CY0_CDRF | CHAR(02) | TBLOutInteg.ScrapCode | CHAR(15) | |
WasteDescription | Descrição Refugo | SBC.BC_DESCRI | CY0.CY0_DSRF | CHAR(40) | |||
ScrapQuantity | Quantidade Refugada | SBC.BC_QUANT | CY0.CY0_QTRF | DEC(11,2) | TBLOutInteg.Qty | DEC(18,4) | |
ScrapProduct | Produto Refugado | SBC.BC_PRODUTO | -- | CHAR(15) | |||
WareHouseCode | Depósito Produto Refugado | SBC.BC_LOCORIG | -- | CHAR(10) | |||
ScrapProductTo | Refugo Gerado | SBC.BC_CODDEST | -- | CHAR(15) | |||
WareHouseCodeTo | Depósito do Refugo gerado | SBC.BC_LOCAL | -- | CHAR(10) | |||
AdressCode | Endereço Origem | SBC.BC_LOCALIZ | CHAR(15) | ||||
AdressCodeTo | Endereço Destino | SBC.BC_LOCDEST | CHAR(15) | ||||
NumberSeries | Número de Série | SBC.BC_NUMSERI | CHAR(20) | ||||
NumberSeriesTo | Número de Série Destino | SBC.BC_NSEDEST | CHAR(20) | ||||
LotCode | Lote | SBC.BC_LOTECTL | CHAR(10) | ||||
SubLoteCode | Sub Lote | SBC.BC_NUMLOTE | CHAR(06) | ||||
LotDueDate | Data de Validade | SBC.BC_DTVALID | DATE | ||||
CostCenterCode | Centro de Custo | SBC.BC_CC | CHAR(09) | ||||
ResourceAppointment | |||||||
OperatorCode | Código Operador | -- | CYW.CYW_CDOE | CHAR(20) | TBLOutInteg.UserCode | CHAR(30) | |
StartDateTime | Data/Hora Início | -- | CYW.CYW_DTBGRP CYW.CYW_HRBGRP | DATETIME | TBLMSGERP.Start | DATETIME | |
EndDateTime | Data/Hora Fim | -- | CYW.CYW_DTEDRP CYW.CYW_HREDRP | DATETIME | TBLMSGERP.End | DATETIME | |
MOBTime | Tempo Mão de Obra Direta | -- | CYW.CYW_QTTEOE | NUM(10) | |||
ExtraTime | Tempo Extra | -- | CYW.CYW_QTTEEX | NUM(10) | |||
UtilTime | Tempo Útil | -- | CYW.CYW_QTTEUT | NUM(10) | |||
ProductionShiftCode | Código Modelo Turno | -- | CYW.CYW_CDTN | CHAR(08) | |||
ProductionShiftNumber | Número Turno | -- | CYW.CYW_NRTN | CHAR(05) | TBLOutInteg.Shift | SMALLINT | |
SupplyOrder | |||||||
ProductionOrderNumber | Número Ordem Produção | SD3.D3_OP | CZP.CZP_NRORPO | CHAR(20) | TBLOutInteg.WOCode | CHAR(41) | |
MaterialCode | Código Item Reserva | SD3.D3_COD | CZP.CZP_CDMT | CHAR(15) | TBLOutInteg.ProductCode | CHAR(20) | |
UsedQuantity | Quantidade Utilizada | SD3.D3_QUANT | CZP.CZP_QTRPPO | DEC(12,2) | TBLOutInteg.Qty | DEC(19,4) | |
WarehouseCode | Código Depósito | SD3.D3_LOCAL | CZP.CZP_CDDP | CHAR(02) | TBLOutInteg.WarehouseCode | CHAR(15) | |
LocationCode | Localização | SD3.D3_LOCALIZ | CZP.CZP_CDLC | CHAR(15) | TBLOutInteg.Address1Code | CHAR(15) | |
LotCode | Lote/Série | SD3.D3_LOTECTL ou SD3.D3_NUMSERI | CZP.CZP_CDLO | CHAR(20) | TBLOutInteg.LotCode | CHAR(41) | |
ActivityCode | Código Operação | -- | CZP.CZP_CDAT | CHAR(02) | TBLOutInteg.WODetCode | CHAR(10) | |
ScriptCode | Roteiro | -- | CZP.CZP_CDRT | CHAR(02) | |||
ReportToolActivity | |||||||
ToolCode | Código Ferramenta | -- | CZ0.CZ0_IDFE | CHAR(20) |
Nota | ||
---|---|---|
| ||
|
Notas Consumo dos componentes:
- O consumo dos componentes deverá respeitar parametrização do PCPA109. Na rotina de parâmetros será definido como será o tratamento do consumo dos componentes:
1 - BackFlush: Sempre irá realizar a baixa dos componentes conforme o definido na Engenharia. Desconsidera a lista de consumo SupplyOrder.
2 - Consumo Real: Irá consumir conforme lista de componentes, SupplyOrder, enviada na mensagem. - No consumo dos componentes o processo deverá seguir a seguinte regra, conforme parametrização:
Caso o parâmetro MV_REQAUT estiver como 'D' os materiais DIRETOS serão digitados e os INDIRETOS serão baixados automaticamente. Para baixar os Indiretos o tipo de movimento deve ter o campo "Aprop. Indir" como "S' na rotina MATA230.
Caso o parâmetro MV_REQAUT estiver como 'A', o consumo dos materiais será realizado para todos os componentes. - Quando consumo real, deverá considerar o tipo de movimento do cadastro de parâmetros PCPA109, folder "Movimentos e Transferência". Para saídas usar o campo OE_VAR2. Quando usa o Chão de Fábrica, deverá usar as movimentações parametrizadas no SIGASFC (MV_SFRQMB).
- Para o apontamento, o tipo de movimento será o que estiver no parâmetro MV_TMPAD, para o SIGAPCP e SIGASFC.
Quando back-flush, usará os tipos de movimentos padrões da rotina. - No PC-Factory, não são utilizados lote e número de série ao mesmo tempo. O retorno desse conteúdo será via tag SupplyOrder - LotCode, que pode ser o Lote ou número de série, conforme o cadastro do item.
Notas Chão de Fábrica
- Quantidade reportada CYV_QTATRP, será a soma das quantidades aprovadas e refugadas.
- Data/Hora Início e Fim e código da Preparação apesar de serem virtuais, se a máquina exigir setup (CYB_LGUSU) deverá enviar as tags SetupCode, StartSetupDateTime e EndSetupDateTime.
- Caso o documento, tag DocumentCode, esteja em branco será gravado o número da ordem de produção.
- Os campos Data da Reserva 'CZP_DTMT' deve receber o conteúdo da tabela CYP.CYP_DTMT.
A quantidade reserva 'CZP_QTMT' deve receber o conteúdo da tabela CYP.CYP_QTMT.
O estado 'CZP_TPST' deve receber o conteúdo da tabela CYP.CYP_TPST. - O tempo unidade operação, CZ0_QTTEUN, deverá ser gerado conforme regra do SFCA314.
Notas Refugo
- Registrar o motivo de refugo (tags do ListOfWasteAppointments), atualizando dados da tabela SBC
- Se o motivo de refugo não estiver cadastrado, será incluído no cadastro de motivos tabela SX5.
Em que:
O código do motivo é X5_CHAVE
A tabela do motivo é '44'.
Para o Chão de Fábrica, deverá gerar a tabela -CY0 - O motivo de refugo tem tamanhos diferentes nas tabelas. Deverá validar se o código recebido não vai ultrapassar o tamanho das colunas no Protheus.
Quando usa o PCP deve validar contra o SX5.X5_CHAVE e SBC.BC_MOTIVO.
Quando usa o SIGASFC validar contra o CYO.CYO_CDRF, CY0.CY0_CDRF e SBC.BC_MOTIVO.
Transação Apontamento de Parada de Máquina: StopReport_1_001.xsd
Identificador da Mensagem: StopReport
Versão: 1_001
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona
Nota | ||
---|---|---|
| ||
Esta mensagem será gerada pelo PC-Factory e enviado ao Protheus. |
Mensagem | Tag | Descrição | Tabela/Campo Protheus PCP | Tabela/Campo Protheus SFC | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|---|
MachineCode | Código Máquina | SH6.H6_RECURSO | CYX.CYX_CDMQ | CHAR(06) | TBLOutRSEv.ResourceCode | CHAR(15) | |
MachineDescription | Descrição Maquina | ||||||
StopReasonCode | Código Motivo Parada | SH6.H6_MOTIVO | CYX.CYX_CDSP | CHAR(02) | TBLOutRSEv.ResourceStatusCode | CHAR(20) | |
StopReasonDescription | Descrição Motivo Parada | SX5.X5_DESCRI * | CYX.CYX_DSSP | CHAR(40) | |||
StartDateTime | Data/Hora Início | SH6.H6_DATAINI SH6.H6_HORAINI | CYX.CYX_DTBGSP CYX_HRBGSP | DATE | TBLOutRSEv.ShiftDtStart | DATETIME | |
EndDateTime | Data/Hora Fim | SH6.H6_DATAFIN SH6.H6_HORAFIN | CYX.CYX_DTEDSP CYX.CYX_HREDSP | DATE | TBLOutRSEv.ShiftDtEnd | DATETIME | |
OperatorCode | Código Operador | SH6.H6_OPERADO | CYX.CYX_CDOE | CHAR(20) | TBLOutRSEv.UserCodeStart | CHAR(30) | |
ReportDateTime | Data/Hora Reporte | SH6.H6_DTAPONT | CYX.CYX_DTRP | DATE | TBLOutRSEv.DtTimeStamp | DATETIME | |
ToolCode | Código Ferramenta | -- | CYX.CYX_CDFEPO | ||||
ProductionTeamCode | Código Equipe | -- | CYX.CYX_CDGROE | ||||
StopType | Tipo Parada (1=Não Programada;2=Programada) | -- | CYX.CYX_TPSP | ||||
ReportSequence | ID PC-Factory | -- | -- | TBLOutRSEv.IDOutRSEv |
Nota | ||
---|---|---|
| ||
|
Transação Saldo em Estoque - Request: StockLevel_2_000.xsd
Identificador da Mensagem: StockLevel
Versão: 2_000
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona
Para este tipo de atualização o PC-Factory solicita o saldo ao Protheus. A mensagem possui duas partes. O Request, nas quais são passados os parâmetros para a consulta do saldo, e o Return, que contém o retorno do saldo.
O Request será gerado pelo PC-Factory e enviado ao Protheus. O Return será gerado pelo Protheus e enviado ao PC-Factory.
Request
Mensagem | Tag | Descrição | Tipo |
---|---|---|---|
ListOfRequest | ItemInternalId | Código do produto | CHAR(15) |
ReferenceCode | Referência | CHAR(20) | |
WarehouseInternalId | Código do depósito/local de estoque/Armazém | CHAR(10) | |
LotNumber | Lote | CHAR(10) | |
SubLotCode | SubLote | CHAR(10) | |
SerialNumber | Número de Série | CHAR(20) | |
Address | Localização | CHAR(15) | |
LotExpirationDate | Data de Validade | DATE |
Nota | ||
---|---|---|
| ||
|
Return
Mensagem | Tag | Descrição | Tabela/Campo | Tipo |
---|---|---|---|---|
ReturnContentType | ClosingStockDate | Data fechamento estoque | -- | |
ListOfReturnItem | CompanyId | Empresa | ||
BranchId | Filial | |||
CompanyInternalId | Empresa + Filial | |||
ItemInternalId | Código do produto | SB2.B2_COD | CHAR(15) | |
ReferenceCode | Referencia | -- | ||
WarehouseInternalId | Local de Estoque (Armazém/Depósito) | SB2.B2_LOCAL | CHAR(10) | |
LotNumber | Número do Lote | SB8.B8_LOTECTL | CHAR(10) | |
SubLotCode | Sub Lote | SB8.B8_NUMLOTE | CHAR(10) | |
LotExpirationDate | Data de validade | SB8.B8_DTVALID | DATE | |
SerialNumber | Número de série | SBF.BF_NUMSERI | CHAR(20) | |
Address | Localização | SBF.BF_LOCALIZ | CHAR(15) | |
CurrentStockAmount | Saldo do Produto em quantidade | SB2.B2_QATU SB8.B8_SALDO SBF.BF_QUANT | DEC(17,4) | |
BookedStockAmount | Quantidade reservada em Estoque | SB2.B2_RESERVA SB8.B8_EMPENHO SBF.BF_EMPENHO | DEC(17,4) | |
AvailableStockAmount | Saldo disponível do Produto em quantidade | SB2.B2_QATU - SB2.B2_RESERVA SB8.B8_SALDO - SB8.B8_EMPENHO SBF.BF_QUANT - SBF.BF_EMPENHO | DEC(17,4) | |
UnitItemCost | Custo unitário do Produto | -- | ||
AverageUnitItemCost | Custo médio do Produto | -- | ||
ValueOfCurrentStockAmount | Saldo atual do estoque do produto em valor | -- |
Identificador da Mensagem: MovementsInternal
Versão: 1_001
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona
Nota | ||
---|---|---|
| ||
Esta mensagem será gerada pelo PC-Factory e enviada ao Protheus. |
Mensagem | Tag | Descrição | Tabela/Campo | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|
BusinessContentType | CompanyId | Código da empresa | ||||
BranchId | Filial | |||||
CompanyInternalId | InternalId da chave completa da empresa | |||||
InternalId | InternalId da movimentação. | |||||
TypeMovementCode | Código do Tipo de Movimento interno | SD3.D3_TM | CHAR(03) | |||
EmissionDate | Data de Emissão | SD3.D3_EMISSAO | DATE | TBLOutInteg. DtTimeStamp | DATETIME | |
ItemCode | Código do Produto | SD3.D3_COD | CHAR(15) | TBLOutInteg.ProductCode | CHAR(20) | |
UnitOfMeasureCode | Unidade de Medida | SD3.D3_UM | CHAR(02) | |||
Quantity | Quantidade | SD3.D3_QUANT | DEC(12,2) | TBLOutInteg.Qty | DEC(19,4) | |
WarehouseCode | Código do Armazém | SD3.D3_LOCAL | CHAR(02) | TBLOutInteg.WarehouseCode | CHAR(15) | |
LotNumber | Lote | SD3.D3_LOTECTL | CHAR(10) | TBLOutInteg.LotCode | CHAR(41) | |
SubLotNumber | SubLote | SD3.D3_NUMLOTE | CHAR(06) | |||
LotExpirationDate | Data Validade do Lote | SD3.D3_DTVALID | DATE | TBLLot.DTDUE | DATETIME | |
Address | Endereço | SD3.D3_LOCALIZ | CHAR(15) | TBLOutInteg.Address1Code | CHAR(15) | |
NumberSeries | NumberSeries | SD3.D3_NUMSERI | CHAR(20) | TBLOutInteg.LotCode | CHAR(41) | |
InputOrOutput | Movimento de Entrada ou Saída | E=Entrada / S = Saída | CHAR(01) | TBLOutInteg.MovTypeCode | CHAR(05) | |
ReferenceCode | Referência | -- | ||||
ScriptCode | Roteiro | SD4.D4_ROTEIRO | CHAR(02) | |||
ActivityCode | Operação | SD4.D4_OPERAC | CHAR(02) | TBLOutInteg.WODetCode | CHAR(15) | |
ProductionOrderNumber | Ordem de Produção/Documento | SD3.D3_OP e SD3.D3_DOC | CHAR(13) | TBLOutInteg.WOCode | CHAR(41) | |
FatherItemCode | Item Pai | -- |
Nota | ||
---|---|---|
| ||
|
Identificador da Mensagem: TransferWarehouse
Versão: 1_003
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona
Nota | ||
---|---|---|
| ||
Esta mensagem será gerada pelo PC-Factory e enviada ao Protheus. |
Mensagem | Tag | Descrição | Tabela/Campo | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|
BusinessContentType | CompanyId | Empresa | ||||
BranchId | Filial | |||||
CompanyInternalId | InternalId da chave completa da empresa | |||||
InternalId | InternalId da transferência | |||||
Number | Número da Movimentação | SD3.D3_NUMSEQ | CHAR(06) | |||
RegisterDateTime | Data de Emissão da solicitação | SD3.D3_EMISSAO | DATE | |||
TransferWarehouseType | ||||||
InternalId | InternalId da transferência | |||||
EmissionDate | Data de Emissão | SD3.D3_EMISSAO | DATE | TBLOutInteg.DtTimeStamp | DATETIME | |
ItemCodeFrom | Item/Produto Origem | SD3.D3_COD | CHAR(15) | TBLOutInteg.ProductCode | CHAR(20) | |
ItemCodeTo | Item/Produto Destino | SD3.D3_COD | CHAR(15) | TBLMovEv.ProductCode | CHAR(20) | |
UnitOfMeasureFrom | Unidade de Medida Origem | SD3.D3_UM | CHAR(02) | |||
UnitOfMeasureTo | Unidade de Medida Destino | SD3.D3_UM | CHAR(02) | |||
Quantity | Quantidade | SD3.D3_QUANT | DEC(12,2) | TBLOutInteg.Qty | DEC(19,4) | |
WarehouseCodeFrom | Código do Armazém de Origem | SD3.D3_LOCAL | CHAR(02) | TBLOutInteg.WarehouseCode | CHAR(15) | |
WarehouseCodeTo | Código do Armazém Destino | SD3.D3_LOCAL | CHAR(02) | TBLMovEv.WarehouseCode | CHAR(15) | |
LotNumberFrom | Número do Lote de Origem | SD3.D3_LOTECTL | CHAR(10) | TBLOutInteg.LotCode | CHAR(41) | |
LotNumberTo | Número do Lote de Destino | SD3.D3_LOTECTL | CHAR(10) | TBLMovEv.LotCode | CHAR(41) | |
SubLotNumber | Número do SubLote | SD3.D3_NUMLOTE | CHAR(06) | |||
LotExpirationDateFrom | Data de validade do Lote Origem | SD3.D3_DTVALID | DATE | TBLLot.DtDue | DATETIME | |
LotExpirationDateTo | Data de validade do Lote Destino | SD3.D3_DTVALID | DATE | TBLLot.DtDue | DATETIME | |
AddressFrom | Endereço Origem | SD3.D3_LOCALIZ | CHAR(15) | TBLOutInteg.Address1Code | CHAR(15) | |
AddressTo | Endereço Destino | SD3.D3_LOCALIZ | CHAR(15) | TBLOutInteg.Address2Code | CHAR(15) | |
NumberSeries | Número de série | SD3.D3_NUMSERI | CHAR(20) | TBLOutInteg.LotCode | CHAR(41) |
Nota | ||
---|---|---|
| ||
|
Identificador da Mensagem: Refusal
Versão: 1_000
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona
Esta mensagem será utilizada para registrar as perdas da produção quando são registradas peças boas e posteriormente verificado que houve algum defeito. Também pode ser utilizada para registrar as perdas da matéria-prima.
Nota | ||
---|---|---|
| ||
Esta mensagem será gerada pelo PC-Factory e enviada ao Protheus. |
Mensagem | Tag | Descrição | Tabela/Campo | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|
BusinessContentType | ProductionOrderNumber | Ordem de Produção | SBC.BC_OP | CHAR(20) | ||
IdReport | ID Apontamento | CHAR(10) | ||||
ItemCode | Produto Recusado | SBC.BC_PRODUTO | CHAR(20) | |||
WarehouseCode | Código do depósito | SBC.BC_LOCORIG | CHAR(02) | |||
AddressCode | Endereço | SBC.BC_LOCALIZ | CHAR(15) | |||
NumberSeries | Número de Série | SBC.BC_NUMSERI | CHAR(20) | |||
Type | Tipo Perda | SBC.BC_TIPO | CHAR(01) | |||
WasteCode | Motivo de Perda | SBC.BC_MOTIVO | CHAR(02) | |||
WasteDescription | Descrição da Perda | SBC.BC_DESCRI | CHAR(40) | |||
LossQuantity | Quantidade de Perda | SBC.BC_QUANT | DEC(11,2) | |||
CostCenterCode | Centro de Custo | SBC.BC_CC | CHAR(09) | |||
ItemCodeTo | Produto Gerado | SBC.BC_CODDEST | CHAR(20) | |||
WarehouseCodeTo | Código do depósito Destino | SBC.BC_LOCAL | CHAR(02) | |||
AdressCodeTo | Endereço Destino | SBC.BC_LOCDEST | CHAR(15) | |||
NumberSeriesTo | Nr. de Série Destino | SBC.BC_NSEDEST | CHAR(20) | |||
QuantityTo | Quantidade destino | SBC.BC_QTDDEST | DEC(11,2) | |||
ActivityCode | Operação | SBC.BC_OPERAC | CHAR(10) | |||
ResourceCode | Máquina/Recurso | SBC.BC_RECURSO | CHAR(20) | |||
LossDate | Data da Perda | SBC.BC_DATA | DATE | |||
LotCode | Lote | SBC.BC_LOTECTL | CHAR(10) | |||
SubLotCode | SubLote | SBC.BC_NUMLOTE | CHAR(06) | |||
LotDueDate | Data de Validade | SBC.BC_DTVALID | DATE |
Esta mensagem terá as seguintes finalidades:
Perda do Produto Acabado informando produto destino:
Permite que seja alterado uma determinada quantidade que já foi apontada e está no estoque como boa. Denomina-se recusa do produto acabado, pois não será necessário realizar os estornos e depois o ajuste do apontamento.
Exemplo: OP de 50 unidades, 5 apontamentos de 10, Necessidade de acerto de 45 peças com defeitos e 5 boas.
Perda de Matéria Prima:
A mensagem de recusa também será utilizada para registrar perda de matéria prima durante o processo produtivo. A matéria prima pode gerar um subproduto ou não.
Perda do Produto Acabado sem informar produto destino:
Poderá ser utilizado para informar a perda do produto acabado sem que seja necessário gerar as tags de destino.
Nota | ||
---|---|---|
| ||
|
Limitações / Restrições Gerais
A integração não contempla cadastramentos via Fluig (WorkFlow) ou rotinas não descritas nesse documento.
A Build deve ser igual ou superior a 7.00.131227A e data 08/09/2014.
Situações comuns
Possíveis situações problemáticas comuns que podem ocorrer durante o funcionamento da integração e como solucioná-los.
1) Quando uma mensagem é enviada do PCP Protheus para o PC-Factory, podem ocorrer situações em que o WebService não estará totalmente funcional. Nesses casos, uma mensagem de erro genérica irá aparecer na tela:
Não foi possível realizar a conexão com o WebService do PCFactory.
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.
2) Clientes com alterações no dicionário, que possuem regras específicas que afetam as rotinas listadas neste documento.
Para resolver este problema, deverá verificar o dicionário e ver caso a caso.
3) Tempo de espera do WebService. Devido alguns processos ser demorados, quando o ERP envia o retorno, o WebService pode não estar mais no aguardo.
Alterar o tempo de espera do WebService PC-Factory.
Checklist de suporte da aplicação
Checklist de Verificações:
- Na rotina de parâmetros, PCPA109 verificar se o campo ativo está como "1 - ATIVO"
- Na rotina de parâmetros, PCPA109 testar conexão com o WebService da PPI informado por meio do botão Testar.
- Configuração das sessões WEBSERVICE e PROXY do APPSERVER.INI;
- Realizar possíveis ajustes na integração quanto à configuração ou negócio.