Le logiciel Pesees PDA

1) Les arguments

Arguments passés au lancement du programme
args0 indicateur opération à effectuer 0 1 2 3 4
vider la base chargement pesées réception gestion fichiers paramétrage gestion de l'ad ip de la base MySQL
args1 indicateur type base de données 0 1
base mysql sqlce
args2 Chaine, Ad ip serveur MySQL chaine vide si SQLCE
args3 Chaine, Logging de la base de données
args4 Chaine, Mot de passe de la base de données
args5 Chaine, Répertoire pour les fichiers d’échanges et la base SQLCE si chaine vide on prend le répertoire ou s’exécute le programme
args6 Chaine, Nom du paramétrage à affecter aux listes si chaine vide l'utilisateur devra choisir un paramétrage par liste au moment du chargement

Pour la base MySQL, si l'ad ip du serveur est non renseignée (chaine vide) pour les opérations d'initialisation, d'émission et de réception, le programme ira chercher
l'ad ip du serveur MySQL dans fichier XML (voir paragraphe 6, le serveur MySQL)

Exemples

Pesees_PDA 1 0 147.99.99.134 root admin c:\Program Files\Pesees_PDA\Fichiers defaut
args0 = 1, chargement.
args1 = 0, MySQL.
args2 = 147.99.99.134, ad ip serveur MySQL.
args3 = root, logging.
args4 = admin, mot de passe.
args5 = c:\Program Files\Pesees_PDA\Fichiers répertoire, pour les fichiers d'échanges.
args6 = defaut, nom de paramétrage affecté à toutes les listes.

Pesees_PDA 0 1 "" root admin "" ""
args0 = 0, initialisation.
args1 = 1, SQLCE.
args2 = "", pas d'ad ip.
args3 = root, logging.
args4 = admin, mot de passe.
args5 = "", on prend le répertoire ou s’exécute le programme pour les fichiers d'échanges.
args6 = "", pas de paramétrage pour l'option initialisation.

2) L'initialisation

L'initialisation est obligatoire pour pouvoir charger un nouveau chantier de pesées.
- MySQL:
  • sauvegarde sur le pc de la base actuelle.
  • connexion à la base de données, création si elle n'existe pas.
  • suppression des informations du dernier chantier de pesées.
- SQLCE:
  • connexion usb sur le PDA.
  • sauvegarde sur le pc de la base actuelle.
  • suppression de la base SQLCE sur le PDA.
  • préparation d'une base de données vierge sur le PC.

3) Le chargement

Permet, à partir d'un fichier texte, d'incorporer un inventaire d'animaux à peser et des paramétrages du chantier, dans une base de données.
- MySQL:
  • connexion à la base de données, pas de création si elle n'existe pas.
  • test si l'initialisation a été faite.
  • contrôle fichier contenant l'inventaire des animaux.
  • affectation des paramétrages aux listes.
  • intégration des animaux dans la base de données.
  • le chantier de pesées peut commencer.
- SQLCE:
  • récupération de la base de données créée à l'initialisation.
  • contrôle fichier contenant l'inventaire des animaux.
  • affectation des paramétrages aux listes.
  • intégration des animaux dans la base de données.
  • connexion usb sur le PDA.
  • transfert de la base de données sur le PDA.
  • le chantier de pesées peut commencer.

4) La récupération

Récupère les informations de la base de données les transfère dans un fichier texte.
- MySQL:
  • connexion à la base de données.
  • lecture de la base de données et écriture des informations du retour du chantier de pesées dans un fichier sur le PC.
  • sauvegarde sur le pc de la base actuelle.
- SQLCE:
  • connexion usb sur le PDA.
  • transfert de la base de données sur le PC.
  • lecture de la base de données et écriture des informations du retour du chantier de pesées dans un fichier sur le PC.
  • sauvegarde sur le pc de la base actuelle.

5) Les paramétrages

Le chantier de pesées peut être paramétrable par liste. Cette option permet de créer, modifier et effacer des paramétrages.
- MySQL:
  • connexion à la base de données, création si elle n'existe pas.
  • affichage, création, modification et effacement des paramétrages dans la base de données sur le serveur.
- SQLCE:
  • affichage, création, modification et effacement des paramétrages dans la base de données sur le PC.

- Le nom sert à identifier un chantier, taper un nouveau nom pour créer un chantier.
- L'amplitude sert à fixer la précision de la pesée.
- Un message d'erreur, non bloquant, s'affichera en cours de pesée si le poids sort de l'intervalle poids min | poids max.
- Un message d'erreur, non bloquant, s'affichera en cours de pesée si le gmq sort de l'intervalle gmq min | gmq max.
- Si contrôle lot, un message d'erreur, non bloquant, s'affichera en cours de pesée si le lot chantier est différent de celui enregistré dans la liste.
- Si initialisation réforme, tous les animaux pesés et enregistrés auront automatiquement le code réforme déclaré en début de chantier.
- Si contrôle sexe, affichage du sexe enregistré dans la liste et possibilité de modification.
- Le code pesée peut être demandé systématiquement à chaque animal ou à la demande de l'utilisateur en appuyant sur une touche.
- L'identification électronique peut être faite par le lecteur embarqué sur la PDA ou celui relié à l'automate TEO.

6) Le serveur MySQL

Cette option permet de gérer l'adresse ip du serveur hébergent la base donnée de pesées MySQL.

L'information Source: permet de savoir la provenance de l'adresse ip affichée. Dans l'exemple l'adresse a été passée en paramètre à l'appel du programme.
En cas de validation, l'adresse sera stockée dans un fichier XML. Pour utiliser directement l'adresse ip mémorisée dans le fichier XML, mettre une chaine
vide dans l'argument arg[2] dans l'appel du programme.
Si le fichier XML n'existe pas, si aucune adresse n'est passée en paramètre et si SIDEx est installé sur le PC, le programme proposera par défaut
l'adresse su serveur MySQL de SIDEx. En cas de validation, l'adresse sera stockée dans un fichier XML.

7) Code retour d'exécution

Il est possible de récupérer, à la sortie du programme, un code système indiquant le bon déroulement ou le problème rencontré
en cours d’exécution du programme.

Codes erreur

Fonction code retour signification

Initialisation 0 exécution complète, sauvegarde ok, initialisation ok
Initialisation 2 problème serveur ou base de données, pas d'initialisation
Initialisation 3 base SQLCE, problème avec la liaison USB ou le PDA, pas d'initialisation
Initialisation 5 abandon par l'utilisateur, pas d'initialisation

Tous 6 problème de paramètre a l'appel du programme, pas d’exécution

Emission 10 exécution complète tout est ok, base de données chargée
Emission 11 problème avec la base de données, pas d’émission
Emission 12 base SQLCE, problème avec la liaison USB ou le PDA, pas d’émission
Emission 15 abandon par l'utilisateur, pas d’émission

Réception 20 exécution complète, sauvegarde ok, fichiers retour crées
Réception 21 problème avec la base de données, pas de réception, pas de fichiers retour crées
Réception 22 fichiers retour crées mais sauvegarde non effectuée
Réception 23 base SQLCE, problème avec la liaison USB ou le PDA, pas de fichiers retour crées
Réception 25 abandon par l'utilisateur, pas de réception

Paramétrage 30 exécution complète tout est ok
Paramétrage 31 base MySQL, problème avec la base de données, pas d’opérations exécutées sur les paramétrages
Paramétrage 32 base SQLCE, problème avec la base de données, pas d’opérations exécutées sur les paramétrages
Paramétrage 35 abandon par l'utilisateur

Serveur MySQL 40 exécution complète tout est ok, fichier xml enregistre
Serveur MySQL 41 abandon de la fonction

8) Les fichiers

Initialisation

Une sauvegarde de la base de données est créée et sauvegardée sur le PC,
- MySQL: Répertoire + "\initialisation\teo_initialisation_MYSQL_" + Date + Heure + ".atr"
- SQLCE: Répertoire + "\initialisation\teo_initialisation_SQLCE_" + Date + Heure + ".atr"

Chargement

Pour les deux modes de base de données, le fichier Répertoire + "\listeid.txt" va servir à alimenter la base de données.

Un seul enregistrement par animal en format texte.

- Du premier caractère jusqu'au ';' : numéro de puce, numérique uniquement.
- caractère suivant : sexe animal, numérique uniquement
- caractère suivant : numéro de liste, numérique uniquement (Si pas de liste mettre ce code à 1).
- les 2 caractères suivants : numéro de lot, numérique uniquement (Si pas de lot mettre ce code à 00).
- les 2 caractères suivants : code eleveur (si pas de code 01)
- caractère suivant : séparateur si dernier poids connu pour l'animal égal à '/'

- les 7 caractères suivants : dernier poids connu de l'animal en grammes sur 7 chiffres, pas de virgule, pas d'unité.
- caractère suivant : séparateur, toujours égal à '/'.
- les 6 caractères suivants : date de la dernière pesée de l'animal, format JJMMAA.
- Fin de l'enregistrement

Le poids et la date de la dernière pesée de l'animal sont facultatives, dans le cas où ces données
seraient manquantes, l'enregistrement s'arrêtera après le numéro de lot (sans le '/').

Exemple : 250026632811261;218901/0650500/201202 ou 250026632811261;218901 si pas de dernier poids connu

N° de puce : 250026632811261
Sexe : 2
Liste : 1
Lot : 89
Eleveur : 01
Poids P-1 : 0650500 = 650,5 kg
Date P-1 : 201202 = 20/12/2002

- SQLCE: Répertoire + "\parametrage\BDDPesage.sdf" base de données créée sur le PC avant d'être transférée sur le PDA.

Réception

Création de 3 fichiers texte:

- Répertoire + "\pes_11ch.txt"

X code enregistrement
-séparateur
XXXXXXXXXXXX n° de puce
-séparateur
X sexe
X nøliste
X non utilisé
XXXXXX date pesé ou reforme
XXXXXXX poids en g
XX lot
XX reforme
XX code pesée
XX non utilisé
XX non utilisé
XXXX non utilisé

code enregistrement
1 pesé avec inventaire chargé
2 pesé & reformé avec inventaire chargé
3 non pesé & reforme avec inventaire chargé
4 non pesé avec inventaire chargé
5 pesé sans inventaire chargé
6 pesé & reformé sans inventaire chargé

exemple

1-250016286830034-210130913005484002000000000000
1-250016286830041-210130913005207002000000000000
1-250016286830058-210130913006265002000000000000
1-250016286830025-210130913005862002000000000000

- Répertoire + "\form_11ch.txt"

idem pes_11ch.txt mais avec un espace comme séparateur entre les données.

exemple

5-250016286830034-0 0 0 310114 0000499 00 00 00 00 00 0000
1-250016286830025-2 1 0 130913 0058620 02 00 00 00 00 0000

- Répertoire + "\full_11ch.txt"

début des enregistrements identiques à ceux du fichier form_11ch.txt puis,
XXXXXX amplitude en grammes.
XXXXXXX poids max (g) de la série utilisé pour calculer le poids final de l'animal.
XXXXXXX poids min (g) de la série utilisé pour calculer le poids final de l'animal.
XXXX durée totale, en secondes, de la pesée de l'animal.
XXXX nombre total de séries nécessaire pour peser l'animal.
XXXX nombre de séries supérieure à 5 poids nécessaire pour peser l'animal.
XXXX gmq.
XXXXXX heure de la pesée de l'animal.

exemple
5-250016286830041-0 0 0 310114 0000499 00 00 00 00 00 0000 / 000300 0000500 0000498 0002 0001 0001 0000 131758
5-250016286830025-0 0 0 310114 0000498 00 00 00 00 00 0000 / 000300 0000520 0000498 0008 0002 0003 0000 131835

Une sauvegarde de la base de données est créée et sauvegardée sur le PC,
- MySQL: Répertoire + "\reception\teo_reception_MYSQL_" + Date + Heure + ".atr"
- SQLCE: Répertoire + "\reception\teo_reception_SQLCE_" + Date + Heure + ".atr"

Paramétrage

un fichier, Répertoire + "\parametrage\defaut.par" est créé.

- SQLCE: une base de donnée vierge est créée contenant les différents paramétrages, Répertoire + "\parametrage\BDDPesage.sdf"

serveur MySQL

- MySQL: un fichier, Répertoire + "\pesee_pda.xml" est créé, l'ad ip du serveur est mémorisée dans la clé: Serveur_MySQL Ad_Ip


Retour Menu Principal