Páginas filhas
  • DI Integração PCP Logix x PPI-Multitask

Versões comparadas

Chave

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

INTEGRAÇÃO PCP LOGIX X PPI-Multtask

Contexto de negócio (Introdução)

  1. 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).

  2. Planejamento e Controle da Produção
    A reunião dos meios de produção (matéria-prima, mão de obra e equipamentos) possibilita a fabricação de produtos que surgem pela ação dos Sistemas produtivos. Os planos que servem de guia na execução e no controle da produção são comandados pelo órgão auxiliar denominado Planejamento e Controle da Produção (PCP), que dita normas à 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
  • 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.

 

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 do framework da 12.1.17.

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
NameSpace=http://totvs.com
URLLocation=http://10.80.128.17:2347
Logix=1

 

[HTTP]

Enable=1

Port=8080

path=c:\totvs\bin\smartclient\


;FIM CONFIGURACAO WEBSERVICE


 

 

 

 

Instalação/Atualização

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

  1. Abrir o programa de Parâmetros da integração: MAN10538.
  2. Setar o campo Ativo para "Ativo".
  3. No campo Caminho Webservice informar a URL do WebService da PPI-Multitask.
  4. Verificar a conectividade do WebService por meio do botão Testar.
  5. Indicar se a integração irá gerar fisicamente os arquivos XML.
  6. Configurar os filtros para cada informação que será trafegada entre os sistemas.
  7. Confirmar a ativação por meio do botão CONFIRMA.

O botão de Testar verifica se é possível realizar a conexão com o WebService informado no campo Caminho. Este botão tem dois retornos:

  • Conexão com o WebService realizada com Sucesso.
  • Não foi possível realizar a conexão com o WebService do PC-Factory.

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 o usuário requer conhecimento do dicionário de dados pois é utilizado diretamente o nome das tabelas e dos campos.
Exemplo:
Montar um filtro para que somente seja enviado os 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 ;
  • Criançã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.

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;
     

 

 

 

 

Controle de Versão

O grupo TOTVS, representado por suas marcas, irá administrar as demandas de evolução dos layouts e demais ajustes, acordando junto aos solicitantes o prazo de liberação de release.

Todas as evoluções programadas deverão ser discutidas e aprovadas pelas marcas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das marcas e alinhamento com as diretivas definidas pelo Comitê de Integração TOTVS.

Suporte

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

Observação: Este modelo de suporte está sendo revisado pela TOTVS.

Transações/Entidades/Mensagens únicas

As seguintes transações serão trocadas entre a TOTVS e a PPI-Multitask:

 

 

 Fluxo das Informações

 

Método

ID

Descrição

Origem

Destino

XSD (versões podem variar)

ProgramasTabela

Cadastros

01

Item

Logix

PC-Factory

Item_4_001.xsd

MAN10021ITEM

02

Local de Estoque

Logix

PC-Factory

Warehouse_1_001.xsd

SUP10002LOCAL

03

Máquinas

Logix

PC-Factory

Machine_1_001.xsd

MAN10072

MAN10078

REC_ARRANJO

RECURSO

05EstruturaLogixPC-FactoryItemStructure_1_001MAN10002ESTRUT_GRADE
06RoteiroLogixPC-Factory ItemScript_1_000

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
08EndereçoLogixPC-Factory AddressStock_1_000

MAN10093

SUP1637

SUP_ENDERECO_LOCAL

Processos

09

Motivo de Parada

PC-Factory

Logix

StopReason_1_000

MAN10095

MOT_PARADA

10Motivo de RefugoPC-FactoryLogixWasteReason_1_000

MAN10026

DEFEITO

11Apontamento de ProduçãoPC-FactoryLogixProductionAppointment_2_002MAN8228

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

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:
    a. Operador efetua reporte normalmente conforme sua operação no PC-Factory.
    b. Em um processo batch ou disparado paralelamente no sistema, ocorre a montagem da mensagem (XML) conforme Schema de Mensagem Única TOTVS e o envio dessa mensagem(XML) para o Logix; que validará a mensagem e encaminhará ao respectivo adapter de negócio para processamento.
    c. Em caso de erros, esse reporte ficará com um status de pendente para envio dentro do software MES e o usuário poderá tomar ações no próprio PC Factory (o Logix registrará em LOG o processamento).
    d. Em caso de sucesso no reporte, será retornado ao PC-Factory o número do registro do reporte realizado no 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

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 protheus.</Message>

   </ListOfMessages>

</ProcessingInformation>

 

Com Sucesso:

<ProcessingInformation>

         <ProcessedOn>2017-03-28T08:57:28</ProcessedOn>

         <Status>OK</Status>

</ProcessingInformation>

<ReturnContent>

         <ListOfInternalId>

            <InternalId>

               <Name>PRODUCTIONAPPOINTMENTINTERNALID</Name>

               <Destination>5090</Destination>

            </InternalId>

         </ListOfInternalId>

</ReturnContent>

 

Situações inesperadas que podem ocorrer: a parada do serviço do 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:

1Processado na primeira tentativa com ERRO ou OK1 ou 2
2Registro já processado com retorno de erro2
3Registro já processado com sucesso1
4Registro em processamento0

 

Importante:

 
  • Caso um registro fique preso com status de "registro em processamento", este poderá ser destravado pela rotina MAN10540, informando o IDMES correspondente.
  • O reprocessamento de uma mensagem com ERRO(2) pode ser feito passando a tag Reprocess = true.
    Exemplo:

    <BusinessEvent>

                <Entity>productionappointment</Entity>

                <Event>upsert</Event>

                <Identification>

                  <key name="IDPCFactory">9o93049u88557</key>

                  <key name="Reprocess">true</key>

                </Identification>

            </BusinessEvent>


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 "Operações": Define se o filtro criado no folder "Roteiros" deve ser utilizado para filtrar as operações da ordem de produção.
  • Roteiros
  • Estrutura
  • Endereço

 

 

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á divida 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

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ário 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 tabela com exemplo da estrutura do item CAMISA.

 

Produto: CamisaCORBRANCOAZULPRETO
TAMG,HD Z
PequenoE,FA,B,CY 
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





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ódigo Filial

  

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)

 

 

 DetailEspecificações do item CHAR(60)  

Nota:

  • O PC-Factory não trabalha com o conceito grade. Para atender esse conceito existe o DE-PARA de itens entre os sistemas. Informações registradas na tabela MAN_ITEM_MES.
    Na tag Code, quando o parâmetro "Utilizar o conceito de grade de produto?" localizado no LOG00087, Processo Manufatura, Engenharia, Grade, estiver igual a "Sim", será gravado o conteúdo do ID ITEM MES, registrado na tabela de/para de itens entre o Logix e o PC-Factory(MAN_ITEM_MES). Quando usa o conceito grade, o envio do XML de itens é processado da seguinte forma:
    1 - Ao cadastrar o item no folder básico ou alterar os demais folders é enviada a mensagem de item ao PC-Factory e gerada a MAN_ITEM_MES, sendo que, Item Logix igual a ITEM MES.
    2 - Ao setar o controle de grade no folder Grades e Dimensionais é enviado uma mensagem de DELETE do item e excluído o registro na MAN_ITEM_MES. Quando a grade for informada nas rotinas MAN10002 (Estrutura de Produtos) ou MAN10243 (Processos) ou folder Planej. Grade ou MAN10002 será regerada a MAN_ITEM_MES e a mensagem do item será reenviado com o ID MES atualizado.
    Caso o parâmetro "Utilizar o conceito de grade de produto?" localizado no LOG00087, Processo Manufatura, Engenharia, Grade, estiver igual a "Não", a tabela man_item_mes não será gravada.
  • Na tag StandardWarehouseCode será considerado a tabela/campo item.cod_local_estoq. Caso o mesmo esteja nulo, será considerado o parâmetro "Local estoque padrão' localizado no LOG00087, Administração Logix, Controle Geral, Integração entre Sistemas.
  • Na tag StandardWarehouseInternalId será considerado o código da empresa (item.cod_empresa) + o local de estoque existente na tag StandardWarehouseCode.
  • Na tag EconomicLot, caso o tipo do item seja igual a "Produzido" ou "Final" será gravado 0 (zero). Caso o tipo do item seja diferente de "Produzido" ou "Final", será considerado a tabela/campo item_sup.qtd_lote_economic.
  • Na tag MinimumLot, caso o tipo do item seja igual a "Produzido" ou "Final" e o item esteja cadastrado no MAN10021, folder Planej. Grade, será considerado a tabela/campo it_polit_grade.qtd_prog_minima.
    Caso o tipo do item seja igual a "Produzido" ou "Final" e o item não esteja cadastrado no MAN10021, folder Planej. Grade, será considerado a tabela/campo item_man.qtd_prog_minima.
    Caso o tipo do item seja diferente de "Produzido" ou "Final", será considerado a tabela/campo item_sup.qtd_lote_minimo.
  • Caso o cadastro do item esteja parametrizado no MAN10246 para fazer a replicação em outras empresas, será gerado o XML nas empresas destinos.
  • Na função Cópia do item no MAN10021, além do XML do cadastro do item, se existir estrutura ou roteiro, serão gerado os XML´s de estrutura do item e roteiro.
  • Serão integrados os itens cadastrados no MAN10021. Não será considerado o MAN10081.
  • A tagStockControlType deverá verificar se controla nr. de série (ITEM_CTR_GRADE.RESERVADO_2), se controlar gravar = '2'.

    Se não controlar série, verificar se controla endereço (ITEM_CTR_GRADE.IES_ENDERECO), se controlar gravar '1'.  Por último verificar se controla Lote, se controlar gravar = '3'. Caso não possuir nenhum desses controles a tag não será gerada.

  • A tag Detail registra as informações da grade, quando o sistema utilizar o conceito grade. Deverá gerar com a descrição da  grade, o código da grade e o conteúdo da grade, separados por pipe |.

    Exemplo: ITEM = CAMISA. Grade 1 : Cor = Branca. Grade 2: Tamanho: P (pequeno). Gravar como: COR:01-BRANCA|TAMANHO:01-P.

    A tag DETAIL é gerada com base na rotina que estiver sendo executada,conforme descrito abaixo:

    • ESTRUTURA - MAN10002
      Usar a tabela estrut_grade.
      Exemplo: ITEM = CAMISA. Grade 1 : Cor = Branca. Grade 2: Tamanho: P (pequeno). Resultado: COR:01-BRANCA|TAMANHO:01-P.
      Descrição da grade: Na tabela ITEM_CTR_GRADE, verifica-se qual a grade o item controla. Grade 1 = NUM_GRADE_1; Grade 2 = NUM_GRADE_2; Grade 3 = NUM_GRADE_3; Grade 4 = NUM_GRADE_4; Grade 5 = NUM_GRADE_5. A descrição da grade é da tabela  CTR_GRADE, campo.DESCR_CABEC_ZOOM
      Código da grade: Pai: ESTRUT_GRADE, campos:COD_GRADE_1, COD_GRADE_2,COD_GRADE_3,COD_GRADE_4,COD_GRADE_5
      Componente: ESTRUT_GRADE, campos:COD_GRADE_COMP_1,COD_GRADE_COMP_2,COD_GRADE_COMP_3,COD_GRADE_COMP_4,COD_GRADE_COMP_5
      Conteúdo da grade: O conteúdo da grade deverá ser pesquisado com base na tabela cadastrada na CTR_GRADE.NOM_TABELA_ZOOM. Fazer pesquisa usando os campos: CTR_GRADE..NOM_TABELA_ZOOM, CTR_GRADE.DESCR_COL_1_ZOOM e CTR_GRADE.DESCR_COL_2_ZOOM

    • PROCESSO- MAN10243
      Usar a tabela man_processo_item
      Exemplo: ITEM = CAMISA. Grade 1 : Cor = Branca. Grade 2: Tamanho: P (pequeno). Resultado: COR:01-BRANCA|TAMANHO:01-P.
      Descrição da grade: Na tabela ITEM_CTR_GRADE, verifica-se qual a grade o item controla. Grade 1 = NUM_GRADE_1; Grade 2 = NUM_GRADE_2; Grade 3 = NUM_GRADE_3; Grade 4 = NUM_GRADE_4; Grade 5 = NUM_GRADE_5.A descrição da grade é da tabela  CTR_GRADE, campo.DESCR_CABEC_ZOOM
      Código da grade: Pai: ESTRUT_GRADE, campos:COD_GRADE_1, COD_GRADE_2,COD_GRADE_3,COD_GRADE_4,COD_GRADE_5
      Componente: MAN_PROCESSO_ITEM, campos:CONTEUDO_GRADE_1,CONTEUDO_GRADE_2,CONTEUDO_GRADE_3, CONTEUDO_GRADE_4, CONTEUDO_GRADE_5
      Conteúdo da grade: O conteúdo da grade deverá ser pesquisado com base na tabela cadastrada na CTR_GRADE.NOM_TABELA_ZOOM. Fazer pesquisa usando os campos: CTR_GRADE..NOM_TABELA_ZOOM, CTR_GRADE.DESCR_COL_1_ZOOM e CTR_GRADE.DESCR_COL_2_ZOOM
    • ITEM - MAN10021
      Usar a tabela it_polit_grade.
      Exemplo: ITEM = CAMISA. Grade 1 : Cor = Branca. Grade 2: Tamanho: P (pequeno). Resultado: COR:01-BRANCA|TAMANHO:01-P.
      Descrição da grade: Na tabela ITEM_CTR_GRADE, verifica-se qual a grade o item controla. Grade 1 = NUM_GRADE_1; Grade 2 = NUM_GRADE_2; Grade 3 = NUM_GRADE_3; Grade 4 = NUM_GRADE_4; Grade 5 = NUM_GRADE_5.A descrição da grade é da tabela  CTR_GRADE, campo.DESCR_CABEC_ZOOM
      Código da grade: Pai: IT_POLIT_GRADE, campos:COD_GRADE_1, COD_GRADE_2,COD_GRADE_3,COD_GRADE_4,COD_GRADE_5

       

       

       

Processos

Descreva características gerais do fluxo de informações e que serão comuns para este tipo de entidade. Características particulares para cada entidade deverão ser citadas em tópicos específicos de cada entidade.

Sempre que existir (a sugestão é sempre criar) e for agregador ao documento acrescentar aqui os diagramas/imagens ou até mesmo colocar tais diagramas diretamente na especificação dos processos

Em seguida faça uma descrição para cada um dos fluxos para cada entidade

 

<Transação/Processo>

Tipo de Fluxo: Protheus -> RM

Mensagem: Request_1_000

Versão: 1.000

Descrição de todo o comportamento e funcionamento do processo. Breve contexto, origem, regras, integração (geração da mensagem, envio, recebimento no destino), o quê supostamente irá ocorrer no destino, retorno, impacto, consequências, o que foi afetado, como conferir, validar, etc o retorno.

 

Acrescentar um diagrama do processo.

A seguir descrever as variações, particularidades da mensagem e processos (desta integração) de acordo com cada marca

 

Notas:

Observações sobre comportamento desta mensagem ou dos processos envolvidos nela/para ela

 

Limitações/Restrições

Descreva limitações e restrições para a integração que está sendo descrita. 

Limitações / Restrições Gerais

Descreva limitações e restrições para cada fluxo descrito no tópico anterior. Exemplo:

  • ERP1 envia ITEM cadastrado para o ERP2

ERP1 somente enviará o ITEM se este estiver em uma das famílias cadastradas no parâmetro FAMILIA_INTEGRACAO.

 

Se o tipo de valorização do estoque for FIFO.

  • ERP2 envia PEDIDO cadastrado para o ERP1

O pedido recebido no ERP1 vindo do ERP2 estará bloqueado para alteração.

 

Como fazer (opcional)

Descreva os passos que viabilizem a integração.

Exemplo:

Os passos para viabilizar a integração são:

  • No Logix ou no Protheus efetue o cadastro das seguintes informações: Clientes, fornecedores, transportadores, cidades, cotação de moeda e unidades de medida.
  • No Logix cadastrar um novo depositante e efetuar toda a parametrização necessária para a operação de WMS.
  • No Logix cadastrar um novo produto que seja controlado pelo WMS, para o depositante cadastrado anteriormente.
  • No Logix efetuar um processo de recebimento para o produto cadastrado anteriormente, utilizando uma nota fiscal provisória (tipo “A”).
  • No Protheus consultar a nota fiscal de recebimento que foi registrada no Logix, validando as informações recebidas.
  • No Logix efetuar um processamento de regularização fiscal, efetuando a cobertura dos produtos recebidos anteriormente.
  • No Protheus verificar se foi efetuado corretamente o relacionamento entre os dois documentos.
  • No Logix efetuar um processo de expedição para o novo produto cadastrado, até o momento do envio da mensagem de integração de pedido de venda.
  • No Protheus efetuar o faturamento do pedido de venda recebido.
  • No Protheus verificar se a nota fiscal gerada contém todas as informações necessárias para o segmento de operador logístico (armazém geral).
  • No Protheus efetuar a escrituração fiscal das notas fiscais, verificando se as regras da legislação deste segmento foram respeitadas.
  • No Logix é possível consultar o número do pedido de venda gerado para as notas fiscais de retorno simbólico e conta/ordem no programa WMS6333 (Consulta de Documentos). Para os processos de faturamento de serviço o número do pedido está disponível no programa WMS6411 (Movimentos a Faturar).

 

Situações comuns (opcional)

Descreva situações problemáticas comuns que podem ocorrer durante o funcionamento da integração e como solucioná-los. Neste ponto também é importante dar instruções de como reconhecer e investigar problemas que podem vir a ocorrer durante a integração. Se houver, apresente tabelas de códigos e descrições de erros que a integração poderá apresentar.

Este tópico possivelmente será alimentado com as experiências durante o desenvolvimento da integração e poderá ser realimentado durante o uso da integração no cliente.

Exemplo 1:

Tratamento de erros de integração (Produto A)

 

Erro

Mensagem

Solução

Código do erro

Mensagem exibida

Ação a ser tomada para resolução do erro.

 

Tratamento de erros de integração (Produto B)

Erro

Mensagem

Solução

Código do erro

Mensagem exibida

Ação a ser tomada para resolução do erro.

 

 

Exemplo 2:

Quando uma mensagem é enviada do Logix para o Protheus, podem ocorrer situações em que o WebService não estará totalmente funcional. Nestes casos uma mensagem de erro genérica irá aparecer na tela:

Exemplo:

Erro ao enviar a mensagem de Cidade via Integração

Se o arquivo de log for analisado, poderemos ver a falha na comunicação com o sistema destino:

-------------------------------------------------------------------------------

WSCERR044 / Não foi possível POST : URL http://172.16.31.57:8011/ws/FWWSEAI.apw

ADVPL WSDL Client 1.080707 / tst on 20120315 08:49:51

-------------------------------------------------------------------------------

 

Para resolver este problema, verifique as configurações do sistema de destino, analisando o funcionamento do servidor utilizado para esta comunicação e a habilitação do endereço do WebService. 

Checklist de suporte da aplicação

Crie um check-list de verificação de alguns pontos importantes para o funcionamento e atendimento da integração.

Instalação/Configuração

Relacione itens de verificação para garantir que a integração está corretamente instalada e configurada. Isto não pode ser uma cópia do procedimento de instalação/configuração, mas verificações pontuais que podem remeter aos itens da instalação.

 

Checklist de Verificações:

Relacione itens de verificações para que o atendente possa:

  • Identificar o funcionamento da integração;
  • Identificar a ocorrências de problemas;
  • Coletar evidências do mau funcionamento relatado pelo cliente;
  • Realizar possíveis ajustes na integração quanto à configuração ou negócio.

Anexos