
Votre guide d'intégration V5 !

L'intégration de Formules entre V5 Traçabilité et le système ERP d'un client permet d'importer des formules/recettes/nomenclatures, où elles peuvent ensuite être planifiées via ordres de travail pour produire lots or produits purs en utilisant le terminal V5.
Pour plus d'informations sur le fonctionnement du module de formulation dans V5 Traçabilité, veuillez consulter notre guide du module ici.
En ce qui concerne la façon dont nous pouvons relier les détails de la formule à ce que nous voyons dans le centre de contrôle, nous utiliserons l'API V5 et la passerelle pour remplir à la fois la partie supérieure. ‘Formula’ panneau pour saisir les données d'en-tête de formule, ainsi que les valeurs inférieures ‘Formula Step’ panneau pour renseigner les détails des étapes de la formule.
En fonction de notre méthode d'intégration, nous utiliserons les ‘Formula’ et ‘FormulaStep’ points de terminaison pour remplir ces deux panneaux et terminer la configuration de notre formule.
Pour en savoir plus sur les définitions de ces classes de base de données, veuillez consulter les liens suivants :
Le modèle d'intégration pour les formules peut être téléchargé ici.
Les clés primaires sont l'identifiant unique de chaque table dans l'API V5. Pour Formula, c'est:
commodity.code – Le code marchandise sous-jacent de la formule. Le numéro de formule/recette.
Pour FormulaStep, les clés primaires sont :
formula.commodity.code – Le même code de produit pour la formule elle-même comme décrit ci-dessus.
sequence – Utilisé pour déterminer l'ordre des étapes de formule individuelles dans une configuration de formule, c'est-à-dire 1, 2, 3, etc.
Les autres champs requis par SG pour remplir une ligne de formule valide dans Control Center sont :
Pour Formula:
type - Le type de formule. Cela doit être 0 (pour une formule de lot) ou 1 (pour une formule de produit).
defaultSize - les 'Taille de base' de la formule en question.
commodity.units.code – L'unité de poids dans laquelle la formule doit être produite. Si elle n'est pas indiquée, la formule sera créée dans l'unité de mesure par défaut de la base de données.
Pour FormulaStep:
type - la formule étape type.
Les types d'étapes sont les suivants :
0 – Peser
1 – Entrée par clé
2 – Question
3 – Messages
4 – Changement de conteneur
5 – Composant du produit
6 – Emballage du produit
7 – Sous-mixage
8 – Rassemblement
9 - Dispensée en vrac
10 – Facultatif
11 – Numériser
12 - Réviser
13 – Suspendre
Les champs préférés servent à ajouter plus d'informations sur la formule 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é.
Pour Formula ces champs sont :
commodity.units.code – L'unité de poids dans laquelle la formule doit être produite. Si elle n'est pas indiquée, la formule sera créée dans l'unité de mesure par défaut de la base de données.
minimumProducts - La taille minimale du lot pouvant être produit
maximumProducts – La taille maximale du lot pouvant être produit.
Pour FormulaStep ces champs sont :
sequence – la séquence des étapes de la formule, c'est-à-dire l'ordre dans lequel elles doivent être traitées pendant la production.
commodity.code – le produit/ingrédient à utiliser pour l’étape particulière
targetQty – le poids cible pour l’étape particulière
unit.code – l'UdM de cette étape particulière
question.question– Si cette étape doit être une question ou un message, cela peut être saisi à l'aide de ce champ.
Nous pouvons, comme nous l'avons vu dans les sections clés primaires et champs obligatoires, parcourir entre ces 2 'formula' et 'formulaStep' classes, et peut donc inclure les points de données ci-dessus à utiliser avec l'une ou l'autre classe, à condition que nous puissions accéder à cette classe avec succès.
Des champs supplémentaires peuvent également être inclus, par exemple pour FormulaStep:
upperTol - La tolérance supérieure pour cette étape particulière, c'est-à-dire le poids maximum pouvant dépasser la quantité cible pour être acceptable lors de la production de la formule.
lowerTol – La tolérance la plus faible pour cette étape particulière, c'est-à-dire le poids maximum pouvant être inférieur à la quantité cible pour être acceptable lors de la production de la formule.
schedule – Si l'étape doit être planifiée lors de la production de la formule. Utile pour les étapes qui sont des sous-mélanges et doivent être produites en même temps qu'une formule principale.
Comme indiqué ci-dessus, nous pourrions toujours utiliser ces points de données lors de l'utilisation du ‘formula’ point final, simplement en passant au ‘formulaStep’ classe en ajoutant ‘formulaStep’ à chacun des éléments ci-dessus.
En fonction de notre méthodologie d'intégration des formules, nous utiliserions généralement différents points de terminaison ; Pour l'intégration d'API, nous utiliserions généralement ‘Formula’, et pour CSV ‘FormulaStep’. Nous pouvons maintenant examiner ces deux éléments et voir pourquoi c’est le cas.
Formule:
Nous pouvons utiliser le ‘Formula’ point final pour créer de nouvelles formules pour la production dans V5 Traçabilité. Comme nous le verrons, l'utilisation de ce point de terminaison nous permet facilement de capturer à la fois l'en-tête de la formule et les informations sur les étapes dans un seul fichier.
‘Formula’ importer le point de terminaison/URI –
http://host:port/V5-API/api/integrate/import/formula
Pour cet exemple d'importation à l'aide du ‘Formula’ point final, nous pouvons structurer un fichier d'importation de base pour une seule formule avec 2 étapes de formule comme ci-dessous :

Cet exemple de fichier JSON peut être téléchargé ici.
À l'aide du manuel de l'API, nous pouvons tracer les chemins que nous utilisons pour accéder aux différentes classes que nous devons utiliser pour cette importation. Dans le ‘Formula’ classe, nous pouvons voir que tout ce que nous utilisons ici est le ‘type’ et ‘productionLocation’. À partir de là, nous devons définir notre formule d'informations sur les produits, ce que nous pouvons faire en parcourant depuis ‘Formula’ à ‘Commodity’. Ici, nous pouvons saisir les informations sur le produit pour la formule elle-même (son code, sa description, etc.).
Pour ensuite définir les étapes de la formule, nous devons d'abord passer au ‘FormulaStep’ classe, où nous pouvons définir le type d'étape, la quantité cible, les tolérances, etc. De là, nous passerions à nouveau à la classe ‘Commodity’ classe, sauf qu'ici, en raison de l'itinéraire que nous avons emprunté vers la classe, nous définirons les informations sur le produit pour l'ingrédient à utiliser pour une étape de formule spécifique, plutôt que les informations d'en-tête que nous avons déjà définies ci-dessus.
De là, nous traverserions ensuite les deux ‘Commodity’ cours pour arriver au ‘WeightUnit’ classe, où nous pouvons définir l'UdM à la fois pour la formule elle-même et pour chaque étape individuelle. Ainsi, même si nous utilisons la même classe pour cela, nous y sommes parvenus de 2 manières différentes, ce qui se reflète dans les définitions que nous pouvons voir (commodity.units.code vs formulaStep.commodity.units.code), nous permettant d'utiliser différentes UoM si nous le souhaitons.
Nous pouvons voir un résumé de la recherche de chemin requise pour produire le fichier JSON ci-dessus ici :

Nous pouvons construire le reste de nos points de données requis en utilisant une méthode de recherche de chemin similaire.
Si nous exécutons le fichier JSON ci-dessus, nous verrons que cette nouvelle formule, ainsi que ses étapes, est désormais visible dans l'onglet « Formules » du Control Center.

Étape de formule :
‘FormulaStep’ importer le point de terminaison/URI –
http://host:port/V5-API/api/integrate/import/formula_step
Pour cet exemple d'importation à l'aide du ‘FormulaStep’ point final, nous envisagerons d’importer la même formule que celle ci-dessus, mais nous changerons simplement son nom. En utilisant ce point de terminaison, nous pouvons structurer ce fichier comme ci-dessous :
Nous pouvons également utiliser le ‘FormulaStep’ point final pour créer de nouvelles formules pour la production dans V5 Traçabilité. Cela fonctionnerait en grande partie de la même manière que l'utilisation ‘Formula’ ci-dessus, mais nous devrions effectivement parcourir les classes de base de données à l'envers, donc au lieu de passer de ‘Formula’ à ‘FormulaStep’, nous partirions de ‘FormulaStep’ à ‘Formula’. Nous pouvons voir comment cela fonctionnerait ci-dessous :

Cet exemple de fichier JSON peut être téléchargé ici.
Comme nous pouvons le voir ici, nous saisissons les mêmes informations en termes d'étapes et modifions simplement le nom de la formule. Notez ici le parcours depuis le ‘formulaStep’ classe à la ‘formula’ classe, et le fait que ces informations doivent être imbriquées pour chaque étape de la formule.
Si nous exécutons maintenant cet exemple de fichier JSON, notre formule en double sera désormais créée avec les mêmes paramètres que ceux que nous avons vus lors de l'utilisation de l'outil ‘Formula’ point final.

En ce qui concerne la réception des fichiers relatifs aux formules/recettes depuis l'API V5, nous ne suivons pas vraiment les données de consommation ici, nous allons donc simplement exporter la configuration/configuration d'une formule. Il existe encore quelques options pour cela si nous vérifions les disponibilités ‘IntegrationExport’ services:
Formule:
Exporter le point de terminaison/URI –
http://host:port/V5-API/api/integrate/export/formula/{code}
Ce point de terminaison exportera un fichier JSON avec toutes les informations associées à une formule spécifique. Si nous exécutons cette requête GET pour la formule que nous avons créée via le ‘Formula’ point final, nous obtiendrons un fichier de retour qui ressemble à ceci :

Un exemple de fichier JSON peut être téléchargé ici.
All Formulas:
Exporter le point de terminaison/URI –
http://host:port/V5-API/api/integrate/export/formulas
Ce point de terminaison exportera un fichier JSON qui comprend une liste de toutes les formules contenues dans le système. Notez que cela ne renverra que les données d'en-tête pour chaque formule. Pour récupérer les étapes de la formule, voir ci-dessous.
Un exemple de fichiers JSON de ce type peut être téléchargé ici.
Étape de formule :
Exporter le point de terminaison/URI –
http://host:port/V5-API/api/integrate/export/formula_step/{code}/{sequence}
Ce point de terminaison peut être configuré pour renvoyer des données pour une étape spécifique d'une formule spécifique. Nous préciserions quelle étape nous souhaitons récupérer en utilisant son numéro de séquence. Si nous atteignons ce point final pour récupérer l'étape 1 du premier exemple de formule que nous avons créé ci-dessus, nous obtiendrons un retour qui ressemble à ceci :

Cet exemple de fichier JSON peut être téléchargé ici.
Étapes de la formule :
Exporter le point de terminaison/URI –
http://host:port/V5-API/api/integrate/export/formula_steps/{all}
Ce point de terminaison fournit une liste de toutes les étapes de formule au sein du système. Nous pouvons modifier le retour en utilisant soit ‘/true’ or ‘/false’ au lieu de ‘/{all}’ dans l'URI ci-dessus. ‘True’ exportera une liste de toutes les étapes du système, alors que ‘false’ renverra une liste d’étapes non marquées comme déjà exportées.
La présentation serait très similaire à celle de l'exemple ci-dessus, avec simplement plus d'étapes présentes. Un exemple d'un ‘true’ l'exportation de ce type peut être téléchargée ici.
Remarque : une fois importées, les formules peuvent être protégées contre toute modification en cochant la case « Exempt d'importation » dans l'en-tête de formule dans Control CenterCeci s'applique uniquement à la méthodologie CSV.
Nous avons vu dans les exemples JSON ci-dessus que nous pouvons utiliser à la fois le ‘formula’ et ‘formulaStep’ points finaux pour cette méthodologie particulière. Cependant, pour les importations CSV, nous utiliserons uniquement le ‘formulaStep’ point final.
Nom du fichier de définition d'en-tête/colonne : “formulaStep.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 : “formulaStep-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 tâches :

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.
Encore une fois, nous allons créer une formule en double des 2 que nous avons créées via la méthode JSON ci-dessus. Un exemple de fichier d'importation CSV pour une formule 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 cette formule supplémentaire a été ajoutée au Control Center avec les mêmes étapes que les formules que nous avons créées à l'aide des importations JSON ci-dessus.

Pour nos exports CSV, nous utiliserons simplement le même ‘formulaStep’ fichier d'en-tête/point de terminaison comme ci-dessus pour les importations. Ceci peut être téléchargé ici.
Nom du fichier de définition d'en-tête/colonne : “formulaStep.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 : “FormulaStep-datetime.csv”
Les CSV pour les exportations seront générés dans : “<installdir>\SG Control Center\gateway\export”
C'est le seul moyen de récupérer les données de formule de V5 Traçabilité sous la forme d'un CSV.
Cette exportation devra également être activée dans la section Passerelle du Control Center. On peut choisir ici d'exporter ‘Formulas’.

En tête de fichier:
Pour cet exemple, nous pouvons utiliser l’en-tête précédemment utilisé pour l’import pour l’export. Des points de données supplémentaires peuvent y être ajoutés si vous le souhaitez.
Fichier d'exportation CSV :
Activer cet export à l'aide de l'en-tête précédemment utilisé donnerait un fichier d'export pour nos 3 nouvelles formules qui ressemblerait à ceci :

Unique au mécanisme d'importation CSV, une case à cocher « Protégé » est disponible en regard de l'en-tête de formule dans le Centre de contrôle :

Si cette option est cochée, la formule sera protégée de toute modification apportée par les importations CSV de formulaStep ultérieures.
Comme indiqué ci-dessus, cela est propre à la méthodologie d'importation CSV, cocher cette case ne protégera pas une formule des mises à jour via JSON/API.