Páginas filhas
  • DI Integração PCP Protheus x Totvs Mes

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Integração PCP Protheus x PPI-Multitask

Contexto de negócio

  1. MES
    Manufacturing Execution Systems, ou simplesmente MES, é o termo usado 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).

  2. 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 a linha de produção, visando a um fluxo ordenado e contínuo do processo produtivo.

  3. 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 integrado ao MES os apontamentos serão realizados pelo sistema MES.

 

Sistemas Envolvidos

  • PCP PROTHEUS 11.80.14, 12.1.10 (Fase I )

  • PCP - SIGASFC PROTHEUS 11.80.17 ( Fase II)
  • PC-FACTORY (PPI MULTITASK)

 

Integração

O objetivo da Integração PC Factory (software MES da empresa PPI Multitask) X PROTHEUS é disponibilizar aos clientes TOTVS uma nova opção para controle da produção por meio da automação dos processos, permitindo a atualização e extração de informações de forma on-line de modo a simplificar o fluxo dos clientes.

 

Escopo

 

Permite a integração entre o módulo PCP e SIGASFC do Protheus com o MES PC-Factory da PPI-Multitask, que tem como objetivo controlar os apontamentos das ordens de produções. O Protheus ficará com a responsabilidade de criação das ordens de produção e o PC-Factory com os apontamentos.

A integração contempla as seguintes rotinas e processos na FASE 1:

  1. Parametrização: Permite parametrizar a utilização da integração, indicando se está ATIVA. Indica se ocorrerá a geração dos arquivos XMLs das informações que serão trafegadas entre os sistemas e também possibilita definir os filtros que serão aplicados nas informações.
  2. Integradores: Os "adapters" são as funções responsáveis por enviar ou receber as informações que são trafegadas entre os sistemas PCP Protheus e PC-Factory. A integração contempla as seguintes informações: Produto, local de estoque, recurso, ordens de produção, apontamento de produção e apontamento de parada.
  3. Pendências: Permite gerenciar as pendências de envio do PCP Protheus para o PC-Factory bem como verificar o histórico e erros do processo da integração.
  4. WebService: Permite processar os apontamentos de produção e parada enviados do PC-Factory para o Protheus.
  5. Sincronização: Permite realizar a sincronização dos dados entre o PCP Protheus e o PC-Factory. Poderá enviar os dados dos Produtos, Local de Estoque, Recurso e Ordem de Produção.
  6. Log de Importação: Permite consultar o processo de integração dos apontamentos de produção e paradas enviados do PC-Factory para o Protheus.


A integração contempla as seguintes rotinas e processos na FASE 2:

          A fase 2 contempla o consumo dos componentes , movimentações feitas pelo PC-Factory e saldos em estoque. Também considera o sistema SIGASFC - Chão de Fábrica.

  1. Parametrização: Permite parametrizar a utilização da integração, indicando se está ATIVA. Indica se ocorrerá a geração dos arquivos XMLs das informações que serão trafegadas entre os sistemas e também possibilita definir os filtros que serão aplicados nas informações.
  2. Integradores: Os "adapters" são as funções responsáveis por enviar ou receber as informações que são trafegadas entre os sistemas Protheus e PC-Factory. A integração contempla as seguintes informações: Produto, local de estoque, recurso, maquinas, ferramentas, roteiro, estrutura, endereço, ordens de produção, saldos em estoque, movimentos e transferências de estoque, apontamento de produção e apontamento de parada.
  3. Pendências: Permite gerenciar as pendências de envio do Protheus para o PC-Factory bem como verificar o histórico e erros do processo da integração.
  4. WebService: Permite processar os apontamentos de produção e parada enviados do PC-Factory para o Protheus.
  5. Sincronização: Permite realizar a sincronização dos dados entre o Protheus e o PC-Factory. Poderá enviar os dados dos Produtos, Local de Estoque, Recurso, Máquina, Roteiro, Estrutura, Endereço, Saldo em Estoque e Ordem de Produção.
  6. Log de Importação: Permite consultar o processo de integração dos apontamentos de produção e paradas enviados do PC-Factory para o Protheus.

 


Observação: A integração não contempla a geração de ordens pelo APS.

 

Pré-requisitos instalação/implantação/utilização

Para a versão 12 do Protheus deve-se aplicar o pacote de atualizações a partir da versão 12.1.10 na Fase I.
Também é possível utilizar na versão 11.80.14 para Fase I e 11.80.17 para Fase II. Deve-se executar a atualização de dicionário com o programa U_UPDPCP34.
A Build deve ser igual ou superior a 7.00.131227A e data 08/09/2014.
Endereço de IP e porta liberada para execução do WebService. Estes dados serão utilizados no arquivo APPSERVER.INI na sessão WEBSERVICE.
Deve atualizar o arquivo APPSERVER.INI na sessão WEBSERVICE.
Para configurar um WebService deve-se verificar o documento de configuração a seguir : http://tdn.totvs.com/pages/viewpage.action?pageId=6064937
Exemplo :
;CONFIGURACAO WEBSERVICE


[WebServices]
Enable=1
Environment=mssqlserver
Conout=1
Trace=1
PrepareIn=99,01
NameSpace=http://10.80.62.219:8090
URLLocation=http://10.80.62.219

[HTTP]
enable=1
port=8090

[ONSTART]
JOBS=JOB_WS_9901

[10.80.62.219]
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]
TYPE=WEBEX
ENVIRONMENT=mssqlserver
INSTANCES=1,20
SIGAWEB=WS
INSTANCENAME=WS
ONSTART=__WSSTART
ONCONNECT=__WSCONNECT

;FIM CONFIGURACAO WEBSERVICE

 

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=*******

 

Instalação/Atualização

A integração Protheus x PC-Factory PPI-Multitask é ativada por intermédio dos seguintes passos:

  1. Abrir o programa de Parâmetros da integração: PCPA109 (Atualizações -> Integração MES-> Parâmetros).
  2. Setar o campo Ativo para "1- Ativo".
  3. No campo caminho Informar a URL do WebService da PPI-Multitask.
  4. Verificar a conectividade do WebService por meio do botão Testar.
  5. Indicar se a integração irá gerar fisicamente os arquivos XML.
  6. Configurar os filtros para cada informação que será trafegada entre os sistemas.
  7. 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.

Marcando o campo Gera XML será gerado os XML das mensagens trocadas. Se não estiver marcado 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>
Onde: 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 , numero da ordem, etc.

Para cada arquivo movimentado (produto,local de estoque, recurso, ferramenta, máquina, roteiro, estrutura, endereço, movimentos, saldos e ordem de produção) terá um folder. Para cada folder será possível montar filtros e definir parametrizações. Os filtros serão utilizados nas rotinas que enviarão informações ao PC-Factory, permitindo selecionar o que deve ser enviado. Serão exibidos os campos da tabela selecionada (folder) e operadores para que sejam montados os filtros. Se não existir nenhum filtro cadastrado todo registro incluído, alterado ou excluído será enviado ao PC-Factory. Para montar os filtros o usuário requer conhecimento do dicionário de dados pois é utilizado diretamente o nome das tabelas e dos campos.
Exemplo:
Montar um filtro para que somente seja enviado os produtos que sejam classificados como Produto Acabado. O filtro será: B1_TIPO = "PA"

O envio de informações do Protheus para o PC-Factory PPI-Multitask ocorre nas seguintes transações:

  • Cadastro, alteração e exclusão de produto MATA010, local de estoque AGRA045 e recurso MATA610, SFCA006 e SFCA002;
  • Cadastro e alteração de ordens MATA650;
  • Processo para FIRMAR ordens MATA651;
  • Manutenção das operações MATA632;
  • Manutenção dos empenhos, MATA380 e MATA381;
  • Cadastro, alteração e exclusão de Operações x Componentes MATA637;
  • Carga máquina MATA690;
  • Cálculo do MRP MATA712 (versão 11.8) ou PCPA107 (versão 12);
  • Cadastro, alteração e exclusão de estrutura;
  • 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

 

Controle de Versão

O grupo TOTVS, representado por suas marcas, irá administrar as demandas de evolução dos layouts e demais ajustes, acordando junto aos solicitantes o prazo de liberação de release.
Todas as evoluções programadas deverão ser discutidas e aprovadas pelas marcas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das marcas e alinhamento com as diretivas definidas pelo Comitê de Integração TOTVS.

 

Suporte

O suporte aos recursos da Integração será de responsabilidade de todas as linhas, sendo assim as equipes de suporte dos produtos RM Conector e Backoffice Protheus estarão aptas a fazer a primeira análise e, quando necessário, repassar para a equipe mais adequada em cada caso.
Observação: Este modelo de suporte está sendo revisado pela TOTVS.

 

Transações/Entidades/Mensagens únicas

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)

Cadastros

01

Produto

Protheus

PC-Factory

Item_3_001.xsd

02

Local de Estoque

Protheus

PC-Factory

Warehouse_1_001.xsd

03

Máquinas

Protheus

PC-Factory

Machine_1_000.xsd

04RecursosProtheusPC-FactoryResource_1_000
05EstruturaProtheusPC-FactoryItemStructure_1_000
06RoteiroProtheusPC-Factory ItemScript_1_000

07

Ordem de Produção

Protheus

PC-Factory

ProductionOrder_2_001.xsd

08EndereçoProtheusPC-Factory AddressStock_1_000
09EstoqueProtheusPC-FactoryItemStockLevel_1_000

Processos

09

Motivo de Parada

PC-Factory

Protheus

StopReason_1_000

10Motivo de RefugoPC-FactoryProtheusWasteReason_1_000
11Apontamento de ProduçãoPC-FactoryProtheusProductionAppointment_1_001

12

Apontamento de Parada

PC-Factory

Protheus

StopReport_1_001

13Estoque - RequestPC-FactoryProtheusStockLevel_2_00
14MovimentaçõesPC-FactoryProtheus MovementsInternal_1_001
15TransferênciaPC-FactoryProtheusTransferWarehouse_1_001

 

 

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 programa MATA610 ou SFCA006 ou SFCA002(máquina) e ferramentas no MATA620.  Os programas devem verificar se a integração está ativa e, se estiver ativa, irá efetuar 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 realizado por meio do PCPA110.
    Na engenharia também são integrados os cadastros de estrutura MATA200 e roteiro MATA632 ou MATA637, e endereços MATA015, sempre quando ocorrer a criação, alteração ou exclusão de um registro.
  • Ordem de produção: no momento da criação ou alteração de uma ordem de produção, ou durante a alteração da situação de uma ordem (alocação/carga máquina, requisição, alteração de operações ou empenhos, MRP, criação de splits), o programa irá verificar se a integração está ativa e, se estiver ativa, irá efetuar o envio do cadastro para o PC-Factory. Se não ocorrer erro o cadastro não apresentará nenhuma mensagem. Caso ocorra erro, uma mensagem será exibida* e uma pendência de envio poderá ser criada no programa PCPA110. Ao final do processo das rotinas que processam múltiplas ordens, como por exemplo carga máquina , serão exibidas as quantidades de registros que foram enviados ao PPI-Multitask e também os que tiveram pendência de envio. Obs.: Algumas rotinas geram pendências sem realizar o questionamento devido ao número de ordens processadas.
    Rotinas que foram afetadas pela integração: Manutenção de Ordens (MATA650), Rotina para Firmar Ordens (MATA651), Manutenção das Operações (MATA632 ou MATA637), Manutenção dos Empenhos (MATA380 e MATA381), Carga Máquina (MATA690) e MRP (MATA712), Splits de produção (SFCA310)
  • Programa de gerenciamento de pendências PCPA110 - este programa tem por função administrar as pendências/exceções referentes à integração que são criadas quando a mensagem não for enviada ao PC-Factory, sejam elas, pendências ou erro. Permite o reprocessamento de uma mensagem, exclusão de uma pendência e a visualização do XML, além de possuir filtro por data de envio, transação, tipo de pendência e rotina geradora. A rotina também permite consultar as mensagens enviadas com sucesso.
  • Programa de Sincronização PCPA111 - permite o envio das informações do produto, local de estoque, recurso, ferramentas, roteiro, estrutura, endereço, saldo em estoque e ordem de produção e tem como objetivo efetuar uma atualização da base de dados do PC Factory. Além dos filtros definidos no PCPA109, também será possível adicionar novos filtros para cada tabela.
  • Apontamento de produção: Esta rotina consiste no WebService para receber os apontamentos de produção realizados no PC-Factory. Poderá processar apontamentos de produção e parada de recurso. Executará o mesmo processo que as rotinas MATA681 e MATA682. Quando o chão de fábrica estiver instalado executará o mesmo processo que a rotina SFCA316 e SFCA311.
    O fluxo da integração será o seguinte:
    a. Operador efetua reporte normalmente conforme sua operação no PC-Facotry.
    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. Este 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) executar MATA240.  Nos casos de transferências executará o MATA261.
  • Consulta de Log de importação PCPA112: Esta rotina consiste na consulta dos registros dos apontamentos que foram processados pela integração Protheus x PC-Factory. Rotina deverá exibir os apontamentos efetuados e o status de cada processo.

 

Ponto de Entrada

Para facilitar o uso da integração, e tornar o uso flexível em qualquer ambiente de produtivo foram criados alguns pontos de entrada para solucionar possíveis situações específicas não atendidas pelo processo padrão e também permitir configurações mais precisas no uso da integração:

Apontamento: O ponto de entrada MATI681CRG permite adicionar informações que serão utilizadas no apontamento da produção e no apontamento de parada, tabela SH6. Exemplo: Caso exista algum campo especifico ou tabela especifica não tratado pela integração, poderá usar essa função para setar seu conteúdo. Detalhes em: MATI681CRG_Adicionar_informacoes_Adapter_do_apontamento

Apontamento: O ponto de entrada MT680VAL permite validar se alguma informação deverá ser obrigatória como tempo , quantidade, entre outros. Estas validações ficarão a cargo dos clientes, pois cada um terá sua regra. Detalhes em: MT680VAL - Inclusão das Produções

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_operacao_adapter_ordem_de_producao

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_conversao_segunda_unidade_de_medida_da_operacao_adapter_ordem_de_producao

Ordem de Produção: O ponto de entrada MTI650QTOP permite alterar a quantidade da operação que será enviado na mensagem de ordens de produção. Detalhes em: MTI650QTOP_Alterar_quantidade_da_operacao_adapter_ordem_de_producao

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_operacao_adapter_ordem_de_producao

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á usar essa função para inibir o uso. Detalhes em: PCPXFUNPPI_Rotinas_que_nao_realizam_integracao_com_o_PC_Factory

Movimentos internos. Os pontos de entrada MATI250CRG e MATI240CRG possibilitam alguma validação especifica. Estas validações ficarão a cargo dos clientes, pois cada um terá sua regra. Não pode alterar os valores dos campos que foram gerados pela mensagem. Detalhes em: http://tdn.totvs.com/display/PROT/MATI240CRG_Adicionar_informacoes_Adapter_de_movimentos_internos e http://tdn.totvs.com/pages/viewpage.action?pageId=236596803

Transferências: O ponto de entrada MI261RCV possibilita a não execução da integração. Detalhes em: http://tdn.totvs.com/pages/viewpage.action?pageId=244433266


Executar em várias filiais

Em um ambiente com várias filiais é necessário apenas um WEBSERVICE sendo executando. O que indica a filial onde é processado o apontamento são as TAG´s:

<CompanyId>10</CompanyId>

<BranchId>CLSC0001</BranchId>

 

Obs.: Quando essas tags estiverem em branco o sistema considera o que estiver definido no APPSERVER.ini na sessão WEBSERVICE campo PrepareIn.

[WebServices]

PrepareIn=99,01

 

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

 

MensagemTag

Descrição

Tabela/Campo : ProtheusTipoTabela/Campo : PC-FactoryTipo
BusinessContentTypeCompanyId Código da Empresa Logada

 

 CHAR(02)  
 BranchId CódigoFilial SB1.B1_FILIALCHAR(02)  
 CompanyInternalIdEmpresa+Filial EMPRESA + SB1.B1_FILIAL   
 Code Código do ProdutoSB1.B1_CODCHAR(15)  
 Name Descrição do produtoSB1.B1_DESCCHAR(30)  
 InternalIdEmpresa+filial+código do produtoEMPRESA + SB1.B1_FILIAL + SB1.B1_COD   
 ShortName Nome curtoSB1.B1_DESCCHAR(30)  
 Active Item ativo?SB1.B1_ATIVOCHAR(01)  
 UnitOfMeasureCode Unidade de MedidaSB1.B1_UMCHAR(02)  
 UnitOfMeasureInternalIdEmpresa+filial+unidade de medidaEMPRESA + SB1.B1_FILIAL + SB1.B1_UM   
 StockGroupCodeGrupo de EstoqueSB1.B1_GRUPOCHAR(04)  
 StockGroupInternalIdEmpresa+filial+grupo de estoqueEMPRESA + SB1.B1_FILIAL + SB1.B1_GRUPO   
 StockGroupDescriptionDescrição do grupo estoqueSBM.BM_DESCCHAR(30)  
 StandardWarehouseCodeLocal de EstoqueSB1.B1_LOCPADCHAR(02)  
 StandardWarehouseInternalIdEmpresa+filial+local de estoqueEMPRESA + SB1.B1_FILIAL + SB1.B1_LOCPAD   
 StandardWarehouseDescriptionDescrição Local de EstoqueNNR.NNR_DESCRICHAR(40)  
 EconomicLot Lote econômicoSB1.B1_LEDEC(12,2)  
 MinimumLot Lote mínimoSB1.B1_LMDEC(12,2)  
 FamilyCode FamíliaSB1.B1_FPCODCHAR(10)  
 FamilyInternalIdEmpresa+filial+famíliaEMPRESA + SB1.B1_FILIAL + SB1.B1_FPCOD   
 FamilyDescription Descrição da famíliaSYC.YC_NOMECHAR(40)  
 NetWeightPeso do ItemSB1.B1_PESODEC(11,4)  
 GrossWeighPeso brutoSB1.B1_PESBRUDEC(11,4)  
 TrailRastroSB1.B1_RASTROCHAR(01)  
 BinControlControla EndereçoSB1.B1_LOCALIZCHAR(01)  
 SecondUnitOfMeasureCodeSegunda Unidade de medidaSB1.B1_SEGUMCHAR(02)  
 SecondUnitOfMeasureInternalIdEmpresa+filial+ seg. unidade de medidaEMPRESA + SB1.B1_FILIAL + SB1.B1_SEGUM   
 MultiplicationFactorValue Fator de conversãoSB1.B1_CONVDEC(5,2)  
 ProductTypeTipo do ItemSB1.B1_TIPOCHAR(02)  
 PackingQuantity Quantidade EmbalagemSB1.B1_QENUM(09)  
 CostCenterCodeCentro de CustoSB1.B1_CCCHAR(09)  

 

Notas:

  • Se for um tipo que não está definido deverá gravar como GENÉRICO. Exemplo: Tipo = AMOSTRA. 

 

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 TagDescriçãoTabela/Campo : ProtheusTipoTabela/Campo : PC-FactoryTipo
BusinessContentTypeCompanyIdCódigo da Empresa CHAR(02)  
 BranchIdCódigo da FilialNNR.NNR_FILIALCHAR(02)  
 CompanyInternalIdEmpresa+FilialEMPRESA + NNR.NNR_FILIAL   
 CodeCódigo do Local de Estoque(armazém/almoxarifado/depósito)NNR.NNR_CODIGOCHAR(02)  
 InternalIdEmpresa+Filial+código local

EMPRESA + NNR.NNR_FILIAL +

NNR.NNR_CODIGO

   
 DescriptionDescrição do Local de Estoque(armazém/almoxarifado/depósito)NNR.NNR_DESCRICHAR(20)  
 ActiveLocal de Estoque Ativo?TRUECHAR(01)  
 TypeTipo do Local de EstoqueNNR.NNR_TIPOCHAR(01)  
 WarehouseClassificationClassificaçãoNNR.NNR_INTPCHAR(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

 

MensagemTagDescrição

Tabela/Campo :

Protheus PCP

Tabela Campo :

Protheus SFC

TipoTabela/Campo : PC-FactoryTipo
BusinessContentType
      
 CodeCódigo MáquinaSH1.H1_CODIGOCYB.CYB_CDMQCHAR(20)  
 DescriptionDescrição MáquinaSH1.H1DESCRICYB.CYB_DSMQCHAR(40)  
 WorkCenterCodeCódigo Centro TrabalhoSH1.H1_CTRABCYB.CYB_CDCETRCHAR(10)  
 WorkCenterDescriptionDescrição Centro TrabalhoSHB.HB_NOMECYB.CYB_DSCETRCHAR(40)  
 CostCenterCodeCódigo Centro CustoSH1.H1_CCUSTCYB.CYB_CDCECSCHAR(20)  
 ProcessorTypeTipo de Processamento 

CYB.CYB_TPPC

1=Monoprocesso;2=Por Batelada;

3=Multiplos Processos;4=Manual

CHAR(01)  
 LaborTypeTipo MOD 

CYB.CYB_TPMOD

1=Nao Reporta;2=Operador;3=Equipe

CHAR(01)  
 VolumeMachineQuantityQuantidade Volume Máquina CYB.CYB_QTVMMQDEC(12,4)  
 EfficiencyMachineValueEficiência Máquina CYB.CYB_VLEFMQDEC(05,2)  
 OperatorMachineQuantityQuantidade Operador Máquina CYB.CYB_QTOEMQNUM(02)  
 SimultaneousActivityQuantityQuantidade Operações Simultaneas CYB.CYB_QTATSMNUM(03)  
 IsSetupPossui Preparação CYB.CYB_LGSUBOOLEAN  
 IsOverlapReportSobrepõe Apontamento CYB.CYB_LGOVRPBOOLEAN  
 ProductionAreaCodeArea de Produção CYB.CYB_CDARPOCHAR(10)  
 InitialValidateDateData início validade CYB.CYB_DTBGVDDATE  
 FinalValidateDateData fim validade CYB.CYB_DTEDVDDATE  
ListOfResources
      
  ResourceTypeTipo do Recurso 

CYC.CYC_TPRC

1=Operador;2=Ferramenta;

3=Equipe;4=Equipamento

CHAR(01)  
 ResourceCodeCódigo Recurso CYC.CYC_CDRCCHAR(20)  
 ResourceNameNome Recurso CYC.CYC_NMRCCHAR(40)  
 UnitTimeTypeTipo Medida Tempo 

CYC.CYC_TPUNTE

1=Horas;2=Minutos;3=Segundos

CHAR(01)  
 StartExpirationDateData Início Validade CYC.CYC_DTBGVDDATE  
 EndExpirationDateData Fim Validade CYC.CYC_DTEDVDDATE  
 CycleQuantityNúmero Ciclos CYC.CYC_QTCIDEC(11,4)  
 IsTimeActivityDetermina tempo CYC.CYC_LGTEATBOOLEAN  
ListOfProductionShifts       
 ProductionShiftCodeCódigo Modelo Turno CYL.CYL_CDTNCHAR(08)  
 ProductionShiftDescriptionDescrição Modelo Turno CYL.CYL_DSTNCHAR(40)  
 BeginDateData Início Validade CYL.CYL_DTVDBGDATE  
 EndDateData Fim Validade CYL.CYL_DTVDEDDATE  

 

 

Notas:

  • No PCP as máquinas são cadastradas na rotina de recursos MATA610 e no chão de fábrica a rotina é SFCA002. A nomenclatura também muda. Quando o usa o chão de fábrica será denominada MÁQUINA. Quando usar somente o PCP será RECURSO. A rotina de parâmetros PCPA109  está preparada para mostrar 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

 

MensagemTagDescrição

Tabela/Campo :

Protheus PCP

Tabela Campo :

Protheus SFC

TipoTabela/Campo : PC-FactoryTipo
BusinessContentType
      
 CodeCódigo do RecursoSH4.H4_CODIGOCYH.CYH_CDRCCHAR(06)  
 NameNome do Recurso

SH4.H4_DESCRI

CYH.CYH_NMRCCHAR(40)  
 TypeTipo 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_CDARPOCHAR(10)  
 ProductionAreaDescriptionDescrição área de produção CYA.CYA_DSARPOCHAR(40)  
 ItemComponentType       
 ProductionShiftNumberTurnoSH4.H4_TURNOCYH.CYH_NRTNCHAR(05)  
 LaborCodeMOBFixo '1'CYH.CYH_CDMODCHAR(08)  
 StartExpirationDateData validade inicialData AtualCYH.CYH_DTVDBGDATE  
 EndExpirationDateData validade final CYH.CYH_DTVDEDDATE  
 UnitCycleQuantityUnidades Ciclos CYH.CYH_QTUNCINUM(07)  
 ToolCodeFerramenta CYH.CYH_CDMPRCCHAR(15)  
 ToolDescriptionDescrição Ferramenta CYH.CYH_DSMPRCCHAR(40)  

Notas:

  • O Recurso no PCP indica a máquina, no chão de fábrica indica ferramentas, operador, etc.
  • Quando origem for do PCP a tag Type (Tipo Recurso) será gerada com o valor fixo '2'
  • Quando origem for do PCP a tag UnitCycleQuantity (Unidades Ciclos) será gerada com o valor fixo '1'
  • Quando origem for do PCP a tag UnitCycleQuantity (Unidades Ciclos) será gerada com o valor fixo '1'
  • Quando origem for do PCP a tag StartExpirationDate (Validade Inicial) será gerada com a data de geração da mensagem
  • Quando origem for do PCP a tag EndExpirationDate (Validade Final) será gerada com o seguinte cálculo:
    Data atual (dDataBase) + vida útil da ferramenta (H4_VIDAUTI). Considerar o tipo de vida útil (H4_TIPOVID) - D=Dias;H=Horas;M=Mes;A=Ano

 

 

Transação Estrutura: ItemStructure_1_000.xsd
Identificador da Mensagem: ItemStructure
Versão: 1_000
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona

 

Mensagem TagDescriçãoTabela/Campo : ProtheusTipoTabela/Campo : PC-FactoryTipo
BusinessContentTypeCompanyIdCódigo da Empresa CHAR(02)  
 CompanyInternalIdEmpresa+FilialEMPRESA + SG1.G1_FILIAL   
 ItemInternalIdEmpresa+Filial+código item pai

EMPRESA + SG1.G1_FILIAL +

SG1.G1_COD

   
 ItemCodeCódigo item paiSG1.G1_CODCHAR(15)  
 ItemAmountQuantidade base do item paiSB1.B1_QBNUM(07)  
ItemComponentType      
 ItemSequenceSequencia do componenteSG1.G1_TRTNUM(05)  
 ItemComponentCodeCódigo item componenteSG1.G1_COMPCHAR(15)  
 ItemComponentInternalIdInternal Id do Item ComponenteEMPRESA + SG1.G1_FILIAL + SG1.G1_COMP   
 InitialDateData validade inicialSG1.G1_INIDATE  
 FinalDateData validade finalSG1.G1_FIMDATE  
 IsGhostMaterialIndica se é fantasmaSB1.B1_FANTASMCHAR(01)  
 ItemComponentAmountQuantidade do item componenteSG1.G1_QUANTDEC(12,6)  
 LossFactorFator de perdaSG1.G1_PERDADEC(05,2)  
(mais) ListOfScript      
 ScriptcodeCódigo do RoteiroSGF.GF_ROTEIROCHAR(02)  
 ScriptAlternativeAlternativo do Roteiro--   
 ActivityIntenalIDID Operação--   
 ActivityCodeCódigo da OperaçãoSGF.GF_OPERACCHAR(02)  
 ActivityComponentSequenceSequencia do componente na operaçãoSGF.GF_TRTNUM(03)  

 

 

Transação Roteiro - Operações do Item : ItemScript_1_000.xsd
Identificador da Mensagem: ItemScript
Versão: 1_000
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona

 

 

MensagemTagDescriçãoTabela/Campo : ProtheusTipoTabela/Campo : PC-FactoryTipo
BusinessContentTypeItemCodeCódigo itemSG2.G2_PRODUTOCHAR(15)  
 ItemDescriptionDescrição do itemSB1.B1_DESCCHAR(40)  
 ItemInternalIdEmpresa|Filial|Item

EMPRESA + SG2.G2_FILIAL +

SG2.G2_PRODUTO

   
 ScriptCodeCódigo do RoteiroSG2.G2_CODIGOCHAR(02)  
 ScriptDescriptionDescrição Roteiro--CHAR(40)  
 ScriptAlternativeRoteiro Alternativo--CHAR(02)  
ListOfActivity      
 ActivityInternalIDID OperaçãoSG2.R_E_C_N_O_NUM(05)  
 ActivityCodeCódigo da OperaçãoSG2.G2_OPERACCHAR(02)  
 ActivityDescriptionDescrição OperaçãoSG2.G2_DESCRICHAR(60)  
 MachineCodeCódigo da MáquinaSG2.G2_RECURSOCHAR(06)  
 ToolCodeCódigo FerramentaSG2.G2_FERRAMCHAR(06)  
 ActivityTypeTipo Operação

1 = Executa operação; 2 = Não executa.

CHAR(01)  
 WorkCenterCodeCódigo Centro TrabalhoSG2.G2_CTRABCHAR(06)  
 WorkCenterInternalIdId Centro de TrabalhoEMPRESA + SG2.G2_FILIAL + SG2.G2_CTRAB   
 UnitItemNumberLote padrão SG2.G2_LOTEPADNUM(06)  
 TimeResourceTempo Recurso0   
 TimeMachineTempo MáquinaSG2.G2_TEMPADDEC(05,2)  
 TimeSetupTempo PreparaçãoSG2.G2_SETUPDEC(05,2)  
 UnitTimeTypeTipo Unidade Tempo1 = Horas;2=Minutos;3=Segundos;4=Dias   
 ScriptAlternativeAlternativoSG2.G2_ROTALTCHAR(02)  
 InitialDateData InicialSG2.G2_DTINIDATE  
 FinalDateData FinalSG2.G2_DTFIMDATE  
 PercentageScrapValue% Refugo--   
 PercentageValueProporção--   
 ResourceQuantityQuantidade Recurso--   
       

 

Notas:

  • A tag ActivityType (Tipo Operação) será gerada com o valor fixo '1'
  • A tag UnitTimeType (Tipo Unidade Tempo) será gerada com o valor fixo '1'
  • A tag ListOfPertOrders não será gerada para o Protheus
  • Na exclusão de um roteiro, não deverá excluir se existir integridade com a rotina de OPERAÇÕES x COMPONENTES, MATA637. Neste caso não necessita enviar nenhuma mensagem ao PC-Factory.
  • Quando incluir, alterar ou excluir dados  do MATA637, deverá re-enviar a mensagem de estrutura, ItemStructure.


Transação Endereços: AdressStock_1_000.xsd
Identificador da Mensagem: AdressStock
Versão: 1_000
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona

 

MensagemTagDescriçãoTabela/Campo : ProtheusTipoTabela/Campo : PC-FactoryTipo
BusinessContentTypeWarehouseCodeArmazém/DepósitoSBE.BE_LOCALCHAR(02)  
 LocationCodeEndereço/LocalizaçãoSBE.BE_LOCALIZCHAR(15)  
 AdressInternalIdChave completa endereço

 EMPRESA + SBE.BE_FILIAL + SBE.BE_LOCAL + SBE.BE_LOCALIZ

   
 AdressStockDescriptionDescrição do endereçoSBE.BE_DESCRICCHAR(30)  

 

 

Transação Saldo: ItemStockLevel_1_000.xsd
Identificador da Mensagem: ItemStockLevel
Versão: 1_000
Módulo Protheus: Vários
Tipo de Envio: Síncrona

 

MensagemTagDescriçãoTabela/Campo : ProtheusTipoTabela/Campo : PC-FactoryTipo
BusinessContentTypeItemCodeCódigo do produtoSB2.B2_CODCHAR(15)  
 ItemDescriptionDescrição do itemSB1.B1_DESCCHAR(30)  
ListOfStock  

 

   
 ReferenceCodeReferência--   
 WarehouseCodeDepósito/Local de estoqe/ArmazemSB2.B2_LOCALCHAR(02)  
 LotCodeNúmero do LoteSB8.B8_LOTECTLCHAR(10)  
 SubLotCodeSub-LoteSB8.B8_NUMLOTECHAR(06)  
 NumberSeriesNúmero de SérieSBF.BF_NUMSERICHAR(20)  
 AddressCodeEndereço/LocalizaçãoSBF.BF_LOCALIZCHAR(15)  
 LotDueDateData de ValidadeSB8.B8_DTVALIDDATE  
 CurrentStockAmountSaldo de estoque

SB2.B2_QATU

SB8.B8_SALDO

SBF.BF_QUANT

DEC(12,2)  
 BookedStockAmountQuantidade Reservada

SB2.B2_RESERVA

SB8.B8_EMPENHO

SBF.BF_EMPENHO

DEC(12,2)  
 AvailableStockAmountSaldo disponível

SB2.B2_QATU - SB2.B2_RESERVA

SB8.B8_SALDO - SB8.B8_EMPENHO

SBF.BF_QUANT - SBF.BF_EMPENHO

DEC(12,2)  
 
QuantityUpdated
Quantidade Atualizada DEC(12,2)  
 
InputOutputEntrada ou Saída1 = Entrada ou 2 = SaídaCHAR(01)  

 

Notas:

  • Quando atualizar um saldo novo no ERP, deverá enviar a mensagem ao PC-Factory.
    Transações que geram movimentação de estoque e executam rotinas de atualização de saldo deverão acionar a integração:
    NF de Entrada  - Função B2ATUCOMD1
    NF de Venda - Função B2ATUCOMD2
    Mov. Internas - Função B2ATUCOMD3
  • Quando o saldo for atualizado por uma atualização do PC-Factory não deverá gerar mensagem de atualização de saldo. Quando a origem da alteração do saldo for TOTVSMES não será gerada a mensagem.
    Na mensagem de apontamento de produção a tag "Product name"  indica quem está enviado o registro. No caso do TOTVS MES essa informação é gravada na SH6.H6_OBSERVA = 'TOTVSMES'.
    Quando for movimentação interna é registrado na SD3.D3_OBSERVA = 'TOTVSMES'.
  • O campo QuantityUpdated corresponde a quantidade atualizada, ou seja, a quantidade que esta sendo movimentada. 
  • O campo InputOutput indica se a movimentação é uma entrada ou saída. 
  • Quando o item controla endereçamento(B1_LOCALIZ), a mensagem de saldo deve ser gerada somente na confirmação do MATA265, rotina que efetiva o endereçamento.
  • As rotinas de saldo inicial do PCP e Estoque, MATA220 e MATA805 também geram a mensagem de saldo.

 

 

Transação Motivo de Refugo: WasteReason_1_000.xsd
Identificador da Mensagem: WasteReason
Versão: 1_000
Módulo Protheus: SIGAPCP/SIGASFC
Tipo de Envio: Síncrona

 

MensagemTagDescrição

Tabela/Campo :

Protheus PCP

Tabela Campo :

Protheus SFC

TipoTabela/Campo : PC-FactoryTipo
BusinessContentTypeCodeCódigo RefugoSX5.X5_CHAVECYO.CYO_CDRFCHAR(08)  
 DescriptionDescrição do Refugo

X5_DESCRI

X5_DESCSPA

X5_DESCENG

CYO.CYO_DSRFCHAR(40)  
 IsReworkRetrabalho

 

CYO.CYO_LGRTBOOLEAN  
 IsScrapMaterialRefugo MaterialSBE.BE_DESCRICCYO.CYO_LGRFMPBOOLEAN  

 

Notas:

  • Quando não estiver integrado com o chão de fábrica, MV_INTSFC igual a '0' o  motivo de refugo é cadastrado a tabela genérica SX5. 
  • Deverá pesquisar na tabela SX5 conforme comando abaixo:
    select X5_CHAVE from sx5990 where X5_TABELA = '43'
    Onde:
    - O código do motivo é X5_CHAVE
     A tabela do motivo é '43'.
  • Quando estiver integrado com o chão de fábrica, MV_INTSFC igual a '1' será gerada  somente a tabela do chão de fábrica - CYO. Rotina SFCA003. Se na mensagem não informar o indicador de refugo ou retrabalho deve considerar refugo(CYO_LGRFMP = 'T').
  • 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 SIGAPCP 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 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

 

MensagemTagDescrição

Tabela/Campo :

Protheus PCP

Tabela Campo :

Protheus SFC

TipoTabela/Campo : PC-FactoryTipo
BusinessContentTypeCodeCódigo Motivo ParadaSX5.X5_CHAVECYN.CYN_CDSPCHAR(10)  
 DescriptionDescrição Parada

X5_DESCRI

X5_DESCSPA

X5_DESCENG

CYN.CYN_DSSPCHAR(40)  
 IsEfficiencyAltera Eficiência

--

--   
 IsEmailEquipmentE-mail Planejador----   
 IsServiceRequestEmite Solicitação Serviço----   
 IsSetupParada Setup----   

 

Notas:

  • Quando não estiver integrado com o chão de fábrica, MV_INTSFC igual a '0' o  motivo de parada é cadastrado a tabela genérica SX5. 
  • Deverá pesquisar na tabela SX5 conforme comando abaixo:
    select X5_CHAVE from sx5990 where X5_TABELA = '44'
    Onde:
    - O código do motivo é X5_CHAVE
     A tabela do motivo é '44'.
  • Quando estiver integrado com o chão de fábrica, MV_INTSFC igual a '1' será gerada  somente a tabela do chão de fábrica - CYN. Rotina SFCA004. 
  • O motivo de parada 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 SIGAPCP deve validar contra o SX5.X5_CHAVE e SH6.H6_MOTIVO
    Quando usa o SIGASFC validar contra o CYN.CYN_CDSP, CYX.CYX_CDSP e SH6.H6_MOTIVO

 

 

Transação Ordem de Produção: ProductionOrder_2_003.xsd
Identificador da Mensagem: ProductionOrder
Versão: 2_003
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona

MesagemTagDescrição

Tabela/Campo

TipoTabela/Campo : PC-FactoryTipo
BusinessContentTypeNumberNúmero Ordem ProduçãoSC2.C2_NUM + SC2.C2_ITEM + SC2.C2_SEQUENCHAR(20)  
 ProductionOrderUniqueIDEmpresa+Filial+Ordem Produção

EMPRESA + SC2.C2_FILIAL + SC2.C2_NUM +

SC2.C2_ITEM + SC2.C2_SEQUEN

CHAR(30)  
 ItemCodeCódigo ItemSC2.C2_PRODUTOCHAR(15)  
 ItemDescriptionDescrição ItemSB1.B1_DESCCHAR(40)  
 TypeTipo 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)  
 QuantityQuantidadeSC2.C2_QUANTDEC(12,2)  
 ReportQuantityQuantidade ReportadaSC2.C2QUJEDEC(12,2)  
 UnitOfMeasureCodeUnidade MedidaSC2.C2_UMCHAR(02)  
 RequestOrderCodeCódigo Pedido Ordem ProduçãoSC2.C2_PEDIDOCHAR(06)  
 StatusOrderTypeEstado da ordem

Prevista/Aberta = 1

Iniciada = 6

Encerrada Parcial/Total = 7

Ociosa = 9

CHAR(01)  
 WarehouseCodeCódigo DepósitoSC2.C2_LOCALCHAR(02)  
 EndOrderDateTimeData Fim Ordem Produção CPSC2.C2_DATPRFDATE  
 StartOrderDateTimeData Início Ordem Produção CPSC2.C2_DATPRIDATE  
 AbbreviationProviderNameNome ClienteSC5.C5_CLIENTE ( SA1.A1_NOME)CHAR(30)  
 ScriptCodeCódigo RoteiroSC2.C2_ROTEIROCHAR(02)  
ListOfActivityOrders      
 ProductionOrderNumberOrdem de Produção

SC2.C2_NUM + SC2.C2_ITEM +

SC2.C2_SEQUEN

CHAR(20)  
 ActivityIDID do RegistroRECNO (SG2,SHY ou SH8)CHAR(10)  
 ActivityCodeCódigo Operação

SG2.G2_OPERAC

SHY.HY_OPERAC

SH8.H8_OPER

CHAR(02)  
 ActivityDescriptionDescrição OperaçãoSG2.G2_DESCRICHAR(40)  
 SplitDesdobramento da operaçãoSH8.H8_DESDOBRCHAR(04)  
 ItemCodeCódigo do item

SC2.C2_PRODUTO

CHAR(15)  
 ItemDescriptionDescrição do itemSB1.B1_DESCCHAR(40)  
 ActivityTypeTipo Operação1 - Aponta ; 2-Não ApontaCHAR(01)  
 WorkCenterCodeCódigo Centro de Trabalho

SG2.G2_CTRAB

SHY.HY_CTRAB

SH8.H8_CTRAB

CHAR(06)  
 WorkCenterDescriptionDescrição Centro de TrabalhoSHB.HB_NOMECHAR(30)  
 UnitTimeTypeTipo Unidade Tempo1 - Horas; 2 - Minutos; 3- Segundos; 4 - DiasCHAR(01)  
 TimeResourceTempo Recurso (Tempo padrão para um lote)SG2.G2_TEMPADDEC(05,2)  
 TimeMachineTempo 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)  
 TimeSetupTempo Preparação

SG2.G2_SETUP

SHY.HY_TEMPOS

SH8.H8_SETUP

DEC(15,4)  
 ScriptCodeCódigo Roteiro

SG2.G2_CODIGO

SHY.HY_ROTEIRO

SH8.H8_ROTEIRO

CHAR(02)  
 LaborCodeCódigo Mão de Obra DiretaMOD+CCCHAR(08)  
 UnitItemNumberLote PadrãoSG2.G2_LOTEPADNUM(05)  
 IsActivityEndÚltima Operação

Na última operação passar TRUE.

Nas demais FALSE.

BOOLEAN  
 MachineCodeCódigo Máquina

SG2_RECURSO

SHY_RECURSO

H8_RECURSO

CHAR(06)  
 StartPlanDateTimeData/Hora Início Programação

SHY.HY_HORAINI

SC2.C2_DATPRI

SH8.H8_DTINI

DATE  
 EndPlanDateTimeData/Hora Fim Programação

SHY.HY_HORAFIM

SC2.C2_DATPRF

SH8.H8_DTFIM

DATE  
 ProductionQuantityQuantidade a produzir na operação

SHY.HY_QUANT 

SH8.H8_QUANT 

SC2.C2_QUANT

DEC(12,2)  
 UnitActivityCodeUnidade de medidaSB1.B1_UMCHAR(02)  
 SecondUnitActivityCodeSegunda unidade de medida na operação--   
 SecondUnitActivityFactorFator de conversão para segunda un. na operação--   
ListOfMaterialOrders      
 ProductionOrderNumberOrdem de produção

SC2.C2_NUM + SC2.C2_ITEM +

SC2.C2_SEQUEN

CHAR(20)  
 MaterialIDID do registro da reservaSD4.R_E_C_N_O_CHAR(10)  
 MaterialCodeCódigo Item ReservaSD4.D4_CODCHAR(15)  
 MaterialDescriptionDescrição do ItemSB1.B1_DESCCHAR(40)  
 ScriptCodeCódigo RoteiroSD4.D4_ROTEIROCHAR(02)  
 ActivityCodeCódigo OperaçãoSD4.D4_OPERACCHAR(02)  
 WarehouseCodeCódigo DepósitoSD4.D4_LOCALCHAR(02)  
 MaterialDateData ReservaSD4.D4_DATADATE  
 MaterialQuantityQuantidade ReservaSD4.D4_QUANTDEC(12,2)  
 LotCodeLoteSD4.D4_LOTECTLCHAR(10)  
 PertMaterialNumberSequencia do itemSD4.D4_TRTCHAR(03)  
 RequestTypeTipo da RequisiçãoSB1.B1_APROPRICHAR(01)  
(mais)ListOfAllocatedMaterial

 

      
 WarehouseCodeCódigo DepósitoSD4.D4_LOCALCHAR(02)  
 LotCodeCódigo Lote

SD4.D4_LOTECTL

SDC.DC_LOTECTL

CHAR(10)  
 LocationCodeLocalização/EndereçoSDC.DC_LOCALIZCHAR(15)  
 ActivityCodeCódigo OperaçãoSD4.D4_OPERAC CHAR(02)  
 ScriptCodeCódigo RoteiroSD4.D4_ROTEIROCHAR(02)  
  AllocationQuantityQuantidade Alocada

SD4.D4_QUANT 

SDC.DC_QUANT

DEC(12,2)  
 AllocationTypeTipo Alocação

1 = Soma;2=Diminui;3=Valor Absoluto

CHAR(01)  
 SubLoteCodeSub Lote

SD4.D4_NUMLOTE

SDC.DC_NUMLOTE

CHAR(06)  
 NumberSeriesNúmero de SerieSDC.DC_NUMSERICHAR(20)  
 LotDueDateData de ValidadeSD4.D4_DTVALIDDATE  
ListOfQuotaActivity      
 ProductionOrderNumberNúmero Ordem ProduçãoCY9.CY9_NRORPOCHAR(20)  
 ControlTypeSeleção Split--   
 ActivityIDID OperaçãoCY9.CY9_CDATCHAR(10)  
 ItemCodeCódigo do itenCYY.CYY_CDACCHAR(15)  
 ItemDescriptionDescrição do itemCYY.CYY_DSACCHAR(40)  
 StartActivityDateTimeData/Hora Início AtividadeCYY.CYY_DTBGAT / CYY.CYY_HRBGATDATETIME  
 EndActivityDateTimeData/Hora Fim AtividadeCYY.CYY_DTEDAT / CYY.CYY_HREDATDATETIME  
 ApprovedQuantityQuantidade AprovadaCYY.CYY_QTATAPDEC(13,4)  
 ScrapQuantityQuantidade RefugadaCYY.CYY_QTATRFDEC(13,4)  
 MachineCodeCódigo MáquinaCYY.CYY_CDMQCHAR(20)  
 MachineDescriptionDescrição da MáquinaCYY.CYY_DSMQCHAR(40)  
 ActivityQuantityQuantidade PrevistaCYY.CYY_QTATDEC(12,4)  
 StandardSetupTempo Padrão PreparaçãoCYY.CYY_QTPASUNUM(10)  
 StandardActivityTempo Padrão OperaçãoCYY.CYY_QTPAATNUM(10)  
 StandardPostprocessingTempo Padrão Pós_processoCYY.CYY_QTPAPPNUM(10)  
 StandardMachineTempo Padrão MáquinaCYY.CYY_QTPAMQNUM(10)  
 StandardOperatorTempo Padrão MODCYY.CYY_QTPAOENUM(10)  
 UsedCapacityCapacidade UtilizadaCYY.CYY_QTVMATDEC(12,4)  
 ActivityTimeQuantityHora Disponível AtividadeCYY.CYY_HRDICHAR(08)  
 ReportQuantityQuantidade ReportadaCYY.CYY_QTATRPDEC(13,4)  
 ReworkQuantityQuantidade RetrabalhadaCYY.CYY_QTATRTDEC(12,4)  
 StartSetupDateTimeData/Hora Início PreparaçãoCYY.CYY_DTBGSU / CYY.CYY_HRBGSUDATETIME  
 EndSetupDateTimeData/Hora Fim PreparaçãoCYY.CYY_DTEDSU / CYY.CYY_HREDSUDATETIME  
 TimeSetupTempo PreparaçãoCY9.CY9_QTTESUNUM(10)  
 TimeMachineTempo MáquinaCY9.CY9_QTTEMQNUM(10)  
 TimeOperatorTempo MODCY9.CY9_QTTERCNUM(10)  
 TimePostprocessingTempo Pós ProcessoCY9.CY9_QTTEPPNUM(10)  
 QuotaActivityIDID SplitCYY.CYY_IDATQOCHAR(05)  
 WorkCenterCodeCentro de TrabalhoCY9.CY9_CDCETRCHAR(10)  
 ReportedSplitSplit ReportadoCYY.CYY_LGQORPBOOELAN  
 StatusActivityTypeEstado OperaçãoCYY.CYY_TPSTATCHAR(01)  
(mais) ListOfQuotaActivityTools      
 ToolCodeFerramentaCYY.CYY_CDFECHAR(20)  
 ToolQuantityQuantidade FerramentaCYY.CYY_QTFENUM(03)  

 

Notas:

  • As tags não utilizadas pela integração PCP Protheus x PC-Factory, mesmo constando nas mensagens, descritas no Schema de Mensagem Única TOTVS, não serão mencionadas neste documento.
  • A tag Type (Tipo da ordem) será gerada com o valor "1" - Ordem interna
  • A tag RequestType (Tipo da Requisição) identifica se a requisição pode ser feita separadamente do reporte da produção, conforme regra abaixo:
    Caso o parâmetro MV_REQAUT estiver como 'D' os materiais DIRETOS serão digitados e os INDIRETOS serão baixados automaticamente. 
    Caso o parâmetro MV_REQAUT estiver como 'A' o consumo dos materiais será realizado para todos os componentes. 
    Esta tag conterá os seguintes valores: 1-Direta, 2-Indireta
  • A tag AllocationType (Tipo de Alocação) será gerada com o valor "3" - Valor Absoluto
  •  A sessão ListOfAllocatedMaterial  seguirá algumas regras para o alocação: 
    Se o item controlar endereço e não gerou a SBC não deve gerar os dados da lista ListOfAllocatedMaterial ( verificar somente se o parâmetro MV_LOCALIZ = S )  
    Se o item controlar rastro e não gerou o lote na SD4  não deve gerar os dados da lista ListOfAllocatedMaterial  
    Se o item não controlar endereço nem lote  deve gerar os dados da lista ListOfAllocatedMaterial com base na SD4.
  • As tags das operações da ordem da sessão ListOfActivityOrders poderão ter origem diferente de acordo com a parametrização ou rotinas executas. Se executar o varga máquina MATA690 será usada a tabela SH8. Quando o parâmetro MV_PCPATOR estiver como 'S' será usada a tabela SHY. Se o parâmetro MV_PCPATOR estiver como 'N' será usada a tabela SG2. 
  • A tag Split da sessão  ListOfActivityOrders será gerada quando ocorrer um desdobramento da operação em vários recursos. Gerado quando não usa o chão de fábrica.
  • A tag ActivityType (Tipo Operação) será gerada com o valor "1" - Aponta
  • A tag UnitTimeType (Tipo unidade tempo) será gerada com o valor "1" - Hora
  • A tag  UnitItemNumber será utilizada para registrar o lote padrão de produção da operação
  • Para o PC-Factory é necessário indicar em qual operação o componente é consumido. Quando não usa o conceito de componente x operação deverá linkar os componentes na última operação.
  • A tag TimeMachine (Tempo Máquina) indica o tempo para fazer a ordem de produção .
    Utilizando o parâmetro MV_PCPATOR o tempo será SHY.HY_TEMPOM.
    Quando usa carga máquina usar a diferença entre SH8.H8_HRINI e SH8.H8_HRFIM
    O tempo pode ter variação conforme Tipo Operação (quando não existir na SHY):
    Tipo Operação 1 Normal : Aplica o tempo do lote a quantidade da ordem. Sendo : (SG2.G2_TEMPAD / SG2.G2_LOTEPAD) * SC2.C2_QUANT) / SH1.H1_MAOOBRA. Obs: Se tempo e lote for zero considera 1.
    Tipo Operação 2 Fixo e 3 Ilimitada: Independente da quantidade o tempo será o mesmo. Sendo: SG2.G2_TEMPAD. Obs: Se for zero envia 1.
    Tipo Operação 4 Tempo Mínimo: Considera a quantidade múltipla do lote. Exemplo: Lote = 10. Tempo = 5. Qtd Ordem = 7. Tem que considerar o tempo para fazer 10 peças. Sendo mesmo cálculo do tipo 1 Normal.
    Outro ponto a considerar é que o PC-Factory espera o tempo em Centesimal. Quando o parâmetro MV_TPHR for diferente de 'C' o tempo será convertido para centesimal.
  • A tag TimeResource (Tempo Recurso) indica o tempo para fazer um lote padrão
  • A tag LaborCode (Código mão de Obra) é  indicado por 'MOD' + Centro de Custo
  • A sessão ListOfQuotaActivity é gerada somente quando o chão de fábrica estiver ativo.
  • A tag StatusActivityType conterá os seguintes valores : 1=Não Iniciado;2=Programado;3=Liberado;4=Iniciado;5=Finalizado;6=Suspenso

 


 

Processos

Transação Apontamento de Produção: ProductionAppointment_1_001.xsd
Identificador da Mensagem: ProductionAppointment
Versão: 1_001
Módulo Protheus: SIGAPCP/SIGASFC
Tipo de Envio: Síncrona 

Obs.: Esta mensagem será gerada pelo PC-Factory e enviado ao Protheus.


MensagemTagDescrição

Tabela/Campo

Protheus PCP

Tabela Campo

Protheus SFC

TipoTabela/Campo : PC-FactoryTipo
BusinessContentTypeMachineCodeMáquinaSH6.H6_RECURSOCYV.CYV_CDMQCHAR(06)  
 ProductionOrderNumberOrdem de ProduçãoSH6.H6_OPCYV.CYV_NRORPOCHAR(20)  
 ActivityCodeOperaçãoSH6.H6_OPERACCYV.CYV_CDATCHAR(02)  
 SplitSplitSH6.H6_DESDOBRCYV.CYV_IDATQOCHAR(04)  
 ActivityIDID Operação----   
 ItemCodeProdutoSH6.H6_PRODUTOCYV.CYV_CDACRPCHAR(15)  
 ApprovedQuantityQuantidade AprovadaSH6.H6_QTDPRODCYV.CYV_QTATAPDEC(11,2)  
 ScrapQuantityQuantidade RefugadaSH6.H6_QTDPERDCYV.CYV_QTATRFDEC(11,2)  
 ReworkQuantityQuantidade Retrabalhada----   
 StartSetupDateTimeData/Hora Início Preparação--

CYV_DTBGSU

CYV_HRBGSU

DATETIME  
 EndSetupDateTimeData/Hora Fim Preparação--

CYV_DTEDSU

CYV_HREDSU

DATETIME  
 SetupCodeCódigo Preparação--CYV_CDSUCHAR(10)  
 OpTimeIntTempo Operação--CYV.CYV_QTTERPNUM(10)  
 ProductionShiftCodeCódigo Modelo Turno--CYV.CYV_CDTNCHAR(08)  
 ProductionShiftNumberNúmero Turno--CYV.CYV_NRTNCHAR(05)  
 DocumentCodeDocumento--CYV.CYV_NRDOCHAR(20)  
 DocumentSeriesSérie Documento--CYV.CYV_NRSRCHAR(05)  
 StartReportDateTimeData/Hora Início Reporte

SH6.H6_DATAINI

SH6.H6_HORAINI

CYV.CYV_DTRPBG

CYV.CYV_HRRPBG

DATETIME  
 EndReportDateTimeData/Hora Fim Reporte

SH6.H6_DATAFIN

SH6.H6_HORAFIN

CYV.CYV_DTRPED

CYV.CYV_HRRPED

DATETIME  
 ReversedReportEstorno do ApontamentoTRUE ou FALSETRUE ou FALSEBOOLEAN  
 ReversalDateData do estorno--CYV.CYV_DTEODATE  
 ReportDateTimeData/Hora ReporteSH6.H6_DTAPONT

CYV.CYV_DTRP

CYV.CYV_HRRP

DATETIME  
 WarehouseCodeCódigo DepósitoSH6.H6_LOCALCYV.CYV_CDDPCHAR(02)  
 LotCodeLote/SérieSH6.H6_LOTECTLCYV.CYV_CDLOSRCHAR(10)  
 LotDueDateData Validade LoteSH6.H6_DTVALIDCYV.CYV_DTVDLODATE  
 IntegrationReportRegistro a ser estornado  CHAR(10)  
 CloseOperationEncerra OperaçãoSH6.H6_PTCYV.CYV_LGEDRPBOOLEAN  
 LocationCodeLocalização--CYV.CYV_CDLCCHAR(20)  
WasteAppointment       
 WasteCodeCódigo Refugo

SBC.BC_MOTIVO

CY0.CY0_CDRFCHAR(02)  
 WasteDescriptionDescrição Refugo

SBC.BC_DESCRI

CY0.CY0_DSRFCHAR(40)  
 ScrapQuantityQuantidade Refugada

SBC.BC_QUANT

CY0.CY0_QTRFDEC(11,2)  
ResourceAppointment       
 OperatorCodeCódigo Operador--CYW.CYW_CDOECHAR(20)  
 StartDateTimeData/Hora Início--

CYW.CYW_DTBGRP

CYW.CYW_HRBGRP

DATETIME  
 EndDateTimeData/Hora Fim--

CYW.CYW_DTEDRP

CYW.CYW_HREDRP

DATETIME  
 MOBTimeTempo Mão de Obra Direta--CYW.CYW_QTTEOENUM(10)  
 ExtraTimeTempo Extra--CYW.CYW_QTTEEXNUM(10)  
 UtilTimeTempo Útil--CYW.CYW_QTTEUTNUM(10)  
 ProductionShiftCodeCódigo Modelo Turno--CYW.CYW_CDTNCHAR(08)  
 ProductionShiftNumberNúmero Turno--CYW.CYW_NRTNCHAR(05)  
SupplyOrder       
 ProductionOrderNumberNúmero Ordem ProduçãoSD3.D3_OPCZP.CZP_NRORPOCHAR(20)  
 MaterialCodeCódigo Item ReservaSD3.D3_CODCZP.CZP_CDMTCHAR(15)  
 UsedQuantityQuantidade UtilizadaSD3.D3_QUANTCZP.CZP_QTRPPODEC(12,2)  
 WarehouseCodeCódigo DepósitoSD3.D3_LOCALCZP.CZP_CDDPCHAR(02)  
 LocationCodeLocalizaçãoSD3.D3_LOCALIZCZP.CZP_CDLCCHAR(15)  
 LotCodeLote/Série

SD3.D3_LOTECTL

ou

SD3.D3_NUMSERI

CZP.CZP_CDLOCHAR(20)  
 ActivityCodeCódigo Operação--CZP.CZP_CDATCHAR(02)  
 ScriptCodeRoteiro--CZP.CZP_CDRTCHAR(02)  
ReportToolActivity       
 ToolCodeCódigo Ferramenta--CZ0.CZ0_IDFECHAR(20)  

 

Notas:

  • O apontamento padrão para essa integração será o MATA681.
  • Os campos Máquina,Ordem de Produção,Operação,Produto e Data/Hora Reporte serão obrigatórios.
  • Caso Data/Hora do Reporte seja menor que a data atual, o sistema irá utilizar a Data/Hora atual, ou seja, data e hora que o integração estiver sendo processada.
  • Caso o campo código do depósito vier sem preenchimento deverá usar o local padrão do cadastro de item(SB1.B1_LOCPAD).

  • O campo CloseOperation vai indicar se o apontamento é TOTAL ou PARCIAL. Caso envie true deverá ser T=total. Caso false será considerado como P=Parcial.
    Será usada a seguinte regra para finalizar a ordem/operação no Protheus:
    Encerrar a OPERAÇÃO: Obrigatoriamente deverão ser informadas as seguintes TAGS: ProductionOrderNumber, ActivityCode, CloseOperation (TRUE quando apontamento TOTAL ou operação encerrada/finalizada), ReportDateTime. Os demais campos de quantidade(ApprovedQuantity e ScrapQuantity) e data/hora inicio/fim (StartReportDateTime e EndReportDateTime) podem se gerados sem valor (em branco)
    Encerrar a ORDEM: Apontamento de quantidade na última operação com a tag CloseOperation = TRUE.
  • Todo apontamento deverá enviar uma mensagem de retorno, indicando possíveis problemas ou processamento efetuado com sucesso. 
    Em caso de sucesso o número do apontamento é enviado ao Pc-Factory na mensagem de retorno da ProductionAppointment e corresponde ao RECNO da SH6. Este mesmo número será utilizado quando precisar registrar um estorno(IntegrationReport).

  • O estorno ocorre quando o campo o campo ReversedReport (Estorno do apontamento) possuir o conteúdo TRUE.
    Quando for estorno deverá, obrigatoriamente ter o número do apontamento, campo IntegrationReport. 
  • O estorno pode ser gerado de duas formas no arquivo: somente o estorno ou estorno + apontamento. 
    Somente estorno: possui quantidade aprovada e refugado zerado ( ou sem conteúdo) e dados do ReversedReport. 
    Estorno + apontamento: possui ReversedReport informado e dados da ordem e quantidade aprovada ou refugada maior que zero.

  • Será registrado automaticamente o campo SH6.H6_OBSERVA = 'TOTVSMES' para indicar que o registro foi gerado via integração TOTVSMES.

  • O sistema PC-Factory usa o formato das horas com HH:MM:SS. Para o PCP Protheus será considerado apenas HH:MM. Apontamento com tempos menores que 1 minuto serão rejeitados.

  • A importação respeita os parâmetros definidos nas rotinas MATA681 por meio da função F12 para usuário "admin".
  • Como no PC-factory a operação pode ser baixada num momento posterior ao apontamento será usada a seguinte regra:
    Obrigatoriamente deverão ser informadas as seguintes TAGS: 
    ProductionOrderNumber : Ordem de produção 
    ActivityCode : Operação 
    CloseOperation : True ou False. Sendo TRUE quando apontamento TOTAL ou operação encerrada/finalizada. False quando operação PARCIAL. 
    ReportDateTime : Data do apontamento
    Os demais campos de quantidade(ApprovedQuantity e ScrapQuantity) e data/hora início/fim (StartReportDateTime e EndReportDateTime) podem ser enviados sem valor (em branco).
  • A integração irá respeitar as regras e gatilhos definidas peços clientes. Exemplo: A data/hora início e fim no padrão não são obrigatórias, porém o cliente pode definir a obrigatoriedade via dicionário fazendo com que as tags necessitem ser preenchidas.

  • Se estiver integrado com o chão de fábrica SIGASFC deverá gravar as tabelas deste sistema. Será usado como base o processo do apontamento  modelo 2 , SFCA316.

     

Notas Consumo dos componentes:

  • O consumo dos componentes deverá respeitar parametrização do PCPA109. Na rotina de parâmetros será definido como será o tratamento do consumo dos componentes:
    1 - BackFlush : Sempre irá realizar a baixa dos componentes conforme o definido na engenharia. Desconsidera a lista de consumo SupplyOrder
    2 - Consumo Real: Irá consumir conforme lista de componentes, SupplyOrder, enviada na mensagem.
  • No consumo dos componentes o processo deverá seguir a seguinte regra, conforme parametrização:
    Caso o parâmetro MV_REQAUT estiver como 'D' os materiais DIRETOS serão digitados e os INDIRETOS serão baixados automaticamente.  Para baixar os Indiretos o tipo de movimento deve ter o campo "Aprop. Indir" como "S' na rotina MATA230.
    Caso o parâmetro MV_REQAUT estiver como 'A' o consumo dos materiais será realizado para todos os componentes.
  • Deverá considerar o tipo de movimento do cadastro de parâmetros PCPA109, folder MOVIMENTAÇÕES. Se for Entrada usar o campo OE_VAR1. Se for Saída usar o campo OE_VAR2. Quando usa o chão de fábrica, deverá usar as movimentações parametrizadas no SIGASFC (MV_SFRQMB e MV_TMPAD)
  • No PC-Factory, não é utilizado lote e número de série ao mesmo tempo. O retorno desse conteúdo será via tag SupplyOrder - LotCode, que pode ser o Lote ou número de série, conforme o cadastro do item.


Notas Chão de Fábrica

  • Quantidade reportada CYV_QTATRP, será a soma das quantidades aprovadas e refugadas.
  • Data/Hora Início e Fim e código da Preparação apesar de serem virtuais, se a máquina exigir setup(CYB_LGUSU) deverá enviar as tags SetupCode, StartSetupDateTime e EndSetupDateTime .
  • Caso o documento, tag DocumentCode,  esteja em branco será gravado o número da ordem de produção.
  • Os campos Data da Reserva  'CZP_DTMT' deve receber o conteúdo da tabela CYP.CYP_DTMT 
    A quantidade reserva  'CZP_QTMT'  deve receber o conteúdo da tabela  CYP.CYP_QTMT
    O estado  'CZP_TPST' deve receber o conteúdo da tabela CYP.CYP_TPST 
  • O tempo unidade operação, CZ0_QTTEUN, deverá ser gerado conforme regra do SFCA314

 

Notas Refugo

  • Registrar o motivo de refugo (tags do ListOfWasteAppointments), atualizando dados da tabela SBC
  • Se o motivo de refugo não estiver cadastrado, será  incluído ono cadastro de motivos tabela SX5.
     Onde :  
    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

Obs.: Esta mensagem será gerada pelo PC-Factory e enviado ao Protheus.

 

 

MensagemTagDescrição

Tabela/Campo

Protheus PCP

Tabela/Campo

Protheus SFC

TipoTabela/Campo : PC-FactoryTipo
 MachineCodeCódigo MáquinaSH6.H6_RECURSOCYX.CYX_CDMQ   
 MachineDescriptionDescrição Maquina     
 StopReasonCodeCódigo Motivo ParadaSH6.H6_MOTIVOCYX.CYX_CDSP   
 StopReasonDescriptionDescrição Motivo ParadaSX5.X5_DESCRI *CYX.CYX_DSSP   
 StartDateTimeData/Hora Início

SH6.H6_DATAINI

SH6.H6_HORAINI

CYX.CYX_DTBGSP

CYX_HRBGSP

   
 EndDateTimeData/Hora Fim

SH6.H6_DATAFIN

SH6.H6_HORAFIN

CYX.CYX_DTEDSP

CYX.CYX_HREDSP

   
 OperatorCodeCódigo OperadorSH6.H6_OPERADOCYX.CYX_CDOE   
 ReportDateTimeData/Hora ReporteSH6.H6_DTAPONTCYX.CYX_DTRP   
 ToolCodeCódigo Ferramenta-- CYX.CYX_CDFEPO   
 ProductionTeamCodeCódigo Equipe--CYX.CYX_CDGROE   
 StopTypeTipo Parada(1=Não Programada;2=Programada)--CYX.CYX_TPSP   
 ReportSequenceID PC-Factory----   

 

Notas:

  • O apontamento de parada padrão para essa integração será o MATA682 no PCP e no chão de fábrica a rotina é o SFCA311..
  • Os campos Máquina,Motivo de Parada, Data/Hora Inicio e Fim e Data/Hora Reporte serão obrigatórios.
  • Caso Data/Hora do Reporte seja menor que a data atual, o sistema irá utilizar a Data/Hora atual, ou seja, data e hora que o integração estiver sendo processada.
  • Apontamento de parada setará o SH6.H6_TIPO = 'I'.

  • O produto será a mão de obra. Gerado pelo sistema. Exemplo: SH6.H6_PRODUTO = MOD001 

  • A quantidade perda será gerada pelo sistema. SH6.H6_QTDPERD
  • O campo SH6.H6_IDENT também é gerado pelo sistema
  • O campo SH6.H6_TEMPO deve ser calculado pelo adapter. Deve ser o tempo total da parada.
  • Motivo de Parada:
    O motivo poderá ser cadastrado via integração. Deverá verificar se o motivo de parada está cadastrado. Caso não esteja deverá ser incluído o motivo utilizado no apontamento na tabela SX5.
    Onde:
    O código do motivo é X5_CHAVE
    A tabela do motivo é '44'.
    Para o chão de fábrica,  deverá gerar a tabela - CYN.
  • Todo apontamento deverá enviar uma mensagem de retorno, indicando possíveis problemas ou processamento efetuado com sucesso. 
    Em caso de sucesso o número do apontamento é enviado ao PC-Factory na mensagem de retorno da StopReport e corresponde ao RECNO da SH6. Este mesmo número será utilizado quando precisar registrar um estorno(IntegrationReport).
  • O estorno ocorre quando o campo o campo ReversedReport (Estorno do apontamento) possuir o conteúdo TRUE.
    Quando for estorno deverá, obrigatoriamente ter o número do apontamento, campo IntegrationReport. 
  • O estorno pode ser gerado de duas formas no arquivo: somente o estorno ou estorno + apontamento. Quando a mensagem possuir o estorno e o apontamento só pode commitar as movimentações quando ambas forem concluídas. 
    Para identificar se a mensagem possui somente estorno ou estorno + apontamento deverá verificar as seguintes situações:
    Somente estorno: possui somente as informações do ReversedReport e IntegrationReport com a demais tags sem dados. 
    Estorno + apontamento: possui ReversedReport e IntegrationReport  informados e os demais dados obrigatórios (Máquina,Motivo de Parada, Data/Hora Inicio e Fim e Data/Hora Reporte ) preenchidos.

  • Será registrado automaticamente o campo SH6.H6_OBSERVA = 'PPI' para indicar que o registro foi gerado via integração PCP Protheus x PC-Factory.

  • O sistema PC-Factory usa o formato das horas com HH:MM:SS. Para o PCP Protheus será considerado apenas HH:MM. Apontamento com tempos menores que 1 minuto serão rejeitados.

  • O campo ReportSequence é utilizado para registrar o ID da tabela que registra as informações da parada. Pode ser usado no ponto de entrada MATI681CRG.

  • Modelo do turno e número do turno será gerado  automaticamente pela rotina SFCA311. Somente quando usar o chão de fábrica.
  • Se a mensagem não  enviar o StopType será considerado como 2= Não Programada. Somente quando usar o chão de fábrica. 
  • O motivo de parada 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 SH6.H6_MOTIVO.
    Quando usa o SIGASFC validar contra o CYN.CYN_CDSP, CYX.CYX_CDSP e SH6.H6_MOTIVO  


 

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 , onde são passados os parâmetros para o consulta do saldo, e o Return, que contem 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

MensagemTagDescriçãoTipo
ListOfRequestItemInternalIdCódigo do produtoCHAR(15)
 ReferenceCodeReferênciaCHAR(20)
 WarehouseInternalIdCódigo do depósito/local de estoque/ArmazémCHAR(10)
 LotNumberLoteCHAR(10)
 SubLotCodeSubLoteCHAR(10)
 SerialNumberNúmero de SérieCHAR(20)
 AddressLocalizaçãoCHAR(15)
 LotExpirationDateData de ValidadeDATE

 

Notas

  • A busca pode ocorrer das seguintes formas:
    Por Produto: Retorna informação de todos os locais de estoque do produto.
    Por Local de Estoque(Armazém): Retorna informação de todos os produtos no local de estoque.
    Por Local de Estoque(Armazém) e Produto: Retorna informação sobre o Produto no Local de Estoque definido.
    Para os demais campos, Lote, sub-Lote, número de série, localização e data de validade considerar somente se informar o código do produto. Se enviar estes campos sem o código do produto deve retornar mensagem de erro.
  • O Request poderá ser uma lista de solicitação.

 

Return

MensagemTagDescriçãoTabela/CampoTipo
ReturnContentTypeClosingStockDateData fechamento estoque-- 
ListOfReturnItemCompanyIdEmpresa  
 BranchIdFilial  
 CompanyInternalIdEmpresa + Filial  
 ItemInternalIdCódigo do produtoSB2.B2_CODCHAR(15)
 ReferenceCodeReferencia-- 
(mais) ListOfStockBalance    
 WarehouseInternalIdLocal de Estoque(Armazém/Depósito)SB2.B2_LOCALCHAR(10)
 LotNumberNúmero do LoteSB8.B8_LOTECTL
CHAR(10)
 SubLotCodeSub LoteSB8.B8_NUMLOTECHAR(10)
 LotExpirationDateData de validadeSB8.B8_DTVALIDDATE
 SerialNumberNúmero de sérieSBF.BF_NUMSERI
CHAR(20)
 AddressLocalizaçãoSBF.BF_LOCALIZCHAR(15)
 CurrentStockAmountSaldo do Produto em quantidade

SB2.B2_QATU

SB8.B8_SALDO

SBF.BF_QUANT

DEC(17,4)
 BookedStockAmountQuantidade reservada em Estoque

SB2.B2_RESERVA

SB8.B8_EMPENHO

SBF.BF_EMPENHO

DEC(17,4)
 AvailableStockAmountSaldo 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)
 UnitItemCostCusto unitário do Produto-- 
 AverageUnitItemCostCusto médio do Produto-- 
 ValueOfCurrentStockAmountSaldo atual do estoque do produto em valor-- 

 

 

Transação Movimentações de Estoque:  MovementsInternal_1_001.xsd
Identificador da Mensagem: MovementsInternal
Versão: 1_001
Módulo Protheus: SIGAPCP
Tipo de Envio: Síncrona
Obs.: Esta mensagem será gerada pelo PC-Factory e enviado ao Protheus.

 

MensagemTagDescriçãoTabela/CampoTipo
BusinessContentTypeCompanyIdCódigo da empresa  
 BranchIdFilial  
 CompanyInternalIdInternalId da chave completa da empresa  
 InternalIdInternalId da movimentação.  
 TypeMovementCodeCódigo do Tipo de Movimento internoSD3.D3_TMCHAR(03)
 EmissionDateData de EmissãoSD3.D3_EMISSAODATE
 ItemCodeCódigo do ProdutoSD3.D3_CODCHAR(15)
 UnitOfMeasureCodeUnidade de MedidaSD3.D3_UMCHAR(02)
 QuantityQuantidadeSD3.D3_QUANTDEC(12,2)
 WarehouseCodeCódigo do ArmazémSD3.D3_LOCALCHAR(02)
 LotNumberLoteSD3.D3_LOTECTLCHAR(10)
 SubLotNumberSubLoteSD3.D3_NUMLOTECHAR(06)
 LotExpirationDateData Validade do LoteSD3.D3_DTVALIDDATE
 AddressEndereçoSD3.D3_LOCALIZCHAR(15)
 NumberSeriesNumberSeriesSD3.D3_NUMSERICHAR(20)
 InputOrOutputMovimento de Entrada ou Saida E=Entrada / S = SaídaCHAR(01)
 ReferenceCodeReferência-- 
 ScriptCodeRoteiroSD4.D4_ROTEIROCHAR(02)
 ActivityCodeOperaçãoSD4.D4_OPERACCHAR(02)
 ProductionOrderNumberOrdem de Produção/DocumentoSD3.D3_OP e SD3.D3_DOCCHAR(13)
 FatherItemCodeItem Pai-- 

 

Notas

  • Será registrado que a movimentação teve  origem via integração com PC-Factory. O campo SD3.D3_OBSERVA será gravado com o conteúdo "TOTVSMES".
  • Se a tag InputOrOutput for E(entrada) deverá executar o processo da rotina MATA250. Se for S(saída) executar o processo da rotina MATA240. Diferente de E ou S, rejeitar a mensagem.
  • A tag InputOrOutput indica se é entrada ou saída. Com base nessa informações deverá buscar o tipo do movimento do cadastro PCPA109, folder MOVIMENTACOES. Se for Entrada usar o campo OE_VAR1. Se for Saída usar o campo OE_VAR2
  • Não terá a opção de estorno. Para realizar um processo de estorno deverá enviar a movimentação contrária, ou seja, para estornar uma entrada deverá enviar um movimento de saída.
  • Para a tag ProductionOrderNumber será validado se o conteúdo é uma ordem de produção (SC2), Se for OP gravar no campo SD3.D3_OP, caso contrário gravar no campo SD3.D3_DOC
  • Quando o chão de fábrica está em uso a rotina não permitirá realizar o movimento de entrada manual. Somente apontamento via chão de fábrica.

     

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
Obs.: Esta mensagem será gerada pelo PC-Factory e enviado ao Protheus.

 

MensagemTagDescriçãoTabela/CampoTipo
BusinessContentTypeCompanyIdEmpresa  
 BranchIdFilial  
 CompanyInternalIdInternalId da chave completa da empresa  
 InternalIdInternalId da transferência  
 NumberNumero da MovimentaçãoSD3.D3_NUMSEQCHAR(06)
 RegisterDateTimeData de Emissão da solicitaçãoSD3.D3_EMISSAODATE
TransferWarehouseType    
 InternalIdInternalId da transferência  
 EmissionDateData de EmissãoSD3.D3_EMISSAODATE
 ItemCodeFromItem/Produto OrigemSD3.D3_CODCHAR(15)
 ItemCodeToItem/Produto DestinoSD3.D3_CODCHAR(15)
 UnitOfMeasureFromUnidade de Medida OrigemSD3.D3_UMCHAR(02)
 UnitOfMeasureToUnidade de Medida DestinoSD3.D3_UMCHAR(02)
 QuantityQuantidadeSD3.D3_QUANTDEC(12,2)
 WarehouseCodeFromCódigo do Armazém de OrigemSD3.D3_LOCALCHAR(02)
 WarehouseCodeToCódigo do Armazém DestinoSD3.D3_LOCALCHAR(02)
 LotNumberFromNúmero do Lote de OrigemSD3.D3_LOTECTLCHAR(10)
 LotNumberToNúmero do Lote de DestinoSD3.D3_LOTECTLCHAR(10)
 SubLotNumberNúmero do SubLoteSD3.D3_NUMLOTECHAR(06)
 LotExpirationDateFromData de validade do Lote OrigemSD3.D3_DTVALIDDATE
 LotExpirationDateToData de validade do Lote DestinoSD3.D3_DTVALIDDATE
 AddressFromEndereço OrigemSD3.D3_LOCALIZCHAR(15)
 AddressToEndereço DestinoSD3.D3_LOCALIZCHAR(15)
 NumberSeriesNúmero de sérieSD3.D3_NUMSERICHAR(20)

 

Notas

  • Será registrado que a transferência teve origem via integração com PC-Factory. O campo SD3.D3_OBSERVA será gravado com o conteúdo "TOTVSMES"
  • Para as transferências será executada a rotina MATA261
  • Não terá a opção de estorno. Para realizar um processo de estorno deverá enviar a movimentação contrária, ou seja, para estornar uma transferência de X para Y deverá enviar um movimento de transferência de Y para X
 

 

EmissionDate

Limitações / Restrições Gerais

A integração contempla apenas o sistemas PCP Protheus. O módulo Chão de Fábrica SIGASCF e geração de ordens pelo APS não estão integrados. Cadastramentos via Fluig ( WorkFlow) ou rotinas não descritas nesse documento também não estão contemplados nessa versão.
A Build deve ser igual ou superior a 7.00.131227A e data 08/09/2014.

 

Situações comuns 

Possíveis situações problemáticas comuns que podem ocorrer durante o funcionamento da integração e como solucioná-los.

1) Quando uma mensagem é enviada do PCP Protheus para o PC-Factory, podem ocorrer situações em que o WebService não estará totalmente funcional. Nestes 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. 

 

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 , tstar 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.