Histórico da Página
Integração PCP Logix x PPI-Multitask
Contexto de negócio (Introdução)
- MES
Manufacturing Execution Systems, ou simplesmente MES, é o termo utilizado para designar os sistemas focados no gerenciamento das atividades de produção e que estabelecem uma ligação direta entre o Planejamento e o Chão de Fábrica. Os sistemas MES geram informações precisas e em tempo real, que promovem a otimização de todas as etapas da produção, desde a emissão de uma ordem até o embarque dos produtos acabados.
A importância destes sistemas vem da lacuna que normalmente existe entre o ERP (Entreprise Resource Planning) e os softwares específicos da linha de produção. O MES pode importar dados do ERP e integrá-los com o dia a dia da produção, gerenciando e sincronizando as tarefas produtivas com o fluxo de materiais.
Considerando que na cadeia de suprimento o maior valor agregado costuma estar na produção, faz todo sentido investir em sistemas que otimizem o fluxo, controle e qualidade do material (Fonte: PPI-Multitask). - Planejamento e Controle da Produção
A reunião dos meios de produção (matéria-prima, mão de obra e equipamentos) possibilita a fabricação de produtos que surgem pela ação dos Sistemas produtivos. Os planos que servem de guia na execução e no controle da produção são comandados pelo órgão auxiliar denominado Planejamento e Controle da Produção (PCP), que dita normas à linha de produção, visando a um fluxo ordenado e contínuo do processo produtivo.
Sistemas Envolvidos
Descrição dos sistemas envolvidos no contexto de negócio (e que serão envolvidos na integração):
- LOGIX 12.1.17 / LOGIX 12.1.18;
- FRAME LOGIX 12.1.17;
- PC-FACTORY (PPI MULTITASK).
Integração
O objetivo da Integração PC Factory (software MES da empresa PPI Multitask) X LOGIX é 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 de Manufatura do Logix com o MES PC-Factory da PPI-Multitask, que tem como objetivo controlar os apontamentos das ordens de produções. O Logix tem como responsabilidade a criação das ordens de produção e o PC-Factory, os apontamentos.
A integração contempla as seguintes rotinas e processos:
- Parametrização: Permite parametrizar a utilização da integração, indicando se está ATIVA. Indica se ocorrerá a geração dos arquivos XMLs das informações que serão trafegadas entre os sistemas e, também possibilita definir os filtros que serão aplicados nas informações.
- Integradores: Os "adapters" são as funções responsáveis por enviar ou receber as informações que são trafegadas entre os sistemas Logix e PC-Factory. A integração contempla as seguintes informações: Item, local de estoque, máquinas, ordens de produção, roteiro, estrutura e endereço e receber apontamento de produção, apontamento de parada, motivo de parada e motivo de refugo.
- Gerenciamento TOTVS MES: Permite gerenciar as pendências de envio do Logix para o PC-Factory bem como verificar o histórico e erros do processo da integração.
- WebService: Permite processar os apontamentos de produção e parada enviados do PC-Factory para o Logix.
- Sincronização: Permite realizar a sincronização dos dados entre o Logix e o PC-Factory. Poderá enviar os dados dos Item, local de estoque, máquinas, ordens de produção, roteiro, estrutura e endereço
- Consulta ID MES: Permite verificar os IDs gerados para os produtos quando estiver parametrizado o uso de grade.
Nota | ||
---|---|---|
| ||
A integração não contempla a integração com o WMS. |
Restrições
Não é possível utilizar o conceito de prioridade do programa MAN10243.
Pré-requisitos instalação/implantação/utilização
Para a versão 12 do Logix, deve-se aplicar o pacote de atualizações a partir da versão 12.1.17.
Usar o pacote do Framework da 12.1.17.
WebService
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.
Exemplo :
;CONFIGURACAO WEBSERVICE
[WEBSERVICES]
Enable=1
Environment=migralgx
Conout=0
Trace=0
xmlsaveall=0
NameSpace=http://totvs.com
URLLocation=http://10.80.128.17:2347
Logix=1
Security=0
PROFILE=0
TRACEHOST=0PROFILE=0
[HTTP]
Enable=1
Port=8080
path=c:\totvs\bin\smartclient\
Environment=migralgx
;FIM CONFIGURACAO WEBSERVICE
Informações | ||
---|---|---|
| ||
O nome do Webservice a ser utilizado no TOTVSMES é o WSMAN. Não é utilizado o EAI. |
Configuração do JOB
As mensagens de saldo de estoque atualizados pelo Logix e ordens de produção geradas pelo APS são enviadas por meio do JOB do Logix. Necessário configurar a sessão ONSTART do appserver.
Exemplo:
[ONSTART]
Jobs=4GLJOB1
[4GLJOB1]
Environment=migralgx
Main=JobStarter
Mensagens de Retorno
Para processar as mensagens deve ser atualizado o campo MAXSTRINGSIZE da sessão General do appserver:
MAXSTRINGSIZE=500
Instalação/Atualização
A integração Logix x PC-Factory PPI-Multitask é ativada por intermédio dos seguintes passos:
- Abrir o programa de Parâmetros da integração: MAN10538.
- Setar o campo Integração Ativa? para "Ativo".
- No campo Caminho Webservice informar a URL do WebService da PPI-Multitask.
- Verificar a conectividade do WebService por meio do botão Testar.
- Indicar se a integração irá gerar fisicamente os arquivos XML.
- Configurar os filtros para cada informação que será trafegada entre os sistemas.
- Confirmar a ativação por meio do botão CONFIRMA.
O botão de Testar verifica se é possível realizar a conexão com o WebService informado no campo Caminho. Este botão tem dois retornos:
- Conexão com o WebService realizada com Sucesso;
- Não foi possível realizar a conexão com o WebService do PC-Factory.
Selecionando o campo Gera XML, serão gerados os XML das mensagens trocadas. Se não estiver selecionado, será gravado apenas em tabelas. A geração dos arquivos não é obrigatória. Serve como uma ferramenta útil para encontrar problemas e poderá ser gravado no diretório de XMLs enviados com sucesso ou XMls pendentes.
Os nomes do arquivos seguirão o seguinte padrão:
OK_<MSG>_<DATAHORA>_<REGISTRO>
PEND_<MSG>_<DATAHORA>_<REGISTRO>
ERR_<MSG>_<DATAHORA>_<REGISTRO>
Em que: OK - Se mensagem entregue sem problemas
PEND- Se mensagem não foi enviada
ERR - Se mensagem enviada, porém retornou erro.
MSG - Nome da mensagem. Ex.: Item, Wharehouse, Workcenter, etc.
DATAHORA: Data e Hora do envio
REGISTRO: Código do registro que está sendo enviado. Ex.: Código do item, número da ordem, etc.
Para cada arquivo movimentado (item, local de estoque, máquinas, roteiro, estrutura, endereço 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 é necessário 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 itens que sejam classificados como Produzido. O filtro será: IES_TIP_ITEM = "P"
O envio de informações do Logix para o PC-Factory PPI-Multitask ocorre nas seguintes transações:
- Cadastro, alteração e exclusão de produto (MAN10021), Local de estoque (SUP10002) e máquinas, que pode ser Arranjo (MAN10072) ou Recurso (MAN10078);
- Cadastro e alteração de ordens (MAN0515);
- Manutenção do Status da ordem (MAN10055);
- Manutenção das operações (MAN10030);
- Manutenção dos empenhos (MAN10029);
- Desmembramento das ordens (MAN10034);
- Planejamento por Equipamento (MAN10500);
- Cálculo do MRP (MAN10255);
- Criação manual de ordens (MAN10031);
- Abertura automática (MAN10032) e liberação automática (MAN0860);
- Encerramento das ordens (MAN0730);
- Cadastro, alteração e exclusão de estrutura (MAN10002);
- Cadastro, alteração e exclusão do endereço (MAN10093) ou (SUP1637);
- Cadastro, alteração e exclusão dos processos (MAN10243);
- Saldo em estoque.
O envio de informações do PC-Factory PPI-Multitask para o Logix ocorre nas seguintes transações:
- Cadastro de motivos de parada (MAN10095);
- Cadastro de motivos de refugo (MAN10026);
- Apontamento de produção e parada (MAN8228);
- Transferências (SUP8790);
- Request - Saldo em estoque (SUP0170).
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 Logix 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:
Fluxo das Informações:
Método | ID | Descrição | Origem | Destino | XSD (versões podem variar) | Programas | Tabela |
Cadastros | 01 | Item | Logix | PC-Factory | Item_4_001.xsd | MAN10021 | ITEM |
02 | Local de Estoque | Logix | PC-Factory | Warehouse_1_001.xsd | SUP10002 | LOCAL | |
03 | Máquinas | Logix | PC-Factory | Machine_1_001.xsd | MAN10072 MAN10078 | REC_ARRANJO RECURSO | |
05 | Estrutura | Logix | PC-Factory | ItemStructure_1_001 | MAN10002 | ESTRUT_GRADE | |
06 | Roteiro | Logix | PC-Factory | ItemScript_1_001 | MAN10243 | MAN_PROCESSO_ITEM | |
07 | Ordem de Produção | Logix | PC-Factory | ProductionOrder_2_005.xsd | MAN0515 MAN10255 MAN10500 MAN10030 MAN10029 MAN10055 MAN10034 MAN10031 MAN10032 MAN0860 MAN0730 | ORDENS | |
08 | Endereço | Logix | PC-Factory | AddressStock_1_000 | MAN10093 SUP1637 | SUP_ENDERECO_LOCAL | |
09 | Saldo em Estoque | Logix | PC-Factory | ItemStockLevel_1_000 | JOB | ESTOQUE_TRANS_END | |
Processos | 09 | Motivo de Parada | PC-Factory | Logix | StopReason_1_000 | MAN10095 | MOT_PARADA |
10 | Motivo de Refugo | PC-Factory | Logix | WasteReason_1_000 | MAN10026 | DEFEITO | |
11 | Apontamento de Produção | PC-Factory | Logix | ProductionAppointment_2_002 | MAN8228 | MAN_APO_MESTRE MAN_ITEM_PRODUZIDO MAN_COMP_CONSUMIDO | |
12 | Apontamento de Parada | PC-Factory | Logix | StopReport_1_001 | MAN8228 | MAN_APO_MESTRE MAN_TEMPO_PRODUCAO | |
13 | Transferência | PC-Factory | Logix | TransferWareHouse_1_003 | SUP8790 SUP0737 SUP5620 SUP0638 | ESTOQUE_TRANS ESTOQUE_TRANS_END | |
14 | Movimentações | PC-Factory | Logix | MovimentsInternal_1_001 | SUP0710 | ESTOQUE_TRANS ESTOQUE_TRANS_END | |
15 | Request Saldo | PC-Factory | Logix | StockLevel_2_000 | SUP0170 | ESTOQUE_LOTE_ENDER |
Fluxo das Informações
Fluxo das informações das transações:
- Parametrização: MAN10538, permite parametrizar a integração TOTVS MES, indicando o que será trafegado entre os sistemas.
- Item, local de estoque, máquinas, estrutura, processo e endereço: no momento da criação, alteração ou exclusão de um produto no programa MAN10021, de um local de estoque no programa SUP10002, de um recurso no MAN10078 ou arranjo no MAN10072, de uma estrutura no MAN10002, de um processo no MAN10243 ou endereço no MAN10093 ou SUP1637, os programas verificam se a integração está ativa e, se estiver ativa, efetuam o envio do cadastro para o PC-Factory. Caso não ocorrer erro, o cadastro não apresentará nenhuma mensagem, porém se ocorrer erro será criada uma pendência de envio no programa MAN10540.
- 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 (requisição, alteração de operações ou empenhos, MRP, criação de splits, etc), 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, será gerada uma pendência de envio no programa MAN10540. Ao final do processo das rotinas que processam múltiplas ordens, como por exemplo o MRP, serão exibidos os que tiveram pendência de envio.
- Programa de gerenciamento TOTVS MES MAN10540: 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. Outra funcionalidade é a verificação das mensagens recebidas pelo PC-Factory, que são: motivos de parada, motivos de refugo, apontamento de parada e apontamento de produção.
- Programa de Sincronização MAN10541: permite o envio das informações do item, local de estoque, recurso/arranjo, roteiro, estrutura, endereço 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 MAN10538, também será possível adicionar novos filtros para cada tabela.
- Apontamento de produção/parada: Consiste no WebService para receber os apontamentos de produção/parada realizados no PC-Factory. Poderá processar apontamentos de produção e parada de recurso. Executará o mesmo processo que a rotina MAN8228.
O fluxo da integração será o seguinte:
- Operador efetua reporte normalmente conforme sua operação no PC-Factory.
- 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 Logix; que validará a mensagem e encaminhará ao respectivo adapter de negócio para processamento.
- 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 Logix registrará em LOG o processamento).
- Em caso de sucesso no reporte, será retornado ao PC-Factory o número do registro do reporte realizado no Logix. Esse número poderá ser utilizado em caso de estorno.
Replicação
No Logix é possível cadastrar replicações de cadastros. Para o envio das mensagens nas empresas replicadas será utilizado o Webservice que estiver cadastrado no MAN10538 de cada empresa.
Controle de latência
Existem situações em que o tempo de espera do webservice é menor que o tempo de processamento das importações para o ERP. Pode ocorrer a situação em que o ERP continue processando a importação e o WebService do PC-Factory para de esperar a resposta. Quando o PC-Factory não recebe a resposta a tempo, o mesmo arquivo é reenviado, podendo gerar duplicidade no processamento da mensagem.
Solução:
Controlar ID do PC-Factory para as mensagens recebidas. Todas as mensagens recebidas deverão ter esse tratamento:
- ProductionAppointment
- StopReport
- StopReason
- WasteReason
- TransferWareHouse
- MovimentsInternal
- StockLevel
Nos XML´s será usada a TAG Key name = "IDPCfactory"
<BusinessEvent>
<Entity>Entity</Entity>
<Event>upsert</Event>
<Identification>
<key name="IDPCFactory">29892829</key>
</Identification>
</BusinessEvent>
O retorno com erro apresenta a mensagem com o seguinte padrão:
<ProcessedOn>2017-03-28T09:11:17</ProcessedOn>
<Status>ERROR</Status>
<ListOfMessages>
<Message type="ERROR" code="N">MENSAGEM</Message>
</ListOfMessages>
</ProcessingInformation>
O XML de retorno deverá respeitar a seguinte regra:
- Quando ID já processado e contêm ERRO
Retorna o ID PC-Factory na tag <UUID>
Na tag Message type="ERROR" code="2", utiliza o 2 para indicar erro.
A mensagem será: ID xxxx já processado. Status: mensagem de erro”.
Exemplo: <Message type="ERROR" code="2">ID productionappointment-0038 já processado. Status: ProductionOrderNumber não cadastrada no Logix.</Message>
- Quando ID já processado com sucesso
Retorna o ID PC-Factory na tag <UUID>
Na tag Message type="ERROR" code="3", usa o 3 para indicar o processamento com sucesso.
A mensagem será: "ID xxxx já processado. Status: ID do Logix" ou "ID xxxx já processado. Status: ID do Logix" quando o PC-Factory enviar mais de uma vez.
Exemplo 1: <Message type="ERROR" code="3">ID productionappointment-0038 já processado. Status: 5091</Message>
Exemplo 2: <Message type="ERROR" code="3">ID productionappointment-0038 já processado. Status: Reprocessado. 5091</Message>.
- Quando ID já está na base mas em processamento
Retorna o ID PC-Factory na tag <UUID>
Na tag Message type="ERROR" code="4", usa o 4 para indicar que está em processamento.
A mensagem será: ID xxxx está sendo processado pelo Logix.
Exemplo: <Message type="ERROR" code="4">ID apapapapeaaa está sendo processado pelo Logix.</Message>
O retorno, quando mensagem processada na primeira tentativa, dentro do tempo de espera do webservice, será "1" - Processado de primeira vez com ERRO ou OK.
Exemplo:
Com Erro:
<ProcessingInformation>
<ProcessedOn>2017-03-28T09:00:03</ProcessedOn>
<Status>ERROR</Status>
<ListOfMessages>
<Message type="ERROR" code="1">ProductionOrderNumber não cadastrada no logix.</Message>
</ListOfMessages>
</ProcessingInformation>
Com Sucesso:
<ProcessingInformation>
<ProcessedOn>2017-03-28T08:57:28</ProcessedOn>
<Status>OK</Status>
</ProcessingInformation>
<ReturnContent>
<ListOfInternalId>
<InternalId>
<Name>PRODUCTIONAPPOINTMENTINTERNALID</Name>
<Destination>5090</Destination>
</InternalId>
</ListOfInternalId>
</ReturnContent>
Situações inesperadas que podem ocorrer: a parada do serviço do Logix, banco de dados fora do ar, falta de energia, entre outros. Se ocorrer durante o processamento da integração, o registro do PC-Factory (ID do PC-Factory) pode ficar travado e a mensagem não sai da fila de processamento. Para tratar essa situação:
O PC-Factory tenta enviar por determinado tempo, tempo esse parametrizado no PC-Factory. Caso continue recebendo a mesma mensagem depois do tempo parametrizado, o PC-Factory gera uma pendência de envio e passa para o próximo registro. Ao passar para o próximo registro, um contador de mensagens não enviadas é gerado. Quando esse contador atinge um limite (parametrizado), o processo de integração é paralisado para que os usuários possam resolver o problema. O controle de processamento ficará registrado em tabela de LOG.
Abaixo tabela dos códigos enviados:
1 | Processado na primeira tentativa com ERRO ou OK | 1 ou 2 |
2 | Registro já processado com retorno de erro | 2 |
3 | Registro já processado com sucesso | 1 |
4 | Registro em processamento | 0 |
Informações | ||
---|---|---|
| ||
<Entity>productionappointment</Entity> <Event>upsert</Event> <Identification> <key name="IDPCFactory">9o93049u88557</key> <key name="Reprocess">true</key> </Identification> </BusinessEvent> |
Autenticação
Quando o usuário e a senha estiverem cadastrados no MAN10538 (Parâmetros), folder Segurança, estes dados serão enviados na mensagem para que o PC-Factory efetue a autenticação.
Estes dados serão enviados no cabeçalho da mensagem da seguinte forma:
Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l
Onde: O valor será usuário:senha criptografado em Base64.
O recebimento das mensagens também seguirão mesmo modelo, porém o PC-Factory enviará um usuário do Logix.
Informações | ||
---|---|---|
| ||
Para configurar a autenticação no recebimento, o appserver.ini deve ter o campo SECURITY=1, conforme exemplo de configuração do WebService. Security = 0 -> Não utiliza autenticação. Security = 1 -> Utiliza autenticação |
Rotinas
Parametrização - MAN10538
A parametrização terá influência direta sobre os registros que serão movimentados entre os dois sistemas.
A rotina de parametrização terá os seguintes campos:
- Integração Ativa?: Indica se a integração está ativa.
- Caminho Webservice: Indica o caminho do WebService do PC-Factory. Após o caminho, terá um botão testar para verificar se webservice está ativo.
- Gera XML - Ao selecionar esse campo, irá gerar os XML das mensagens trocadas. Se não estiver selecionado, será gravado apenas em tabelas. A geração dos arquivos não é obrigatória. Serve como uma ferramenta útil para encontrar problemas. O envio sempre será feito com base do que estiver registrado nas tabelas.
- Enviados - Diretório onde serão salvos os XMLs enviados com sucesso ao PC-Factory
- Pendentes - Diretório onde serão salvos os XMLs que não foram enviados ao PC-Factory
Os nomes do arquivos seguirão o seguinte padrão:
OK_<MSG>_<DATAHORA>_<REGISTRO>
PEND_<MSG>_<DATAHORA>_<REGISTRO>
ERR_<MSG>_<DATAHORA>_<REGISTRO>
Em que: OK - Se mensagem entregue sem problemas
PEND- Se mensagem não foi enviada
ERR - Se mensagem enviada, porém retornou erro.
MSG - Nome da mensagem. Ex.: Item, Wharehouse, Workcenter, etc.
DATAHORA: Data e Hora do envio
REGISTRO: Código do registro que está sendo enviado. Ex.: Código do item, número da ordem, etc.
Obs.: Se selecionar o Gera XML, deverão ser informados os diretórios.
Para cada arquivo movimentado terá um folder. Para cada folder será possível montar filtros. Esses filtros serão utilizados nas rotinas que enviarão informações ao PC-Factory, permitindo selecionar o que deve ser enviado. Serão exibidos os campos da tabela selecionada (folder) e operadores para que sejam montados os filtros. Além de filtros, alguns arquivos possuem parametrizações.
A rotina terá os seguintes folders:
- Item
- Local de Estoque
- Máquina (Arranjo/Recurso)
Deverá ser parametrizado o centro de trabalho do recurso. Informar o campo centro de trabalho padrão. - Roteiro
- Estrutura
- Ordem de Produção
Painel MRP: Indica como o sistema deverá se comportar em relação as ordens geradas pelo MRP. Terá as seguintes opções:
- "Não integra": As ordens geradas pelo MRP não serão enviadas ao PC-Factory pelo cálculo do MRP
- "Gera Pendência": As ordens geradas pelo MRP ficarão registradas nas pendências de envio
- "Integra": As ordens geradas pelo MRP serão enviadas ao PC-Factory pelo cálculo do MRP.
Painel "Consumo de componentes". Determinar como será o consumo dos componentes. Esse campo pode conter os seguintes valores:
- "1" - BackFlush: Sempre irá realizar a baixa dos componentes conforme o definido na engenharia.
- "2" - Consumo Real: Irá consumir conforme lista de componentes.
Painel "APS". Indica se a integração(JOB) com o APS está ativa.
Painel "Arranjo". Indica se será enviado o código do arranjo como código da máquina nas operações da ordem.
Painel "Usuário Apontamentos". Indica para qual usuário será registrado o apontamento de produção.
Folder "Operações": Define o filtro criado para as operações da ordem de produção. - Roteiros;
- Estrutura;
- Endereço.
- Movimentos e transferências
Além dos filtros, devem ser definidas as operações de estoque a serem realizadas no recebimento das mensagens, e também definir as contas contábeis.
Painel Operações de Estoque:
- Entrada: Somente informar operação de estoque que esteja cadastrada no SUP0660 com o tipo entrada;
- Saída: Somente informar operação de estoque que esteja cadastrada no SUP0660 com o tipo saída;
- Transferência: Somente informar operação de estoque que esteja cadastrada no SUP0660 com o tipo diversos.
Painel Contas Contábeis:
- Entrada;
- Saída. - Saldos
Painel Operações de estoques integradas:
- Array para incluir as operações de estoque que permitem integração do saldo com o TOTVS MES.
Painel Data de corte das movimentações:
- Campo para indicar a data em que as movimentações deverão ser consideradas. - Segurança
Utilizado para realizar o controle autenticação na troca de mensagem entre os sistemas. Permite informar usuário e senha que devem ser válidos no PC-Factory, ou seja, informar o usuário e senha cadastrado no PC-Factory.
Sincronização - MAN10541
A sincronização é o processo que será utilizado para popular ou atualizar a base do PC-Factory com os dados do Logix. O funcionamento se dará da mesma forma que as demais rotinas de integração, enviando uma mensagem XML ao WebService do PC-Factory, respeitando as parametrizações definidas no MAN10541. A única diferença é que serão visualizados todos os dados da tabela que estiver sendo integrada (respeitando os filtros) ao invés de apenas um único registro.
Gerenciamento TOTVS MES - MAN10540
Rotina para gerenciar as mensagens não enviadas ao sistema PC-Factory, sejam elas pendências ou erro. A rotina também possibilita consultar as mensagens enviadas com sucesso.
Permite gerencias as mensagens recebidas pelo Logix. A rotina está dividida em dois folders "Envio" e "Recebimento".
Poderá verificar as pendências e log das mensagens trafegadas entre os sistemas:
Envio:
- Produto/Item;
- Local de Estoque (depósitos);
- Máquinas - Arranjo/Recurso;
- Ordens de produção (Operações, Roteiros, Componentes);
- Cadastro de Estruturas;
- Roteiro - Operações;
- Endereços.
Recebimento:
- Apontamento de produção;
- Apontamento de parada;
- Motivo de Refugo;
- Motivo de Parada;
- Transferências;
- Movimentações de Estoque.
Possui as seguintes opções:
- Reprocessar
Para cada linha selecionada deverá executar o envio das mensagens. - Excluir
Deverá excluir os registros selecionados. - Salvar XML
Esta opção permite salvar o XML em um diretório local da máquina que está processando a rotina de pendências. - Atualizar
Irá refazer a pesquisa dos registros, atualizando os dados na tela.
ID MES - MAN10539
O PC-Factory não utiliza o conceito grade. Para atender essa demanda foi criado o ID MES.
Quando usa o conceito grade (parâmetro: utiliza_grade) e o item controlar grade (item_ctr_grade) o sistema terá um tratamento diferenciado para o envio dos itens.
No XML, o código do item será composto pelo código do item, mais um ID (número sequencial) gerado pelo sistema para identificar a grade. Esta geração do ID é necessária pois o PC-Factory não possui o conceito grade.
Exemplo: ITEM = CAMISA. Grade 1 : Cor = Branca. Grade 2: Tamanho: P (pequeno)
O código do item passado para o PC-Factory será: CAMISA1, onde 1 é um número sequencial gerado pelo Logix.
Exemplo: ITEM = CAMISA. Grade 1 : Cor = Preta. Grade 2: Tamanho: P (pequeno)
O código do item passado para o PC-Factory será: CAMISA2, onde 2 é um número sequencial gerado pelo Logix.
Estes IDS gerados serão registrados na seguinte tabela: MAN_ITEM_MES. Serão gravados os seguintes campos:
- item_mes : Item com sequencial. Sequencial é gerado com base no o último sequencial do item mais um (+1).
- item : Item Logix
- grade_1
- grade_2
- grade_3
- grade_4
- grade_5
Quando usa grade a integração deverá considerar a estrutura por composição. Exemplo: Item controlando 2 grades. COR e TAMANHO.
Abaixo, a tabela com exemplo da estrutura do item CAMISA:
Produto: Camisa | COR | BRANCO | AZUL | PRETO |
TAM | G,H | D | Z | |
Pequeno | E,F | A,B,C | Y | |
Médio | X | |||
Grande | P |
Existe a possibilidade de manutenção dessa estrutura nas seguintes situações:
1 - Estrutura da CAMISA, cor branco e tamanho P. Deve gerar XML somente da estrutura branco e P, considerando os componentes A,B,C,D,E,F,G,H.
2 - Estrutura da CAMISA, somente da cor branco. Deve gerar XML de todas as camisas brancas e todos tamanhos. Branco e P: considerando os componentes A,B,C,D,E,F,G,H. Branco e M: considerando os componentes X,D,G,H.
3 - Estrutura da CAMISA, somente do tamanho P. Deve gerar XML de todas as camisas de tamanho P e todas cores. Branco e P: considerando os componentes A,B,C,D,E,F,G,H.Azul e P: considerando os componentes Y,E,F,G,H.
4 - Estrutura sem cor e tamanho. Deve gerar XML de todas as camisas.
- Branco e P: componentes A,B,C,D,E,F,G,H. Branco e M: componentes X,D,G,H. Branco e G: componentes A,B,C,D,G,H.
- Azul e P: componentes Y,E,F,G,H. Azul e M: componentes G,H. Azul e G: componentes G,H.
- Preto e P: componentes Z,G,H . Preto e M: componentes Z,G,H. Preto e G: componentes P,Z,G,H
Nota | ||
---|---|---|
| ||
Esta regra será utilizada por todas as rotinas que manipulam a utilização de grade para o item, como o MAN10002, MAN10243 e MAN10021. |
Mensagens
Cadastros
Transação Item: Item_4_001.xsd
Identificador da Mensagem: Item
Versão: 4_001
Módulo Logix: Engenharia
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Logix | Tipo | Tabela/Campo: PC-Factory | Tipo |
BusinessContentType | CompanyId | Código da Empresa Logada | item.cod_empresa | CHAR(02) | ||
| BranchId | CódigoFilial | TBLInProduct.PlantCode | CHAR(15) | ||
| CompanyInternalId | Empresa | item.cod_empresa | |||
| Code | Código do Produto | item.cod_item | CHAR(15) | TBLInProduct.Code | CHAR(20) |
| Name | Descrição do produto | item.den_item | CHAR(76) | TBLInProduct.Name | CHAR(70) |
| InternalId | Empresa+código do produto | item.cod_empresa + item.cod_item | |||
| ShortName | Nome curto | item.den_item_reduz | CHAR(18) | TBLInProduct.SecondName | CHAR(30) |
| Active | Item ativo? | item.ies_situacao 1=Ativo; 0=Inativo ou Cancelado | CHAR(01) | TBLInProduct.FlgEnable | SMALLINT |
| UnitOfMeasureCode | Unidade de Medida | item.cod_unid_med | CHAR(03) | TBLInProduct.Unit1code | CHAR(05) |
| UnitOfMeasureInternalId | Unidade de medida | item.cod_unid_med | |||
| StockGroupCode | Grupo de Estoque | item.gru_ctr_estoq | DECIMAL(2,0) | ||
| StockGroupInternalId | Empresa+grupo de estoque | item.cod_empresa + item.gru_ctr_estoq | |||
| StockGroupDescription | Descrição do grupo estoque | grupo_ctr_estoq. den_gru_ctr_estoq | CHAR(30) | ||
| StandardWarehouseCode | Local de Estoque | CHAR(10) | |||
| StandardWarehouseInternalId | Empresa+local de estoque | ||||
| StandardWarehouseDescription | Descrição Local de Estoque | local.den_local | CHAR(30) | ||
| EconomicLot | Lote econômico | DECIMAL(12,3) | |||
| MinimumLot | Lote mínimo | DECIMAL(10,3) | |||
| FamilyCode | Família | item.cod_familia | CHAR(03) | TBLInProduct.FamilyProductCode | CHAR(15) |
| FamilyInternalId | Empresa+família | item.cod_empresa + item.cod_familia | |||
| FamilyDescription | Descrição da família | familia.den_familia | CHAR(30) | TBLInProduct.FamilyProductName | CHAR(30) |
| NetWeight | Peso do Item | item.pes_unit | DECIMAL(12,5) | ||
| GrossWeight | Peso bruto | Fixo "0" | |||
| Trail | Rastro | item.ies_ctr_lote Se estiver igual a nulo, será considerado "N". | CHAR(01) | ||
| BinControl | Controla Endereço | item_ctr_grade.ies_endereco Se estiver igual a nulo, será considerado "FALSE" | CHAR(01) | ||
| SecondUnitOfMeasureCode | Segunda Unidade de medida | TBLInProduct.Unit2Code | CHAR(20) | ||
| SecondUnitOfMeasureInternalId | Empresa+filial+ seg. unidade de medida | ||||
| MultiplicationFactorValue | Fator de conversão | item.fat_conver | DECIMAL(11,6) | TBLInProduct.Unit2Factor | DEC(8,4) |
| ProductType | Tipo do Item | item.ies_tip_item P=22; C=23; T=24; B=25; F=26; Outros=21 | CHAR(01) | TBLInProduct.ProductTypeCode | CHAR(15) |
| PackingQuantity | Quantidade Embalagem | Fixo "0" | NUM(09) | TBLInProduct.QtyPackage | DEC(19,4) |
| CostCenterCode | Centro de Custo | TBLInProduct.CostCenterCode | CHAR(20) | ||
| StockControlType | Controle do estoque do item | Controla número de série=2; Controla endereço=1; Controla lote=3 | CHAR(01) | ||
Detail | Especificações do item | CHAR(60) |
Nota | ||
---|---|---|
| ||
|
Transação Depósito: Warehouse_1_001.xsd
Identificador da Mensagem: Warehouse
Versão: 1_001
Módulo Logix: Engenharia
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Logix | Tipo | Tabela/Campo: PC-Factory | Tipo |
BusinessContentType | CompanyId | Código da Empresa | local.cod_empresa | CHAR(02) | TBLInWarehouse.Extcode | CHAR(20) |
| BranchId | Código da Filial | TBLInWarehouse.PlantCode | CHAR(15) | ||
| CompanyInternalId | Empresa | local.cod_empresa | |||
| Code | Código do Local de Estoque (armazém/almoxarifado/depósito) | local.cod_local | CHAR(10) | TBLInWarehouse.Code | CHAR(15) |
| InternalId | Empresa+código local | local.cod_empresa + local.cod_local | |||
| Description | Descrição do Local de Estoque (armazém/almoxarifado/depósito) | local.den_local | CHAR(30) | TBLInWarehouse.Name | CHAR(15) |
| Active | Local de Estoque Ativo? | TBLInWarehouse.FlgEnable | SMALLINT | ||
| Type | Tipo do Local de Estoque | ||||
| WarehouseClassification | Classificação |
Nota | ||
---|---|---|
| ||
|
Transação Recurso: Machine_1_000.xsd
Identificador da Mensagem: Machine
Versão: 1_000
Módulo Logix: Engenharia
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Logix | Tipo | Tabela/Campo: PC-Factory | Tipo |
BusinessContentType | ||||||
| Code | Código Máquina | recurso.cod_recur rec_arranjo.cod_arranjo | CHAR(05) | CHAR(15) | |
| Description | Descrição Máquina | recurso.den_recur arranjo.den_arranjo | CHAR(30) | TBLInResource.Name TBLInResource.Nickname | CHAR(20) |
| WorkCenterCode | Código Centro Trabalho | CHAR(05) | TBLInResource.ManagerGrpCode | CHAR(15) | |
| WorkCenterDescription | Descrição Centro Trabalho | cent_trabalho.den_cent_trab | CHAR(30) | TBLInResource.WorkCenterDescription | CHAR(15) |
| CostCenterCode | Código Centro Custo | ||||
| ProcessorType | Tipo de Processamento | ||||
| LaborType | Tipo MOD | ||||
| VolumeMachineQuantity | Quantidade Volume Máquina | ||||
| EfficiencyMachineValue | Eficiência Máquina | ||||
| OperatorMachineQuantity | Quantidade Operador Máquina | ||||
| SimultaneousActivityQuantity | Quantidade Operações Simultâneas | ||||
| IsSetup | Possui Preparação | ||||
| IsOverlapReport | Sobrepõe Apontamento | ||||
| ProductionAreaCode | Área de Produção | ||||
| InitialValidateDate | Data início validade | ||||
| FinalValidateDate | Data fim validade | ||||
TypeMachine | Tipo Máquina | 1=Recurso; 2=Arranjo | CHAR(01) | |||
ListOfResources | ||||||
| ResourceType | Tipo do Recurso | ||||
| ResourceCode | Código Recurso | TBLInUser.Code | CHAR(30) | ||
| ResourceName | Nome Recurso | TBLInUser.Name TBLInUser.Nickname | CHAR(60) | ||
| UnitTimeType | Tipo Medida Tempo | ||||
| StartExpirationDate | Data Início Validade | ||||
| EndExpirationDate | Data Fim Validade | ||||
| CycleQuantity | Número Ciclos | ||||
| IsTimeActivity | Determina tempo | ||||
ListOfProductionShifts |
| |||||
| ProductionShiftCode | Código Modelo Turno | ||||
| ProductionShiftDescription | Descrição Modelo Turno | ||||
| BeginDate | Data Início Validade | ||||
| EndDate | Data Fim Validade |
Nota | ||
---|---|---|
| ||
|
Transação Estrutura: ItemStructure_1_001.xsd
Identificador da Mensagem: ItemStructure
Versão: 1_0001
Módulo Logix: Engenharia
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Logix | Tipo | Tabela/Campo: PC-Factory | Tipo |
BusinessContentType | CompanyId | Código da Empresa | estrut_grade.cod_empresa | CHAR(02) | ||
| CompanyInternalId | Empresa | estrut_grade.cod_empresa | CHAR(02) | ||
| ItemInternalId | Empresa+código item pai | estrut_grade.cod_empresa + estrut_grade.cod_item_pai | |||
| ItemCode | Código item pai | estrut_grade.cod_item_pai | CHAR(15) | TBLInWOHD.ProductCode TBLInWOHD.WOCode | CHAR(30) |
| ItemAmount | Quantidade base do item pai | Fixo "1" | DECIMAL(1,0) | TBLInWOHD.TotalQTY | DEC(19,4) |
ItemComponentType |
| |||||
| ItemSequence | Sequência do componente | estrut_grade.num_sequencia | DECIMAL(10,0) | TBLInBillMat.BillMatExtCode | CHAR(20) |
| ItemComponentCode | Código item componente | estrut_grade.cod_item_compon | CHAR(15) | TBLInBillMat.ProductCode | CHAR(20) |
| ItemComponentInternalId | Internal Id do Item Componente | estrut_grade.cod_empresa + estrut_grade.cod_item_compon | |||
| InitialDate | Data validade inicial | estrut_grade.dat_validade_ini | DATE | TBLInWOHD.DtPlanStart | DATETIME |
| FinalDate | Data validade final | estrut_grade.dat_validade_fim | DATE | TBLInWOHD.DtPlanEnd | DATETIME |
| IsGhostMaterial | Indica se é fantasma | Se tipo do item for igual a "T"=TRUE; Se tipo do item for diferente de "T"= FALSE | BOOLEAN ( FALSE ou TRUE) | ||
| ItemComponentAmount | Quantidade do item componente | estrut_grade.qtd_necessaria | DECIMAL(14,7) | ||
| LossFactor | Fator de perda | estrut_grade.pct_refug | DECIMAL(6,3) | ||
ListOfScript |
| |||||
| Scriptcode | Código do Roteiro | man_processo_item.roteiro | CHAR(15) | TBLInWOHD.ExtCode | CHAR(20) |
| ScriptAlternative | Alternativo do Roteiro | man_processo_item.roteiro_alternativo | DECIMAL(2,0) | ||
| ActivityInternalID | ID Operação | man_processo_item.seq_processo | DECIMAL(10,0) | ||
| ActivityCode | Código da Operação | man_processo_item.operacao | CHAR(05) | TBLInWodet.Code | CHAR(10) |
| ActivityComponentSequence | Sequência do componente na operação | estrut_grade.cod_posicao | SMALLINT |
Nota | ||
---|---|---|
| ||
|
Transação Roteiro - Operações do Item: ItemScript_1_001.xsd
Identificador da Mensagem: ItemScript
Versão: 1_001
Módulo Logix: Engenharia
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Logix | Tipo | Tabela/Campo: PC-Factory | Tipo |
BusinessContentType | ItemCode | Código item | man_processo_item.item | CHAR(15) | TBLInWOHD.ProductCode TBLInWOHD.WOCode | CHAR(20) |
| ItemDescription | Descrição do item | item.den_item | CHAR(76) | ||
| ItemInternalId | Empresa+Item | man_processo_item.empresa+man_processo_item.item | |||
| ScriptCode | Código do Roteiro | man_processo_item.roteiro | CHAR(15) | ||
| ScriptDescription | Descrição Roteiro | roteiro.den_roteiro | CHAR(30) | ||
| ScriptAlternative | Roteiro Alternativo | man_processo_item.roteiro_alternativo | DECIMAL(2,0) | ||
ListOfActivity |
| |||||
| ActivityInternalID | ID Operação | man_processo_item.seq_processo | DECIMAL(10,0) | ||
| ActivityCode | Código da Operação | man_processo_item.operacao | CHAR(05) | TBLInWodet.Code | CHAR(10) |
| ActivityDescription | Descrição Operação | operacao.den_operac | CHAR(30) | TBLInWodet.Name | CHAR(40) |
| MachineCode | Código da Máquina | man_processo_item.arranjo/man_recurso_processo.recurso | CHAR(05) | TBLInWodet.Resource | CHAR(15) |
| ToolCode | Código Ferramenta | ||||
| ActivityType | Tipo Operação | man_processo_item.apontar_operacao 1=Realiza apontamento; 2=Não realiza. | CHAR(01) | ||
| WorkCenterCode | Código Centro Trabalho | man_processo_item.centro_trabalho | CHAR(05) | TBLInWodet.ManagerGrpCode | CHAR(15) |
| WorkCenterInternalId | Id Centro de Trabalho | man_processo_item.empresa+man_processo_item.centro_trabalho | |||
| UnitItemNumber | Lote padrão | item_man.parametros[1,5] | CHAR(06) | TBLInWodet. StdSpeed | DEC(28,23) |
| TimeResource | Tempo Recurso | TBLInWodet. StdSpeed | DEC(28,23) | ||
| TimeMachine | Tempo Máquina | man_processo_item.qtd_tempo | DECIMAL(11,7) | TBLInWodet. StdSpeed | DEC(28,23) |
| TimeSetup | Tempo Preparação | man_processo_item.qtd_tempo_setup | DECIMAL(11,7) | TBLInWodet. SetUpTime | INT |
| UnitTimeType | Tipo Unidade Tempo | par_pcp.parametros[4,4] 1 = Horas;2=Minutos;3=Segundos;4=Dias | CHAR(01) | TBLInWodet. StdSpeedFormat | TINYINT |
| ScriptAlternative | Alternativo | man_processo_item.roteiro_alternativo | DECIMAL(2,0) | ||
| InitialDate | Data Inicial | man_processo_item.validade_inicial | DATE | TBLInWodet.DtPlanStart | DATETIME |
| FinalDate | Data Final | man_processo_item.validade_final | DATE | TBLInWodet.DtPlanEnd | DATETIME |
| PercentageScrapValue | % Refugo | man_processo_item.pct_retrabalho | DECIMAL(6,3) | ||
| PercentageValue | Proporção | ||||
| ResourceQuantity | Quantidade Recurso | ||||
PartsPerCycle | Quantidade de peças por ciclo | man_processo_item.qtd_pecas_ciclo | DECIMAL(12,7) |
Nota | ||
---|---|---|
| ||
|
Transação Endereços: AdressStock_1_000.xsd
Identificador da Mensagem: AdressStock
Versão: 1_000
Módulo Logix: Engenharia
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Logix | Tipo | Tabela/Campo: PC-Factory | Tipo |
BusinessContentType | WarehouseCode | Armazém/Depósito | sup_endereco_local.local | CHAR(10) | TBLInAddress.WarehouseCode | CHAR(15) |
| LocationCode | Endereço/Localização | sup_endereco_local.endereco | CHAR(11) | TBLInAddress.Code | CHAR(15) |
| AddressInternalId | Chave completa endereço | sup_endereco_local.empresa+sup_endereco_local.local+sup_endereco_local.endereco | |||
| AddressStockDescription | Descrição do endereço | sup_endereco_local.denomin_endereco | CHAR(40) | TBLInAddress.ExtCode | CHAR(20) |
Nota | ||
---|---|---|
| ||
Serão integrados os endereços cadastrados no SUP1637 e MAN10093. |
Transação Motivo de Refugo: WasteReason_1_000.xsd
Identificador da Mensagem: WasteReason
Versão: 1_000
Módulo Logix: Chão de Fábrica
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Logix | Tipo | Tabela/Campo: PC-Factory | Tipo |
BusinessContentType | Code | Código Refugo | defeito.cod_defeito | DECIMAL(3,0) | TBLOutScrap.Code | CHAR(15) |
| Description | Descrição do Refugo | defeito.den_defeito | CHAR(30) | TBLOutScrap.Name | CHAR(30) |
| IsRework | Retrabalho | ||||
| IsScrapMaterial | Refugo Material |
Nota | ||
---|---|---|
| ||
Essa mensagem será gerada pelo PC-Factory e enviado ao Logix. O programa de cadastro do motivo de refugo é o MAN10026. |
Transação Motivo de Parada: StopReason_1_000.xsd
Identificador da Mensagem: StopReason
Versão: 1_000
Módulo Logix: Chão de Fábrica
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Logix | Tipo | Tabela/Campo: PC-Factory | Tipo |
BusinessContentType | Code | Código Motivo Parada | mot_parada.cod_motivo cfp_para.cod_parada | CHAR(05) | TBLOutResourceStatus.Code | CHAR(05) |
| Description | Descrição Parada | mot_parada.des_motivo cfp_para.des_parada | CHAR(30) | TBLOutResourceStatus.Name | CHAR(30) |
| IsEfficiency | Altera Eficiência | ||||
| IsEmailEquipment | E-mail Planejador | ||||
| IsServiceRequest | Emite Solicitação Serviço | ||||
| IsSetup | Parada Setup | TBLOutResourceStatus.FlgSetup | SMALLINT |
Nota | ||
---|---|---|
| ||
Essa mensagem será gerada pelo PC-Factory e enviado ao Logix. O cadastro de Motivo de Parada é efetuado nos programas MAN10095 e MAN1470. |
Transação Ordem de Produção: ProductionOrder_2_005.xsd
Identificador da Mensagem: ProductionOrder
Versão: 2_005
Módulo Logix: Plano Operacional
Tipo de Envio: Síncrona
Mesagem | Tag | Descrição | Tabela/Campo Logix | Tipo | Tabela/Campo: PC-Factory | Tipo |
BusinessContentType | Number | Número Ordem Produção | ordens.num_ordem | DECIMAL(10,0) | TBLInWOHD.Code | CHAR(41) |
| ProductionOrderUniqueID | Empresa+Ordem Produção | ordens.cod_empresa+ordens.num_ordem | |||
| ItemCode | Código Item | ordens.cod_item | CHAR(15) | TBLInWOHD.ProductCode | CHAR(20) |
| ItemDescription | Descrição Item | item.den_item | CHAR(76) | ||
| Type | Fixo "1" - INTERNA | CHAR(01) | TBLInWOHD.WoTypeCode | CHAR(20) | |
| Quantity | Quantidade | ordens.qtd_planej | DECIMAL(10,3) | TBLInWOHD.TotalQty | DEC(19,4) |
| ReportQuantity | Quantidade Reportada | ordens.qtd_boas + ordens.pct_refug + ordens.qtd_sucata | DECIMAL(10,3) | ||
| UnitOfMeasureCode | Unidade Medida | item.cod_unid_med | CHAR(03) | TBLInWoDet.Unit1Code | CHAR(05) |
| RequestOrderCode | Código Pedido Ordem Produção | ordens.num_docum | CHAR(10) | ||
| StatusOrderType | Estado da ordem | 1=Planejada; 2=Liberada; 7=Fechada; 10=Firme; 11=Aberta; 12=Cancelada | CHAR(01) | TBLInWOHD.Status | SMALLINT |
| WarehouseCode | Código Depósito | ordens.cod_local_prod | CHAR(10) | TBLInWOHD.AuxCode1 | CHAR(20) |
| EndOrderDateTime | Data Fim Ordem Produção CP | ordens.dat_entrega | DATE | TBLInWOHD.DtPlanEnd | DATETIME |
| StartOrderDateTime | Data Início Ordem Produção CP | ordens.dat_liberac | DATE | TBLInWOHD.DtPlanStart | DATETIME |
| AbbreviationProviderName | Nome Cliente | clientes.nom_cliente | CHAR(36) | ||
| ScriptCode | Código Roteiro | ordens.cod_roteiro | CHAR(15) | ||
| ReportOrderType | Tipo de Reporte | 1 = Ordem; 2 = Operações; 3 = Ponto Controle; 4 = Item | CHAR(01) | ||
ListOfActivityOrders |
| |||||
| ProductionOrderNumber | Ordem de Produção | ord_compon.num_ordem | DECIMAL(10,0) | TBLInWoDet.Wocode | CHAR(10) |
| ActivityID | ID do Registro | ord_oper.seq_processo | DECIMAL(10,0) | ||
| ActivityCode | Código Operação | ord_oper.cod_operac | CHAR(05) | TBLInWoDet.WODetCode+Split | CHAR(10) |
| ActivityDescription | Descrição Operação | operacao.den_operac | CHAR(30) | TBLInWoDet.WODetName | CHAR(30) |
ListOfMaterialGrids_ItemGrid_GridCode | Código da grade | CHAR(15) | ||||
ListOfMaterialGrids_ItemGrid_GridSequence | Número da grade | DECIMAL(5,0) | ||||
| Split | Desdobramento da operação | ||||
| ItemCode | Código do item | ord_oper.cod_item | CHAR(15) | ||
| ItemDescription | Descrição do item | item.den_item | CHAR(76) | ||
| ActivityType | Tipo Operação | ord_oper.ies_apontamento | CHAR(01) | ||
| WorkCenterCode | Código Centro de Trabalho | ord_oper.cod_cent_trab | DECIMAL(4,0) | TLBInWODet.ManagerGrpCode | CHAR(15) |
| WorkCenterDescription | Descrição Centro de Trabalho | cent_trabalho.den_cent_trab | CHAR(30) | ||
| UnitTimeType | Tipo Unidade Tempo | par_pcp.parametros[4,4] 1 = Horas;2=Minutos;3=Segundos | CHAR(01) | TLBInWODet.StdSpeedFormat | TINYINT |
| TimeResource | Tempo Recurso (Tempo padrão para um lote) | ord_oper.qtd_horas | DECIMAL(11,7) | TLBInWODet.StdSpeed | DEC(28,23) |
| TimeMachine | Tempo Máquina (Tempo para fazer toda a ordem) | ord_oper.qtd_horas * ordens.qtd_planej | DECIMAL(11,7) | TLBInWODet.StdSpeed | DEC(28,23) |
| TimeSetup | Tempo Preparação | ord_oper.qtd_horas_setup | DECIMAL(11,7) | TLBInWODet.SetUpTime | INT |
| TimeMOD | Tempo Homen | ord_oper.tmp_producao | DECIMAL(6,2) | ||
| TimeIndMES | Iindicador de tempo no MES | 1 = Tempo Máquina; 2 = Tempo mão de obra; 3 = Escolha pelo MES. | CHAR(01) | ||
| ScriptCode | Código Roteiro | ordens.cod_roteiro | CHAR(15) | ||
| LaborCode | Código Mão de Obra Direta | ||||
| UnitItemNumber | Lote Padrão | item_man.parametros[1,5] | DECIMAL(10,3) | TLBInWODet.StdSpeed | DEC(28,23) |
| IsActivityEnd | Última Operação | ord_oper.ies_oper_final | BOOLEAN | TLBInWODet.ReportTrigger | TINYINT |
| MachineCode | Código Máquina | ord_oper.cod_arranjo | CHAR(05) | ||
| StartPlanDateTime | Data/Hora Início Programação | ord_oper.dat_inicio | DATE | TLBInWODet.StartPlanDateTime | DATETIME |
| EndPlanDateTime | Data/Hora Fim Programação | ord_oper.dat_entrega | DATE | TLBInWODet.EndPlanDateTime | DATETIME |
| ProductionQuantity | Quantidade a produzir na operação | ord_oper.qtd_planejada | DECIMAL(10,3) | TLBInWODet.Qty | DEC(19,4) |
| ActivityQuantity | Quantidade da operação | ord_oper.qtd_boas+ord_oper.qtd_refugo+ord_oper.qtd_sucata | DECIMAL(10,3) | ||
| UnitActivityCode | Unidade de medida | item.cod_unid_med | CHAR(03) | TLBInWODet.Unit1Code | CHAR(5) |
| SecondUnitActivityCode | Segunda unidade de medida na operação | TLBInWODet.Unit2Code | CHAR(5) | ||
| SecondUnitActivityFactor | Fator de conversão para segunda un. na operação | TLBInWODet.Unit2Factor | DEC(8,4) | ||
| ResourceQuantity | Quantidade de recursos | Fixo "1" | DECIMAL(7,4) | ||
ListOfMaterialOrders |
| |||||
| ProductionOrderNumber | Ordem de produção | ordens.num_ordem | DECIMAL(10,0) | TBLInBillMat.Wocode | CHAR(41) |
| MaterialID | ID do registro da reserva | ord_compon.num_seq | DECIMAL(10,0) | ||
| MaterialCode | Código Item Reserva | ord_compon.cod_item_compon | CHAR(15) | TBLInBillMat.ProductCode | CHAR(20) |
| MaterialDescription | Descrição do Item | item.den_item | CHAR(76) | ||
| ScriptCode | Código Roteiro | CHAR(15) | |||
| ActivityCode | Código Operação | CHAR(05) | TBLInBillMat.WODetCode | CHAR(10) | |
| WarehouseCode | Código Depósito | ord_compon.cod_local_baixa | CHAR(10) | TBLInBillMat.ExtCode | CHAR(20) |
| MaterialDate | Data Reserva | ord_compon.dat_entrega | DATE | ||
| MaterialQuantity | Quantidade Reserva | necessidades.qtd_necessaria | DECIMAL(14,7) | TBLInBillMat.TotalQty | DEC(19,4) |
| LotCode | Lote | op_lote.num_lote | CHAR(15) | ||
| PertMaterialNumber | Sequência do item | ||||
| RequestType | Tipo da Requisição | item_man.ies_sofre_baixa Se item_man.ies_sofre_baixa for igual a "S" = 1; se item_man.ies_sofre_baixa for igual a "N" = 2 | CHAR(01) | TBLInBillMat.Comments | CHAR(500) |
ListOfAllocatedMaterial |
| |||||
| WarehouseCode | Código Depósito | op_lote.cod_local_baixa | CHAR(15) | TBLInMovMat.WarehouseCode | CHAR(15) |
| LotCode | Código Lote | op_lote.num_lote | CHAR(15) | TBLInMovMat.LotCode | CHAR(41) |
| LocationCode | Localização/Endereço | op_lote.endereco | CHAR(15) | TBLInMovMat.AddressCode | CHAR(15) |
| ActivityCode | Código Operação | CHAR(05) | TBLInMovMat.WoDetCode | CHAR(10) | |
| ScriptCode | Código Roteiro | CHAR(15) | |||
| AllocationQuantity | Quantidade Alocada | op_lote.qtd_transf | DECIMAL(15,3) | TBLInMovMat.Qty | DEC(19,4) |
| AllocationType | Tipo Alocação | 1-Soma, 2-Diminui, 3-Absoluto Fixo 3 (Valor Absoluto) | CHAR(01) | TBLInMovMat.AllocationType | INT |
| SubLoteCode | Sub Lote | ||||
| NumberSeries | Número de Serie | op_lote.num_serie | CHAR(15) | ||
| LotDueDate | Data de Validade | op_lote.dat_hor_valid | DATE | TBLInMovMat.LotDtValidity | DATETIME |
ListOfQuotaActivity |
| |||||
| ProductionOrderNumber | Número Ordem Produção | ordens.num_ordem | CHAR(20) | ||
| ControlType | Seleção Split | ||||
| ActivityID | ID Operação | ord_oper.cod_operac | CHAR(10) | ||
| ItemCode | Código do item | ordens.cod_item | CHAR(15) | ||
| ItemDescription | Descrição do item | item.den_item | CHAR(40) | ||
| StartActivityDateTime | Data/Hora Início Atividade | ord_oper.dat_inicio | DATETIME | TBLInWODet.StartPlanDateTime | DATETIME |
| EndActivityDateTime | Data/Hora Fim Atividade | ord_oper.dat_entrega | DATETIME | TBLInWODet.EndPlanDateTime | DATETIME |
| ApprovedQuantity | Quantidade Aprovada | ord_oper.qtd_boas | DEC(13,4) | ||
| ScrapQuantity | Quantidade Refugada | ord_oper.qtd_refugo | DEC(13,4) | ||
| MachineCode | Código Máquina | ord_oper.cod_arranjo | CHAR(20) | TBLInWODet.ResourceCode | CHAR(15) |
| MachineDescription | Descrição da Máquina | CHAR(40) | |||
| ActivityQuantity | Quantidade Prevista | ord_oper.qtd_planejada | DEC(13,4) | TBLInWODet.QTY | DEC(19,4) |
| StandardSetup | Tempo Padrão Preparação | NUM(10) | |||
| StandardActivity | Tempo Padrão Operação | NUM(10) | |||
| StandardPostprocessing | Tempo Padrão Pós_processo | NUM(10) | |||
| StandardMachine | Tempo Padrão Máquina | NUM(10) | |||
| StandardOperator | Tempo Padrão MOD | NUM(10) | |||
| UsedCapacity | Capacidade Utilizada | DEC(12,4) | |||
| ActivityTimeQuantity | Hora Disponível Atividade | CHAR(08) | |||
| ReportQuantity | Quantidade Reportada | ord_oper.qtd_boas + ord_oper.qtd_refugo | DEC(13,4) | ||
| ReworkQuantity | Quantidade Retrabalhada | DEC(12,4) | |||
| StartSetupDateTime | Data/Hora Início Preparação | DATETIME | |||
| EndSetupDateTime | Data/Hora Fim Preparação | DATETIME | |||
| TimeSetup | Tempo Preparação | ord_oper.qtd_horas_setup | NUM(10) | TBLInWODet.SetUpTime | TINYINT |
| TimeMachine | Tempo Máquina | ord_oper.qtd_horas | NUM(10) | TBLInWODet.StdSpeed | DEC(28,23) |
| TimeOperator | Tempo MOD | NUM(10) | |||
| TimePostprocessing | Tempo Pós Processo | NUM(10) | |||
| QuotaActivityID | ID Split | ord_oper.num_seq_processooperac | CHARDECIMAL(053,0) | ActivityCode+ TBLInWODet.WODetCode | CHAR(10) |
| WorkCenterCode | Centro de Trabalho | ord_oper.cod_cent_trab | CHAR(10) | TBLInWODet.ManagerGrpCode | CHAR(15) |
| ReportedSplit | Split Reportado | BOOELAN | |||
| StatusActivityType | Estado Operação | 1=Não Iniciado;2=Programado;3=Liberado;4=Iniciado;5=Finalizado;6=Suspenso | CHAR(01) | ||
ListOfQuotaActivityTools |
| |||||
| ToolCode | Ferramenta | ||||
| ToolQuantity | Quantidade Ferramenta |
Nota | ||
---|---|---|
| ||
|
LOGIX x APS x TOTVS MES
Ordens geradas pelo APS serão enviadas via JOB - MAN10544.
A integração do APS x LOGIX x TOTVS MES deverá considerar SOMENTE as ordens de produção alteradas e/ou criadas pelo APS e enviadas ao LOGIX.
No MAN10538, folder Ordens de Produção, é possível parametrizar se existe a integração com o APS.
O JOB para o envio de ordens geradas irá executar somente se o parâmetro "APS" estiver assinalado. Serão enviadas as ordens com origem no APS (ordens.ies_origem = '9') OU que possuam dados na tabela man_equival_ordem_producao.
Para o envio deverá ter um controle do que já foi enviado (campo ordens_complement.reservado_6). Enviar somente ordens que tenham o reservado_6 nulo ou branco. Após o envio atualizar esse campo para "E" = Enviado. Quando o APS atualizar uma ordem, deverá setar novamente o reservado_6 para nulo para que o JOB possa reenviá-la.
Para cadastrar o JOB deve-se utilizar o JOB0003.
Usar como parâmetros, empresa e usuário.
Processos
Transação Apontamento de Parada de Máquina: StopReport_1_001.xsd
Identificador da Mensagem: StopReport
Versão: 1_001
Módulo Logix: Chão de Fábrica
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo Logix | Tipo | Tabela/Campo: PC-Factory | Tipo |
ProductionOrder | Ordem de Produção | man_apo_mestre.ordem_producao | DEC(10,0) | |||
ActivityCode | Código da Operação | man_apo_detalhe.operacao | CHAR(05) | |||
ActivityId | ID do Registro | man_apo_detalhe.sequencia_operacao | INT | |||
ProductionShiftNumber | Turno | man_tempo_producao.turno_producao | ||||
| MachineCode | Código Máquina | man_apo_detalhe.eqpto | CHAR(15) | TBLOutRSEv.ResourceCode | CHAR(15) |
| MachineDescription | Descrição Máquina | ||||
| StopReasonCode | Código Motivo Parada | man_tempo_parada.parada_producao | CHAR(03) | TBLOutRSEv.ResourceStatusCode | CHAR(20) |
| StopReasonDescription | Descrição Motivo Parada | mot_parada.des_motivo | CHAR(30) | ||
| StartDateTime | Data/Hora Início | man_tempo_producao.data_ini_producao man_tempo_producao.hor_ini_producao | DATE CHAR(08) | TBLOutRSEv.ShiftDtStart | DATETIME |
| EndDateTime | Data/Hora Fim | man_tempo_producao.dat_final_producao man_tempo_producao.hor_final_producao | DATE CHAR(08) | TBLOutRSEv.ShiftDtEnd | DATETIME |
| OperatorCode | Código Operador | man_apo_detalhe.operador | CHAR(15) | TBLOutRSEv.UserCodeStart | CHAR(30) |
| ReportDateTime | Data/Hora Reporte | man_apo_mestre.data_producao | DATE | TBLOutRSEv.DtTimeStamp | DATETIME |
| ToolCode | Código Ferramenta | ||||
| ProductionTeamCode | Código Equipe | ||||
| StopType | Tipo Parada (1=Não Programada;2=Programada) | ||||
| ReportSequence | ID PC-Factory | TBLOutRSEv.IDOutRSEv | |||
ReversedReport | Indicador de Estorno | TRUE ou FALSE | BOOLEAN | |||
IntegrationReport | Registro a ser estorno | man_apo_mestre.seq_reg_mestre | INT |
Nota | ||
---|---|---|
| ||
|
Transação Apontamento de Produção: ProductionAppointment_2_000.xsd
Identificador da Mensagem: ProductionAppointment
Versão: 2_003
Módulo Logix: Chão de Fábrica
Tipo de Envio: Síncrona
BusinessContentType | MachineCode | Máquina | man_apo_detalhe.eqpto | CHAR(15) | TBLOutInteg.ResourceCode | CHAR(15) |
---|---|---|---|---|---|---|
ProductionOrderNumber | Ordem de Produção | man_apo_mestre.ordem_producao | DECIMAL(10,0) | TBLOutInteg.WOCode | CHAR(41) | |
ActivityCode | Operação | man_apo_detalhe.operacao | CHAR(05) | TBLOutInteg.WODetCode | CHAR(10) | |
Split | Split | TBLOutInteg.WODetCode | CHAR(10) | |||
ActivityID | ID Operação | man_apo_detalhe.seq_processo | DECIMAL(10,0) | |||
ItemCode | Produto | man_apo_mestre.item_produzido | CHAR(15) | TBLOutInteg.ProductCode | CHAR(20) | |
ApprovedQuantity | Quantidade Aprovada | man_item_produzido.qtd_produzida | DECIMAL(10,3) | TBLOutInteg.Qty | DEC(19,4) | |
ScrapQuantity | Quantidade Refugada | man_item_produzido.qtd_produzida | DECIMAL(10,3) | TBLOutInteg.Qty | DEC(19,4) | |
ReworkQuantity | Quantidade Retrabalhada | |||||
StartSetupDateTime | Data/Hora Início Preparação | |||||
EndSetupDateTime | Data/Hora Fim Preparação | |||||
SetupCode | Código Preparação | |||||
OpTimeInt | Tempo Operação | |||||
ProductionShiftCode | Código Modelo Turno | |||||
ProductionShiftNumber | Número Turno | man_tempo_producao.turno_producao | CHAR(05) | TBLOutInteg.Shift | SMALLINT | |
DocumentCode | Documento | TBLOutInteg.DocNumber | CHAR(20) | |||
DocumentSeries | Série Documento | |||||
StartReportDateTime | Data/Hora Início Reporte | man_tempo_producao.data_ini_producao + man_tempo_producao.hor_ini_producao | DATETIME | TBLMSGERP.Start | DATETIME | |
EndReportDateTime | Data/Hora Fim Reporte | man_tempo_producao.dat_final_producao + man_tempo_producao.hor_final_producao | DATETIME | TBLMSGERP.End | DATETIME | |
ReversedReport | Estorno do Apontamento | TRUE ou FALSE | BOOLEAN | |||
ReversalDate | Data do estorno | TBLOutInteg.DTEv | DATETIME | |||
ReportDateTime | Data/Hora Reporte | man_apo_mestre.data_apontamento | DATE | TBLOutInteg.DtEv | DATETIME | |
WarehouseCode | Código Depósito | man_item_produzido.local | CHAR(10) | TBLOutInteg.WarehouseCode | CHAR(15) | |
LotCode | Lote/Série | man_item_produzido.lote_produzido ou man_item_produzido.serie | CHAR(15) CHAR(25) | TBLOutInteg.LotCode | CHAR(41) | |
LotDueDate | Data Validade Lote | man_item_produzido.dat_valid | DATE | TBLLot.DtValidity | DATETIME | |
CloseOperation | Encerra Operação | ord_oper.ies_apontamento | CHAR(01) | |||
LocationCode | Localização | man_item_produzido.endereco | CHAR(15) | TBLOutInteg.Address1Code | CHAR(15) | |
ListOfReversalAppointments | ||||||
IntegrationReport | Registro a ser estornado | man_apo_mestre.seq_reg_mestre | DECIMAL(10,0) | TBLOutInteg.TransacType | TINYINT | |
ReversalType | Tipo do Estorno | |||||
ReversalQuantity | Quantidade revertida | |||||
WasteAppointment | ||||||
WasteCode | Código Refugo | man_def_producao.motivo_defeito | DECIMAL(3,0) | TBLOutInteg.ScrapCode | CHAR(15) | |
WasteDescription | Descrição Refugo | defeito.den_defeito | CHAR(30) | |||
ScrapQuantity | Quantidade Refugada | man_def_producao.qtd_defeito_real | DECIMAL(10,3) | TBLOutInteg.Qty | DEC(18,4) | |
ScrapProduct | Produto Refugado | |||||
WareHouseCode | Depósito Produto Refugado | |||||
ScrapProductTo | Refugo Gerado | man_item_produzido.item_produzido | CHAR(15) | |||
WareHouseCodeTo | Depósito do Refugo gerado | |||||
AdressCode | Endereço Origem | |||||
AdressCodeTo | Endereço Destino | |||||
NumberSeries | Número de Série | |||||
NumberSeriesTo | Número de Série Destino | |||||
LotCode | Lote | |||||
SubLoteCode | Sub Lote | |||||
LotDueDate | Data de Validade | |||||
CostCenterCode | Centro de Custo | |||||
ResourceAppointment | ||||||
OperatorCode | Código Operador | man_apo_detalhe.operador | CHAR(15) | TBLOutInteg.UserCode | CHAR(30) | |
StartDateTime | Data/Hora Início | TBLMSGERP.Start | DATETIME | |||
EndDateTime | Data/Hora Fim | TBLMSGERP.End | DATETIME | |||
MOBTime | Tempo Mão de Obra Direta | |||||
ExtraTime | Tempo Extra | |||||
UtilTime | Tempo Útil | |||||
ProductionShiftCode | Código Modelo Turno | |||||
ProductionShiftNumber | Número Turno | TBLOutInteg.Shift | SMALLINT | |||
SupplyOrder | ||||||
ProductionOrderNumber | Número Ordem Produção | man_apo_mestre.ordem_producao | DECIMAL(10,0) | TBLOutInteg.WOCode | CHAR(41) | |
MaterialCode | Código Item Reserva | man_comp_consumido.item_componente | CHAR(15) | TBLOutInteg.ProductCode | CHAR(20) | |
UsedQuantity | Quantidade Utilizada | man_comp_consumido.qtd_baixa_real | DECIMAL(10,3) | TBLOutInteg.Qty | DEC(19,4) | |
WarehouseCode | Código Depósito | man_comp_consumido.local_estoque | CHAR(10) | TBLOutInteg.WarehouseCode | CHAR(15) | |
LocationCode | Localização | man_comp_consumido.endereco | CHAR(15) | TBLOutInteg.Address1Code | CHAR(15) | |
LotCode | Lote/Série | man_comp_consumido.lote_componente ou man_comp_consumido.serie | CHAR(15) CHAR(25 | TBLOutInteg.LotCode | CHAR(41) | |
ActivityCode | Código Operação | TBLOutInteg.WODetCode | CHAR(10) | |||
ScriptCode | Roteiro | |||||
ReportToolActivity | ||||||
ToolCode | Código Ferramenta |
Nota | ||
---|---|---|
| ||
|
Nota | ||
---|---|---|
| ||
|
Nota | ||
---|---|---|
| ||
|
Transação Transferências: TransferWarehouse_1_003.xsd
Identificador da Mensagem: TransferWarehouse
Versão: 1_003
Módulo Logix: Estoque
Tipo de Envio: Síncrona
Nota | ||
---|---|---|
| ||
Esta mensagem será gerada pelo PC-Factory e enviada ao Logix. |
BusinessContentType | CompanyId | Empresa | ||||
---|---|---|---|---|---|---|
BranchId | Filial | |||||
CompanyInternalId | InternalId da chave completa da empresa | |||||
InternalId | InternalId da transferência | |||||
Number | Número da Movimentação | |||||
RegisterDateTime | Data de Emissão da solicitação | |||||
TransferWarehouseType | ||||||
InternalId | InternalId da transferência | |||||
EmissionDate | Data de Emissão | ESTOUE_TRANS.DAT_MOVTO | DATE | TBLOutInteg.DtTimeStamp | DATETIME | |
ItemCodeFrom | Item/Produto Origem | ESTOUE_TRANS.COD_ITEM | CHAR(15) | TBLOutInteg.ProductCode | CHAR(20) | |
ItemCodeTo | Item/Produto Destino | ESTOUE_TRANS.COD_ITEM | CHAR(15) | TBLMovEv.ProductCode | CHAR(20) | |
UnitOfMeasureFrom | Unidade de Medida Origem | |||||
UnitOfMeasureTo | Unidade de Medida Destino | |||||
Quantity | Quantidade | ESTOUE_TRANS.QTD_MOVTO | DEC(12,2) | TBLOutInteg.Qty | DEC(19,4) | |
WarehouseCodeFrom | Código do Armazém de Origem | ESTOUE_TRANS.COD_LOCAL_EST_ORIG | CHAR(02) | TBLOutInteg.WarehouseCode | CHAR(15) | |
WarehouseCodeTo | Código do Armazém Destino | ESTOUE_TRANS.COD_LOCAL_EST_DEST | CHAR(02) | TBLMovEv.WarehouseCode | CHAR(15) | |
LotNumberFrom | Número do Lote de Origem | ESTOUE_TRANS.NUM_LOTE_ORIG | CHAR(10) | TBLOutInteg.LotCode | CHAR(41) | |
LotNumberTo | Número do Lote de Destino | ESTOUE_TRANS.NUM_LOTE_DEST | CHAR(10) | TBLMovEv.LotCode | CHAR(41) | |
SubLotNumber | Número do SubLote | |||||
LotExpirationDateFrom | Data de validade do Lote Origem | TBLLot.DtDue | DATETIME | |||
LotExpirationDateTo | Data de validade do Lote Destino | TBLLot.DtDue | DATETIME | |||
AddressFrom | Endereço Origem | TBLOutInteg.Address1Code | CHAR(15) | |||
AddressTo | Endereço Destino | TBLOutInteg.Address2Code | CHAR(15) | |||
NumberSeries | Número de série | TBLOutInteg.LotCode | CHAR(41) |
Nota | ||
---|---|---|
| ||
|
Transação Movimentações de Estoque: MovementsInternal_1_001.xsd
Identificador da Mensagem: MovementsInternal
Versão: 1_001
Módulo Logix: Estoque
Tipo de Envio: Síncrona
Nota | ||
---|---|---|
| ||
Esta mensagem será gerada pelo PC-Factory e enviada ao Logix. |
BusinessContentType | CompanyId | Código da empresa | ||||
BranchId | Filial | |||||
CompanyInternalId | InternalId da chave completa da empresa | |||||
InternalId | InternalId da movimentação. | |||||
TypeMovementCode | Código do Tipo de Movimento interno | |||||
EmissionDate | Data de Emissão | ESTOQUE_TRANS.DAT_MOVTO | DATE | TBLOutInteg. DtTimeStamp | DATETIME | |
ItemCode | Código do Produto | ESTOQUE_TRANS.COD_ITEM | CHAR(15) | TBLOutInteg.ProductCode | CHAR(20) | |
UnitOfMeasureCode | Unidade de Medida | |||||
Quantity | Quantidade | ESTOQUE_TRANS.QTD_MOVTO | DEC(12,2) | TBLOutInteg.Qty | DEC(19,4) | |
WarehouseCode | Código do Armazém | ESTOQUE_TRANS.COD_LOCAL_EST_DEST ESTOQUE_TRANS.COD_LOCAL_EST_ORIG | CHAR(02) | TBLOutInteg.WarehouseCode | CHAR(15) | |
LotNumber | Lote | ESTOQUE_TRANS.NUM_LOTE_DEST ESTOQUE_TRANS.NUM_LOTE_ORIG | CHAR(10) | TBLOutInteg.LotCode | CHAR(41) | |
SubLotNumber | SubLote | CHAR(06) | ||||
LotExpirationDate | Data Validade do Lote | ESTOQUE_TRANS_END.DAT_HOR_VALIDADE | DATE | TBLLot.DTDUE | DATETIME | |
Address | Endereço | ESTOQUE_TRANS_END.ENDERECO | CHAR(15) | TBLOutInteg.Address1Code | CHAR(15) | |
NumberSeries | NumberSeries | ESTOQUE_TRANS_END.NUM_SERIE | CHAR(20) | TBLOutInteg.LotCode | CHAR(41) | |
InputOrOutput | Movimento de Entrada ou Saída | E=Entrada / S = Saída | CHAR(01) | TBLOutInteg.MovTypeCode | CHAR(05) | |
ReferenceCode | Referência | -- | ||||
ScriptCode | Roteiro | CHAR(02) | ||||
ActivityCode | Operação | CHAR(02) | TBLOutInteg.WODetCode | CHAR(15) | ||
ProductionOrderNumber | Ordem de Produção/Documento | CHAR(13) | TBLOutInteg.WOCode | CHAR(41) | ||
FatherItemCode | Item Pai | -- |
Nota | ||
---|---|---|
| ||
|
Transação Saldo: ItemStockLevel_1_000.xsd
Identificador da Mensagem: ItemStockLevel
Versão: 1_000
Módulo Logix: Estoque
Tipo de Envio: Síncrona
Mensagem | Tag | Descrição | Tabela/Campo: Logix | Tipo | Tabela/Campo: PC-Factory | Tipo |
---|---|---|---|---|---|---|
BusinessContentType | ItemCode | Código do produto | ESTOQUE_TRANS_END.COD_ITEM | CHAR(15) | TBLInMovMat.ProductCode | CHAR(20) |
ItemDescription | Descrição do item | ITEM.DEN_ITEM_REDUZ | CHAR(30) | |||
ListOfStock | ||||||
ReferenceCode | Referência | -- | ||||
WarehouseCode | Depósito/Local de estoqe/Armazem | ESTOQUE_TRANS.COD_LOCAL_EST_DEST ESTOQUE_TRANS.COD_LOCAL_EST_ORIG | CHAR(02) | TBLInMovMat.WarehouseCode | CHAR(15) | |
LotCode | Número do Lote | ESTOQUE_TRANS.NUM_LOTE_DEST ESTOQUE_TRANS.NUM_LOTE_ORIG | CHAR(10) | TBLInMovMat.LotCode | CHAR(41) | |
SubLotCode | Sub-Lote | CHAR(06) | ||||
NumberSeries | Número de Série | ESTOQUE_TRANS_END.NUM_SERIE | CHAR(20) | |||
AddressCode | Endereço/Localização | ESTOQUE_TRANS_END.ENDERECO | CHAR(15) | TBLInMovMat.AddressCode | CHAR(15) | |
LotDueDate | Data de Validade | ESTOQUE_TRANS_END.DAT_HOR_VALIDADE | DATE | TBLInMovMat.LotDtValidity | DATETIME | |
CurrentStockAmount | Saldo de estoque | DEC(12,2) | ||||
BookedStockAmount | Quantidade Reservada | DEC(12,2) | ||||
AvailableStockAmount | Saldo disponível | DEC(12,2) | ||||
QuantityUpdated | Quantidade Atualizada | ESTOQUE_TRASN_END.QTD_MOVTO | DEC(12,2) | TBLInMovMat.Qty | DEC(18,2) | |
InputOutput | Entrada ou Saída | 1 = Entrada ou 2 = Saída | CHAR(01) | TBLInMovMat.Classification | CHAR(15) |
Nota | ||
---|---|---|
| ||
|
As movimentações de estoque serão enviadas via JOB - MAN10543. Este JOB irá selecionar as movimentações de estoque das tabelas estoque_trans/estoque_trans_end, cuja operação de estoque está parametrizada (MAN10538).
Para cadastrar o JOB deve-se utilizar o JOB0003.
Usar como parâmetros , empresa e usuário.
Transação Saldo em Estoque - Request: StockLevel_2_000.xsd
Identificador da Mensagem: StockLevel
Versão: 2_000
Módulo Logix: ESTOQUE
Tipo de Envio: Síncrona
Para este tipo de atualização o PC-Factory solicita o saldo ao Logix. A mensagem possui duas partes. O Request, nas quais são passados os parâmetros para a consulta do saldo, e o Return, que contém o retorno do saldo.
Request será gerado pelo PC-Factory e enviado ao Logix. O Return será gerado pelo Logix e enviado ao PC-Factory.
Request
ListOfRequest | ItemInternalId | Código do produto | CHAR(15) |
ReferenceCode | Referência | CHAR(20) | |
WarehouseInternalId | Código do depósito/local de estoque/Armazém | CHAR(10) | |
LotNumber | Lote | CHAR(10) | |
SubLotCode | SubLote | CHAR(10) | |
SerialNumber | Número de Série | CHAR(20) | |
Address | Localização | CHAR(15) | |
LotExpirationDate | Data de Validade | DATE |
Nota | ||
---|---|---|
| ||
|
Return
ReturnContentType | ClosingStockDate | Data fechamento estoque | -- | |
ListOfReturnItem | CompanyId | Empresa | ||
BranchId | Filial | |||
CompanyInternalId | Empresa + Filial | |||
ItemInternalId | Código do produto | ESTOQUE_LOTE_ENDER.COD_ITEM | CHAR(15) | |
ReferenceCode | Referência | -- | ||
WarehouseInternalId | Local de Estoque (Armazém/Depósito) | ESTOQUE_LOTE_ENDER.COD_LOCAL | CHAR(10) | |
LotNumber | Número do Lote | ESTOQUE_LOTE_ENDER.NUM_LOTE | CHAR(10) | |
SubLotCode | Sub Lote | CHAR(10) | ||
LotExpirationDate | Data de validade | ESTOQUE_LOTE_ENDER.DAT_HOR_VALIDADE | DATE | |
SerialNumber | Número de série | ESTOQUE_LOTE_ENDER.NUM_SERIE | CHAR(20) | |
Address | Localização | ESTOQUE_LOTE_ENDER.ENDERECO | CHAR(15) | |
CurrentStockAmount | Saldo do Produto em quantidade | DEC(17,4) | ||
BookedStockAmount | Quantidade reservada em Estoque | DEC(17,4) | ||
AvailableStockAmount | Saldo disponível do Produto em quantidade | DEC(17,4) | ||
UnitItemCost | Custo unitário do Produto | -- | ||
AverageUnitItemCost | Custo médio do Produto | -- | ||
ValueOfCurrentStockAmount | Saldo atual do estoque do produto em valor | -- |
Nota | ||
---|---|---|
| ||
|
Limitações / Restrições Gerais
A integração não contempla a geração cadastramentos via Fluig (WorkFlow) ou rotinas não descritas nesse documento.
Situações comuns
Possíveis situações problemáticas comuns que podem ocorrer durante o funcionamento da integração e como solucioná-los:
- Quando uma mensagem é enviada do Logix para o PC-Factory, podem ocorrer situações em que o WebService não estará totalmente funcional. Nesses casos, uma mensagem de erro genérica irá aparecer na tela:
Não foi possível realizar a conexão com o WebService do PCFactory.
Para resolver este problema, verifique as configurações do sistema de destino, analisando o funcionamento do servidor utilizado para esta comunicação e a habilitação do endereço do WebService. - Clientes que possuem regras específicas que afetam as rotinas listadas neste documento.
Para resolver este problema, deverá verificar o uso de ponto de entrada. - Tempo de espera do WebService. Devido alguns processos serem demorados, quando o ERP envia o retorno, o WebService pode não estar mais no aguardo.
Alterar o tempo de espera do WebService PC-Factory.
Checklist de suporte da aplicação
Checklist de Verificações:
- Na rotina de parâmetros, MAN10538, verificar se o campo Integração Ativa? está como "1 - ATIVO".
- Na rotina de parâmetros, MAN10538, testar conexão com o WebService da PPI informado por meio do botão Testar.
- Configuração das sessões WEBSERVICE do APPSERVER.INI;
- Realizar possíveis ajustes na integração quanto à configuração ou negócio.