Skip to main content

Service FTP : Format de données attendu

Le point FTP contient deux sous-dossiers afin de permettre au service de traiter les donnédonnées reçreçues :

  • work : Dossier dans lequel les ZIP réceptionnéréceptionnés seront décompressédécompressés afin d'êêtre traitétraités
  • histo : Dossier contenant l'ensemble des ZIP réceptionnéréceptionnés et traitétraités
    • format des ZIP : {yyyy-MM-dd} {HH}h{mm}m{ss}s.zip
      • Exemple : 2022-09-26 16h56m03s.zip

Le service scanne automatiquement la racine du point FTP afin de tecter et traiter tout nouveau ZIP.



Format des donnédonnées envoyéenvoyés en FTP

Toutes les donnédonnées envoyéenvoyées via FTP, quelles que soient leurs types, doivent êêtre compressécompressées en ZIP au prépréalable.

Le ZIP n'a pas besoin d'avoir un nommage spéspécifique, il doit juste êêtre compressécompressé en ZIP "classique" (Extension ".zip" et niveau de compression "normale").

Une fois générégénéré, le ZIP doit êêtre déposédéposé àà la racine du point FTP afin que notre service puisse le tecter.

Une fois la ception du ZIP terminéterminé, celui-ci sera alors décompressédécompressé afin d'êêtre traitétraité.

TéléTélécharger l'exemple de ZIP avec les donnédonnées au format JSON : TODO

TéléTélécharger l'exemple de ZIP avec les donnédonnées au format CSV : TODO



Structure du ZIP attendu

Le ZIP peut contenir les élééléments suivants :

* : Le fichier de donnédonnées articles doit êêtre inclus dans le zip pour que ce dossier soit traitétraité

** : Le fichier de donnédonnées clients doit êêtre inclus dans le zip pour que ce dossier soit traitétraité

Exemple de contenu de fichier ZIP
  • clients.csv
  • produits.csv
  • /FT
    • 00012.pdf
    • 00245.pdf
  • /FDS
    • 00012.pdf

  • /photo
    • 00012.jpg
    • 00245.jpg
  • /client
    • 8054.jpg

TéléTélécharger l'exemple : TODO



Fichier de donnédonnées clients

Nommage

Le service FTP accepte les donnédonnées dans les formats suivants :

  • JSON
  • CSV



Le fichier d'import des donnédonnées clients peut êêtre nomménommé comme ci-aprèaprès (l'extension du fichier n'est pas prise en compte) :

  • cli
  • client
  • clients
Exemple de nom pour le fichier clients
  • cli.csv
  • clients.json



Format JSON

Le fichier JSON doit contenir une liste de clients.



Liste des propriétépropriétés d'un client :

PropriétéPropriété Description Exemple d'utilisation
Reference RéféRéférence du client "Reference": "8054"
Designation Nom du client "Designation": "Mairie de Perpignan"
OffreDePrix Liste les référéférences des produits dans l'offre de prix du client "OffreDePrix": 
["00000001", "aaa1"]
Historique Liste les référéférences des produits dans l'historique du client "Historique": 
["00000001"]

Les propriétépropriétés reference et designation sont obligatoires afin que le client en question soit traitétraité.



Exemple complet avec 2 clients au format JSON
[
	{
		"Reference": "8054",
		"Designation": "Mairie de Perpignan",
		"OffreDePrix": ["00000001", "aaa1"],
		"Historique": ["00000001"]
	},
	{
		"Reference": "84513",
		"Designation": "EPHAD de Perpignan",
		"Historique": ["aaa1"]
	}
]

TéléTélécharger l'exemple : exemple_complet_2_clients.json



Format CSV

Le fichier CSV doit contenir une liste de clients.

L'ensemble des entêentêtes peuvent êêtre fini sous diffédifférent nommage (ex: "ref" ou "référéférence") et l'ordre n'importe pas.

Chaque entêentête / valeur doivent êêtre séparéséparé par un ";" (point virgule) ou "," (virgule).



Liste des entêentêtes du fichier CSV / propriétépropriétés d'un client :

EntêEntête Description
Reference RéféRéférence du client
Designation Nom du client
OffreDePrix Liste les référéférences des produits dans l'offre de prix du client
Historique Liste les référéférences des produits dans l'historique du client

Les entêentêtes reference et designation sont obligatoires afin que le fichier CSV soit traitétraité

Exemple d'entêentêtes valides
Reference;Designation;offreDePrix;Historique
signation;référéférence;offre de prix;historique
nom;ref.;offre;histo
titre;f
Voir les gles REGEX des entêentêtes
RéféRéférence :
	^\s*((cli|client|organn?isation|soci[éée]t[éée])?[s]?\s*(r(e|éé)f[.]?|r(e|éé)f(e|éé)rence)[s]?|(r(e|éé)f[.]?|r(e|éé)f(e|éé)rence)[s]?\s*(du|de|l[']?)?\s*(cli|client|organn?isation|soci[éée]t[éée])?[s]?)\s*$
  
signation :
	^\s*((cli|client|organn?isation|soci[éée]t[éée])[s]?\s*(d(e|éé)signation|titre|nom|libell(e|éé))[s]?|(d(e|éé)signation|titre|nom|libell(e|éé))[s]?\s*(du|de|l[']?)?\s*(cli|client|organn?isation|soci[éée]t[éée])?[s]?)\s*$

Offre de prix :
	^\s*((cli|client|organn?isation|soci[éée]t[éée])?[s]?\s*(offre)[s]?\s*(du|de|l[']?)?\s*(prix)?|(offre)[s]?\s*(du|de|l[']?)?\s*(prix)?\s*(du|de|l[']?)?\s*(cli|client|organn?isation|soci[éée]t[éée])?[s]?)\s*$
    
Historique :
	^\s*((cli|client|organn?isation|soci[éée]t[éée])?[s]?\s*(histo[.]?|historique)[s]?|(histo[.]?|historique)[s]?\s*(du|de|l[']?)?\s*(cli|client|organn?isation|soci[éée]t[éée])?[s]?)\s*$



Exemple complet avec 2 clients au format CSV
Designation;Reference;offreDePrix;Historique
8054;Mairie de Perpignan;00000001,aaa1;00000001
84513;EPHAD de Perpignan;;aaa1

TéléTélécharger l'exemple : exemple_complet_2_clients.csv

Fichier de donnédonnées articles

Nommage

Le service FTP accepte les donnédonnées dans les formats suivants :

  • JSON
  • CSV



Le fichier d'import des donnédonnées articles peut êêtre nomménommé comme suivant (l'extension du fichier n'est pas prise en compte) :

  • art
  • article
  • produits
Exemple de nom pour le fichier articles
  • art.csv
  • articles.json



Format JSON

Le fichier JSON doit contenir une liste d'articles.



Liste des propriétépropriétés d'un article:

PropriétéPropriété Description Exemple d'utilisation
Reference RéféRéférence de l'article "Reference": "00000001"
ReferenceGroupe RéféRéférence groupe de l'article "ReferenceGroupe": "00000001A"
Designation Nom de l'article "Designation": "graissant spray"
Description Description de l'article "Description": "graissant en spray de 500ml..."
Dosage Dosage recommandérecommandée  de l'article "Dosage": "PrêPrêt àà l'emploi"
Temperature TempéTempérature recommandérecommandée  de l'article "Temperature": "TempéTempérature ambiante"

Les propriétépropriétés reference et designation sont obligatoires afin que l'article en question soit traitétraité.



Exemple complet avec 2 articles au format JSON
[
	{
		"Reference": "00000001",
		"ReferenceGroupe": "00000001A",
		"Designation": "graissant spray",
		"Description": "graissant en spray de 500ml...",
		"Dosage": "PrêPrêt àà l'emploi",
		"Temperature": "TempéTempérature ambiante"
	},
	{
		"Reference": "aaa1",
		"Designation": "sinfectant 5L",
		"Description": "Bidon de 5L de sinfectant...",
		"Dosage": "0,2 àà 1 %",
		"Temperature": "àà l'eau chaude"
	},
]

TéléTélécharger l'exemple : exemple_complet_2_articles.json



Format CSV

Le fichier CSV doit contenir une liste d'articles.

L'ensemble des entêentêtes peutpeuvent êêtre fini sous diffédifférent nommage (ex: "ref" ou "référéférence") et l'ordre n'importe pas.

Chaque entêentête / valeur doitdoivent êêtre séparéséparé par un ";" (point virgule) ou "," (virgule).



Liste des entêentêtes du fichier CSV / propriétépropriétés d'un article:

EntêEntête Description
Reference RéféRéférence de l'article
ReferenceGroupe RéféRéférence groupe de l'article
Designation Nom de l'article
Description Description de l'article
Dosage Dosage recommandérecommandée  de l'article
Temperature TempéTempérature recommandérecommandée de l'article

Les entêentêtes reference et designation sont obligatoires afin que le fichier CSV soit traitétraité

Exemple d'entêentêtes valides
Reference;ReferenceGroupe;Designation;Description;Dosage;Temperature
signation;référéférence;référéférence groupe;dosage;tempétempérature
nom;ref.;dosage;temp
titre;f
Voir les gles REGEX des entêentêtes
RéféRéférence :
	^\s*((produit|art|article)?[s]?\s*(r(e|éé)f[.]?|r(e|éé)f(e|éé)rence)[s]?|(r(e|éé)f[.]?|r(e|éé)f(e|éé)rence)[s]?\s*(du|de|l[']?)?\s*(produit|art|article)?[s]?)\s*$

RéféRéférence groupe :
	^\s*((produit|art|article)?[s]?\s*(r(e|éé)f[.]?|r(e|éé)f(e|éé)rence)[s]?\s*(grp[.]|groupe)[s]?|(r(e|éé)f[.]?|r(e|éé)f(e|éé)rence)[s]?\s*\s*(grp[.]|groupe)[s]?\s*(du|de|l[']?)?\s*(produit|art|article)?[s]?)\s*$
  
signation :
	^\s*((produit|art|article)[s]?\s*(d(e|éé)signation|titre|nom|libell(e|éé))[s]?|(d(e|éé)signation|titre|nom|libell(e|éé))[s]?\s*(du|de|l[']?)?\s*(produit|art|article)?[s]?)\s*$

Description :
	^\s*((produit|art|article)[s]?\s*(description|d(e|éé)tail)[s]?|(d(e|éé)signation|titre|nom)[s]?\s*(du|de|l[']?)?\s*(produit|art|article)?[s]?)\s*$

Dosage :
	^\s*((produit|art|article)?[s]?\s*(dosage)[s]?|(dosage)[s]?\s*(du|de|l[']?)?\s*(produit|art|article)?[s]?)\s*$
    
TempéTempérature :
	^\s*((produit|art|article)?[s]?\s*(temp[.]?|temp(e|éé)rature)[s]?|(temp[.]?|temp(e|éé)rature)[s]?\s*(du|de|l[']?)?\s*(produit|art|article)?[s]?)\s*$



Exemple complet avec 2 articles au format CSV
Reference;ReferenceGroupe;Designation;Description;Dosage;Temperature
00000001;00000001A;graissant spray;graissant en spray 500ml...;PrêPrêt àà l'emploi;TempéTempérature ambiante
aaa1;sinfectant 5L;Bidon de 5L de sinfectant...;0,2 àà 1 %;àà l'eau chaude

TéléTélécharger l'exemple : exemple_complet_2_articles.csv

Dossiers des documents des articles

Dossier fiches technique

Ce dossier permet de stocker les fiches techniques au format PDF des articles ajoutéajoutés / modifiémodifiés dans le fichier de donnédonnées article.

Les PDF doivent êêtre nomménommés avec la référéférence de l'article concernéconcerné.

Exemple de PDF contenu dans le dossier
  • 00000001.pdf
  • aaa1.pdf

TéléTélécharger l'exemple : TODO



Le dossier peut êêtre fini sous diffédifférents nommage (ex: "ft" ou "fiches techniques")

Voir la gle REGEX de nom du dossier
^(ft|fiches?(\s*|-)?tech(nique)?)$



Dossier fiches de donnédonnées de sécuritésécurité

Ce dossier permet de stocker les fiches de donnédonnées de sécuritésécurité au format PDF des articles ajoutéajoutés / modifiémodifiés dans le fichier de donnédonnées article.

Les PDF doivent êêtre nomménommés avec la référéférence de l'article concernéconcerné.

Exemple de PDF contenu dans le dossier
  • 00000001.pdf
  • aaa1.pdf

TéléTélécharger l'exemple : TODO



Le dossier peut êêtre fini sous diffédifférents nommages (ex: "fds" ou "fiches de sécuritésécurité")

Voir la gle REGEX de nom du dossier
^(fds|fiches?(\s*|-)?(de)?(\s*|-)?s['éée]cu(rit['éée]e?)?)$



Dossier photo

Ce dossier permet de stocker les photos au format JPG des articles ajoutéajoutés / modifiémodifiés dans le fichier de donnédonnées article.

Les photos doivent êêtre nomménommées avec la référéférence de l'article concernéconcerné.

Exemple de photos contenu dans le dossier
  • 00000001.jpg
  • aaa1.jpg

TéléTélécharger l'exemple : TODO



Le dossier peut êêtre fini sous diffédifférents nommages (ex: "img" ou "photos")

Voir la gle REGEX de nom du dossier
^(photo|img|image|picture)s?$

Dossiers des documents des clients

Dossier client

Ce dossier permet de stocker les photos au format JPG des articles ajoutéajoutés / modifiémodifiés dans le fichier de donnédonnées client.

Les photos doivent êêtre nomménommées avec la référéférence du client concernéconcerné.

Exemple de photos contenu dans le dossier
  • 8054.jpg
  • 84513.jpg

TéléTélécharger l'exemple : TODO



Le dossier peut êêtre fini sous diffédifférents nommages (ex: "cli" ou "clients")

Voir la gle REGEX de nom du dossier
^cli(ent?s)?$