Integração Senior entre ERP e SILT WMS
Mecanismos de integração do ERP Senior com Gestão de Armazenagem | WMS Senior.
- Importação: essas integrações contemplam na parte de importação vindas do ERP, chamado de transformador, gravando direto nas tabelas de integração do SILTWMS, como por exemplo INT_ PRODUTO, as Entidades (Cliente, Depositante, Destinatário, Fornecedor, Transportadora), Produtos, Pedido\Nota Fiscal, Cancelamento de Nota Fiscal, Faturamento de Pedido, Bloqueio e Desbloqueio de Lote e Retorno de Cálculo Fiscal.
- Exportação: oriunda do
SILTWMS para o ERP contemplam Produtos, Embalagens, movimentações como Bloqueio e Desbloqueio de Lote, Ajuste de Movimentação, Controle de Avaria, Retorno de Produto Recuperado, Ordem de Recebimento com Lote Indústria, Nota Fiscal de Remessa para Armazenagem, Nota Fiscal de Retorno de Armazenagem, Cancelamento de Nota Fiscal, Faturamento de Pedido Separado, Solicitação de Cálculo Fiscal, Fatura de Serviço, Ordem de Recebimento, Livro Fiscal de Inventário e Inventário, cujos dados são replicados quando ocorrer alguma exportação para tabelas (modelo disponibilizado pela Senior).
- Rotina na PK_
INTEGRACAO responsável por alimentar a tabela RTC_
PENDENCIES quando ocorrer exportação.
A arquitetura definida acima pela Senior funciona da seguinte maneira:- Quando o ERP enviar informações para o Gestão de Armazenagem | WMS Senior, existará um serviço que transmita a informação em formato JSON para o servidor de mensageiria (
RabbitMQ
) e o transformador mencionado acima "pega" a mensagem enviada e grava direto na base do WMS na respectiva tabela que a informação enviada pertence. - No momento em que o Gestão de Armazenagem | WMS Senior estiver enviando informações para o ERP o transformador "pega" as informações exportadas, colocar em formato JSON e transmita para o servidor de mensageria (
RabbitMQ
). Um serviço do lado do ERP "pega" a mensagem enviada e grava direto na base do ERP na respectiva tabela que a informação enviada pertence.
- Quando o ERP enviar informações para o Gestão de Armazenagem | WMS Senior, existará um serviço que transmita a informação em formato JSON para o servidor de mensageiria (
Parametrizações
Acesse Cadastro > Segurança > Grupo de Usuário
- Ative o parâmetro Permitir Download de Arquivos de Importação de Integração
Integração
Para permitir que o ERP da Senior possa buscar na base do WMS as informações exportadas faz necessário criar quatro tabelas (RTC_ PENDENCIES, R996FLD, RTC_STATUS_ CONSULTA e RTC_ REPLICATIONDEF). A responsabilidade do WMS é alimentar a tabela RTC_ PENDENCIES e dar um carga inicial na tabela R996FLD (servem como dicionário de dados das importações e exportações que são trabalhadas) e as outras são manipuladas pelo ERP da Senior para controlar o que será integrado.
Exportações
Quando for cadastrado ou alterado um produto no sistema.
Se o depositante estiver configurado para exportar produto via banco.
- Acesse Cadastro > Depositante > guia Exportação > Produto
Com isso ocorre a gravação das informações do produto na tabela INT_ENVIO_ PRODUTO e na tabela RTC_ PENDENCIES para o ERP buscar as informações do produto.
Quando for cadastrada ou alterada uma embalagem no sistema.
Se o depositante estiver configurado para exportar embalagem via banco.
- Acesse Cadastro > Depositante > guia Exportação > Embalagem
Com isso grava as informações do produto na tabela INT_ENVIO_ EMBALAGEM e na tabela RTC_ PENDENCIES para o ERP buscar as informações da embalagem.
Quando o lote for bloqueado no sistema.
Se o depositante do lote estiver configurado com o parâmetro Bloqueio e Desbloqueio de Lote via banco.
- Acesse Cadastro > Depositante > guia Exportação > Movimentação Interna > Bloqueio e Desbloqueio de Lote
Com isso grava as informações do lote na tabela INT_ENVIO_MUDANCA_ESTOQUE, na tabela RESULTADOINTEGRACAO, na tabela RTC_PENDENCIES para o ERP buscar as informações do lote bloqueado.
A trigger para a tabela INT_ENVIO_MUDANCA_ESTOQUE somente será disparada quando o campo STATUS_INTEGRACAO for atualizado pelo ERP da Senior para 2 – Registro Integrado Com Sucesso ou 4 – Registro Com Erro de Integração que não é mais processado.
Quando o lote for desbloqueado no sistema.
Se o depositante do lote estiver configurado com o parâmetro Bloqueio e Desbloqueio de Lote via banco.
- Acesse Cadastro > Depositante > guia Exportação > Movimentação Interna > Bloqueio e Desbloqueio de Lote
Com isso grava as informações do lote na tabela INT_ENVIO_MUDANCA_ESTOQUE, na tabela RESULTADOINTEGRACAO, na tabela RTC_PENDENCIES para o ERP buscar as informações do lote desbloqueado.
Quando uma Ordem de Recebimento(OR) for alocada no sistema.
Se o depositante da Ordem de Recebimento estiver configurado para exportar após a alocação e também estiver configurado para exportar retorno de recebimento via Banco Modelo MOV.
- Acesse Cadastro > Depositante > guia Exportação > Recebimento >
- parâmetro Quando Exportar setado para Após a Alocação
- e deixar setado BANCO_MODELO_MOV para o parâmetro Retorno de Recebimento
Com isso as informações da OR serão gravadas na tabela INT_ENVIO_MUDANCA_ESTOQUE, na tabela RESULTADOINTEGRACAO, e na tabela RTC_PENDENCIES para o ERP buscar as informações da Ordem de Recebimento.
A trigger para a tabela INT_ENVIO_OR_LOTE_H somente será disparada quando o campo STATUS_INTEGRACAO for atualizado pelo ERP da Senior para 2 – Registro Integrado Com Sucesso ou 4 – Registro Com Erro de Integração que não é mais processado, e com isso as tabelas INT_ENVIO_OR_LOTE_I \ INT_ENVIO_OR_LOTE_N \ INT_ENVIO_OR_LOTE_INFO_ESPEC são populadas também.
Quando um ajuste de movimentação de entrada for processado.
Se o depositante do ajuste estiver configurado para exportar ajuste de movimentação marcado com a opção Banco Modelo MOV.
- Acesse Cadastro > Depositante > guia Exportação > Recebimento > parâmetro Ajuste de Movimentação
Com isso grava as informações do ajuste de movimentação de entrada na tabela INT_ENVIO_MUDANCA_ESTOQUE, na tabela RESULTADOINTEGRACAO, e na tabela RTC_PENDENCIES para o ERP buscar as informações do ajuste de movimentação de entrada.
Quando um ajuste de movimentação de saída for processado.
Se o depositante do ajuste estiver configurado para exportar ajuste de movimentação marcado com a opção Banco Modelo MOV.
- Acesse Cadastro > Depositante > guia Exportação > Recebimento > parâmetro Ajuste de Movimentação
Com isso grava as informações do ajuste de movimentação de entrada na tabela INT_ENVIO_MUDANCA_ESTOQUE, na tabela RESULTADOINTEGRACAO, e na tabela RTC_PENDENCIES para o ERP buscar as informações do ajuste de movimentação de saída.
Quando um controle de avaria for processado.
Se o depositante do ajuste estiver configurado para exportar controle de avaria marcado com a opção Banco Modelo MOV.
- Acesse Cadastro > Depositante > guia Exportação > Recebimento > parâmetro Controle de Avaria
Com isso grava as informações do ajuste de movimentação de entrada na tabela INT_ENVIO_MUDANCA_ESTOQUE, na tabela RESULTADOINTEGRACAO, e na tabela RTC_PENDENCIES para o ERP buscar as informações do controle de avaria.
Quando um retorno produto recuperado for processado.
Se o depositante do ajuste estiver configurado para exportar retorno produto recuperado marcado com a opção Banco Modelo MOV.
- Acesse Cadastro > Depositante > guia Exportação > Recebimento > parâmetro Retorno Produto Recuperado
Com isso grava as informações do ajuste de movimentação de entrada na tabela INT_ENVIO_MUDANCA_ESTOQUE, na tabela RESULTADOINTEGRACAO, e na tabela RTC_PENDENCIES para o ERP buscar as informações do retorno produto recuperado.
Dado uma ordem de recebimento qualquer.
Se o depositante possuir regime armazém geral contribuinte ICMS e também estiver configurado para exportar Nota Fiscal de Remessa e Retorno de Armazenagem via Banco.
- Acesse Cadastro > Depositante > botão: Cadastrar > guia Dados do Depositante > campo Regime
- Acesse Cadastro > Depositante > guia Exportação > Nota Fiscal
Quando a cobertura dos produtos recebidos forem realizadas pela nota fiscal vinculada a ordem de recebimento ou por uma nota fiscal de cobertura enviada pelo depositante.
Neste momento, o sistema grava as informações da nota fiscal de cobertura nas tabelas INT_ENVIO_NF_ARMAZENAGEM \ INT_ENVIO_NF_ARMAZENAGEMDET e na tabela RTC_PENDENCIES para o ERP buscar as informações da nota fiscal de cobertura dos produtos recebidos.
Dado uma ordem de recebimento qualquer.
Se o depositante possuir regime armazém geral NÃO contribuinte ICMS e também estiver configurado para exportar Nota Fiscal de Remessa e Retorno de Armazenagem via Banco.
- Acesse Cadastro > Depositante > botão: Cadastrar > guia Dados do Depositante > campo Regime
- Acesse Cadastro > Depositante > guia Exportação > Nota Fiscal
Quando a nota fiscal gerada pelo sistema para cobertura dos produtos for autorizada pela SEFAZ.
Neste momento, o sistema grava as informações da nota fiscal de cobertura nas tabelas INT_ENVIO_NF_ARMAZENAGEM \ INT_ENVIO_NF_ARMAZENAGEMDET e na tabela RTC_PENDENCIES para o ERP buscar as informações da nota fiscal de cobertura dos produtos recebidos.
A onda possuir um pedido de retorno de armazenagem vinculada?
O depositante possui regime armazém geral contribuinte ICMS?
A configuração do parâmetro Nota Fiscal de Remessa e Retorno de Armazenagem está para exportar via banco?
- Acesse Cadastro > Depositante > guia Exportação > guia Nota Fiscal
Quando a nota fiscal de retorno for gerada pelo sistema.
Então grava as informações da nota fiscal de cobertura nas tabelas INT_ENVIO_NF_ARMAZENAGEM \ INT_ENVIO_NF_ARMAZENAGEMDET.
E na tabela RTC_PENDENCIES para o ERP buscar as informações da nota fiscal de retorno dos produtos expedidos.
A onda possui um pedido de retorno de GMB vinculada?
O depositante possui regime armazém geral NÂO contribuinte ICMS?
A configuração do parâmetro Nota Fiscal de Remessa e Retorno de Armazenagem está para exportar via banco?
Quando a nota fiscal de retorno for gerada pelo sistema e autorizada pela SEFAZ. O sistema grava as informações da nota fiscal de cobertura nas tabelas INT_ENVIO_NF_ARMAZENAGEM \ INT_ENVIO_NF_ARMAZENAGEMDET e na tabela RTC_PENDENCIES para o ERP buscar as informações da nota fiscal de retorno dos produtos expedidos.
A onda possui um pedido vinculado.
O depositante do pedido está configurado para retornar faturamento via Banco.
- Acesse Cadastro > Depositante > guia Exportação > guia Faturamento > Retorno de Faturamento Auto
E no parâmetro Momento do Envio do Faturamento precisa estar setado para Após a liberação da onda ou após o pedido ser conferido\pesado.
Quando o pedido for enviado para faturamento o sistema grava as informações da nota fiscal de cobertura nas tabelas INT_ENVIO_FATURAMENTO \ INT_ENVIO_FATURAMENTODET e na tabela RESULTADOINTEGRACAO para controle do ERP e na tabela RTC_PENDENCIES para o ERP buscar as informações do pedido a ser faturado.
A onda possui um pedido de retorno de GMB vinculada?
Se o endereço do depositante do pedido for diferente do endereço da entrega, e a nota fiscal de remessa por conta e ordem de terceiros for gerada pelo sistema. Então o sistema grava as informações da nota fiscal de cobertura nas tabelas INT_ENVIO_CALCULOFISCAL \ INT_ENVIO_CALCULOFISCAL_DET e na tabela RTC_PENDENCIES para o ERP buscar as informações da nota fiscal de remessa por conta e ordem de terceiros.
Os passos para se gerar uma NFCOT para depositantes contribuintes do ICMS são as seguintes:
- Importar/Digitar nota/pedido de venda do tipo “Título a que se transfere propriedade” (Tipo operação = TP), interestadual (o depositante e o armazém devem estar localizados em estados diferentes);
- Realizar o fluxo de liberação da nota, Formação de Onda, pesagem e faturamento (quando necessário) da nota de venda;
- Durante esse processo é gerada a nota do tipo “Remessa por conta e ordem de terceiro”;
- Criar e processar a coleta;
- Após o processamento da Coleta, a nota de venda é exibida na tela de “Retorno Simbólico” e, ao clicar em “Emitir NF Retorno Simbólico”, é criada uma nova nota de “Retorno Simbólico” que está disponível na tela de “Controle NF-e” para ser transmitida a SEFAZ. Esta nota também pode ser consultada na tela “Consulta de Retorno de Armazenagem”;
- Enviar as mercadorias para o cliente.
Dado uma nota fiscal qualquer.
Se o depositante da nota fiscal estiver configurado para retornar cancelamento via banco.
- Acesse Cadastro > Depositante > guia Nota Fiscal > Cancelamento
E quando a mesma for cancelada no sistema, o sistema gravará as informações da nota fiscal cancelada na tabela INT_ENVIO_CANCELAMENTO, na tabela RESULTADOINTEGRACAO e na tabela RTC_PENDENCIES para o ERP buscar as informações da nota fiscal cancelada.
A trigger para a tabela INT_ENVIO_CANCELAMENTO somente será disparada quando o campo STATUS_INTEGRACAO for atualizado pelo ERP da Senior para 2 – Registro Integrado Com Sucesso ou 4 – Registro Com Erro de Integração que não é mais processado.
Dado uma nota fiscal qualquer.
Se o depositante da nota fiscal estiver configurado para retornar documento e estiver setado para qualquer opção referente a integração, estará ligado a expedição, ou seja, saída.
- Acesse Cadastro > Depositante > guia Exportação > guia Expedição > Mudança de Status do Documento (NF ou Pedido)
Quando a nota fiscal tiver seu status alterado no sistema.
Com isso grava a exportação na tabela INT_ENVIO_ANDAMENTODOC e na tabela RTC_PENDENCIES para o ERP buscar as informações da nota fiscal.
Dado uma fatura qualquer de um contrato, que não seja parcial, quando a fatura for aprovada\fechada.
O sistema grava as informações da fatura de serviço nas tabelas INT_ENVIO_FATURA_SERVICO \ INT_ENVIO_FATURA_SERVICODET e na tabela RTC_PENDENCIES para o ERP buscar as informações da fatura de serviço.
Dado uma Ordem de Recebimento (OR) qualquer.
Se o depositante da Ordem de Recebimento estiver configurado para exportar após a conferência ou alocação e também estiver configurado para exportar retorno de recebimento via Banco Modelo MOV.
- Acesse Cadastro > Depositante > guia Exportação > Recebimento >
- parâmetro Quando Exportar setado para Após a Alocação ou Após a Conferência
- e deixar setado BANCO_MODELO_MOV para o parâmetro Retorno de Recebimento
Quando a Ordem de Recebimento for conferida ou alocada no sistema, o sistema grava as informações da Ordem de Recebimento nas tabelas INT_ENVIO_OR_H \ INT_ENVIO_OR_I \ INT_ENVIO_OR_N \ INT_ENVIO_OR_INFO_ESPEC, na tabela RESULTADOINTEGRACAO, e na tabela RTC_PENDENCIES para o ERP buscar as informações da Ordem de Recebimento.
A trigger para a tabela INT_ENVIO_OR_H somente será disparada quando o campo STATUS_INTEGRACAO for atualizado pelo ERP da Senior para 2 – Registro Integrado Com Sucesso ou 4 – Registro Com Erro de Integração que não é mais processado.
Dado um livro de registro fiscal de inventário qualquer.
E o armazém estiver configurado para exportar saldo fiscal.
- Acesse Cadastro > Armazém > Armazém > botão Configuração > guia Registro de Inventário > Exportação de Saldo Fiscal
Quando o livro de registro fiscal de inventário for fechado.
O sistema grava as informações do livro de registro fiscal de inventário na tabela INT_ENVIO_SALDOFISCAL, na tabela RTC_PENDENCIES para o ERP buscar as informações do livro de registro fiscal de inventário.
Dado um inventário qualquer, e este for bloqueado para contagens ou finalizado.
Se o depositante do inventário estiver configurado para exportar inventário TXT - Modelo WMS lote.
- Acesse Cadastro > Depositante > guia Exportação > Movimentação Interna >Inventário
Quando ocorrer a exportação do inventário.
- Acesse Inventário > Inventário > botão Exportar Inventário
O sistema grava as informações do inventário na tabela INT_ENVIO_INVENTARIO, na tabela RESULTADOINTEGRACAO, e na tabela RTC_PENDENCIES para o ERP buscar as informações do Inventário.
A trigger para a tabela INT_ENVIO_INVENTARIO somente será disparada quando o campo STATUS_INTEGRACAO for atualizado pelo ERP da Senior para 2 – Registro Integrado Com Sucesso ou 4 – Registro Com Erro de Integração que não é mais processado.
Quando a carga for processada.
O sistema grava as informações da carga nas tabelas INT_ENVIO_EMBARQUE \ INT_ENVIO_EMBARQUEDET, na exportação na tabela RESULTADOINTEGRACAO, e na tabela RTC_PENDENCIES para o ERP buscar as informações da carga.
A trigger para a tabela INT_ENVIO_EMBARQUE somente será disparada quando o campo STATUS_INTEGRACAO for atualizado pelo ERP da Senior para 2 – Registro Integrado Com Sucesso ou 4 – Registro Com Erro de Integração que não é mais processado.
Estrutura das tabelas
Tabelas RTC_PENDENCIES, R996FLD, RTC_STATUS_CONSULTA e RTC_REPLICATIONDEF que são utilizadas pelo Transformador Único entre ERP e WMS para controlar as importações e exportações dos sistemas. Segue abaixo os detalhes das tabelas:
Tabela RTC_PENDENCIES | ||
---|---|---|
ID | NUMBER NOT NULL | Chave Primária |
TABLENAME | VARCHAR2 NOT NULL | Nome da tabela de integração |
OPERATIONTIME | DATE NOT NULL | Data da Integração |
OPERATIONKIND | VARCHAR2 NOT NULL | Tipo da Operação (I – Insert, U – Update, D – Delete) |
RECORDKEY | VARCHAR2 | Id de identificação da linha na tabela de integração |
ALTEREDFIELDS | VARCHAR2 | Campos alterados |
Tabela R996FLD | ||
---|---|---|
TBLNAM | VARCHAR2 | Nome da Tabela de Integração |
FLDNAM | VARCHAR2 | Nome do Campo |
DATTYP | NUMBER | Tipo do Campo (1 – String, 2 – Integer/ LongInt / Float / Double, 3 – String, 4 – Data, 5 – Time(em formato integer), 8 – Blob) |
LENFLD | NUMBER | Tamanho do Campo |
CANNUL | NUMBER | Permite Nulo (0 – Não, 1 – Sim) |
Tabela RTC_STATUS_CONSULTA | ||
---|---|---|
OPERATIONID | NUMBER NOT NUL | L – Identificador da pendência de integração |
STATE | VARCHAR2 | Estado da Replicação (P – Estado Pendente, T – Estado Tratando, R – Estado Replicado, E – Estado Erro) |
MESSAGE | VARCHAR2 | Mensagem da Replicação |
Tabela RTC_REPLICATIONDEF | ||
---|---|---|
ID | NUMBER NOT NULL | Chave Primária |
IDREPLICATOR | VARCHAR2 NOT NULL | Identificador do Replicador (Controlado pelo ERP) |
TABLENAME | VARCHAR2 NOT NULL | Nome da Tabela de Integração |