3.4 Les codes utilisés dans Agreo
Â
Introduction
Ce document a pour objectif de décrire le processus d’échanges pour l’import des contrats dans AGREO. Il présente donc l’architecture mise en place pour assurer l’échange ainsi que le format des fichiers échangés.
Il permettra ainsi au client de respecter les normes afin d’assurer le développement de la partie qui lui incombe.
Â
0. Glossaire
Contrat type : c’est un modèle de contrat. Il possède un type (Surface, Quantité) qui définit l’unité des contrats qui l’utiliseront (Ha, Kg).Â
Contrat : c’est la formalisation d’un accord entre un fournisseur et un client sur une quantité donné (d’unité variable en fonction du contrat type).
Â
1. Périmètre de l'échange
Â
L’import des contrats est basé sur un échange de fichier utilisant un mécanisme classique de l’application : dépôt de fichiers à échéances régulières dans un répertoire FTP et intégration en mode batch des données dans la base de données.
Un seul fichier est concerné par cet import : le fichier des contrats
Si le besoin client le nécessite, cet import pourra également couvrir l’import des contrats types.
La suite du document décrit à la fois de manière détaillée l’architecture mise en place pour les échanges, les spécifications techniques de chacun des fichiers, les règles de gestion. Nous vous fournirons également des exemples à suivre ainsi que les codes à utiliser issus du paramétrage de votre application.
Â
2. Prérequis de paramétrage
Les éléments suivants devront donc avoir été paramétrés de façon cohérente avec le SI du client pour permettre un fonctionnement correct de l’échange :
- des contrats types,
- des produits.
Â
3. Le fichier "Contrat"
3.1 Format du fichier
| Â | Commentaire |
| contrats_AA_MM_JJ_HHMMSS.csv | Il est préfixé par le mot «contrats» et suivi de la date de dépôt du fichier au format «_AA_MM_JJ_HHMMSS». Les deux éléments sont séparés par le caractère « _ » |
| Format | .csv |
| Le séparateur des nombres décimaux | Le point « . » |
| Séparateur de colonne | Le point virgule « ; » |
| Ligne d’entête | Non |
| Indicateur de fin de ligne | Le caractère « CRLF » |
| Dernière ligne du fichier | Le caractère « CRLF » |
| Encodage | ANSI |
| Commentaire | Chaque jeu de fichiers est déposé dans un répertoire dédié au client (ou à l’entité de paramétrage du client) |
Â
3.2 Structure du fichier
| N° | Rubrique | Type | Longueur max. | Obligatoire | Commentaire |
| 1 | Site de réception | Alphanumérique | 10 | Non | Site de réception associé au contrat. C'est le code externe du site de réception. |
| 2 | Code contrat type | Alphanumérique | 20 | Oui | Référence au contrat type. Ce code est créé dans l’AGREO (voir la gestion des contrats types). |
| 3 | Campagne | Numérique | 4 | Oui |  |
| 4 | Code externe Exploitation | Alphanumérique | 50 | Oui | Exploitation liée au contrat |
| 5 | N° contrat | Alphanumérique | 100 | Oui |
Référence unique du contrat L’index automatique de la codification ne sera pas rempli. |
| 6 | Code externe produit | Alphanumérique | 100 | Non | Obligatoire en fonction du paramétrage du contrat type (cf. règles de gestion) |
| 7 | Date de début du contrat | Date |  | Oui | Le format a respecter est : JJ/MM/AAAA |
| 8 | Date de fin du contrat | Date |  | Non | Le format a respecter est : JJ/MM/AAAA |
| 9 | Commentaire | Alphanumérique | 255 | Non |  |
| 10 | Surface | Numérique | 14.4 | Non |
Obligatoire si le contrat type a l’unité SURFACE ou SURFACE ET TONNAGE. L’unité est en Ha. |
| 11 | Quantité | Numérique | 10.3 | Non |
Obligatoire si le contrat type a l’unité QUANTITE, TONNAGE ou SURFACE ET TONNAGE. L’unité est en Kg ou T. |
| 12 | Volume | Numérique | 10.2 | Non |
Obligatoire si le contrat-type a l’unité VOLUME. L’unité est en Hl. |
| 13 | Unité | Alphanumérique | 10 | Non |
Cohérence entre l’unité et le champ rempli (quantité, surface). Attention : ce champ est présent à titre d’information pour faciliter la lecture du fichier. |
| 14 | Codes des caractéristiques | Alphanumérique | 12 | Non |
x15 occurrences, le code  et la valeur sont couplés. Le code fourni est un code de caractéristique existant dans AGREO. Obligatoire si le champ valeur est rempli. |
|  | Valeur des caractéristiques | Alphanumérique | 100 | Non |
x 15 fois occurrences, le code  et la valeur sont couplés. La valeur doit être dans le même ordre que le code. |
Une "donnée vide" donne lieu à une écriture de la forme « ;; » et non « ».
Â
3.3 Règles de gestion
- Vérification des champs obligatoires : si un champ est manquant, on génère une erreur et l’import s’arrête pour la ligne du fichier.
- Si l’état initial du workflow (CODE : INIT) n’existe pas ou n’est pas activé à la coop, on génère une erreur et l’import s’arrête. Sinon, on poursuit l’import.
- Si le code de l’exploitation n’est pas unique, alors une erreur est générée.
- Les champs « Surface », « Quantité » et « Volume » sont obligatoires en fonction du type de contrat type. La gestion de l’unité se fait en fonction du type de contrat type.Â
- Si le type de contrat type est ‘SURFTON’, le rendement du contrat sera calculé.Â
- Le flux ne traite que les champs obligatoires en fonction du type de contrat type ; même les autres champs sont fournis dans le fichier.
-
Si le numéro du contrat, le contrat type et l’exploitation sont identiques avec un contrat existant alors on met à jour ce contrat (mise à jour de dm_contrat).Â
Sinon, on crée le contrat (saisie de dc_contrat). La mise à jour ou la création concerne toutes les informations disponibles dans le fichier y compris les caractéristiques. Attention, chacune des caractéristiques importées doit être existante dans le contrat type.
-
Le contrôle du produit s’effectue en fonction du paramétrage du contrat type :
Si la saisie du produit est « obligatoire », alors s’il n’est pas renseigné dans le fichier d’import, une erreur est générée.
Si la saisie du produit est « pas de saisie » alors si un produit est indiqué dans le fichier, il sera ignoré.
- Une caractéristique n’est importée que si son code existe et qu’elle est activée pour le contrat type correspondant.
-
Si le contrat à importer existe, vérifier le workflow du contrat type avec l’état du contrat :
Si l’action du workflow Modification complète(MOD) est disponible, modifier le contrat.
S’il n’y a que l’action du workflow Modification des caractéristiques est disponible, les informations générales ne seront pas mises à jour. Les caractéristiques du contrat seront mises à  jour. Un message d’information sera généré.
Si aucune de ces deux actions n’existe, on génère une erreur et l’import s’arrête pour la ligne du fichier.
-
Mise à jour de l’historique du contrat avec un vide ‘id_tiers’ et ‘IMPORT CONTRAT’ comme le commentaire:
Si l’action Modification complète est disponible, prendre l’état finale de cet action comme l’état courant.
Sinon, prendre celle de la modification des caractéristiques.
S’il y a plusieurs actions qui portent le même traitement(MOD), prendre l’état finale de la première action.
Remarques :
Les contrats pour lesquels la saisie des cultures est obligatoire sont intégrés dans la base par cette procédure d’import. Il reviendra à l’utilisateur de compléter le contrat par les interfaces Agreo afin d’y associer les cultures.
La notion de contrat principal ou secondaire n’est pas prise en compte dans l’import. Celle-ci intervient lors de l’association du contrat à des cultures via l’interface Agreo, avec un contrôle sur le nombre de contrats maximal qui peuvent être associées à une culture
Pour les contrats associés à l’atelier viticulture, la colonne produit ne doit pas être valorisée.
Â
3.4 Les codes utilisés dans Agreo
3.4.1 Les codes contrats type
| Code | Libellé | Commentaire |
| SURF | SURFACE | Unité en Ha |
| TON | TONNAGE | Unité en T |
| VOL | VOLUME | Unité en Hl |
| SURFTON | SURFACE ET TONNAGE | Unité en T/Ha |
| QTE | QUANTITE | Unité En Kg |
Â
3.5 Exemple de fichiers
Â
Â
Â
Commentaires
0Â commentaire
Vous devez vous connecter pour laisser un commentaire.