Histórico da Página
Integração Datasul TOTVS MES
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 de 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.
Sistemas Envolvidos
- TOTVS DATASUL 12
- PC-FACTORY (PPI MULTITASK)
Integração
O objetivo da Integração PC Factory (software MES) X ERP Datasul é 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, ao que chamaremos a solução como um todo de simplesmente: TOTVS MES
Escopo
Pré-requisitos instalação/implantação/utilização
1. Datasul
Pré-requisitos de instalação da integração:
- Datasul versão 12.1.12.
- Módulo de produção e SFC implantados.
- Servidor de Web Service, disponibilizado dentro do EAR Datasul 12.1.6.
- Configuração de usuário de integração EAI.
Pré-requisitos de negócio:
A integração padrão atende movimentos de quantidades produzidas e horas reportadas, ou seja, não estão inclusos ajustes de requisições, as requisições necessitam ocorrer de forma automática no momento de reporte de acordo com pelo menos uma dos recursos abaixo:
- Alocação de material;
- Ordens de produção com linha do tipo serviço (requisição continuarão sendo feita dentro do produto TOTVS em momento diferente do reporte);
- Ajustes nas reservas das ordens de produção para que cada componente possua depósito e localização de requisição informado.
Além dos requisitos listados acima, somente são atendidas na integração TOTVS MES as ordens com política de reporte do tipo "Ordem" ou "Operação", ou seja, reportes por item no chão de fábrica não são suportados nesta fase do projeto.
ATENÇÃO - situações em que deve ser validar o processo utilizado pelo cliente.
a) PC-Factory não trata referência, logo é desaconselhado utilizar estes itens na integração (usar filtros na integração para evitar o uso dos mesmos CP0106 e CD7002). É possível utilizar itens controlados por referência para mensagens de Apontamento Produção, Requisição e Saldos, desde que o cliente não precise informar referência diferente das existentes como padrão no ERP. Já para a mensagem de Transferência entre depósitos, não é possível.
b) Ordens de produção com reporte por Item, não serão integradas, pois não existe apontamento por item suportada pelo PC-Factory.
c) Operações de Roteiro de Produção e Listas de Componentes não serão integrados, pois o PC-Factory não trabalha com processo variável de fabricação.
d) O PC-Factory precisa da informação de qual operação cada componente será consumido, neste caso o cliente terá que informar na estrutura dos produtos a serem integrados, e no caso de OPs já abertas, manutení-las antes da integração (carga inicial).
e) Para poder informar o consumo real na linha de Processo, deve ser enviado junto com a mensagem de apontamento de produção. E para consumir o padrão, deve ser retirada toda a tag <ListOfSupplyOrders>.
f) Lembramos que a responsabilidade do uso das informações de Estrutura e Operações é do PC-Factoty, pois o ERP somente tratará as Ordens de Produção que ele mesmo tenha criado. Sempre que forem alteradas informações destas rotinas, será enviada a mensagem “Upsert” com a lista completa, exceto quando não existir mais lista, que usará “Delete”.
g) O ERP para indicar um co-produto ou sobra durante a produção utiliza quantidades negativas em sua estrutura ou lista de componentes da Ordem de Produção. O PC-Factory não aceita valores negativos, por isto, elas serão ignoradas na integração pelo PC-Factory.
h) O ERP trabalha com dois tipos de parada: setup e não setup: quando a parada for de setup, pode utilizar a mesma mensagem de Reporte de Produção, do contrário, usar o próprio Reporte de Parada. Na integração TOTVS-MES somente fará uso do segundo.
i) O ERP com o PCP apenas, Ordens com tipo de reporte por Operação, também podem ser produzidas, informando apenas a quantidade produzida na última operação(conforme a FASE 1 da integração).
Agora poderá também ser informado o consumo real(requisição componentes) juntamente com a produção. Caso não seja informada, ficará sem a requisição(quando a linha for de processo). A mesma mensagem será também utilizada para estorno.
j) O refugo deve estar na mesma mensagem da produção, mesmo que seja para refugar toda a produção. Para o ERP se durante a produção identificou-se que produto resultante, é realmente um refugo(consumiu-se componentes e o acabado ficou inutilizável), nesta situação pode-se informar durante o processo produtivo a Quantidade total produzida, e também a quantidade refugada.
Exemplo: Produzidas 5000 peças
Refugadas 46 peças
--> Saldo 4054 peças
Obs.: estamos estudando a possibilidade de movimentação diretamente no Estoque(ERP) para a retirada de 46 peças, sem necessitar estornar todo o apontamento e refazê-lo com o refugo.
k) O ERP com o SFC, aceita apontamento de produção apenas de tempo, sem quantidade, o contrário, não.
l) Os apontamentos de MOB e GGF, podem ser indicados na mensagem de apontamento de produção, do contrário, não serão feitos pelo padrão. O PC-Factory fará uso das mensagens de apontamento de MOB e GGF, já existentes na fase 1.
m) Na integração com SFC, os tipos de reporte, quando a OP for da linha de Processo, observar para envio do consumo real e refugo, na operação correta, para evitar que seja feito o consumo pelo padrão. Atenção redobrada que caso se deseje o consumo real, ao ser enviado ao menos um componente consumido junto com o apontamento de produção, para não ser feito pelo padrão.
n) A mensagem utilizada para o envio de novo Lote será ItemStockLevel. Não serão enviadas quantidades.
o) Informar o tipo da linha de produção na ordem(Processo ou Serviço), para que o PC-Factory saiba quando pode devolver apenas as requisições, sem necessidade de apontamento da produção.
p) Tempo Máquina e Tempo Homem no ERP Datasul, são dois campos, no entanto o PC-Factory, possui apenas um, que pode receber ou tempo homem ou tempo máquina. Como o PC-Factory integra com dois de nossos ERPs (Datasul e Protheus), e para o Protheus o conceito de Tempo Homem é diferente do Datasul, foi necessário padronizarmos, para que o PC-Factory recebesse de ambos ERPs a mesma informação (tempo máquina foi o eleito). Sendo assim orientamos que no ERP os clientes tenham valor registrado no campo tempo máquina.
q) O PC-Factory não trabalha com rede-pert, e sempre segue a ordem de numeração das operações da ordem. Quando o módulo SFC estiver ativo, o tipo de reporte da Ordem for por Operação(ou por Ordem parametrizado para seguir rede-pert), deve ser corrigido no ERP a numeração das Operações(Engenharia e Ordem de Produção) para que siga a sequência da Rede-pert.
Ex.: Rede-pert de operações na Engenharia
Deverá ser corrigida para:
Demais recursos serão complementadas neste documento conforme liberação das próximas fases.
Instalação/Atualização
1. Servidor de Aplicação TOTVS (JBOSS)
A integração TOTVS x PPI-Multitask necessita de uma parametrização de qual usuário será utilizado para a integração durante a comunicação com o WebServices do TOTVS MES, essa configuração é importada das credenciais de login do framework metadados, localizada em datasul_framework.properties
Esse arquivo pode ser localizado em: %JBOSS_HOME%\server\<instancia>\conf\datasul\datasul_framework.properties
As seguintes linhas representam as credencias que necessitam ser informadas corretamente:
#+-------------------------------------------+
#| CONFIGURACOES METADADOS |
#+-------------------------------------------+<...>
java.naming.security.principal=<user>
java.naming.security.credentials=<password>
Também deverá ser parametrizado um role e user de integração no JBOSS, nos arquivos jbossws-roles.properties e jbossws-users.properties respectivamente, conforme exemplo:
Exemplo de arquivo jbossws-roles.properties:
# A sample roles.properties file for use with the UsersRolesLoginModule
eai=eai2allowed
Exemplo de arquivo jbossws-users.properties:
# A sample users.properties file for use with the UsersRolesLoginModule
eai=eai@123
Esses logins e senhas devem ser parametrizados na aplicação do PC-Factory.
O webservice disponibilizado para o TOTVS MES é encontrado através da URL: <hostname>:<porta>/mes-ws/MESService?wsdl
2. Datasul
Para ativação do TOTVS MES é necessário:
- Abrir o programa de Parâmetros do Controle da Produção - CP0106.
- Selecionar a Página 5.
- Na área de Integração TOTVS MES, marcar a opção Ativo.
- Informar a URL do WebService.
- Verificar a conectividade do WebService por meio do botão Testar WS.
- Informar a Fase Integração como "2 - PCP + SFC".
- Configurar os parâmetros da integração por meio do botão Parâmetros.
- Confirmar a ativação por meio do botão OK.
ATENÇÃO: enquanto ainda estiver parametrizando a integração, é importante deixar desmarcado a opção "Ativo", assim é possível Testar o WebService e também efetuar a Carga, sem que as funções que geram mensagens comecem já a gerá-las.
O botão de Testar WS verifica se é possível realizar a conexão com o WebService informado no campo URL do WebService. Este botão tem dois retornos:
- Teste realizado com sucesso.
- Conexão com o WebService MES Channel falhou.
O botão de Parâmetros abre o programa CP0106B que permite o cadastro de filtros para a integração de:
- Ordem de Produção:
- Linha de produção.
- Estabelecimento.
- Planejador.
- Item:
- Código Item
- Família Material
- Grupo Estoque
- Saldo Item:
- Código Item
- Família Material
- Grupo Estoque
- Estabelecimento
- Depósito
- Localização
- Espécie Documento
Pasta Ordem de Produção:
As situações a seguir exemplificam a utilização dos parâmetros.
Situação 1 - Poderá ser criado mais de um filtro para um mesmo campo. Por exemplo: somente as ordens criadas ou alteradas com os planejadores João ou José, estabelecimento ALM e linhas de produção 1 ou 2 serão enviadas para a PPI-Multitask.
Situação 2 - Todas as ordens de produção criadas e alteradas serão enviadas para a PPI-Multitask se todos os filtros estiverem cadastrados com *.
Situação 3 - somente as ordens de produção com estabelecimento 1 serão enviadas para a PPI-Multitask.
Situação 4 - se não existir filtro cadastrado, então nenhuma ordem de produção será enviada para a PPI-Multitask.
Situação 1:
Código do Campo | Descrição Campo |
Planejador | João |
Planejador | José |
Estabelecimento | ALM |
Linha de produção | 1 |
Linha de produção | 2 |
Situação 2:
Código do Campo | Descrição Campo |
Planejador | * |
Estabelecimento | * |
Linha de produção | * |
Situação 3:
Código do Campo | Descrição Campo |
Planejador | * |
Estabelecimento | 1 |
Linha de produção | * |
Um filtro poderá ser removido por meio do botão Remover no canto inferior direito do programa.
Pasta Item:
A exemplo do que acontece com a pasta Ordem de Produção, esta pasta também aceita o asterisco "*" para considerar todos.
Os dados registrados nesta pasta, filtrarão os registros de Item.
As funções de estrutura (EN0105, e EN0109) sempre que alterarem algum componente da estrutura de um item, filtrarão pelos campos informados na pasta Item e enviarão a estrutura completa do item.
Ex.:
Item | Família | Grupo Estoque |
---|---|---|
Caneta | Escritório | Venda |
Corpo | Escritório | Geral |
Tampa | Plásticos | Plásticos |
Tubo | Plásticos | Plásticos |
Carga | ProdutoProcesso | Geral |
Ponta | Comprado | Geral |
Tinta | Comprado | Geral |
Apenas o filtro de Família foi indicado (família = "Escritório"), nesta caso quando for alterado algum componente da Caneta, como este item é da família indicada, será gerada uma mensagem com todos os seus componentes (Corpo e Tampa) mesmo que a família dos componentes não seja a mesma.
Pasta Lote Item:
A exemplo do que acontece com a pasta Ordem de Produção, esta pasta também aceita o asterisco "*" para considerar todos.
Os dados registrados nesta pasta, filtrarão os registros de Movimento que criaram um novo lote. Será enviado apenas as informações de criação deste novo lote. Quantidades não serão enviadas, por causa do risco de envio da mensagem XML de Saldo, em que o movimento foi desfeito por uma transação.
Pasta Estr/Oper:
A exemplo do que acontece com a pasta Ordem de Produção, esta pasta também aceita o asterisco "*" para considerar todos.
Os dados registrados nesta pasta, filtrarão os registros de Estrutura e Operações.
Gerar Log mensagens XML da integração TOTVS MES é necessário:
- Abrir o programa de Parâmetros do Controle da Produção - CP0106.
- Selecionar a Página 5.
- Na área de Integração TOTVS MES, pressionar o botão Log XML.
- Na tela que abre pressionar o botão Ativa.
- A partir deste momento sempre que houver algum envio de XML a partir do ERP, será gerada a mensagem no diretório informado.
ATENÇÃO: para desativar efetuar o mesmo processo, porém o botão estará como Desativa. Somente ativar o log, para validação de mensagem, depois de validada, desativar para que não fique consumindo recurso desnecessariamente.
Controle de Versão
O grupo TOTVS representado por suas marcas 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
1.a Fase - Integração com Controle de Produção
As seguintes transações usadas no TOTVS MES:
Método | ID | Descrição | Origem | Destino | XSD (versões podem variar) |
Cadastros | 01 | Item | Totvs | PPI-Multitask | Item_3_001.xsd |
02 | Depósito | Totvs | PPI-Multitask | Warehouse_1_000.xsd | |
03 | Grupo de Máquina | Totvs | PPI-Multitask | WorkCenter_1_000.xsd | |
04 | Ordem de Produção | Totvs | PPI-Multitask | ProductionOrder_2_003.xsd | |
Processos | 05 | Apontamento de Produção | PPI-Multitask | Totvs | ProductionAppointment_1_001.xsd |
2.a Fase - Integração com Chão de Fábrica
Método | ID | Descrição | Origem | Destino | XSD (versões podem variar) |
Cadastros
| 03 | Localização/Endereço | ERP Datasul | PPI-Multitask | AddressStock_1_000.xsd |
04 | Centro de Trabalho | ERP Datasul | PPI-Multitask | Machine_1_000.xsd | |
05 | Motivo de Parada | ERP Datasul | ERP Datasul | StopReason_1_000.xsd | |
06 | Motivo de Refugo | ERP Datasul | ERP Datasul | WasteReason_1_000.xsd | |
14 | Estrutura de Produto | ERP Datasul | PPI-Multitask | ItemStructure_1_001.xsd | |
15 | Roteiro de Operações | ERP Datasul | PPI-Multitask | ItemScript_1_000.xsd | |
16 | Ferramenta | ERP Datasul | PPI-Multitask | Resource_1_000.xsd | |
17 | Operador | ERP Datasul | PPI-Multitask | Resource_1_000.xsd | |
Saldos | 01 | Solicitação de Saldo Item | PPI-Multitask | ERP Datasul | StockLevel_2_000.xsd |
18 | Envio de Saldo Item | ERP Datasul | PPI-Multitask | ItemStockLevel_1_000.xsd | |
Movimentos | 02 | Transferência de Depósito | PPI-Multitask | ERP Datasul | TransferWarehouse_1_003.xsd |
08 | Ordem de Produção/Alocação PCP | PPI-Multitask | ERP Datasul | ProductionOrder_2_003.xsd | |
09 | Ordem de Produção/Alocação SFC | PPI-Multitask | ERP Datasul | ProductionOrder_2_003.xsd | |
11 | Requisição Componente | PPI-Multitask | ERP Datasul | MovementsInternal_1_001.xsd | |
Apontamentos | 10 | Reporte de Parada | PPI-Multitask | ERP Datasul | StopReport_1_001.xsd |
12 | Reporte de Produção via PCP | PPI-Multitask | ERP Datasul | ProductionAppointment_1_001.xsd | |
13 | Reporte de Produção via SFC | PPI-Multitask | ERP Datasul | ProductionAppointment_1_001.xsd |
Fluxo das Informações
A integração ocorrerá no momento de cadastro ou alteração de cada transação, onde será criado um arquivo XML no diretório “<Pasta temporária de trabalho>\INTEGR_MES” com as informações que foram enviadas. O nome do arquivo XML iniciará com OK, ERROR ou PEND, seguido pela transação, hora/minuto/segundo e um código identificador.
Exemplos de arquivos XML gerados:
Sucesso: OK_Item_14_55_38_<código do item>.xml
Erro: ERROR_Item_14_46_38_<código do item>.xml
Pendente: PEND_ProductionOrder_15_07_38_<número da ordem>.xml
Fluxo das informações das transações:
- Item, depósito e grupo de máquina: no momento da criação ou alteração de um item no programa CD0204, de um depósito no programa CD0601 ou de um grupo de máquina no programa CD0111, o programa irá verificar se a integração está ativa e, se estiver ativa, irá efetuar o envio do cadastro para a PPI-Multitask. Se não ocorrer erro o cadastro não apresentará nenhuma mensagem, se ocorrer erro uma mensagem será exibida questionando se deseja criar uma pendência de envio no programa CD2900. Em ambas as situações, um arquivo XML será gerado na pasta temporária de trabalho.
- 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 (eliminação, alocação, requisição), o programa irá verificar se a integração está ativa e, se estiver ativa, irá efetuar o envio do cadastro para a PPI-Multitask, com exceção para as ordens criadas pelo MRP e/ou APS. Se não ocorrer erro o cadastro não apresentará nenhuma mensagem, se ocorrer erro uma mensagem será exibida e uma pendência de envio será criada no programa CD2900. Em ambas as situações um arquivo XML será gerado na pasta temporária de trabalho.
Ordens criadas pelo MRP e/ou APS não são integradas automaticamente, estas geram pendências para execução posterior pelo programa CD2900.
Os programas afetados pela integração são apresentados na tabela abaixo:
Transação | Programa |
Item | CD0204 |
Depósito | CD0601 |
Grupo de máquina | CD0111 |
Ordem de Produção | CP0301 / CPAPI001 |
Localização de Estoque | CE0105 |
Estrutura Item | EN0105 |
Onde se Usa Item | EN0109 |
Centro de Trabalho | SF0104 |
Ferramentas | CD0124 |
Operador | SF0108 |
Processo de Fabricação (Operações) | EN0507 |
Motivo de Parada | BOMF510 (SF0106) |
Motivo de Refugo | SF0107 |
Programa de gerenciamento de pendências CD2900 - este programa tem por função administrar as pendências/exceções referentes à integração que são criadas quando ocorre um erro no envio. 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, usuário e tipo de pendência.
Programa de Carga inicial CD7002 - permite o envio das informações do item, depósito, grupo de máquina e ordem de produção e tem o objetivo de efetuar uma carga inicial no momento da implantação do PC Factory, ou então para sincronizar os dois produtos. Cada transação disponibiliza filtros para que o usuário decida o que quer enviar para a PPI-Multitask, esses filtros são apresentados conforme a transação escolhida.
Programa de cadastro de-para CD7003 - permite o cadastro da relação entre o estabelecimento do ERP Datasul e o estabelecimento da PPI-Multitask. Possuem os campos tipo de conteúdo, conteúdo ERP e conteúdo MES.
Cadastros
Transação Item: Item_3_001.xsd
Identificador da Mensagem: Item
Versão: 3_001
Módulo Datasul: Engenharia
Tipo de Envio: Síncrona
Mensagem Padrão | DATASUL | ||
Tabela | Campo | ||
Code | item | it-codigo | TBLInProduct.Code |
NAME | item | desc-item | TBLInProduct.Name |
Active | item | cod-obsoleto | TBLInProduct.FlgEnable |
BranchID | item | cod-estabel | TBLInProduct.PlantCode |
ComercialFamilyCode | item | fm-cod-com | |
ComercialFamilyDescription | fam-comerc | descricao | |
CompanyId | estabelec | ep-codigo | |
CompanyInternalId | item | cod-estabel | |
ControlType | item | tipo-contr | |
DeployDate | item | data-implant | |
Detail | Item | narrativa | |
EconomicLot | item | lote-economi | |
FamilyCode | item | fm-codigo | TBLInProduct.FamilyProductCode |
FamilyDescription | familia | descricao | TBLInProduct.FamilyProductName |
FamilyClassificationCode | familia | idi-classif-item | |
FormulaType | item | tipo-formula | |
FractionalQuantity | item | fraciona | |
GrossWeight | item | peso-bruto | |
InternalId | item | it-codigo | |
IsScrapFiscalPrice | item | log-refugo-preco-fisc | |
IsScrapStockControl | item | log-control-estoq-refugo | |
MinimumLot | item | lote-minimo | |
MultiplicationFactorValue | item | fator-conver | TBLInProduct.Unit2Factor |
MultipleLot | item | lote-multipl | |
NetWeight | item | peso-liquido | |
ObtainingType | item | compr-fabric | |
PerMillion | item | per-ppm | |
QualityControl | item | contr-qualid | |
ReleaseDate | item | data-liberac | |
ScrapItemCode | item | cod-item-refugo | |
ScrapItemQuantity | item | val-relac-refugo-item | |
StandardWarehouseCode | item | deposito-pad | |
StandardWarehouseDescription | deposito | nome | |
StockControlType | item | tipo-con-est | |
StockGroupCode | item | ge-codigo | |
StockGroupDescription | grup-estoque | descricao | |
UnitOfMeasureCode | item | un | TBLInProduct.Unit1code |
Transação Depósito: Warehouse_1_000.xsd
Identificador da Mensagem: Warehouse
Versão: 1_000
Módulo Datasul: Produção
Tipo de Envio: Síncrona
Mensagem Padrão | DATASUL | ||
Tabela | Campo | ||
Code | deposito | cod-depos | TBLInWarehouse.Code |
Description | deposito | nome | TBLInWarehouse.Name |
Type | deposito | ind-tipo-dep | |
IsFinalItem | deposito | ind-acabado | |
IsQualityControl | deposito | ind-dep-cq | |
IsProcess | deposito | ind-processo | |
IsWaste | deposito | ind-dep-rej | |
IsRecycled | deposito | log-reciclagem | |
IsBalanceAvailable | deposito | cons-saldo | |
WarehouseClassification | deposito | char-1 |
Transação Grupo de máquina: WorkCenter_1_000.xsd
Identificador da Mensagem: WorkCenter
Versão: 1_000
Módulo Datasul: Produção
Tipo de Envio: Síncrona
Mensagem Padrão | DATASUL | |
Tabela | Campo | |
Code | grup-maquina | gm-codigo |
CalendarCode | grup-maquina | cd-calen |
CalendarDescription | calen-gener | descricao |
CapacityUnit | grup-maquina | cod-unid-capac |
CostCenterCode | grup-maquina | cc-codigo |
Description | grup-maquina | descricao |
HasAlternative | grup-maquina | log-controle-alt |
IsSetup | grup-maquina | log-possui-prepar |
IsReported | grup-maquina | log-pto-control |
LoadQuantity | grup-maquina | qtd-carga-batch |
MODReportType | grup-maquina | ind-reporte-mod |
OperationOverlap | grup-maquina | log-overlap |
ProcessorType | grup-maquina | ind-tip-ctrab |
ProductionAreaCode | grup-maquina | cod-area-produc |
ProductionAreaDescription | area-produc | des-area-produc |
QualityControlReport | grup-maquina | ind-reporte-cq |
ReportOperationTime | grup-maquina | log-reporte-tempo-operac |
TimeTreatmentType | grup-maquina | ind-tempo-operac |
Type | grup-maquina | tipo |
UnitsPerHour | grup-maquina | nr-up-hora |
UsesExtraHour | grup-maquina | log-utiliza-hext |
Transação Ordem de Produção: ProductionOrder_2_003.xsd
Identificador da Mensagem: ProductionOrder
Versão: 1_003
Módulo Datasul: Produção
Tipo de Envio: Síncrona
Number | ord-prod | nr-ord-produ |
AbbreviationProviderName | ord-prod | nome-abrev |
AllocationType | ord-prod | sit-aloc |
BusinessUnitCode | ord-prod | cod-unid-negoc |
CustomerGroupCode | ord-prod | cod-gr-cli |
CustomerRequestCode | ord-prod | nr-pedido |
DeliveryNumber | ord-prod | nr-entrega |
FamilyCode | item | fm-codigo |
FamilyDescription | familia | descricao |
GrossWeight | item | peso-bruto |
ItemCode | ord-prod | it-codigo |
ItemDescription | item | desc-item |
LaborCalculationType | ord-prod | calc-cs-mob |
LaborCostType | ord-prod | custeio-prop-mob |
LaborType | ord-prod | reporte-mob |
LastPertNumber | ord-prod | nr-ult-seq |
LotCode | ord-prod | lote-serie |
MaterialCalculationType | ord-prod | calc-cs-mat |
MaterialCostType | ord-prod | custeio-prop-mat |
MaterialListCode | ord-prod | cod-lista-compon |
NetWeight | item | peso-liquido |
OverheadCalculationType | ord-prod | calc-cs-ggf |
OverheadCostType | ord-prod | custeio-prop-ggf |
OverheadType | ord-prod | reporte-ggf |
PertRequestNumber | ord-prod | nr-sequencia |
Priority | ord-prod | prioridade |
ProductionLineCode | ord-prod | nr-linha |
ProductionLineDescription | lin-prod | descricao |
Quantity | op-sfc | qtd-op |
ReferenceCode | ord-prod | cod-refer |
ReportOrderType | ord-prod | rep-prod |
ReportQuantity | op-sfc | qtd-reptda-sfc |
ScrapItemCode | ord-prod | cod-item-refugo |
ScrapItemValue | ord-prod | val-relac-refugo-item |
ScrapQuantity | op-sfc | qtd-refgda-sfc |
ScriptCode | ord-prod | cod-roteiro |
SiteCode | ord-prod | cod-estabel |
StatusOrderType | ord-prod | estado |
StockGroupCode | item | ge-codigo |
StockGroupDescription | grup-estoque | descricao |
Type | ord-prod | tipo |
UnitOfMeasureCode | ord-prod | un |
WarehouseCode | ord-prod | cod-depos |
PlannerUser | ord-prod | cd-planejad |
StatusType | ord-prod | estado |
EndOrderCPDate | op-sfc | dat-fim-op-cp |
ApprovedQuantity | op-sfc | qtd-aprov-sfc |
AuxiliarItemCode | op-sfc | cod-item-aux-sfc |
EndLaterDateTime | op-sfc | dat-fmt |
EndOrderDateTime | op-sfc | dat-fim-op |
EndOrderQuantity | op-sfc | qtd-segs-fim-op |
IsItemCoproduct | op-sfc | log-possui-coprodut |
IsStatusOrder | op-sfc | log-reporte-fecha-op |
MaximumQuantity | op-sfc | qtd-op-max |
MinimumQuantity | op-sfc | qtd-op-min |
ReleaseOrderDate | op-sfc | dat-liber-op |
RequestOrderCode | op-sfc | cod-ped-op |
ReworkQuantity | op-sfc | qtd-retrab-sfc |
StartEarlierDateTime | op-sfc | dat-imc |
StartOrderCPDate | op-sfc | dat-inic-op-cp |
StartOrderDateTime | op-sfc | dat-inic-op |
StartOrderQuantity | op-sfc | qtd-segs-inic-op |
TimeReleaseQuantity | op-sfc | qtd-segs-liber-op |
ListOfActivityOrders/ActivityCode |
|
|
ListOfActivityOrders/ActivityControlCode | oper-ord | pto-controle |
ListOfActivityOrders/ActivityDescription | oper-ord | descricao |
ListOfActivityOrders/ActivityID |
| |
ListOfActivityOrders/ActivityItemValue | oper-ord | val-operac-item |
ListOfActivityOrders/ActivityQuantity | oper-ord | qtd-previs-operac |
ListOfActivityOrders/ActivityType | oper-ord | tipo-oper |
ListOfActivityOrders/AlternativeActivityCode | oper-ord | op-altern |
ListOfActivityOrders/ApprovedQuantity | oper-ord | qtd-aprov-sfc |
ListOfActivityOrders/EndLaterDateTime | oper-ord | dat-fmt-operac |
ListOfActivityOrders/StartPlanDateTime | split-operac | dat-progda-inic |
ListOfActivityOrders/EndPlanDateTime | split-operac | dat-progda-fim |
ListOfActivityOrders/EndRealDateTime | oper-ord | dt-fimreal |
ListOfActivityOrders/IsActivityEnd | oper-ord | log-operac-final |
ListOfActivityOrders/IsActivityStart | oper-ord | log-operac-inic |
ListOfActivityOrders/IsLastReport | oper-ord | log-fecha-operac |
ListOfActivityOrders/ItemCode | oper-ord | it-codigo |
ListOfActivityOrders/ItemDescription | item | desc-item |
ListOfActivityOrders/LaborCode | oper-ord | cd-mob-dir |
ListOfActivityOrderTools/ToolCode | oper-ord | cod-ferram |
LoadQuantity | oper-ord | qtd-carga-batch |
MachineCode | oper-ord | gm-codigo |
MaterialItemValue | oper-ord | val-compon-item |
MinimumLotQuantity | oper-ord | lote-min |
MultipleLotQuantity | oper-ord | lote-multiplo |
OrderReferenceNumber | oper-ord | nr-ord-refer |
PercentageOverlapValue | oper-ord | fator-sobrep |
PercentageScrapValue | oper-ord | refugo-op |
PercentageValue | oper-ord | proporcao |
ProductionOrderNumber | oper-ord | nr-ord-produ |
ProductionQuantity | oper-ord | qt-produzida |
ReportQuantity | oper-ord | qtd-reptda-sfc |
ResourceQuantity | oper-ord | numero-homem |
ReworkQuantity | oper-ord | qtd-retrab-sfc |
ScrapItemCode | oper-ord | cod-item-refugo |
ScrapItemValue | oper-ord | val-relac-refugo-item |
ScrapQuantity | oper-ord | qtd-refgda-sfc |
ScriptCode | oper-ord | cod-roteiro |
StandardLotQuantity | oper-ord | lote-padrao |
StartEarlierDateTime | oper-ord | dat-imc-operac |
StartRealDateTime | oper-ord | dt-inireal |
StatusType | oper-ord | estado |
TimeMachine | oper-ord | tempo-maquin |
TimePostprocessing | oper-ord | qtd-tempo-pos-proces |
TimeResource | oper-ord | tempo-homem |
TimeSetup | oper-ord | tempo-prepar |
TreatmentTimeType | oper-ord | ind-tempo-operac |
UnitActivityCode | oper-ord | cod-un-operac |
UnitItemNumber | oper-ord | nr-unidades |
UnitTimeType | oper-ord | un-med-tempo |
UsedCapacity | oper-ord | qtd-capac-operac |
WorkCenterCode | oper-ord | gm-codigo |
WorkCenterDescription | grup-maquina | descricao |
ListOfMaterialOrders/ActivityCode | reservas | op-codigo |
ListOfMaterialOrders/FatherItemCode | reservas | item-pai |
ListOfMaterialOrders/FatherItemDescription | item-2 | desc-item |
ListOfMaterialOrders/LocationCode | reservas | cod-localiz |
ListOfMaterialOrders/LotCode | reservas | lote-serie |
ListOfMaterialOrders/MaterialCode | reservas | it-codigo |
ListOfMaterialOrders/MaterialDate | reservas | dt-reserva |
ListOfMaterialOrders/MaterialDescription | item | desc-item |
ListOfMaterialOrders/MaterialID |
| iMaterialCount |
ListOfMaterialOrders/MaterialListCode | reservas | cod-lista-compon |
ListOfMaterialOrders/MaterialQuantity | reservas | quant-orig |
ListOfMaterialOrders/OrderReferenceNumber | reservas | nr-ord-refer |
ListOfMaterialOrders/ProductionOrderNumber | reservas | nr-ord-produ |
ListOfMaterialOrders/ReferenceCode | reservas | cod-refer |
ListOfMaterialOrders/ReportQuantity | reservas | quant-atend |
ListOfMaterialOrders/ScriptCode | reservas | cod-roteiro |
ListOfMaterialOrders/StatusType | reservas | estado |
ListOfMaterialOrders/UnitOfMeasureCode | reservas | un |
ListOfMaterialOrders/WarehouseCode | reservas | cod-depos |
ListOfMaterialOrders/RequestType | lin-prod.sum-requis | Identifica se a requisição pode ser feita separadamente do reporte da produção, quando enviado: Datasul - identifica o tipo de linha de produção utilizado (1-Serviço, 2 - Processo) Protheus - identifica o tipo de apropriação do componente (1-Direta, 2-Indireta) |
ListOfPertOrders/ActivityCode | pert-ordem | op-codigo |
ListOfPertOrders/ItemCode | pert-ordem | it-codigo |
ListOfPertOrders/NextActivityID | pert-ordem | num-operac-suces |
ListOfPertOrders/PercentageOverlapValue | pert-ordem | overlap |
ListOfPertOrders/PreviousActivityCode | pert-ordem | op-predec |
ListOfPertOrders/PreviousActivityID | pert-ordem | num-operac-predec |
ListOfPertOrders/PreviousItemCode | pert-ordem | it-predec |
ListOfPertOrders/PreviousScriptCode | pert-ordem | rot-predec |
ListOfPertOrders/ProductionOrderNumber | pert-ordem | nr-ord-produ |
ListOfPertOrders/ScriptCode | pert-ordem | cod-roteiro |
ListOfPertOrders/TimeTransport | pert-ordem | transporte |
ListOfQuotaActivity/ActivityID | split-operac.num-operac-sfc | Código Operação SFC |
ListOfQuotaActivity/QuotaActivityID | split-operac.num-split-operac | Nr. do split |
ListOfQuotaActivityTools |
|
|
ListOfAllocatedMaterial.WarehouseCode | aloca-reserva | cod-depos |
ListOfAllocatedMaterial.LotCode | aloca-reserva | lote-serie |
ListOfAllocatedMaterial.LotDueDate | lote | dt-validade |
ListOfAllocatedMaterial.LocationCode | aloca-reserva | cod-localiz |
ListOfAllocatedMaterial.ActivityCode | aloca-reserva | op-codigo |
ListOfAllocatedMaterial.ScriptCode | aloca-reserva | cod-roteiro |
ListOfAllocatedMaterial.AllocationQuantity | aloca-reserva.quant-aloc quando não usa controle de potência, senão usa aloca-reserva.qt-aloc-lote | Quantidade Alocada (Quantidade no ERP, deverá verificar se o tipo é AllocationType 1-Soma, 2-Diminui, 3-Absoluto) |
ListOfAllocatedMaterial.AllocatedMaterialAllocationType | 3 | Como esta mensagem pode ser utilizada tanto para Alocação, quanto para Desalocação, informar o tipo torna a decisão do que fazer com a quantidade mais rápida. 1-Soma, 2-Diminui, 3-Absoluto Ex.: Caso já tenha sido alocado 50 unidades do componente previsto na OP, e seja necessário desalocar uma parte, a mensagem poderá vir de duas formas. 40 unidades com Tipo 2, fará com que seja desalocada 40 unidades, restando apenas 10 unidades ainda alocadas na OP. 10 unidades com tipo 3, fará com que seja desalocada 40 unidades, restando exatamente 10 unidade ainda alocadas na OP. |
Transação 03 – Localização/Endereço
Cada criação de localização no ERP, gerará mensagem para integração. Alterações e eliminação não serão tratadas.
Transação 04 – Centro de Trabalho – Machine
Importante observar os campos IsSetup(Possui Preparação) e LaborType (Reporta MOD), pois no apontamento da produção o primeiro exigirá informar o tempo da preparação e Ferramenta(caso parametrizado) e no segundo exigirá Operador ou Equipe, caso assim parametrizado(1=Nao Reporta;2=Operador;3=Equipe).
Soluções:
Preparação - No ERP não exigir preparação, ou a mensagem recebida deve enviar os tempos de preparação junto com o apontamento(ProductionAppointment)
Reporta MOD (Datasul)– No ERP não existir lista de especialidade ligada a máquina(SF0104), assim qualquer operador ligado a mesma área de produção, pode ser informado na mensagem de apontamento.
Reporta MOD (Protheus)– No ERP não existir lista de recurso ligada a máquina(SFC----), somente os recursos da lista poderão ser informados. Assim a mensagem de apontamento terá que informá-lo.
Tipo de Envio: Síncrona
Mensagem Padrão | DATASUL | ||
campo | Descrição | ||
Mensagem | Campo Datasul | Descrição | Campo PC-Factory |
Code | ctrab.cod-ctrab | Código Máquina | TBLInResource.code |
Description | ctrab.des-ctrab | Descrição Máquina | TBLInResource.Name + TBLInResource.Nickname |
WorkCenterCode | ctrab.gm-codigo | Código Centro Trabalho | TBLInResource.ManagerGrpCode |
WorkCenterDescription | grup-maquina.descrição | Descrição Centro Trabalho | TBLInResource.WorkCenterDescription |
ProcessorType | ctrab.ind-tip-ctrab | Tipo Processamento | |
LaborType | ctrab.ind-reporte-mod | Tipo MOD | |
OperatorMachineQuantity | ctrab.num-operador-ctrab | Quantidade Operador Máquina | |
SimultaneousActivityQuantity | ctrab.num-operac-simult | Quantidade Operações Simultaneas | |
IsSetup | ctrab.log-possui-prepar | Possui Preparação | |
IsControlPert | ctrab.log-consid-event-ant | Considera Evento Anterior | |
IsReportEvent | ctrab.log-reporte-contador | Reporta Contador |
Transação 08 e 09 – Ordem de Produção
Mensagem será disparada para criação:
Sem SFC implantado na criação da OP. (Transação 08)
Com SFC implantado somente na liberação da OP (Transação 09)
Mensagem será disparada na alteração:
Do split (alocação de split, divisão, etc) (Transação 09)
Da OP (cabeçalho, reservas, operações, etc) (Transação 08 e 09)
Alocação de reserva da ordem(tanto manual, quanto automática) – OBS: somente previsto na etapa 3
ATENÇÃO: Ordens com tipo de Reporte por Item, não serão integradas, logo não terão mensagens para reporte.
Informar o tipo da linha de produção na ordem(Processo ou Serviço), para que o TOTVS-MES saiba quando pode devolver apenas as requisições, sem necessidade de apontamento da produção.
Transação 14 – Estrutura de Produto
Quando o item estiver relacionado a uma ou mais listas de componentes, não será integrada a estrutura.
Logo apenas os componentes ligados aos itens serão integrados.
ATENÇÃO: o PC-Factory não trata referência, logo é desaconselhado utilizar estes itens na integração.
Campo XSD | Campo ERP | Descrição | Campo PC-Factory |
ItemCode | estrutura.it-codigo | Código do Item Pai | TBLInWOHD.ProductCode TBLInWOHD.WOCode |
ItemAmount | estrutura.qtd-item | Quantidade do Item Pai | TBLInWOHD.TotalQTY |
ItemSequence | estrutura.sequencia | Sequência de montagem do componente | TBLInBillMat.BillMatExtCode |
ItemComponentCode | estrutura.es-codigo | Código do Item Componente | TBLInBillMat.ProductCode |
InitialDate | estrutura.data-inicio | Data em que o componente passa a ser válido na estrutura | TBLInWOHD.DtPlanStart |
FinalDate | estrutura.data-termino | Data em que o componente deixa de ser válido na estrutura | TBLInWOHD.DtPlanEnd |
IsGhostMaterial | estrutura.fantasma | Indica se a relação item x componente é fantasma ou não | |
ItemComponentAmount | estrutura.qtd-compon | Quantidade do Item Componente | |
ItemComponentProportion | estrutura.proporcao | Indica a proporção de uso de um componente | |
LossFactor | estrutura.fator-perda | Fator de perda do componente em relação a quantidade usada | |
ScriptCode | estrutura.cod-roteiro | Código Roteiro - Este campo não precisa ser enviado nunca, pois não será integrado roteiro de operação. Deve apenas validar que o campo estrutura.cod-roteiro não tenha informação, pois caso tenha informação, não será enviado também o campo abaixo "ActivityCode". | TBLInWOHD.ExtCode |
ActivityCode | estrutura.op-codigo | Código Operação | TBLInWodet.Code |
Transação 15 – Roteiro Operações
Quando o item estiver relacionado a um ou mais roteiros de fabricação, não será integrada a operação.
Logo apenas as operações ligadas aos itens serão integradas.
Será integrado também a Rede-Pert das Operações.
ATENÇÃO: lembramos que a responsabilidade do uso destas informações é do TOTVS MES, pois o ERP somente tratará as Ordens de Produção que ele mesmo tenha criado. Sempre que forem alterados alguma informação destas rotinas, será enviada a mensagem “Upsert” com a lista completa, exceto quando não existir mais lista, que usará “Delete”.
Campo XSD | Campo ERP | Descrição | |
ItemCode | operacao.it-codigo | Código Item | TBLInWOHD.ProductCode TBLInWOHD.WOCode |
ItemDescription | item.desc-item | Descrição Item | |
ScriptCode | operacao.cod-roteiro | Código Roteiro - Este campo não precisa ser enviado nunca, pois não será integrado roteiro de operação. | |
ScriptDescription | rot-fabric.descricao | Descrição Roteiro | |
ListOfActivity | |||
ActivityCode | operacao.op-codigo | Código Operação | TBLInWodet.Code |
ActivityDescription | operacao.descricao | Descrição Operação | TBLInWodet.Name |
MachineCode | Código Máquina | TBLInWodet.Resource | |
WorkCenterCode | operacao.gm-codigo | Código Centro de Trabalho | TBLInWodet.ManagerGrpCode |
ActivityType | operacao.tipo-oper | Tipo Operação | |
InitialDate | operacao.data-inicio | Data Início | TBLInWodet.DtPlanStart |
FinalDate | operacao.data-termino | Data Fim | TBLInWodet.DtPlanEnd |
PercentageScrapValue | operacao.refugo-op | % Refugo | |
PercentageValue | operacao.proporcao | Proporção | |
UnitItemNumber | operacao.nr-unidades | Unidades | |
TimeResource | operacao.tempo-homem | Tempo Recurso | TBLInWodet. StdSpeed |
TimeMachine | operacao.tempo-maquin | Tempo Máquina | TBLInWodet. StdSpeed |
TimeSetup | operacao.tempo-prepar | Tempo Preparação | TBLInWodet. SetUpTime |
UnitTimeType | operacao.un-med-tempo | Tipo Unidade Tempo | TBLInWodet. StdSpeedFormat |
ResourceQuantity | operacao.numero-homem | Quantidade Recurso | |
UnitActivityCode | operacao.cod-un-operac | Código Unidade Operação | |
ActivityItemValue | operacao.val-operac-item | Relação Operação/Item | |
ListOfPertOrders | |||
NextActivityID | rede-pert.num-id-operacao-sucess | ID Operação Sucessora | |
ActivityCode | rede-pert.op-codigo | Código Operação | |
PreviousActivityID | rede-pert.num-id-operacao-predec | ID Operação Predecessora | |
PreviousActivityCode | rede-pert.op-predeces | Código Operação Predecessora | |
TimeTransport | rede-pert.transporte | Tempo Transporte | |
PercentageOverlapValue | rede-pert.overlap | % Overlap | |
OverlapQuantity | rede-pert.qtd-overlap | Quantidade Overlap |
Transação 16 – Ferramenta
Quando o item estiver relacionado a u
Tipo de Envio: Síncrona
Mensagem Padrão | DATASUL | ||
campo | Descrição | ||
Mensagem | Campo Datasul | Descrição | Campo PC-Factory |
Code | ferr-prod.cod-ferr-prod | Código Recurso | TBLTooling.Code |
Type | 2 | Tipo Recurso | |
Name | ferr-prod.des-ferr-prod | Nome Recurso | TBLTooling.Name |
UnitCycleQuantity | ferr-prod.un-ciclo | Unidades Ciclo | |
ToolCode | ferr-prod.it-codigo | Codigo Item Ferramenta | |
ToolDescription | item.desc-item | Descricao Item Ferramenta | |
StartExpirationDate | Data Atual | Não usado no Datasul, mas PPI precisa | TBLTooling.Period |
EndExpirationDate | Data Atual | Não usado no Datasul, mas PPI precisa | TBLTooling.Period |
Transação 17 – Operador
Quando o item estiver relacionado a u
Tipo de Envio: Síncrona
Mensagem Padrão | DATASUL | ||
campo | Descrição | ||
Mensagem | Campo Datasul | Descrição | Campo PC-Factory |
Code | operador.cod-operador | Código Recurso | |
Type | 1 | Tipo Recurso | |
Name | operador.nom-operador | Nome Recurso | |
ProductionAreaCode | operador.cod-area-produc | Codigo Area Producao | |
ProductionAreaDescription | area-produc.des-area-produc | Descricao Area Producao | |
ProductionShiftNumber | operador.num-turno | Numero Turno | |
LaborCode | operador.cd-mob-dir | Codigo Mao de Obra Direta | |
StartExpirationDate | operador.dat-inic-valid | Data Inicio Validade | |
EndExpirationDate | operador.dat-fim-valid | Data Fim Validade |
Processos
Saldos
Movimentos
Apontamento
1.Saldos
Transação 01 – Solicitação de Saldo Item
Solicitação de Saldo Item, poderá ser realizada informando apenas o Item, o Item e Depósito, ou completo por Item Estabelecimento / Referência / Depósito / Lote / Localização, porém o retorno será sempre no nível mais baixo de estoque(completo Item / Estabelecimento / Referência / Depósito / Lote / Localização), ou seja, não apresentará quantidades sumarizadas, por item ou por item/depósito e sim uma lista de saldos.
ATENÇÃO: o PC-Factory não trata referência, logo quando recebe a lista de saldos deverá somar as quantidades do item que tiver mais de uma referência.
Transação 18 – Envio de Lote Item
Somente na criação de um novo lote é que poderá ser gerada a mensagem para integração. As regras para seleção de quais saldos serão integrados estão parametrizadas no CP0106B(parâmetros de integração).
Neste caso, somente itens controlados por lote é que poderão ser integradas.
No Datasul, não será possível enviar quantidades, pois o XML é gerado antes do término de transações que efetivam na base de dados.
2. Movimentos
Transação 02 – Transferência de Depósito
O ERP recebe uma solicitação de transferência, e de uma única mensagem serão gerados dois movimentos(saída e entrada).
ATENÇÃO: o PC-Factory não trata referência, logo é desaconselhado utilizar estes itens na integração.
Transação 08 e 09 – Ordem de Produção
Mensagem será disparada na alteração:
Alocação de reserva da ordem(tanto manual, quanto automática)
Como esta mensagem pode ser utilizada tanto para Alocação, quanto para Desalocação, informar o tipo torna a decisão do que fazer com a quantidade mais rápida.
1-Soma, 2-Diminui, 3-Absoluto (por padrão o Datasul sempre enviará 3-Absoluto)
Ex.: Caso já tenha sido alocado 50 unidades do componente previsto na OP, e seja necessário desalocar uma parte, a mensagem poderá vir de duas formas.
40 unidades com Tipo 2, fará com que seja desalocada 40 unidades, restando apenas 10 unidades ainda alocadas na OP.
10 unidades com tipo 3, fará com que seja desalocada 40 unidades, restando exatamente 10 unidade ainda alocadas na OP.
Transação Movimentação de Estoque: MovementsInternal_1_001.xsd
Identificador da Mensagem: MovementsInternal
Versão: 1_001
Módulo Datasul: Produção
Tipo de Envio: Síncrona
Transação 11 – Requisição Componente (MovementsInternal_1_001.xsd)
Observar o tipo da linha de produção na ordem(Processo ou Serviço).
Esta mensagem somente será aceita, para OPs com linha de Serviço.
Lembrando que este movimento somente é feito para a Ordem de Produção informada, podendo ocorrer a produção antes ou após as requisições.
ATENÇÃO: o PC-Factory não trata referência, logo é desaconselhado utilizar estes itens na integração. Nesta situação é possível usar o dado padrão já no ERP.
Campo XSD | Campo ERP | Descrição |
TypeMovementCode | Código do Tipo de Movimento interno | |
ReferenceCode | ttReqOrd.cod-refer | Código Referência |
EmissionDate | ttReqOrd.dt-saida | Data de Emissão |
ItemCode | ttReqOrd.it-codigo | Item/Produto |
ScriptCode | ttReqOrd.cod-roteiro | Código Roteiro |
UnitOfMeasureCode | NA | Unidade de Medida |
ActivityCode | ttReqOrd.op-codigo | Código Operação |
Quantity | Caso utilize Controle de Potência e o Item for de Controle de Potência Então atualiza campo ttReqOrd.qtd-requisitd-lote Senão atualiza campo ttReqOrd.qt-requis | Quantidade |
WarehouseCode | ttReqOrd.cod-depos | Código do Armazém |
LotNumber | ttReqOrd.lote-serie | Lote |
SubLotNumber | NA | Sub-lote |
LotExpirationDate | ttReqOrd.dt-vali-lote | Data Validade do Lote |
FamilyCode | NA | Família |
Address | ttReqOrd.cod-localiz | Endereço |
NumberSeries | NA | Número de série |
InputOrOutput | ttReqOrd.tipo-trans = 1 Requisita, 2 Devolve | Movimento de Entrada ou Saida |
ProductionOrderNumber | ttReqOrd.nr-ord-produ | Nr. Ordem Produção |
FatherItemCode | ttReqOrd.item-pai | Código Item Pai |
3. Apontamento
Transação Apontamento de Parada de Máquina: StopReport_1_001.xsd
Identificador da Mensagem: StopReport
Versão: 1_001
Módulo Datasul: Chão de Fábrica
Tipo de Envio: Síncrona
O ERP trabalha com dois tipos de parada: setup e não setup
Quando a parada for de setup, pode utilizar a mesma mensagem de Reporte de Produção, do contrário, usar o próprio Reporte de Parada. Para eliminar um reporte de parada utilizar o campo <ReversedReport> como true.
Lista | Campo XSD | Campo ERP | Descrição |
MachineCode | tt-import-rep-parada.cod-ctrab | Código Máquina | |
MachineDescription | NA | Descrição Máquina | |
StopReasonCode | tt-import-rep-parada.cod-parada | Código Motivo Parada | |
StopReasonDescription | NA | Descrição Motivo Parada | |
StartDateTime | tt-import-rep-parada.dat-inic-parada E tt-import-rep-parada.hr-inic-parada | Data/Hora Início | |
EndDateTime | tt-import-rep-parada.dat-fim-parada E tt-import-rep-parada.hr-fim-parada | Data/Hora Fim | |
ToolCode | NA | Código Ferramenta | |
ToolDescription | NA | Descrição Ferramenta | |
ProductionTeamCode | tt-import-rep-parada.cod-equipe | Código Equipe | |
ProductionTeamName | NA | Nome Equipe | |
OperatorCode | tt-import-rep-parada.cod-operador | Código Operador | |
OperatorName | NA | Nome Operador | |
ProductionShiftCode | NA | Código Modelo Turno | |
ProductionShiftDescription | NA | Descrição Turno | |
ProductionShiftNumber | NA | Número Turno | |
StopType | NA | Tipo Parada(1=Programada;2=Não Programada) | |
ReportDateTime | NA | Data/Hora Reporte | |
GeneralStopCode | NA | Código Parada Geral | |
ReportSequence | NA | Sequência Reporte | |
ReversedReport | Indica que deve ser estornado um reporte já realizado | Reporte Estornado (True ou False) | |
IntegrationReport | NA | Reporte Integração | |
ListOfDirectLabors | OperatorCode | NA | Código Operador |
ListOfDirectLabors | StopReasonCode | NA | Código Motivo Parada |
ListOfDirectLabors | ProductionShiftCode | NA | Código Modelo Turno |
ListOfDirectLabors | ProductionShiftNumber | NA | Número Turno |
ListOfDirectLabors | StartDateTime | NA | Data/Hora Início |
ListOfDirectLabors | EndDateTime | NA | Data/Hora Fim |
Transação Apontamento de Produção: ProductionAppointment_1_001.xsd
Identificador da Mensagem: ProductionAppointment
Versão: 1_001
Módulo Datasul: Produção
Tipo de Envio: Síncrona
Obs.: o PC-Factory envia a hora de início e término com segundos, o Datasul deverá ignorar os segundos.
ATENÇÃO: o PC-Factory não trata referência, logo é desaconselhado utilizar estes itens na integração. Nesta situação é possível usar o dado padrão já no ERP.
ATENÇÃO: o PC-Factory não trata referência, logo é desaconselhado utilizar estes itens na integração. Nesta situação é possível usar o dado padrão já no ERP.
Mensagem Padrão | DATASUL | |
Tabela | Campo | |
ReportQuantity | rep-prod | qt-reporte |
ProductionOrderNumber | rep-prod | nr-ord-prod |
OutflowWarehouseCode | rep-prod | cod-depos-sai |
OutflowLocationCode | rep-prod | cod-local-sai |
ReportDateTime | rep-prod | data |
ScrapQuantity | rep-prod | qt-refugo |
ApprovedQuantity | rep-prod | qt-apr-cond |
DocumentCode | rep-prod | nro-docto |
DocumentSeries | rep-prod | serie-docto |
WarehouseCode | rep-prod | cod-depos |
LotCode | rep-prod | lote-serie |
ReferenceCode | rep-prod | cod-refer |
LotDueDate | rep-prod | dt-vali-lote |
LocationCode | rep-prod | cod-localiz |
ListOfWasteAppointments/WasteCode |
|
|
ListOfWasteAppointments/ScrapQuantity |
|
|
ListOfWasteAppointments/WasteDescription |
|
|
ReversedReport |
| se for Yes, então tem que observar campo IntegrationReport |
IntegrationReport |
| Caso informado este campo ele será utilizado para posicionar rep-oper-ctrab.num-seq-rep = ReversedReport e rep-oper-ctrab.nr-ord-produ = ProductionOrderNumber |
ReversalDate |
| Data Estorno |
CloseOperation | tt-param-reporte.l-msg-finaliza-split-operac |
ListOfWasteAppointments/ReportSequence | NA | Sequência Reporte |
ListOfWasteAppointments/WasteCode | tt-ref.cod-motiv-refugo | Código Refugo |
ListOfWasteAppointments/WasteDescription | NA | |
ListOfWasteAppointments/ScrapQuantity | tt-ref.qtd-operac-refgda | Quant. Refugada |
ListOfWasteAppointments/ReworkQuantity | tt-ret.qtd-operac-retrab | Quant. Retrabalhada |
ListOfResourceAppointments/ReportSequence | tt-apont-mob.tipo-movto = 1 (MOB) (Não utilizado na integração) | Sequência Reporte |
ListOfResourceAppointments/OperatorID | NA | |
ListOfResourceAppointments/OperatorCode | tt-apont-mob.cd-mob-dir = π operador.cd-mob-dir (Ϭ operador.cod-operador = OperatorCode (operador)) | Código Operador |
ListOfResourceAppointments/OperatorName | NA | |
ListOfResourceAppointments/ProductionTeamCode | tt-apont-mob.cd-mob-dir = π operador.cd-mob-dir ((Ϭ equipe-prod.cod-equipe = ProductionTeamCode (equipe-prod)) |X| equipe-operador |X| operador) | Código Equipe |
ListOfResourceAppointments/StartDateTime | Se informado StartDateTime então tt-apont-mob.tipo-relogio = 1; tt-apont-mob.hora-ini = HH; tt-apont-mob.min-ini = MM; tt-apont-mob.minutos-report = EndDateTime - StartDateTime | Data e Hora Início |
ListOfResourceAppointments/StartCentTime | tt-apont-mob.centesimal-ini | |
ListOfResourceAppointments/EndDateTime | Se informado EndDateTime então tt-apont-mob.hora-fim = HH; tt-apont-mob.min-fim = MM; tt-apont-mob.minutos-report = EndDateTime - StartDateTime | Data e Hora Fim |
ListOfResourceAppointments/EndCentTime | tt-apont-mob.centesimal-fim | |
ListOfResourceAppointments/MOBTime | NA | |
ListOfResourceAppointments/ExtraTime | NA | |
ListOfResourceAppointments/UtilTime | NA | |
ListOfResourceAppointments/ProductionShiftCode | NA | |
ListOfResourceAppointments/ProductionShiftNumber | NA | |
ListOfSupplyOrders/ReportSequence | NA | Sequência Reporte |
ListOfSupplyOrders/ProductionOrderNumber | tt-res-neg.nr-ord-produ | Nr. Ordem Produção |
ListOfSupplyOrders/MaterialCode | tt-res-neg.it-codigo | Componente |
ListOfSupplyOrders/MaterialDescription | NA | |
ListOfSupplyOrders/ReferenceCode | tt-res-neg.cod-refer | Referência Componente |
ListOfSupplyOrders/UsedQuantity | tt-res-neg.quantidade | Quantidade Usada |
ListOfSupplyOrders/ApprovedQuantity | NA | Quantidade Aprovada |
ListOfSupplyOrders/UnitOfMeasureCode | NA | Unidade de medida |
ListOfSupplyOrders/FatherItemCode | NA | Item Pai |
ListOfSupplyOrders/FatherItemDescription | NA | |
ListOfSupplyOrders/WarehouseCode | tt-res-neg.cod-depos | Depósito |
ListOfSupplyOrders/LocationCode | tt-res-neg.cod-localiz | Localização |
ListOfSupplyOrders/LotCode | tt-res-neg.lote-serie | Lote |
ListOfSupplyOrders/ActivityCode | tt-reservas.op-codigo (no campo da msg vem o ActivityID e precisa buscar no oper-ord.op-codigo) | Operação |
ListOfSupplyOrders/ScriptCode | NA | Roteiro |
ListOfSupplyOrders/SiteCode | NA | Estabelecimento |
ListOfSupplyOrders/MaterialDate | NA | Data Reserva |
ListOfSupplyOrders/MaterialQuantity | NA | Quant. Reserva |
ListOfSupplyOrders/StatusType | NA | Estado |
ListOfSupplyOrders/OrderProcess | NA | Processo Ordem |
ListOfSupplyOrders/ReferenceOrderNumber | NA | Nr. Ordem Referência |
ListOfSupplyOrders/MaterialID | NA | |
ListOfReportToolActivities/ReportSequence | NA | Sequência Reporte |
ListOfReportToolActivities/ToolCode | cod-ferr-prod | Ferramenta |
ListOfReportToolActivities/ToolDescription | NA | |
ListOfReportToolActivities/OperationUnitTime | NA | Tempo Unidade Operação |
ListOfReportToolActivities/ReportSequence | tt-apont-mob.tipo-movto = 2 (GGF) | Sequência Reporte |
ListOfReportToolActivities/WorkCenterCode | tt-apont-mob.gm-codigo | Centro Trabalho |
ListOfReportToolActivities/WorkCenterDescription | NA | |
ListOfReportToolActivities/GGFTimeInt | tt-apont-mob.minutos-report | Tempo Gastos Gerais de Fabricação |
ListOfReportToolActivities/GGFTimeDec | tt-apont-mob.tempo | Tempo Gastos Gerais de Fabricação |
Transação Apontamento MOB/GGF: WorkforceAndOverheadAppointment_1_000.xsd
Identificador da Mensagem: WorkforceAndOverheadAppointment
Versão: 1_000
Módulo Datasul: Produção
Tipo de Envio: Síncrona
Mensagem Padrão | DATASUL | |
Tabela | Campo | |
ListOfProductionOrders/ProductionOrderNumber | ord-prod | nr-ord-prod |
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/InternalId | sequencia | |
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/AppointmentType | ggf/mob | |
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/DocumentCode | movto-dir | nro-docto |
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/DocumentSerie | movto-dir | serie-docto |
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/ItemCode | movto-dir | it-codigo |
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/ActivityID | movto-dir |
|
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/ActivityCode | movto-dir | op-codigo |
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/RoutingCode | movto-dir | cod-roteiro |
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/WorkCenterCode | movto-dir | gm-codigo |
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/AppointmentDate | movto-dir | dt-trans |
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/AmountAppointed | movto-dir | tempo-homem |
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/OperatorID | movto-dir | matr-func |
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/LaborCode | movto-dir | cd-mob-dir |
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/ReversedReport | movto-dir |
|
ListOfProductionOrders/ListOfManufactureAppointments/ManufactureAppointment/IntegrationReport | movto-dir |
|
IntegrationReport |
|
|
InternalIdType/NAME |
|
|
InternalIdType/Origin |
|
|
InternalIdType/Destination |
|
|
ntificador da
Checklist de suporte da aplicação
Checklist de Verificações:
- No programa CP0106, página 5:
- Verificar se o checkbox Ativo da Integração PPI-Multitask está marcado.
- Testar conexão com o WebService informado por meio do botão Testar WS.
- Verificar se os parâmetros da integração foram preenchidos, acessando o botão de Parâmetros. - Acessar o diretório “<Pasta temporária de trabalho>\INTEGR_MES” para verificar se o envio de uma transação foi executado sucesso ou se ocorreu um erro. (Válido através da rotina de carga inicial CD7002).
- Verificar se o cadastro De-para Totvs - MES foi preenchido corretamente no programa CD7003.
- Caso ocorra algum erro no envio de uma transação será gerada uma pendência no programa CD2900. Neste programa é possível ver o arquivo com as informações da mensagem XML enviada e também fazer o reprocessamento do envio.