Histórico da Página
Índice
Integração PCP Protheus x Totvs Mes Âncorainicio inicio
inicio | |
inicio |
Âncora | ||||
---|---|---|---|---|
|
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)
Objetivo da 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.
Âncora | ||||
---|---|---|---|---|
|
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.
Âncora | ||||
---|---|---|---|---|
|
Pré-requisitos instalação/implantação/utilização
Para a versão 12 do Protheus, deve-se aplicar o pacote de atualizações da expedição contínua.
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: https://tdn.totvs.com/display/PROT/Configurar+Portais+e+Webservices
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 WEBSERVICE
Informações | ||
---|---|---|
| ||
O nome do Webservice a ser utilizado no TOTVSMES é o WSPCP. Não é utilizado o EAI. Seguindo a configuração acima o endereço de configuração que o PC-Factory (TOTVS MES) utilizaria 10.80.62.219:8090/WSPCP.apw?WSDL |
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 |
Âncora QuadroCompatibilidade QuadroCompatibilidade
Quadro de compatibilidade:
Versão Protheus | Versão PC-Factory | Conteúdo |
---|---|---|
PCP PROTHEUS 12.1.33, 2210 | 4.0.2130.1000 |
|
PCP PROTHEUS 12.1.33, 2210 | 4.0.2131.1000 |
|
PCP PROTHEUS 12.1.33, 2210 | 4.0.2136.1001 |
|
PCP PROTHEUS 12.1.33, 2210 | 4.0.2142.1001 |
|
PCP PROTHEUS 12.1.33, 2210 | 4.0.2202.1000 |
|
PCP PROTHEUS 12.1.33, 2210 | 4.0.2203.1000 |
|
PCP PROTHEUS 12.1.33, 2210 | 4.0.2211.1000 |
|
PCP PROTHEUS 12.1.33, 2210 | 4.0.2219.1000 |
|
Âncora | ||||
---|---|---|---|---|
|
Checklist de Aderência ao Ambiente do Cliente
O checklist abaixo tem por objetivo validar se o TOTVS MES é aderente ao ambiente atual do cliente, considerando que existem situações não contempladas na integração.
Situações não atendidas ou atendidas parcialmente pela Integração:
Situação no ERP | Situação Integração | Observação |
---|---|---|
Apontamentos realizados no ERP serem integrado ao PCF | Não Atende | Os apontamentos realizados diretamente no ERP não são integrados com TOTVS MES, sejam eles de produção ou parada. |
Finalização de ordens de forma automática | Não Atende | Quando a ordem é finalizada diretamente no ERP, essa informação não é integrada com o TOTVS MES. |
Informar apenas o apontamento de tempo, sem gerar quantidade no SFC | Atende | O ERP com o SFC aceita apontamento de produção apenas de tempo sem quantidade, o contrário, não. |
Possui código de localização "branca" | Atende Parcial | O PCF não suporta localização (endereço) branco (nulo). |
Realizar apontamento apenas no PCP (módulo de Produção) | Atende | O apontamento apenas no PCP ocorre no ERP quando o módulo de SFC esteja desabilitado. Do contrário, todos os apontamentos serão realizados no SFC. |
Tem mais de uma filial que deseja integrar com uma única instalação do TOTVS MES | Não Atende | A integração TOTVS MES, não está preparada para tratar mais de uma filial. No TOTVS MES, é necessário ter uma instância (banco) para cada novo estabelecimento. |
Utiliza o conceito de reporte repetitivo | Não Atende | Ordens de produção com reporte por item não serão integradas. Atualmente, o TOTVS MES possui a função de apontamento repetitivo, no entanto, ainda não foram avaliados os conceitos para integração entre os sistemas. |
Utiliza o consumo back-flush dos componentes ao realizar o apontamento da produção | Atende | Possível realizar o consumo via back-flush, baixando conforme engenharia ou consumo-real. |
Alteração de ordens no TOTVS MES | Não atende | As ordens de produção alteradas no TOTVS MES não serão atualizadas no ERP. |
Controle de Endereço | Não atende | Endereçamento no apontamento não é realizado de forma auttomática. |
Apontamento sem operação | Não atende | Apontamentos somente por operação. |
Estorno parcial | Não atende | Não é possível realizar estorno parcial de apontamentos. |
Âncora | ||||
---|---|---|---|---|
|
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.
Para os clientes que desejam utilizar gerenciador de conexão WSDL no envio de mensagens na Integração TOTVSMES, deve alterar para TRUE os campos MV_COPPI
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 ou PCPA124;
- 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), PCPA107 e PCPA712;
- Cadastro, alteração e exclusão de estrutura, MATA200 e PCPA200;
- 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.
Aviso | ||
---|---|---|
| ||
Os clientes que possuem contrato Cloud, devem solicitar que o IP e a Porta informados no campo caminho do PCPA109 sejam liberados na rede do Cloud para envio e recebimento das requisições SOAP. Esta liberação deve ser solicitada diretamente para a equipe de Cloud. Se essa liberação não for realizada, ao tentar efetuar o envio/retorno das mensagens, irá acarretar em erro. |
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. |
Âncora Transacoes Transacoes
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 PCPA200 PCPA120 PCPA135 | SG1 | |
06 | Roteiro | Protheus | PC-Factory | ItemScript_1_000 | MATA632 MATA637 PCPA124 | SG2 | |
07 | Ordem de Produção | Protheus | PC-Factory | ProductionOrder_2_004.xsd | MATA650 MATA651 MATA380 MATA381 MATA690 MATA712 PCPA712 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 MATA241 MATA250 | SD3 | |
15 | Transferência | PC-Factory | Protheus | TransferWarehouse_1_003 | MATA261 | SD3 | |
16 | Recusa | PC-Factory | Protheus | Refusal_1_000 | MATA685 | SBC |
Âncora FluxoInformacoes FluxoInformacoes
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, PCPA200, PCPA120, PCPA135), roteiro (MATA632, MATA637 ou PCPA124), 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, MATA637 ou PCPA124), Manutenção dos Empenhos (MATA380 e MATA381), Carga Máquina (MATA690) e MRP (MATA712, PCPA107 e PCPA712), 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.
Âncora | ||||
---|---|---|---|---|
|
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 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 MATI681INT Permite processar o XML no PE para validação/gravação customizada, podendo optar por executar a rotina padrão de apontamento de produção ou não. Se houver execução da rotina padrão e houver erro, será desfeito somente o que foi realizado na rotina padrão. O ponto de entrada é chamado antes do inicio da transação da rotina padrão de apontamento de produção . Detalhes em: MATI681INT - Permite processa XML antes da mensagem de apontamento de produção
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 e PCPA124. 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.
Âncora ExecutarFiliais ExecutarFiliais
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>
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
Âncora ControleLatencia ControleLatencia
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 | ||
---|---|---|
| ||
|
Nota | ||
---|---|---|
| ||
No arquivo APPSERVER.ini, na sessão WEBSERVICE existe a chave INSTANCES que define as instâncias do servido do webservice que vão estar disponíveis para o processamento da integração. Em caso de estouro de threads de processamento deverá ser revisto o número de instances. |
Âncora | ||||
---|---|---|---|---|
|
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
Nota |
---|
Alerta de risco: fique atento ao utilizar o parâmetro de configuração com a chave Security=0, pois isso fará com que as integrações (APIs) não exijam autenticação, consequentemente dados do seu ambiente poderão ser consultados sem qualquer controle de autorização. |
Âncora Rotinas Rotinas
Rotinas envolvidas
Âncora Parametrizacao_PCPA109 Parametrizacao_PCPA109
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.
"3" - Consumo Real/Atu Empe: Irá consumir conforme lista de componentes e se não existir saldo suficiente da quantidade empenhada irá ajustar automaticamente a quantidade empenhada.
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 Produção: 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
Tipo de Movimento de Entrada Estoque: Usar campo SOE.OE_VAR4
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.
Âncora | ||||
---|---|---|---|---|
|
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.
Âncora | ||||
---|---|---|---|---|
|
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
Âncora | ||||
---|---|---|---|---|
|
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
Informações | ||
---|---|---|
| ||
Esta rotina usa as tabelas SOG, SOF e SOH para gerenciar o log de importação. |
Âncora Mensagens Mensagens
Mensagens
Âncora Cadastros Cadastros
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 | ||
---|---|---|
| ||
|
Transação Depósito: Warehouse_1_001.xsd
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) | 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 | ||
---|---|---|
| ||
|
Transação Estrutura: ItemStructure_1_000.xsd
Identificador da Mensagem: ItemStructureVersã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.ProductCodeTBLInWOHD.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) | |||
ListOfScript | ||||||
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) |
Nota | ||
---|---|---|
| ||
A tag ItemSequence é obrigatória para o PC-Factory. Para que seja possível a integração da estrutura deverá ser obrigatório o uso do sequencial SG1.G1_TRT. caso contrário o PC-Factory irá retornar inconsistência.A integração da estrutura sempre ocorrerá para a revisão atual da estrutura do produto. A informação da revisão atual da estrutura do produto está disponível no cadastro do produto e/ou no cadastro de indicadores de produto, conforme a parametrização estabelecida.Será enviada a última revisão válida da estrutura. Verificar controles de revisão por filial ( MV_ARQPROD e MV_REVFIL ) quando revisão manual(MV_REVAUT = F). Quando revisão automática (MV_REVAUT = T) sempre irá enviar a última. |
Transação Roteiro - Operações do Item: ItemScript_1_000.xsd
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.ProductCodeTBLInWOHD.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 | ||
---|---|---|
| ||
|
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) |
Transação Saldo: ItemStockLevel_1_000.xsd
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_QATUSB8.B8_SALDOSBF.BF_QUANT | DEC(12,2) | |||
BookedStockAmount | Quantidade Reservada | SB2.B2_RESERVASB8.B8_EMPENHOSBF.BF_EMPENHO | DEC(12,2) | |||
AvailableStockAmount | Saldo disponível | SB2.B2_QATU - SB2.B2_RESERVASB8.B8_SALDO - SB8.B8_EMPENHOSBF.BF_QUANT - SBF.BF_EMPENHO | DEC(12,2) | |||
QuantityUpdated | Quantidade Atualizada | DEC(12,2) | TBLInMovMat.Qty | DEC(18,2) | ||
InputOutput | Entrada, Saída ou Alteração de lote/data de validade | 1 = Entrada, 2 = Saída ou 3 = Altera lote, data ou sincronizar saldos. | CHAR(01) | TBLInMovMat.Classification | CHAR(15) |
Nota | ||
---|---|---|
| ||
|
Transação Motivo de Refugo: WasteReason_1_000.xsd
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_DESCRIX5_DESCSPAX5_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 | ||
---|---|---|
| ||
|
Transação Motivo de Parada: StopReason_1_000.xsd
Identificador da Mensagem: StopReason
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_DESCRIX5_DESCSPAX5_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) | |||
ActivitySequence | Prioridade da execução das operações | NÃO UTILIZADO | ||||
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) | |
ListOfAllocatedMaterial | ||||||
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) | |||
ListOfQuotaActivityTools | ||||||
ToolCode | Ferramenta | CYY.CYY_CDFE | CHAR(20) | |||
ToolQuantity | Quantidade Ferramenta | CYY.CYY_QTFE | NUM(03) |
Nota | ||
---|---|---|
| ||
|
Âncora Processos Processos
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) | |||
ScrapQuantityTo | Quantidade Refugada gerada | SBC.BC_QTDDEST | -- | DEC(11,2) | |||
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 | 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 | ||
---|---|---|
| ||
|
Âncora Consumo dos componentes Consumo dos componentes
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. - 3 - Consumo Real/Atu Empe: Irá consumir conforme lista de componentes, SupplyOrder, enviada na mensagem. Nesta opção, se não não existir saldo suficiente da quantidade empenhada para o componente, será ajustada automaticamente a quantidade empenhada.
- 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.
Âncora Chão de Fábrica Chão de Fábrica
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.
Âncora | ||||
---|---|---|---|---|
|
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 | -- | ||
ListOfStockBalance | ||||
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 | -- |
Transação Movimentações de Estoque: MovementsInternal_1_001.xsd
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 | ||
---|---|---|
| ||
Event: delete As demais informações do XML, devem estar iguais as informações que foram enviadas na mensagem que originou o movimento. Exemplo do XML: <BusinessEvent>
|
Transação Transferências: TransferWarehouse_1_003.xsd
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 | TBLOutInteg.DTEV | ||
TransferWarehouseType | ||||||
InternalId | InternalId da transferência | |||||
EmissionDate | Data de Emissão | TBLOutInteg.DTEV | 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 | ||
---|---|---|
| ||
|
Transação Recusa: Refusal_1_000.xsd
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:
Âncora Perda do Produto Perda do Produto
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.
Âncora Perda de Matéria Perda de Matéria
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.
Âncora Perda do Produto Acabado sem informar Perda do Produto Acabado sem informar
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.
Âncora LogixAPS LogixAPS
PROTHEUS 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
Âncora SituaçõesComuns SituaçõesComuns
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.
4) Se os itens acima estiverem correto, tente alterar para True o parâmetro MV_COPPI
Âncora ChecklistSuporte ChecklistSuporte
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.
Âncora | ||||
---|---|---|---|---|
|
Controle de processamento
Ao processar requisições do WSPCP - Web Service, ocorre a abertura de múltiplas threads simultaneamente. O processamento das threads é realizado pela função ManualJob, que é executada a partir do WSPCP.
O parâmetro MV_TWSPCP tem como objetivo armazenar quatro informações que serão utilizadas no momento do processamento do WSPCP, permitindo desta forma a parametrização do comportamento das threads de acordo com cada cenário.
As quatro informações que compõe o parâmetro são:
Tipo | Descrição | Default |
---|---|---|
Número | Tempo (em segundos) de inatividade das threads do Job | 10 |
Número | Número máximo de threads do Job | 10 |
Número | Número mínimo de threads livres do Job | 10 |
Número | Número de threads incrementadas/acrescidas no Job quando o minimo livre for atingido | 1 |
Exemplos corretos de preenchimento do parâmetro:
1) 20,10,2,3
2) 10,10,10,1
3) 500,15,2,5
Exemplos incorretos de preenchimento do parâmetro:
1) 20, 10, 2, 3
2) 20 10 2 3
3) "20","10","2","3"
4) "20,10,2,3"
Caso o parâmetro não exista ou não esteja informado, o processamento será efetuado com as informações default de acordo com o WSPCP (não será utilizado o default do ManualJob).
Caso seja preenchida uma das informações do parâmetro, as quatro informações devem ser preenchidas, na ordem indicada.
Ao preencher o parâmetro MV_TWSPCP com 20,10,2,3, o processamento terá o seguinte comportamento:
Descrição do parâmetro | Conteúdo | Comportamento do Job |
---|---|---|
Tempo (em segundos) de inatividade das threads | 20 | Todas as threads abertas por envio de requisições permanecerão abertas por 20 segundos inativos. Após processar uma requisição, a thread voltará para a situação livre e poderá ser reutilizada. Caso não ocorra acionamento de uma thread aberta por 20 segundos, esta será fechada. |
Número máximo de threads abertas simultaneamente | 10 | Serão abertas no máximo 10 threads simultaneamente. |
Número mínimo de threads livres (sem uso) | 2 | Serão abertas 2 threads para permanecerem livres. |
Número de threads acrescidas quando a quantidade livre for atingida | 3 | Para cada requisição, deverão estar abertas 3 threads. |
Ao enviar 3 requisições:
- Ao enviar a requisição 01, serão abertas 3 threads (IDs 200, 205, 320). Como apenas a thread 200 será utilizada para atender a requisição 01, as threads 205 e 320 ficarão livres e atenderão a necessidade de manter no mínimo duas threads livres.
- Ao concluir o atendimento da requisição 01, em 5 segundos, a thread 200 ficará livre e a quantidade será novamente 3 threads livres.
- Ao enviar a requisição 02, como já existem 3 threads abertas e livres, não será necessário abrir novas threads, sendo utilizada apenas a thread 200 para atender.
- Antes de concluir o atendimento da requisição 02, é enviada a requisição 03. Como a thread 200 está sendo utilizada para atender a requisição 02 e devem haver pelo menos duas threads livres, uma das delas será utililizada para atender a requisição 03. Serão abertas outras threads para atender a quantidade mínima de threads livres.