Child pages
  • Interface de Integração E-Kanban

Interface de Integração E-Kanban 

Contexto de negócio (Introdução)

Este documento tem como objetivo proporcionar o desenvolvimento da integração de um ERP de terceiros com o TOTVS E-Kanban.

 

Sistemas Envolvidos

Os subsistemas do ekanban que possibilitam a integração de dados vindos de outros ERPs são:

  • Busca de estabelecimentos;
  • Busca de itens;
  • Fluxo de produção (Estrutura e Processo de fabricação dos itens);
  • Busca de centros de trabalho.

 

Integração

O E-Kanban utiliza o protocolo REST para troca de mensagens, sendo que as mensagens trafegadas devem seguir o padrão JSON.

O e-Kanban não enviará informação de autenticação em suas requisições para o ERP que está integrado. Esta informação deverá estar aberta a requisição utilizando somente os parâmetros informados.

O ERP deverá retornar os seguintes status-code para cada situação:

  • 200: Para requisição que estiver OK. 
  • 404: Para página não encontrada.
  • 400-599: Erros relacionados ao cliente ou servidor.

É importante que o ERP retorne esses status-code conforme a lista para que o e-Kanban consiga fazer o tratamento correto de mensagem e testes.

 

Escopo

A responsabilidade do E-Kanban é possibilitar a execução do processo de manufatura enxuta utilizando como base o processo de fabricação e estrutura do item, que pode estar no ERP Datasul, Protheus, ou em um ERP de terceiro que siga as regras de mensagens estabelecidas abaixo.

O E-Kanban, para facilitar sua utilização, busca dados de um ERP integrado para diminuir o número de cadastros necessários.

 

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.

 

Estabelecimentos

Onde é utilizada: Parametrização Ekanban / Gerar estabelecimentos.

Parâmetros enviados pelo Ekanban: Nenhum

NomeTipoDescrição
COD_ESTAB_ERPStringCódigo Estabelecimento.
DES_ESTABStringDescrição Estabelecimento.

 

Formato JSON esperado: 

[{
	"COD_ESTAB_ERP": "01.0201",
	"DES_ESTAB": "Grupo 01 - Filial 01"
}]

Busca de itens

Onde é utilizada: Zoom de itens na inclusão de fluxo.

Parâmetros enviados pela URL: estab (Estabelecimento selecionado que veio da integração), zoomitem (String digitada pelo usuário para realizar a busca).

Item da busca

NomeTipoDescrição
COD_CHAVE_ERPStringCódigo Item.
COD_REFERStringCódigo de Referência do Item.
COD_UN_MED_ERPStringCódigo Unidade de Medida.
DES_ITEM_ERPStringDescrição do Item.

 

Formato JSON esperado: 

[{
"COD_CHAVE_ERP": "ITEM01",
"COD_REFER": "",
"COD_UN_MED_ERP": "UN",
"DES_ITEM_ERP": "ITEM01"
}]

Fluxo de produção

Onde é utilizada: Inclusão de fluxo, Inclusão de fluxo para gerar itens, células, centros de trabalho, ferramentas e estrutura.

URL padrão: Configurada na tela de parâmetros de integração

Parâmetros enviados pela URL: estab (Estabelecimento selecionado que veio da integração), datcorte (Data de corte informado na criação do mapeamento no formato "YYYYMMDD"), coditem (Código do item retornado pela integração da busca de itens)

Fluxo de Produção

NomeTipoDescrição
CELULASArray de Objeto (Célula)Contém todas as células do fluxo de produção.
CENTROS_TRABArray de Objeto (Centro de trabalho)

Contém todos os centros de trabalhos contidos nas células.

FERRAMENTASArray de Objeto (Ferramenta)Contém todas ferramentas utilizadas na produção dos itens.
ITENSArray de Objeto (Item)Contém todos itens processos, comprados e final do fluxo de produção.
ESTRUTURAArray de Objeto (Estrutura)Contém a estrutura relacionando os itens e seus componentes.

Objeto Célula

NomeTipoDescrição
COD_CHAVE_ERPStringCódigo da Célula.
DES_CELStringDescrição da Célula.
ITENSArray de Objetos (Item Resumido)Referência os itens que a célula produz.

Item Resumido

NomeTipoDescrição
COD_CHAVE_ERPStringCódigo do item.
COD_REFERStringReferência do item.

Centro de Trabalho

NomeTipoDescrição
CELULAS
Array de Objeto (Célula Resumida)Referência das células que contém o centro de trabalho.
COD_CHAVE_ERP
StringCódigo do centro de trabalho.
DES_CT_ERP
StringDescrição do centro de trabalho.

Célula Resumida

NomeTipoDescrição
 CODStringCódigo da Célula.

Ferramenta

NomeTipoDescrição
 COD_CHAVE_ERPStringCódigo da Ferramenta.
DES_FERRAM
StringDescrição da Ferramenta.
ITENS
Array de Objeto (Item Resumido)Referencia dos itens que utilizam a ferramenta.

Item

NomeTipoDescrição

COD_CHAVE_ERP

 StringCódigo do item.

COD_DEPOS_ERP

StringDepósito.

COD_LOCALIZ

StringLocalização.

COD_REFER

StringReferência do item.

COD_UN_MED_ERP

StringCódigo unidade de medida.

DES_ITEM_ERP

StringDescrição do item.

QTI_ESTOQ_SEGUR

IntegerEstoque de Segurança.

QTI_LOTE_MINIMO

IntegerLote Mínimo.

QTI_TAM_KANBAN

IntegerTamanho do Kanban.

VLI_TEMPO_CICLO

IntegerTempo do Ciclo em milissegundos.

VLI_TEMPO_SETUP

IntegerTempo de Setup em milissegundos.

LOG_PROCES_EXT

BooleanIndica se o item é produzido por um Processo Externo.

Estrutura

NomeTipoDescrição

COD_ITEM_FILHO

StringCódigo do item filho.

COD_ITEM_PAI

StringCódigo do item pai.

QTD_FILHO

FloatQuantidade utilizada do item filho.

QTD_PAI

FloatQuantidade produzida do item pai.

REFER_FILHO

StringReferência do item filho.

REFER_PAI

StringReferência do item pai.

Formato JSON esperado: 

{
	"CELULAS": [{
		"COD_CHAVE_ERP": "CELULA 01",
		"DES_CEL": "CELULA 01",
		"ITENS": [{
			"COD_CHAVE_ERP": "ITEM01",
			"COD_REFER": ""
		}]
	}],
	"CENTROS_TRAB": [{
		"CELULAS": [{
			"COD": "CELULA 01"
		}],
		"COD_CHAVE_ERP": "CENTRO TRABALHO 01",
		"DES_CT_ERP": "CENTRO TRABALHO 01"
	}],
	"FERRAMENTAS": [{
		"COD_CHAVE_ERP": "FERRAMENTA 01",
		"DES_FERRAM": "FERRAMENTA 01",
		"ITENS": [{
			"COD_CHAVE_ERP": "ITEM01",
			"COD_REFER": ""
		}]
	}],
	"ITENS": [{
		"COD_CHAVE_ERP": "ITEM01",
		"COD_DEPOS_ERP": "01",
		"COD_LOCALIZ": "",
		"COD_REFER": "",
		"COD_UN_MED_ERP": "UN",
		"DES_ITEM_ERP": "ITEM 01",
		"QTI_ESTOQ_SEGUR": 10,
		"QTI_LOTE_MINIMO": 1,
		"QTI_TAM_KANBAN": 1,
		"VLI_TEMPO_CICLO": 3600000,
		"VLI_TEMPO_SETUP": 3600000,
		"LOG_PROCES_EXT": false
	},{
		"COD_CHAVE_ERP": "ITEM02",
		"COD_DEPOS_ERP": "01",
		"COD_LOCALIZ": "",
		"COD_REFER": "",
		"COD_UN_MED_ERP": "UN",
		"DES_ITEM_ERP": "ITEM 02",
		"QTI_ESTOQ_SEGUR": 10,
		"QTI_LOTE_MINIMO": 1,
		"QTI_TAM_KANBAN": 1,
		"VLI_TEMPO_CICLO": 3600000,
		"VLI_TEMPO_SETUP": 3600000,
		"LOG_PROCES_EXT": false
	}],
	"ESTRUTURA": [{
		"COD_ITEM_FILHO": "ITEM02",
		"COD_ITEM_PAI": "ITEM01",
		"QTD_FILHO": 1,
		"QTD_PAI": 1,
		"REFER_FILHO": "",
		"REFER_PAI": ""
	}]
}

 

Para que a importação de fluxo de produção funcione é necessário respeitar os seguintes critérios:

  • Célula não pode produzir o mesmo item duas vezes (célula repetida);
  • Item não pode aparecer repetido na lista de itens (dois itens com o mesmo cod_chave_erp e cod_refer);
  • Todos itens processo e o final, exceto os produzidos por Processo Externo(log_proces_ext = true), devem possuir uma célula, associada a este item, cadastrada;
  • Caso o item seja produzido por Processo Externo(log_proces_ext = true), o mesmo não deverá conter uma célula associada;
  • Um item não pode ser produzido por mais de uma célula;
  • A célula deve conter, no mínimo, um item associado (Célula não produz nenhum item);
  • Cada célula deve conter, no mínimo, um centro de trabalho associado(Célula não possui nenhum centro de trabalho);
  • Todos itens associados as células devem estar contidos na lista de itens;
  • O centro de trabalho deve conter, no mínimo, uma célula associada (Centro de trabalho não pertence a nenhuma célula);
  • Todas células associadas aos centros de trabalho devem estar contidos na lista de células;
  • Todos itens associados as ferramentas devem estar contidos na lista de itens;
  • O e-Kanban não irá aceitar estrutura circular. Onde um item consome ele mesmo em algum nível para ser produzido;
  • Todos os itens informados na estrutura, pai ou filho, deverão estar contidos na lista de item;
  • Todos os itens devem estar informados na estrutura ao menos uma vez;
  • As quantidades dos itens pai e filho na estrutura devem ser maiores que zero;
  • A estrutura deve conter um, e somente um, item final.

Caso alguma destes critérios não seja aceito, o e-Kanban irá emitir uma mensagem de validação informando o problema na importação de Fluxo de Produção.

 

Centros de trabalho

Onde é utilizada: Modal de células, função regerar centros de trabalho.

URL padrão: Configurada na tela de parâmetros de integração.

Parâmetros enviados pela URL: codcelerp (Célula que terá os centros de trabalho regerados), estab (Estabelecimento selecionado que veio da integração).

Centro de trabalho

NomeTipoDescrição
 CELULASStringArray de Objeto (Célula Resumida). Esta informação pode vir vazia.
COD_CHAVE_ERPStringCódigo do centro de trabalho.
DES_CT_ERPStringDescrição do centro de trabalho.

 

Formato JSON esperado: 

[{
"CELULAS": [],
"COD_CHAVE_ERP": "CENTRO TRABALHO 01",
"DES_CT_ERP": "CENTRO TRABALHO 01"
}]