Bonjour à tous !
Gros projet de développement pour mon entreprise en ce moment : ni plus ni point qu'un "logiciel" de gestion commerciale, avec de la création de proposition commerciale sur mesure et/ou prédéfinie.
Ma logique de développement est là, l'interface et la structuration de l'outil également et ma maquette a été validée par mes N+X.
Ayant entamé le développement je me pose une question cruciale, j'espère que certains pourront m'aiguiller. Je dois faire appel quasi systématiquement à une base de données, qui est ni plus ni moins qu'un fichier excel (l'installation d'une BDD Access, MysQL ou autre ne peut pas être envisagée pour des raisons techniques).
De ce fait, je me pose une question sur la méthode de lecture/écriture dans cette base de données Excel, sachant que j'ai très peu de temps pour développer l'outil (je suis sur le départ de la boite, mais l'aboutissement de ce projet me tient à coeur).
J'ai donc plusieurs solutions :
- Faire un import de la BDD dans une feuille du fichier utilisateur à chaque démarrage, puis export à chaque fermeture du fichier. Ici, on travaille "en local" mais on se met à jour de la BDD à chaque lancement de l'outil.
- Ouvrir la BDD en lecture seule à chaque fois qu'on en a besoin en lecture, et ouvrir normalement à chaque fois qu'on a besoin d'écrire. La probabilité pour que deux utilisateurs écrivent en même temps est infime.
- Ouvrir la BDD en lecture seule à chaque ouverture du fichier et la fermer en écrasant la BDD existante si on détecte du changement lors de la fermeture du fichier principal.
- Utiliser une connexion ADO pour exécuter des requêtes SQL en écriture et en lecture dès qu'on en a besoin. C'est sans doute la solution idéale, mais étant plus bidouilleur que développeur, j'ai peur de manquer de temps pour m'engager sur cette solution.
Je viens donc à vous pour avoir vos avis sur ces différentes méthodes et les problèmes que je pourrais rencontrer à l'usage (lenteur d'exécution, problèmes de synchronisation évidents auxquels je n'aurais pas pensé, problèmes de compatibilité entre versions Excel, etc ...)
Merci par avance à tous !
Matt
Partager