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 :

Travail hors connexion multi-utilisateurs


Sujet :

Access

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Autodidacte!
    Inscrit en
    Octobre 2020
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Autodidacte!
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Octobre 2020
    Messages : 10
    Points : 6
    Points
    6
    Par défaut Travail hors connexion multi-utilisateurs
    Bonjour à tous,

    J'ai débuter sur access il y a un mois et demi, je suis donc un grand novice.
    J'ai maintenant réussi à créer une base de donnée qui est fonctionnelle mais je ne sais absolument pas comment la mettre en place au sein de l'entreprise et surtout je n'y connais absolument rien en réseau. J'ai parcouru plusieurs discussions sur le sujet sur le forum mais c'est très compliqué pour moi.
    Voici ma problématique:
    Nous sommes 3 dans l'entreprise (Une secrétaire qui est connectée au net en permanence) et 2 techniciens (qui bien souvent n'ont pas accès à internet (milieu agricole)). Je redoute donc que la secrétaire crée la commande 12 (en ligne donc) et qu'un technicien (hors ligne) crée cette même commande 12 en même temps et bug à la synchronisation.

    Ma question est donc, comment puis-je faire pour que ces 3 personnes puissent utiliser la même base de données en même temps (avec ou sans internet et sans que ca rame)?
    Est ce que je dois mettre la base de données sur dropbox par exemple?

    J'ai entendu parler de "sharepoint", de "Queue List", de "synchronisation", de "consolidation", de "dorsale", de "frontale" etc mais je n'y comprends pas grand chose, je ne sais pas comment m'y prendre et surtout je ne sais pas si cela réglerait mon problème... Bref. Est que quelqu'un pourrait m'aider please?
    J'ai la sensation d'être arrivé presque au bout du tunnel mais qu'il me manque maintenant l'essentiel, pouvoir l'utiliser !
    Merci.

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Bonjour,

    La première chose à faire est de scinder l'application en 2 fichiers.

    D'un côté les tables, de l'autre le reste. Les tables c'est la "dorsale" qui est sur un serveur, l'autre c'est la frontale qui est sur chaque poste client.

    On crée un lien entre chaque frontale à la dorsale. A partir de ce moment là on peut travailler à plusieurs avec une certaine sécurité.

    Maintenant ton problème est tout autre. Il semble qu'une personne soit "centralisateur" >> la secrétaire et les autres soient mobiles (les techniciens) et sans liaison permanente.

    Donc le partage en temps réel tu peux l'oublier si tu n'as pas une liaison entre les techniciens et le net. Il te faut plutôt te tourner vers une système de synchronisation... qui n'existe plus sous MS ACCESS (abandonné avec la version 2007).

    Le système décrit brièvement consiste à ce que chacun ait une base de données locale pour travailler dont une personne qui centralise -puisque emmené à traiter le dossier sur le fond >> la secrétaire.
    Je t'avoue que ce n'est pas simple, il y a des échanges à effectuer, des imports de données à faire et donc des gestions de clef (Id de table - numero_auto) qui sont loin d'être facile.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Autodidacte!
    Inscrit en
    Octobre 2020
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Autodidacte!
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Octobre 2020
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    Merci pour ta réponse. En effet ca n'a pas l'air simple...

    Bon, pour la partie dorsale, frontale et création de lien , je pense que je devrais réussir à trouver des tutos sur internet non? donc en cherchant ca devrait le faire.
    En revanche, c'est la seconde parti qui a l'air plus complexe.

    Le partage en temps réel n'est pas une obligation, on peut complètement imaginer que les techniciens synchronisent les données de leur journée chaque soir lorsque qu'ils auront accès au wifi mais ca ne règle pas mon problème de conflit lié au numéro de commande ou de suivi...
    J'ai retrouvé un message sur ce forum qui vient justement de toi !! https://www.developpez.net/forums/d1...ces-connexion/
    Dans ce poste, tu parles de définir des plages pour chaque utilisateur... Ca règlerai totalement mon problème! je ne peux pas faire comme ca?

    Utilisateur 1 : Crée des commandes numérotées de 1 à 1 000 000 et des suivis de 1 à 1 000 000
    Utilisateur 2 : Crée des commandes numérotées de 1 000 001 à 2 000 000 et des suivis de 1 000 001 à 2 000 000
    Etc...

    J'ai vu ton message il y a plusieurs semaines déjà mais je n'ai pas trouvé comment définir ces plages...

    Cordialement,

  4. #4
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    En effet il y a des tutos sur le sujet Frontale/Dorsale, tu peux voir ceci : https://dolphy35.developpez.com/arti.../basesreseaux/

    Malheureusement il ne suffit pas d'une liaison internet pour faire la synchro. Une base de données msaccess se partage mal au travers d'internet.

    Il va falloir envisager de transmettre les données par mail (ou dépot sur un espace partagé) pour que la synchro soit initiée par l'application sédentaire (secrétaire). Dans ce cas on peut envoyer le fichier dorsal de chaque tech, et utiliser un système de requête pour importer les données.

    Au niveau import de données, les ID devront être converti dans la plage du poste sédentaire au moment de l'import. Est-ce que tout ce boulot vaut celui consacré à changer de moteur de sgbd ? Je pense que non. Avec le recul et vu les contraintes, partir sur un moteur de base de données (Mysql/mariadb) est peut être plus judicieux.

    Pour changer l'id tu peux soit faire un update en spécifiant l'id (999 por un démarrage à 1000), soit à la création de la table lui spécifier le début d'id dans l'instruction de la colonne. (cherche "setting numero_auto in MS ACCESS database" sur le net)

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Autodidacte!
    Inscrit en
    Octobre 2020
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Autodidacte!
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Octobre 2020
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    Merci pour ta réponse.
    Bon, là, clairement je suis largué...

    Juste une précision (désolé, j'essaie de comprendre).
    Ce n'est pas possible de créer une dorsale sur le serveur, et de créer des frontales utilisateurs différentes pour chacun?
    Je m'explique:
    Dans la frontale de l'utilisateur 1, je crée une requête insertion qui dit que les nouveaux clients ajoutés par cette frontale auront un NuméroAuto dans la table (sur le serveur donc) définis entre 0 et 1000. Pareil pour les visites et les numéros de commande.
    Et dans la frontale de l'utilisateur 2, je fais la même chose avec comme consigne des numéros définis entre 1001 et 2000?
    Cela aurait pour finalité de créer dans la table des numéros de client 1,2,3 puis 1001,1002,1003...?...
    La secrétaire aurait quant à elle accès à tous les clients même si les numéros ne se suivent pas...
    Ce que je dis est peut être une ânerie totale...

    En fait, si l'utilisateur ajoute un client, il le fait sur la frontale, mais s'il n'a pas de connexion internet à ce moment précis, qu'est ce qu'il se passe? L'enregistrement est en suspend jusqu'au retour de la connexion ou il est totalement perdu?

    Et donc si tout ca n'est pas possible, ca serait plus simple pour moi de passer sur MySql/mariadb? donc il faudrait que je recommence tout à zéro? Et avec ca je n'aurait plus ces problèmes ?

    Merci pour les conseils

  6. #6
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    tu peux partager une base Access uniquement sur un réseau interne pas au travers du net sauf si tu utilise un VPN. Son fonctionnement exige que la liaison soit permanente et sans coupure mais pas via des adresses IP.

    L'utilisation des plages n'est utile que si les x utilisateurs ne sont pas sur la même base. Le 1er à la plage 1000, le second 2000 et le sédentaire pas de plage d'id.

    Quand on fait la synchro au moment de l'import on remplace les id 1000 et 2000 créé par le dernier id de la sédentaire + 1.
    Si tu n'as qu'un table c'est assez simple, ça devient très complexe quand tu as plusieurs tables et que les mobiles ont l'autorisation de créer dans chaque table.

    Pour Mysql/Mariadb tu peux y accéder via le net (par ODBC) donc via une IP ou un nom de domaine. Si ce n'est pas le cas, tu retombes sur le problème de la bdd access.

    as-tu tout compris ?
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Autodidacte!
    Inscrit en
    Octobre 2020
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Autodidacte!
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Octobre 2020
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    Très franchement... non pas vraiment. Mais ce n'est certainement pas à cause de tes explications, ca vient plutôt du fait que cela dépasse mes compétences...

    Bon, en tout cas, ce que je comprends c'est que du fait de ne pas avoir toujours internet, je ne pourrai pas utiliser la base de données que j'ai tant bien que mal mise au point depuis plusieurs semaines... car même si je reprends tout à zéro avec MySql (ou autre) que je maitrise encore moins qu'access, j'aurai toujours ce problème lié à la connexion parfois absente. Bref, sans issue pour moi...

  8. #8
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    L'issue c'est de travailler sur des bases locales et pour la synchro d'envoyer ces fichiers au poste sédentaire où on lance un process d'import.
    C'est possible, ça se fait mais c'est assez technique et plus il y a de tables à synchro plus ça se corse.

    J'ai une appli qui tourne avec ça.
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Autodidacte!
    Inscrit en
    Octobre 2020
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Autodidacte!
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Octobre 2020
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    Donc l'idée, ca serait que chaque technicien ait la base de données sur son ordi ((donc complète(frontale et dorsale) c'est bien ca que tu veux dire par "base locale"?)), et que sur une action de sa part (lorsqu'il a internet), il envoie les données de sa journée sur la base (celle qui centralise les infos, donc celle de la secrétaire, qui elle a la frontale sur son poste mais la dorsale sur le réseau) et qu'ensuite la secrétaire lance manuellement un import des nouvelles données? Est ce que j'ai bien compris?
    Je ne sais même pas si je m'explique clairement...

    La base de données n'est pas très compliquée:
    Nom : Sans titre.jpg
Affichages : 170
Taille : 57,2 Ko
    Donc même si c'est compliqué, je veux dire, c'est faisable?

    Cordialement,
    (Désolé d'être aussi nul...)

  10. #10
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Bonjour,

    Oui frontale et dorsale.

    Oui c'est faisable et ça se fait déjà.

    Avant de te lancer il faut déterminer avec précision les informations dont à besoin le tech et celles qu'il va modifier et/ou créer.

    C'est d'après cette analyse que tu sauras ce que l'import doit traiter et comment il doit le faire. Et ce qui doit être renvoyé au tech éventuellement. Mais tout cela dépend du métier et non d'un avis technique.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/08/2014, 09h35
  2. Réponses: 11
    Dernier message: 01/11/2009, 20h15
  3. Réponses: 1
    Dernier message: 06/06/2008, 09h40
  4. [Outlook 2007] Macro pour travailler hors connexion
    Par heffer69 dans le forum Outlook
    Réponses: 9
    Dernier message: 16/04/2008, 12h26
  5. Connexion multi utilisateurs
    Par rouxfab dans le forum Sécurité
    Réponses: 1
    Dernier message: 10/04/2008, 21h13

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