Integração de recebimento
Para a integração de recebimento, será necessário chamar o método integrarRecebimento. A chamada desse serviço procede da seguinte forma:
URL
http://ip_servidor:9090/cyberweb/api/processo/integrarRecebimento
Headers
chave : "epa42b92-d78b-7g88-p538-279qw562h54m"
token : "9166226b-6afd-4298-b6cc-d7dc3aef8f48"
Content-Type : "application/x-www-form-urlencoded"
Body
recebimento : "JSON Recebimento"
JSON Recebimento
{
"operacao": "INSERT",
"erpId": "28500740000106_00000000280_001",
"empresa": "01",
"data": "Dec 01, 2020 09:28:28 AM",
"documento": "NFE: 280/1 (28500740000106)",
"codFornecedor": "6398",
"avaria": false,
"confCega": true,
"tipo": "N",
"doca": 0,
"prioridade": 0,
"devolucao": false,
"informarlote": false,
"impressora": "HP LaserJet Professional P 1102w",
"itensRecebimento": [
{
"codigoReduzido": "WMS_CYBERLOG_001",
"erpId": "28500740000106_1",
"quantidade": 3,
"noLayout": 1,
"loteItensRecebimento": [
{
"quantidade": 3,
"lote": "LOTE-01",
"validade": "Dec 30, 2021 23:59:59 PM",
"fabricacao": "Mar 28, 2019 12:00:00 AM"
}
],
"grades": [
{
"codigo": "grade1",
"quantidade": 2,
"tipoEstrutura": "estrutura1",
"purchaseOrder": "1738"
},
{
"codigo": "grade2",
"quantidade": 1,
"purchaseOrder": "1739"
}
]
},
{
"codigoReduzido": "WMS_CYBERLOG_002",
"erpId": "28500740000106_2",
"quantidade": 8,
"noLayout": 1,
"loteItensRecebimento": [],
"grades": [
{
"codigo": "grade1",
"quantidade": 8,
"tipoEstrutura": "estrutura1",
"purchaseOrder": "1740"
}
]
}
],
"listaXDocking": [
{
"tipoDestino": "C",
"destino": "SERRALHERIA DOS IMIGRANDES LTDA",
"data": "Mar 28, 2019 12:00:00 AM",
"ordemCompraErpId": "28500740000106_00000000280_001",
"pedidoVendaErpId": "123.123",
"chaveIdPedido": "1012402",
"docaDestino": "5",
"itensXDocking": [
{
"codigoReduzido": "WMS_CYBERLOG_001",
"quantidade": 1
},
{
"codigoReduzido": "WMS_CYBERLOG_002",
"quantidade": 1
}
]
}
]
}
URL
http://ip_servidor:9090/SyncWS/SyncWS/integrarRecebimento
Headers
Content-Type : text/xml
Body - (XML) Recebimento
JSON Recebimento
{
"operacao": "INSERT",
"erpId": "28500740000106_00000000280_001",
"empresa": "01",
"data": "Dec 01, 2020 09:28:28 AM",
"documento": "NFE: 280/1 (28500740000106)",
"codFornecedor": "6398",
"avaria": false,
"confCega": true,
"tipo": "N",
"doca": 0,
"prioridade": 0,
"devolucao": false,
"informarlote": false,
"impressora": "HP LaserJet Professional P 1102w",
"itensRecebimento": [
{
"codigoReduzido": "WMS_CYBERLOG_001",
"erpId": "28500740000106_1",
"quantidade": 3,
"noLayout": 1,
"loteItensRecebimento": [
{
"quantidade": 3,
"lote": "LOTE-01",
"validade": "Dec 30, 2021 23:59:59 PM",
"fabricacao": "Mar 28, 2019 12:00:00 AM"
}
],
"grades": [
{
"codigo": "grade1",
"quantidade": 2,
"tipoEstrutura": "estrutura1",
"purchaseOrder": "1738"
},
{
"codigo": "grade2",
"quantidade": 1,
"purchaseOrder": "1739"
}
]
},
{
"codigoReduzido": "WMS_CYBERLOG_002",
"erpId": "28500740000106_2",
"quantidade": 8,
"noLayout": 1,
"loteItensRecebimento": [],
"grades": [
{
"codigo": "grade1",
"quantidade": 8,
"tipoEstrutura": "estrutura1",
"purchaseOrder": "1740"
}
]
}
],
"listaXDocking": [
{
"tipoDestino": "C",
"destino": "SERRALHERIA DOS IMIGRANDES LTDA",
"data": "Mar 28, 2019 12:00:00 AM",
"ordemCompraErpId": "28500740000106_00000000280_001",
"pedidoVendaErpId": "123.123",
"chaveIdPedido": "1012402",
"docaDestino": "5",
"itensXDocking": [
{
"codigoReduzido": "WMS_CYBERLOG_001",
"quantidade": 1
},
{
"codigoReduzido": "WMS_CYBERLOG_002",
"quantidade": 1
}
]
}
]
}
RC's do método integrarRecebimento
- 1 - Inserido;
- 2 - Alterado;
- 3 - Excluído;
- !4 - Não alterado (processo já iniciado);
- !5 - Não alterado (processo não cadastrado);
- !6 - Não há configuração de depósito para a empresa: XXXXX;
- !7 - Não inserido (depósito informado não possui configuração);
- !8 - Não excluído (processo já iniciado);
- !9 - Não inserido (documento vazio);
- !10 - Não inserido (ERPID vazio);
- !11 - Não inserido (fornecedor não cadastrado);
- !12 - Não inserido (fornecedor vazio);
- !13 - Não inserido (produtos não constam no WMS);
- !14 - Não é possível inserir documento de recebimento sem doca de descarga;
- !15 - Erro ao converter data do documento de Crossdocking;
- !16 - Documento de Crossdocking sem data informada;
- !17 - Não inserido (cliente não cadastrado);
- !18 - Não inserido (depósito de destino não cadastrado);
- !19 - Documento de Crossdocking sem destino;
- !20 - Erro ao inserir destino para o documento de Crossdocking;
- !21 - Documento de Crossdocking sem doca de destino;
- !22 - Documento de Crossdocking sem itens;
- !23 - Quantidade do produto XXXXX do documento de Crossdocking é maior que o de recebimento;
- !24 - Produto XXXXX do documento de Crossdocking não existe no documento de recebimento;
- !25 - Produto XXXXX do documento de Crossdocking não possui quantidade ou quantidade é igual a 0;
- !26 - Produto XXXXX inexistente;
- !27 - Erro ao deletar documento de Crossdocking: XXXXX;
- !28 - Recebimento sem itens;
- !29 - Produto XXXXX do documento de recebimento sem quantidade;
- !30 - Grade enviada no recebimento já existe no WMS;
- !31 - Recebimento à ser deletado não existe no WMS;
- !32 - Nenhuma operação válida enviada (válidas: INSERT, UPDATE, DELETE);
- !33 - Erro ao deletar documento de recebimento: XXXXX;
- !34 - Não é possível inserir lote sem número de lote ou validade!;
- !35 - Lista de itens vazia ou nao processada;
- !36 - Não foi possível converter medida do recebimento! Erro: XXXXX;
- !37 - Recebimento já integrado e agrupado no documento: XXXXX;
- !38 - Regra de pos processamento de recebimento cancelou a inserção deste recebimento: XXXXX;
- !42 - Erro não cadastrado (informações no log do servidor).
Dicionário de dados - Recebimento
| Nome | Tipo de Dado | Descrição | Obrigatório | Padrão |
|---|---|---|---|---|
| erpId | varchar(30) | Chave que identifica o registro. | ||
| operacao | varchar(10) | Operação ('INSERT', 'UPDATE', 'DELETE') | ||
| empresa | varchar(20) | Número da empresa. | ||
| data | datetime | Data do recebimento. | Formato:"MMM dd, yyyy HH​:​m​m​:​ss a" Língua:"en" (configurável se necessário) | |
| documento | varchar(1000) | Documento de identificação do recebimento (Entrada). | ||
| codFornecedor | varchar(100) | Código do fornecedor. | ||
| avaria | boolean | (true) o recebimento é avaria, (false) não. | F | |
| confCega | boolean | (true) o recebimento realizará conferência cega, (false) não. | T | |
| tipo | varchar(1) | Tipos('G' garantia, 'D' devolução, 'C' nota cancelada, 'O' ordem de produção, 'N' normal e 'A' abastecimento matriz) | N | |
| doca | number(10) | Número da doca do recebimento. | 0 | |
| prioridade | number(10) | Prioridade do recebimento. | 0 | |
| devolucao | boolean | (true) o recebimento é devolução, (false) não. | F | |
| informarlote | boolean | (true) só será possível ler o lote que o ERP enviou, (false) qualquer lote pode ser lido. | ||
| itensRecebimento | arraylist (ItensRecebimento) | Lista de itens a serem integrados. | ||
| listaXDocking | arraylist (XDocking) | Lista de documentos de Crossdocking a serem integrados |
Dicionário de dados - ItensRecebimento
| Nome | Tipo de Dado | Descrição | Obrigatório | Padrão |
|---|---|---|---|---|
| codigoReduzido | varchar(39) | Código reduzido do produto. | ||
| erpId | varchar(30) | Id do item no ERP. | ||
| quantidade | number(15,4) | Quantidade a ser armazenada em unidades. | ||
| nolayout | number(10) | Layout com prioridade para armazenagem. | ||
| loteItensRecebimento | arraylist (LoteItensRecebimento) | Lista de lotes a serem integrados. | ||
| grades | arraylist (Grades) | Lista de grades do item. |
Atenção
É importante observar que os campos (codigoReduzido e erpId) de ItensRecebimento, não devem se repetir em um mesmo recebimento.
Dicionário de dados - LoteItensRecebimento
| Nome | Tipo de Dado | Descrição | Obrigatório | Padrão |
|---|---|---|---|---|
| quantidade | number(15,4) | Quantidade do lote a ser armazenada em unidades. | ||
| lote | varchar(20) | Número do lote a ser armazenado. | ||
| validade | date(8) | Data da validade do lote. | Formato:"MMM dd, yyyy HH​:​m​m​:​ss a" Língua:"en" (configurável se necessário) | |
| fabricacao | date(8) | Data de fabricação do lote. | Formato:"MMM dd, yyyy HH​:​m​m​:​ss a" Língua:"en" (configurável se necessário) |
Dicionário de dados - XDocking
| Nome | Tipo de Dado | Descrição | Obrigatório | Padrão |
|---|---|---|---|---|
| tipoDestino | varchar(1) | Tipo do destino ('C' cliente, 'D' depósito) | ||
| destino | varchar(50) | Informação do destino podendo ser ID, NÚMERO ou NOME, para Cliente, e NÚMERO para Depósito. | ||
| data | date(8) | Data do documento de Crossdocking. | Formato:"MMM dd, yyyy HH​:​m​m​:​ss a" Língua:"en" (configurável se necessário) | |
| ordemCompraErpId | varchar(50) | Informação da ordem de compra Crossdocking, podendo ser o próprio erpId do Recebimento, Nota fiscal, etc.. | ||
| pedidoVendaErpId | varchar(50) | Informação do pedido de venda Crossdocking, podendo ser qualquer informação que remeta ao registro da venda no ERP. | ||
| chaveIdPedido | varchar(30) | Chave que identifica o registro (erpId) da integração do pedido. | ||
| docaDestino | varchar(10) | Número da doca de destino. | ||
| itensXDocking | arraylist (ItensXDocking) | Lista de produtos do documento de Crossdocking. |
Atenção
É necessário que todos os produtos contidos no crossdocking, itensXDocking, estejam também sendo integrados no recebimento.
Dicionário de dados - ItensXDocking
| Nome | Tipo de Dado | Descrição | Obrigatório | Padrão |
|---|---|---|---|---|
| codigoReduzido | varchar(39) | Código reduzido do produto. | ||
| quantidade | number(15,4) | Quantidade a ser movimentada em unidades. |
Dicionário de dados - Grades
| Nome | Tipo de Dado | Descrição | Obrigatório | Padrão |
|---|---|---|---|---|
| codigo | varchar(50) | Código da grade. | ||
| quantidade | number(15,4) | Quantidade do produto na grade. | ||
| tipoEstrutura | varchar(50) | Descrição da estrutura. | ||
| purchaseOrder | varchar(30) | Informação da ordem de compra. |
Fluxo de integração padrão
-
1) Recebimento aguardando:
O recebimento que estiver aguardando, será apagado, e um novo recebimento, com as informações de sincronização, será inserido no sistema.
-
2) Recebimento em execução/pronto:
Recebimentos que já possuam tarefas em execução ou prontas não poderão ser atualizados.
-
3) Exclusão dos registros (operação DELETE):
Os registros que vierem com a operação DELETE e não possuirem tarefas em execução ou prontas, serão excluídos .