[..] Base de données inovante.

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Gilles312
Niveau 1
Niveau 1
Messages : 11
Enregistré le : mar. 11 août 2009 13:18
Status : Hors ligne

[..] Base de données inovante.

#1

Message par Gilles312 »

Bonjour,

Voici un projet de base de données quelque peu atypique... J'ai cherché dans les posts du forum, mais je n'ai rien trouvé qui s'en rapproche... :(

Je m'explique.

Tout d'abord, situons le contexte:
L'utilisateur doit relever des données lors d'un contrôle qualité. Chaque donnée est illustrée par une ou plusieurs photographies. En fin de contrôle, l'utilisateur enrichi manuellement une application avec les données relevées et les photographies pour mettre en forme et éditer un rapport. Quand le rapport est édité, il doit être transmis (données + photographies) au client via un site internet que l'utilisateur enrichi à nouveau manuellement (données + photographies).
Saisie, resaisie, reresaisie, ... bref, beaucoup de temps et d'énergie perdue et un grand risque d'erreurs à la clé... :roll:

Ce projet de compose de trois volets:

1) acquisition et stockage des données,
2) exploitation des données (enrichissement de l'application locale),
3) exploitation des données (enrichissement du site internet du client).

Détaillons le projet: :)

1) acquisition et stockage des données:
L'utilisateur dispose d'un PC portable auquel est connecté un appareil photo. L'appareil photo est commandé par une interface (application livrée avec l'appareil) installée sur le PC portable, les photographies sont stockées sur le disque dur du PC portable (ceci fonctionne, je l'ai déjà testé :D ).
L'application à développer doit diriger l'utilisateur pour qu'il saisisse l'une après l'autre dans un ordre établi toutes les données à relever en demandant à chaque fois à l'utilisateur de prendre la photographie correspondante. Et c'est là qu'est la subtilité, car je ne souhaite pas que les données collectées soient organisées ou stockées dans un tableau. Non, je souhaite qu'elles soient concaténées au moment de leur saisie pour composer le nom du fichier de la photographie correspondante. Cette base de données sera donc composée de photographies regroupées dans un dossier, chaque photographie portant dans son nom les données qu'elle illustre. :wink:

2) exploitation des données (enrichissement de l'application locale):
Tout est dit dans le titre. Il s'agit d'enrichir une application locale avec les données précédemment relevées, en clair, il va falloir relire les nom des photographies, dé-concaténer les données, et remplir les champs d'un logiciel. Le principe est simple non? :D

3) exploitation des données (enrichissement du site internet du client):
Tout est également dit dans le titre. Il s'agit d'enrichir la base de données du client via le formulaire d'un site internet en utilisant une méthode analogue à la précédente.

Voilà en quelques mots. Les explications pour les points 2) et 3) pourront bien sûr être développées ultérieurement. Procédons par ordre... :wink: et attachons nous à la partie 1). Je fournirai bien sûr la liste et l'ordre des données à collecter, je proposerai le format de concaténation pour la composition des noms de photographies ainsi que les écrans des interfaces graphiques GUI pour la saisie, ...

Après avoir parcouru les posts de ce forum, il me semble que ceci est à votre portée... :wink: et que AUTOIT est particulièrement adapté pour faire ce genre de prouesses... :D

Je vous remercie d'avance de votre contribution et je suis impatient de vous lire...
Avatar du membre
20100
Niveau 3
Niveau 3
Messages : 43
Enregistré le : ven. 03 juil. 2009 11:39
Status : Hors ligne

Re: [..] Base de données inovante.

#2

Message par 20100 »

humm... pourquoi réinventer la roue?

Il existe de nombreuses application de gestion de contenu (C.M.S : Content Management Systems). Pour une utilisation professionnelle je peux te conseiller la plateforme JCMS de Jalios basé sur Java (JSP). Il en existe evidemment plein d'autres comme Joomla ect...

En fait je ne vois pas du tout l'interêt de passer par AutoIt pour gérer l'acquisition et le stockage des données, cela peut se faire dans n'importe quel SGBD évolué couplé à une interface web enrichi (que ce soit dans un portail CMS ou pas d'ailleurs) et de même pour ce que tu nommes exploitation des données. Il s'agit d'avoir un outil de gestion de données de type CRUD (create, read, update, delete) ce que tout outil CMS digne de ce nom propose dans ses services de base.
Gilles312
Niveau 1
Niveau 1
Messages : 11
Enregistré le : mar. 11 août 2009 13:18
Status : Hors ligne

Re: [..] Base de données inovante.

#3

Message par Gilles312 »

Bonjour,

Tout d'abord, merci pour ta réponse rapide :) . Tes remarques pertinentes m'amènent à formuler quelques précisions... Je n'ai sans doute pas été suffisamment clair... :roll:

1) La base de donnée que je souhaite créer avec Autoit n'est qu'une base tampon pour mémoriser les données saisies à la volée par l'opérateur nomade.

2) Les bases de données complètes sont dans une application métier d'une part, et sur le serveur du client final accessible via un site internet d'autre part. Les interfaces d'accès à ces bases de données existent et sont pour moi le seul moyen de les enrichir.

Ce que j'attends d'Autoit:

1) Sur le terrain:
- une assistance à l'utilisateur nomade pour la saisie des données,
- le stockage temporaire des données dans le PC portable de l'utilisateur nomade selon le principe énoncé dans le post initial,
2) Au retour de l'utilisateur nomade à sa base:
- l'automatisation de l'enrichissement de la base de données de l'application métier locale en utilisant l'interface existante (c'est un logiciel sous windows...),
- l'automatisation de l'enrichissement de la base de données du client final en utilisant l'interface existante (c'est un formulaire de saisie qu'il a développé à cet effet accessible sur son site internet).

Pour résumer, il s'agit de traitement de fichiers (couper/coller/renommer) et de commande d'applications tierces.

Autoit n'est-il pas l'outil adapté pour faire tout cela :( ?

Gilles.
Avatar du membre
20100
Niveau 3
Niveau 3
Messages : 43
Enregistré le : ven. 03 juil. 2009 11:39
Status : Hors ligne

Re: [..] Base de données inovante.

#4

Message par 20100 »

En effet je trouve cela plus clair... si j'ai bien compris, l'opérateur nomade n'a pas de connexion Internet et donc ne peut accéder à un gestionnaire de contenu... qui serait alors palier par un programme AutoIt pour la saisie des données et la sauvegarde dans un fichier temporaire. Pour par la suite être charger dans une base de donnée le plus simplement du monde. Si l'opérateur Nomade à accès Internet je ne vois pas l'intérêt de coder çà dans AutoIt...

Sinon quelques pistes de réflexion sur ton programme :

Concernant la saisie des données de l'opérateur Nomade :
Tu peux faire un GUI avec un formulaire simplement dans AutoIT.

Concernant la sauvegarde des données dans une "base tampon".
Dans AutoIt j'utiliserai un fichier XML pour stocker les données avec un fichier XML schéma (XSD) pour donner la grammaire permettant de vérifier sa conformité... en gros une base de données XML.

Pour le chargement au retour de l'utilisateur nomade à sa base:
La j'utiliserais plutôt un ETL comme Pentaho Kettle pour créer une transformation qui alimente ta base de données... Je crois même qu'il est possible de créer une sorte de batch qui permet de lancer la transformation en dehors de la plateforme kettle et ainsi de pouvoir l'integrer dans un programme AutoIt sans avoir besoin d'installer Kettle (à verifier).
Les interfaces d'accès à ces bases de données existent et sont pour moi le seul moyen de les enrichir.
Tu n'as pas accès tout simplement à la base de donnée? Alimenter la base de données par une interface (formulaire)... comment dire... çà sent le PourIt... même en AutoIt ^^
Avatar du membre
Voodoo
Niveau 6
Niveau 6
Messages : 298
Enregistré le : ven. 20 juil. 2007 20:45
Status : Hors ligne

Re: [..] Base de données inovante.

#5

Message par Voodoo »

Pour la première phase je ne vois rien de mieux que SqLite3 avec une interface autoit3 (type formulaire basique: édition de fiche, création de fiche, suppression...). Simple et plus efficace que n'importe quel stockage par fichier (Xml, ini...). Pour les photos on ne stocke dans la base de donnée (sqlite3) que les chemins physiques et on copie les photos dans des répertoires afin de structurer la chose et de s'y retrouver. Enfin on rajoute dans ce petit logiciel la fonction export qui se chargera notamment de convertir un rapport en Xml.

Ce qui nous amène à la deuxième phase, lors de l'exportation on crée un fichier Zip avec le fichier Xml et les photos, on envoie tous sa au site web et il se débrouille :D.

Si on ne peut pas modifier la structure web, alors on peut facilement remplir une page de formulaire sur internet avec Autoit3 donc tout va bien.


Pour information, sqlite3 est un moteur de base de donnée qui fonctionne donc avec des requêtes semblable à SQL mais qui stocke "la base" sur le disque. Sorte de moteur bdd local.
Gilles312
Niveau 1
Niveau 1
Messages : 11
Enregistré le : mar. 11 août 2009 13:18
Status : Hors ligne

Re: [..] Base de données inovante.

#6

Message par Gilles312 »

Bonjour,

Vos réponses m'ont fait me poser pas mal de questions, même si je dois avouer que je n'ai pas tout compris...

Alors, sans rentrer dans les détails techniques de la réalisation, je vais affiner mes explications, du moins pour ce qui est de la première partie:

1) l'opérateur nomade n'a effectivement pas d'accès internet. Quand bien même il en aurait un, il ne pourrait pas travailler directement à l'enrichissement des deux bases de données citées plus haut pour les raisons suivantes:
- les interfaces d'accès à ces bases de données ne sont pas conçue pour une saisie "en direct live" par l'opérateur nomade, mais pour une saisie "à postériori" par une opératrice de saisie,
- le volume des données serait bien trop important (plusieurs centaines de photographies prises chaque jour, même avec une résolution raisonnable, ça fait vite un volume de fou...),
- le temps de réaction d'une application commandée à distance en terme de rafraichissement d'écran, même avec les technologies 3G+ ne sont pas suffisamment rapides à mon gout... sans parler des déconnections aléatoires...
Je persiste donc à penser que le plus fiable est de saisir sur un PC autonome sur site.

2) concernant la mémorisation des données, je tiens au principe de se passer d'une base de données classique. Je souhaite que l'opérateur nomade ne rapporte que des photographie "en vrac" :D . Le données devront donc être contenues dans le nom de chaque photographie, lequel devra être constitué au moment de la prise de vue en fonction des données saisies par l'opérateur sur son PC via l'interface GUI (c'est pour ça qu'on est là! :lol: ).
Pourquoi? Parce que les photographie ainsi que les données qui lui sont associées seront traitées une par une par l'opératrice de saisie qui leur apportera à cette occasion une valeur ajoutée essentielle à la qualité de la prestation globale. Pas de transmission des données en bloc, pas de traitement de masse, rien que du "sur mesure" :wink: .

Quand cette section de collecte des données sera avancée, vous avez compris qu'il s'agira d'en récolter les fruits en automatisant le travail de l'opératrice de saisie. Ce sera je pense le plus intéressant... :wink: . Je travaille déjà à un organigramme général qui regroupe ce qu'elle doit faire, avec les conditions et les actions à respecter... :D

Cordialement,

Gilles.
Gilles312
Niveau 1
Niveau 1
Messages : 11
Enregistré le : mar. 11 août 2009 13:18
Status : Hors ligne

Re: [..] Base de données inovante.

#7

Message par Gilles312 »

Bonjour :D !

Silence radio depuis le 05/09 :roll: ...
Tous le monde sèche :lol: , ou tout le monde planche :wink: ?

Dans le même temps, je ne suis pas inactif et je passe beaucoup de temps sur les tutos et dans la doc d'AUTOIT pour apprendre et je risque de pondre prochainement le commencement du début d'un embryon de code :P ...

Vous m'aideriez en me proposant le début d'un truc :wink:

Gilles.
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [..] Base de données inovante.

#8

Message par timmalos »

Je pense que si vosu voulez des reponses, avec ce qu'on vous a répondu faites vos priorités, puis creez un post pour chaque besoin quand celui d'avant est terminé. La il y a trop de chose, et si certains veulent vous aider, ils ont peur de se perdre ou mieux de passer trop de temps a faire un script.
Gilles312
Niveau 1
Niveau 1
Messages : 11
Enregistré le : mar. 11 août 2009 13:18
Status : Hors ligne

Re: [..] Base de données inovante.

#9

Message par Gilles312 »

Bonjour,

J'ai compris. Je coupe mon affaire en tranches et je reviens dans quelques temps en créant d'autres sujets pour chaque étape.
On avance... :D

Merci pour votre conseil :wink: .

Gilles.
Répondre