IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

[debutant]mise en commun de données sur machines distantes


Sujet :

Access

  1. #1
    kap
    kap est déconnecté
    Membre régulier
    Inscrit en
    Octobre 2005
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 188
    Points : 72
    Points
    72
    Par défaut [debutant]mise en commun de données sur machines distantes
    Bonjour,
    J'ai une application sous Access. J'aimerais installer cette application sur plusieurs postes différents (et distants), mais que ces machines travaillent sur des données communes. J'ai envisagé de mettre mes données sur un serveur, puis de lier la table qui m'intéresse avec chacun des postes. Cela est-il posible? Si oui comment? Si non, il y a-t-il une autre solution?

    Merci d'avance et bonnes fêtes de fin d'année!

  2. #2
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Salut,

    Dans un premier temps il faut tu créer une base avec tes tables. Ensuite dans ta base 'Client' tu lient les tables par la fonction lier les tables.

    @+

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    710
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 710
    Points : 847
    Points
    847
    Par défaut
    C'est la meilleur solution pour une appli en multi-utilisateur !

    Pour le comment c'est assez simple.

    Ton appli étant existante, tu ouvre une nouvelle base que tu appel "nomappli_data.mdb" par exemple. Ce sera ton application dorsale. Tu y importes toutes les tables de ton appli (menu fichier/données externes/importer). Tu copie ensuite ce fichier sur un disque réseau.

    Puis tu renome ton fichier mdb actuel (genre "nomappli_prog.mdb"). Ce sera ton application frontale. Dans le prog tu efface toutes les tables et tu fais un lien vers les tables de ton fichier data (menu fichier/données externes/lier les tables)

    Ainsi tu pourra distribuer le ficher prog à tous les utilisateurs et garder les données sur ton serveur.

    A+

  4. #4
    kap
    kap est déconnecté
    Membre régulier
    Inscrit en
    Octobre 2005
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 188
    Points : 72
    Points
    72
    Par défaut
    Merci pour les réponses.
    Tu copie ensuite ce fichier sur un disque réseau
    Non, les utilisateurs sont distants (situés dans des villes différentes). J'aimerais faire ce que tu m'as décrit mais en ayant le "monprog_data.mdb" sur un serveur distant. Je ne sais pas ensuite comment lier les tables avec ce serveur distant.

  5. #5
    Expert éminent sénior
    Avatar de Dolphy35
    Homme Profil pro
    Responsable Systemes d'Information
    Inscrit en
    Octobre 2004
    Messages
    4 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable Systemes d'Information
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 373
    Points : 11 218
    Points
    11 218
    Par défaut
    Ceci fonctionne si tout les lieux auxquelles tu veux utiliser cette base sont reliés par un réseau. le Description de Muhad'hib est complète.

    @+

  6. #6
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 222
    Points
    58 222
    Billets dans le blog
    11
    Par défaut
    Salut,

    Ce que tu peux faire dans ton cas, c'est de mettre le tout sur le serveur tes desux fichiers... le fichier base et le fichier programme.
    Et toutes les personnes viendront ouvrir ton fichier programme... Je sais cela n'est pas bien (enfin ceux que j'ai lu sur le forum). Mais cela résout le problème de temps de réponse... car si tes utilisateurs sont dans des villes différentes, tu peux avoir des temps de réponses longs donc grrrrrrrrrr !!!

    Pour lier les tables, il te suffit de faire la même chose que pour importer des tables, sauf que tu dois choisir lier des tables.

    @+.

  7. #7
    kap
    kap est déconnecté
    Membre régulier
    Inscrit en
    Octobre 2005
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 188
    Points : 72
    Points
    72
    Par défaut
    Ceci fonctionne si tout les lieux auxquelles tu veux utiliser cette base sont reliés par un réseau
    bon ca sort un peu du forum mais ca se créée comment ce genre de réseau?

    zoom61 a soulevé un point important que je n'ai pas précisé : les délais. en fait le but de la manoeuvre c'est de permettre a des clients de regrouper leur stock donc il faut que lorsque une modification ait lieu par l'un, elle soit visible tout de suite pour les autres (pour eviter de vendre deux fois les meme produit ou de commander plusieurs fois le meme produit) et les clients devront accéder aux données tès souvent...

    la solution proposée est-elle la plus adéquate ou y en a-t-il une meilleure?

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    710
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 710
    Points : 847
    Points
    847
    Par défaut
    Si c'est pour que tous le monde utilise le même fichier prog, il n'y a plus aucun interet à scinder en 2 fichiers. Par contre cela impose de gérer les accés simultanés au même données et au même objets par plusieurs utilisateurs ... et c'est pas simple ....



    Bon courage !!!

  9. #9
    kap
    kap est déconnecté
    Membre régulier
    Inscrit en
    Octobre 2005
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 188
    Points : 72
    Points
    72
    Par défaut
    moi je prefererais que chacun utilise l'appli en local, et accède aux données communes via n'importe quel systeme...mais je suis ouvert a toute proposition

    quelqu'un a une idée pour le reseau des machines situées dans des villes diférentes?

  10. #10
    kap
    kap est déconnecté
    Membre régulier
    Inscrit en
    Octobre 2005
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 188
    Points : 72
    Points
    72
    Par défaut
    ok via une connection vpn ca doit pouvoir se faire...

    autre solution: j'avais pensé aussi a mettre les données communes sur un serveur mysql, et utiliser le driver obdc 3.51.12 pour lier les tables sous access, qu'en pensez-vous?

  11. #11
    Membre à l'essai
    Inscrit en
    Février 2004
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 10
    Points : 10
    Points
    10
    Par défaut
    C'est exactement ce que nous faisons dans notre société.
    Nous avons plusieurs sites reliés en sdsl 512 au moins, un serveur msql et un applicatif sur chaque site pour acceder aux données.

    Pour que tout le monde ait la meme version de l'applicatif, nous faisons une copie du fichier principal toutes les nuits.

    Il faut proscrire l'idée d'utiliser un fichier access pour stocker les données. La raison est simple, à chaque fois que tu fais appel à une requete, ton application access recupère toute la table concernée et fait la requete sur ton poste.
    Exemple : table clients avec 20 champs et tu ne veux dans ta requete que le champ nom.

    Comme les debits reseaux sont faibles c'est inexploitable.

    La solution consiste à mettre en place un serveur sql car tu feras des requetes (aussi appelées vues dans msql et surement dans les autres aussi). Ainsi elles se feront sur le serveur qui, lui renverra les données strictement necessaire.

    Si les vues sont bien optimisées les temps de réponses sont très rapide et quasi invisible pour les utilisateurs.

    Par exemple j'ai une requete avec 50 champs. C'est une vue qui existe sur nos 3 sites avec 3 BdD différentes.
    J'ai un fichier access qui me lie les 3 vues pour sortir des infos pour 700 clients environ.
    L'execution du rapatriment des données via des vues dure moins de 5 minutes. Avant que je ne fasse des vues sur le serveur, je faisais des requetes dans mes fichiers access. L'execution de la requete prenait environ 1/4 d'heure par site delai de transmission des données oblige.


    Donc si tu veux utiliser une meme base sur des sites distants il te faut :

    - un intranet (au moins 512 en sdsl voire plus pour le site où est stocké la base)
    - un applicatif sur chaque site
    - un serveur qui héberge un vrai SGBD pour ce genre de chose (pourquoi pas mysql ou msql ou autre)

  12. #12
    kap
    kap est déconnecté
    Membre régulier
    Inscrit en
    Octobre 2005
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 188
    Points : 72
    Points
    72
    Par défaut [debutant]probleme d'ecriture sur base mysql
    Après quelques tests voici où j'en suis:

    *j'ai essayé de faire un vpn mais n'y arrivant pas, je ne vois pas comment faire de réseau entre des postes distants

    *j'ai essayé de transiter via une base mysql située sur un serveur mais je suis confronté à un nouveau problème : la table liée n'est accessible qu'en lecture (je voudrais qu'en meme pouvoir écrire dedans!).
    je precise que j'ai effectué un autre test: j'ai crée une base mysql a l'aide de phpmyadmin sur mon poste (donc en local) et la j'accède et en lecture et en ecriture à la table liée

    quelqu'un peut-il m'aider?

    edit: la requete ajout fonctionne mais pas la mise a jour ni la suppression

  13. #13
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 35
    Points : 34
    Points
    34
    Par défaut
    Hello

    C'est un peu tard pour répondre.

    Moi j'utilise Mysql, myodbc et le vpn, et j'ai accès a mes données en modification / ajout / suppression donc pas seulement en lecture. Comprends pas. Bon je suis en phase de deploiement de ma premiere appli et donc à part quelques petits soucis....

    Selon les requetes, les temps d'acces sont differents mais pour des requetes retournant moins de 2000 enregistrements, c'est tout a fait convainquant ( comptez jusqu`a deux, ça y'est) entre paris et la Marseille par exemple sur de lignes degroupées + le vpn d'un windows qui fait aussi serveur. Le travail est ralenti quand on manipule les mêmes donées par contre.

    Et les données ne sont pas sur un fichier dorsal, la frontale va directement au serveur, je ne vois pas l'interêt de faire un detour par un mdb qui lui meme stockerait des tables liées...enfin je n'ai pas testé, je devrais ?

    Voila, petit retour de mes tests si ça peut vous aiguiller.

  14. #14
    kap
    kap est déconnecté
    Membre régulier
    Inscrit en
    Octobre 2005
    Messages
    188
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 188
    Points : 72
    Points
    72
    Par défaut
    Bon je relance le sujet parceque je me repenche dessus (j'ai du travailler sur des choses plus urgentes...)

    Je vais réexpliquer mon cas plus en détail :
    Je developpe une application de gestion de magasin sous Access. L'application est scindée en deux fichiers : un fichier contenant "data.mdb" contenant toutes les données du magasin et un fichier "applic.mdb" contenant les formulaires, etas, requetes...Les tables du "data.mdb" sont liées dans le "applic.mdb".
    Le but de la manoeuvre est de permettre la gestion de multi-magasins. Ces magasins sont donc distants de plusieurs centaines de km et doivent travailler sur des données communes. Certaines tables de "dataop.mdb" doivent donc etre communes.

    Muhad'hib m'a proposé la solution suivante :
    importer les tables de "data.mdb" qui m'interessent dans une nouvelle base, mettre cette base en commun sur un reseau, puis supprimer les tables du "dataop.mdb" et les remplacer en laint celles du nouveau fichier créé

    est-ce que cette solution permet un accès simultané aux données depuis plusieurs postes? les délais d'acces aux données sont-ils raisonnables (les magasins doivent acceder tres souvent aux données )?quel type de reseau est le plus operationnel (vitesse, cout...)?

    Merci a tous

Discussions similaires

  1. Mise à jour d'une donnée sur une table
    Par demande001 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 04/07/2011, 13h36
  2. [phpMyAdmin] Accéder sur machine distante
    Par n@n¤u dans le forum Windows XP
    Réponses: 4
    Dernier message: 28/08/2006, 09h21
  3. [Réseau] Exécution d'un programme sur machine distante Linux
    Par kitsune dans le forum Général Java
    Réponses: 8
    Dernier message: 16/05/2006, 14h13
  4. [VB.NET] Connexion à une base de données sur serveur distant
    Par boulete dans le forum Windows Forms
    Réponses: 5
    Dernier message: 09/04/2006, 14h11
  5. [Système] Liste de répertoire sur machine distante
    Par chaours dans le forum Langage
    Réponses: 7
    Dernier message: 21/03/2006, 18h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo