
Seu guia para a integração V5!

A integração de Commodities (Ingredientes/Embalagens/Matérias-primas/SKUs) entre V5 Traceability e um sistema ERP do cliente permite que detalhes de commodities, como custos, unidades, prazos de validade padrão, etc., sejam enviados para V5 Traceability.
Em termos de como podemos relacionar as mercadorias com o que vemos em Control Center, podemos ver que temos apenas um único painel para preencher aqui, a janela principal de commodities.
Usando o V5 Gateway, podemos facilmente preencher os dados aqui usando um único endpoint.
Para saber mais sobre as definições dessas classes de banco de dados, consulte o seguinte link:
O modelo de integração para Commodities pode ser baixado aqui..
Chaves primárias são o identificador exclusivo para cada tabela na API V5. Para Commodities, isso é:
code – O código de identificação único para cada mercadoria.
Outros campos exigidos pelo SG para preencher uma linha de mercadoria válida no Control Center são:
units.code - A UM de estoque padrão da mercadoria.
type - O tipo de mercadoria (ingrediente (0), fórmula (1) ou embalagem (2)).
recordStock - Se o uso desta mercadoria deve ser rastreado pela Rastreabilidade V5 (não registrado (0) ou registrado (1)).
Os campos preferenciais servem para adicionar mais informações sobre a mercadoria em questão e, embora não sejam obrigatórios, são úteis quando se trata de funcionalidade adicional no Rastreabilidade V5.
description - A descrição da mercadoria.
bulkUnit – As unidade a granel da mercadoria (por exemplo, 'Saco' ou 'Caixa').
bulkQuantity - O valor da UM padrão (units.code) da mercadoria vai para a unidade a granel acima (por exemplo, '20' para isso e 'Bag' inserido para a bulkUnit, com uma unidade padrão de 'lb' significa em 1 Saco de esta mercadoria há 20 libras).
Campos adicionais também podem ser incluídos, como:
cost – O custo padrão (por unidade) da mercadoria.
defExpiryDays – Número padrão de dias a partir do recebimento em que um item de estoque desse tipo de mercadoria será definido para expirar
gtin – O GTIN da mercadoria.
Dado que estamos usando apenas um único endpoint para esta classe de objeto, podemos usar o endpoint 'commodity' para importações e exportações JSON e CSV. Agora podemos ver isso abaixo.
Commodity:
‘Commodity’ importar Endpoint/URI –
http://host:port/V5-API/api/integrate/import/commodity
Para esta importação de amostra, usaremos o ‘Commodity’ endpoint e estruturar um arquivo de importação básico para uma única mercadoria, isso pode ser algo como isto:

Este arquivo JSON de amostra pode ser baixado aqui..
Podemos ver aqui um exemplo de uso de classes aninhadas relacionadas ao ‘Commodity’ ponto final. Neste caso, incluímos o recuo ‘units’ e ‘bulkUnit’ pontos de dados, permitindo-nos definir a UM padrão da mercadoria, bem como sua unidade a granel. Uma vez que ambos fazem uso do ‘WeightUnit’ class, podemos usar o manual da API V5 para nos guiar até esses pontos de dados usando o seguinte caminho:

Podemos construir o restante de nossos pontos de dados necessários usando um método de localização de caminhos semelhante para percorrer classes adicionais, como ‘Location’ or ‘Container’ como requerido.
Se fôssemos importar o arquivo de exemplo acima, veremos no Control Center que nossa mercadoria foi importada.

Em termos de recebimento de arquivos relacionados a commodities da API V5, se verificarmos os resumos do método no IntegrationExport classe, temos 2 opções diferentes aqui:
Commodity:
Exportar endpoint/URI –
http://host:port/V5-API/api/integrate/export/commodity/{code}
Este endpoint exportará um arquivo JSON com todas as informações relacionadas a uma mercadoria específica. Se executarmos essa solicitação usando a mercadoria que acabamos de importar, obteremos um arquivo parecido com este:

Um exemplo de arquivo JSON pode ser baixado aqui..
Commodities:
Exportar endpoint/URI –
http://host:port/V5-API/api/integrate/export/commodites/{all}
Este endpoint exportará um arquivo JSON que inclui uma lista de todas as informações relacionadas a todas as mercadorias no sistema, dependendo do valor do {all} campo. Se isso é ‘true’ então vamos puxar todas as commodities, enquanto que se ‘false’ então teremos apenas um retorno para novas commodities (ou seja, commodities que não são marcado como já exportado).
Se executarmos esta solicitação como true , obteremos um arquivo semelhante a este:

Um exemplo de arquivo JSON pode ser baixado aqui..
Nome do arquivo de definição de cabeçalho/coluna: “commodity.csvh”
Os arquivos de cabeçalho completos devem ser colocados em: “<installdir>\SG Control Center\gateway\import\column_defs”
Nome do arquivo CSV de importação: “commodity-datetime.csv”
Os CSVs para importação devem ser colocados em: “<installdir>\SG Control Center\gateway\import”
Arquivo de cabeçalho:
Os arquivos de cabeçalho geralmente serão compilados pela SG Systems antes das integrações CSV ocorrerem, mas podemos ver um exemplo básico de um que podemos usar para commodities abaixo:

Para mais informações sobre como estruturamos esses arquivos, consulte o página principal de integração. Este arquivo de cabeçalho de amostra pode ser baixado aqui..
Arquivo de importação CSV:
Podemos então usar a ordem definida de pontos de dados no cabeçalho para estruturar nosso arquivo de importação. A SG Systems pode fornecer um arquivo de modelo para isso, listando o ponto de dados para cada coluna para tornar as coisas mais claras ao preencher a lista. Observe que esta primeira linha pode ser ignorada pelo Centro de Controle e, portanto, pode ser mantida no arquivo ao enviar para importação.
Um exemplo de arquivo csv de importação usando o cabeçalho acima pode ser mais ou menos assim:

Este arquivo de importação de amostra pode ser baixado aqui..
Com a importação concluída, podemos ver que essas commodities foram adicionadas ao Control Center.

Ao exportar commodities usando esse método, usaríamos as mesmas definições de classe que usamos para importações, que podemos encontrar aqui..
Nome do arquivo de definição de cabeçalho/coluna: “commodity.csvh”
Os arquivos de cabeçalho completos devem ser colocados em: “<installdir>\SG Control Center\gateway\export\order”
Exportar nome do arquivo CSV: “Commodity-datetime.csv”
Os CSVs para exportações serão gerados em: “<installdir>\SG Control Center\gateway\export”
Essa exportação também precisaria ser habilitada na seção Gateway do Centro de Controle. Podemos escolher aqui exportar apenas ‘Ingredients’ (ingredientes/embalagem), ou fórmulas, ou ambos. Aqui, veremos apenas a exportação ‘Ingredients’ :

Arquivo de cabeçalho:
A partir daqui, seria um caso simples de estruturar nosso arquivo de cabeçalho de exportação para atender às informações que queremos receber de volta do sistema.
Poderíamos estruturá-lo de maneira muito semelhante à forma como estruturamos o cabeçalho de importação:

Este arquivo de cabeçalho de amostra pode ser baixado aqui..
Arquivo de exportação CSV:
Com o cabeçalho acima instalado, receberíamos um csv de retorno para nossas importações recentes que seria mais ou menos assim:

Este arquivo de exportação de amostra pode ser baixado aqui..