
Votre guide d'intégration V5 !

L'intégration des matières premières (ingrédients/emballages/matières premières/SKU) entre V5 Traçabilité et le système ERP d'un client permet d'envoyer les détails des matières premières, tels que les coûts, les unités, les délais d'expiration par défaut, etc. à V5 Traçabilité.
En ce qui concerne la façon dont nous pouvons relier les matières premières à ce que nous voyons dans Control Center, nous pouvons voir que nous n'avons qu'un seul panneau à remplir ici, la fenêtre principale des matières premières.
Grâce à la passerelle V5, nous pouvons facilement renseigner les données ici en utilisant un seul point de terminaison.
Pour en savoir plus sur les définitions de ces classes de base de données, veuillez consulter le lien suivant :
Le modèle d'intégration pour Commodities peut être téléchargé ici.
Les clés primaires sont l'identifiant unique de chaque table dans l'API V5. Pour Commodities, c'est:
code – Le code d’identification unique de chaque marchandise.
Les autres champs requis par SG pour remplir une ligne de produits valide dans Control Center sont :
units.code - UdM de stockage par défaut du produit.
type - Le type de produit (ingrédient (0), formule (1) ou emballage (2)).
recordStock - Si l'utilisation de ce produit doit être suivie par V5 Traçabilité (non enregistrée (0) ou enregistrée (1)).
Les champs préférés servent à ajouter plus d'informations sur le produit en question et, bien qu'ils ne soient pas obligatoires, sont utiles lorsqu'il s'agit d'ajouter des fonctionnalités dans V5 Traçabilité.
description - La description de la marchandise.
bulkUnit - Les unité en vrac du produit (par exemple « Sac » ou « Boîte »).
bulkQuantity - Le montant de l'UdM par défaut (units.code) du produit va dans l'unité de vrac ci-dessus (par exemple, « 20 » pour cela, et « Bag » saisi pour la BulkUnit, avec une unité par défaut de « lb » signifie dans 1 sac de ce produit il y a 20lbs).
Des champs supplémentaires peuvent également être inclus, tels que :
cost – Le coût par défaut (par unité) du produit.
defExpiryDays – Nombre de jours par défaut à compter de la réception pendant lequel un article en stock de ce type de produit expirera
gtin – Le GTIN de la marchandise.
Étant donné que nous n'utilisons qu'un seul point de terminaison pour cette classe d'objets, nous pouvons utiliser le point de terminaison « commodity » pour les importations et les exportations JSON et CSV. Nous pouvons maintenant examiner cela ci-dessous.
Commodity:
‘Commodity’ importer le point de terminaison/URI –
http://host:port/V5-API/api/integrate/import/commodity
Pour cet exemple d'importation, nous utiliserons le ‘Commodity’ point final et en structurant un fichier d'importation de base pour un seul produit, cela pourrait ressembler à ceci :

Cet exemple de fichier JSON peut être téléchargé ici.
Nous pouvons voir ici un exemple d'utilisation de classes imbriquées liées au ‘Commodity’ point final. Dans ce cas, nous avons inclus le retrait ‘units’ et ‘bulkUnit’ points de données, nous permettant de définir à la fois l'UdM par défaut du produit ainsi que son unité de masse. Puisque tous deux utilisent le ‘WeightUnit’ classe, nous pouvons utiliser le manuel de l'API V5 pour nous guider vers ces points de données en utilisant le chemin suivant :

Nous pouvons créer le reste de nos points de données requis en utilisant une méthode de recherche de chemin similaire pour accéder à des classes supplémentaires telles que ‘Location’ or ‘Container’ comme demandé.
Si nous devions importer le fichier d'exemple ci-dessus, nous verrons dans Control Center que notre marchandise a été importée.

En termes de réception des fichiers relatifs aux matières premières en provenance de l'API V5, si l'on vérifie les résumés de méthodes sous la rubrique IntegrationExport classe, nous avons 2 options différentes ici :
Commodity:
Exporter le point de terminaison/URI –
http://host:port/V5-API/api/integrate/export/commodity/{code}
Ce point de terminaison exportera un fichier JSON avec toutes les informations associées à un produit spécifique. Si nous exécutons cette requête en utilisant le produit que nous venons d'importer, nous obtiendrons un fichier qui ressemble à ceci :

Un exemple de fichier JSON peut être téléchargé ici.
Commodities:
Exporter le point de terminaison/URI –
http://host:port/V5-API/api/integrate/export/commodites/{all}
Ce point de terminaison exportera un fichier JSON qui comprend une liste de toutes les informations associées pour tous les produits du système en fonction de la valeur du {all} champ. Si c'est ‘true’ alors nous retirerons toutes les marchandises, alors que si ‘false’ alors nous obtiendrons simplement un retour sur les nouveaux produits (c'est-à-dire les produits qui ne sont pas marqué comme déjà exporté).
Si nous exécutons cette requête comme true , nous obtiendrons un fichier qui ressemble à ceci :

Un exemple de fichier JSON peut être téléchargé ici.
Nom du fichier de définition d'en-tête/colonne : “commodity.csvh”
Les fichiers d'en-tête complétés doivent être placés dans : “<installdir>\SG Control Center\gateway\import\column_defs”
Importer le nom du fichier CSV : “commodity-datetime.csv”
Les fichiers CSV à importer doivent être placés dans : “<installdir>\SG Control Center\gateway\import”
En tête de fichier:
Les fichiers d'en-tête seront généralement compilés par SG Systems avant les intégrations CSV, mais nous pouvons voir ci-dessous un exemple de base de celui que nous pouvons utiliser pour les produits :

Pour plus d'informations sur la manière dont nous structurons ces fichiers, veuillez consulter le page d'intégration principale. Cet exemple de fichier d'en-tête peut être téléchargé ici.
Fichier d'importation CSV :
Nous pouvons ensuite utiliser l'ordre défini des points de données dans l'en-tête pour structurer notre fichier d'importation. SG Systems peut fournir un fichier modèle pour cela, répertoriant les points de données pour chaque colonne afin de clarifier les choses lors du remplissage de la liste. Notez que cette première ligne peut être ignorée par Control Center et peut donc être conservée dans le fichier lors de la soumission pour importation.
Un exemple de fichier d'importation CSV utilisant l'en-tête ci-dessus pourrait ressembler à ceci :

Cet exemple de fichier d'importation peut être téléchargé ici.
Une fois l'importation terminée, nous pouvons voir que ces produits ont été ajoutés au Control Center.

Lors de l'exportation de produits en utilisant cette méthode, nous utiliserons les mêmes définitions de classe que pour les importations, que nous pouvons trouver ici.
Nom du fichier de définition d'en-tête/colonne : “commodity.csvh”
Les fichiers d'en-tête complétés doivent être placés dans : “<installdir>\SG Control Center\gateway\export\order”
Exporter le nom du fichier CSV : “Commodity-datetime.csv”
Les CSV pour les exportations seront générés dans : “<installdir>\SG Control Center\gateway\export”
Cette exportation devra également être activée dans la section Passerelle du Control Center. Nous pouvons choisir ici d'exporter uniquement ‘Ingredients’ (ingrédients/emballage), ou des formules, ou les deux. Ici, nous nous contenterons d'exporter ‘Ingredients’ :

En tête de fichier:
À partir de là, il suffirait simplement de structurer notre fichier d'en-tête d'exportation en fonction des informations que nous souhaitons recevoir du système.
Nous pourrions le structurer d'une manière très similaire à la façon dont nous avons structuré l'en-tête d'importation :

Cet exemple de fichier d'en-tête peut être téléchargé ici.
Fichier d'exportation CSV :
Avec l'en-tête ci-dessus en place, nous recevrions un fichier CSV de retour pour nos importations récentes qui ressemblerait à ceci :

Cet exemple de fichier d'exportation peut être téléchargé ici.