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 :

Gestion dorsale/frontale, limites [AC-2003]


Sujet :

Access

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 25
    Points : 11
    Points
    11
    Par défaut Gestion dorsale/frontale, limites
    Bonjour à tous,

    Je vous plante la situation :

    J'obtiens du service informatique des fichiers Excel issus d'un AS400 (fichiers mis à jours automatiquement). Ces données sont mises à jour par de nombreux services de l'entreprise.

    Pour ma part, je développe une application sous Access 2003 pour calculer des coûts de revient. Les commerciaux en mission vont donc se connecter à la dorsale sur un serveur de l'entreprise.

    Les données de la dorsale doivent être mises à jour régulièrement (toutes les semaines) et ne sont pas accessibles en modification. Par contre, l'outil permet d'estimer des prix et une fois un prix estimé, je voudrais stocker ces prix sur une table de la dorsale pour pouvoir les comparer ultérieurement aux coûts de fabrication.

    1) Comment gérer la mise à jour de la dorsale à partir des fichiers Excel ?

    2) Comment gérer les droits d'accès différenciés selon les tables ?

    3) Une table de la dorsale peut-elle être accessible en écriture ?

    4) Comment gérer la simultanéité de l'accès en écriture par plusieurs utilisateurs ?

    D'avance merci à tous et encore merci pour la mine d'informations que l'on peut trouver sur ce site !

  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 028
    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 028
    Points : 24 580
    Points
    24 580
    Par défaut
    Bonjour,

    1) Comment gérer la mise à jour de la dorsale à partir des fichiers Excel ?
    Tu commences par attacher les fichiers Excel à ta frontale puis par requêtes (Insert, Update) tu mets tes données à jour, ensuite du supprime l'attachement.

    2) Comment gérer les droits d'accès différenciés selon les tables ?
    Voir le tuto sur la sécurité, tout y est expliqué en détail.

    3) Une table de la dorsale peut-elle être accessible en écriture ?
    Heureusement sinon à quoi ça servirait !

    4) Comment gérer la simultanéité de l'accès en écriture par plusieurs utilisateurs ?
    Il existe 2 modes, l'optimiste et le pessimiste.
    1. L'optimiste permet de modifier simultanéement 1 record par plusieurs utilisateur, le dernier qui sauvegarde écrase le données du ou des précédents.
    2. Le pessimiste empêche la modification quand un utilisateur est déjà en modification sur le record.

    Certains developpeurs crée leur propre système.

    Cordialement,

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 25
    Points : 11
    Points
    11
    Par défaut Pb avec Transfert spreadsheet
    Hello,

    Merci pour ta réponse. En fait pour la mise à jour, je ne savais pas d'où l'executer. Mais je la lance depuis un formulaire se trouvant sur la frontale.

    Mais demeure un problème : j'ai pris l'habitude d'utiliser la commande "Transfert Spreasheet" mais pour importer des fichiers Excel dans la "Currentdb". Cette fois, j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set oDb = DBEngine.Workspaces(0).OpenDatabase(monchemin, False, False, "MS Access")
    Je supprime les anciennes tables et j'importe les fichiers Excel de cette façon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel8, lenom, chemin, False, plagecellulesexcel
    J'obtiens un message d'erreur comme quoi ma table ou requête "lenom" n'existe pas dans ma base de données.

    Où est le problème ? Peut-on utiliser TransfertSpreadsheet dans une autre bdd que celle courante ?

    Merci d'avance !

  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 028
    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 028
    Points : 24 580
    Points
    24 580
    Par défaut
    La commande Docmd ne s'exécute que dans la base courante (Currentdb) par opposition à la base d'exécution (CodeDb). Même si tout les objets sont dans la base d'exécution.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 25
    Points : 11
    Points
    11
    Par défaut
    Alors comment lier le fichier excel à la bdd sur la dorsale sans utiliser Docmd ?

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 25
    Points : 11
    Points
    11
    Par défaut
    Où alors il faut lier le fichier Excel à la frontale et ensuite transférer dans la dorsale à l'aide de requêtes ?

  7. #7
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 028
    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 028
    Points : 24 580
    Points
    24 580
    Par défaut
    Généralement on fait les attachement dans la frontale puis on fait des requêtes sur les tables, déjà présente dans la frontale du fait de l'attachement existant.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 25
    Points : 11
    Points
    11
    Par défaut
    Bonjour loufab,

    J'ai réussi à mettre en place mon application partagée avec dorsale et frontales. Je te remercie pour tes réponses.

    J'ai cependant un problème : je voudrais mettre à jour ma base de donnée contenue dans la dorsale mais je ne comprends pas comment gérer l'accès. Plusieurs personnes sont connectées à la base et l'un choisi de mettre à jour. Il faut donc déconnecter les autres utilisateurs et ensuite mettre à jour. Seulement, j'aimerai que tout le monde puisse effectuer cette opération et pas seulement un administrateur.

    Dans la faq, la déconnection est faite sur un compteur avec une condition gérée par l'administrateur si je comprends bien.

    Est-il possible de déconnecter les utilisateurs à partir d'un poste utilisateur ?

    Je crois comprendre que cela revient à fermer l'application et à l'ouvrir la modifier en mode exclusif ensuite ?

    Merci d'avance !

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 25
    Points : 11
    Points
    11
    Par défaut idée !
    Bonjour,

    Suite à mes lectures dans la faq et les tutos, j’envisage la solution suivante :

    Lorsqu’une personne veut mettre à jour la bdd de la dorsale, on fait changer d’état une variable booléenne contenue dans une table sur la dorsale qui stipule que la base va être fermée.

    On peut alors utiliser la technique du compteur sur le formulaire principal pour aller vérifier régulièrement la valeur de cette variable. On peut, par ce moyen, spécifier à tous les utilisateurs que la bdd va être fermée pour être mise à jour.

    On ferme alors la base de donnée (avec un compteur qui a une valeur supérieure) et on l’ouvre en exclusif pour la mettre à jour.

    Est-ce une bonne méthode ?

  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 028
    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 028
    Points : 24 580
    Points
    24 580
    Par défaut
    Oui c'est une méthode valable.

  11. #11
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 107
    Points : 5 230
    Points
    5 230
    Par défaut
    Bonjour,

    Il peut être utile de mettre à disposition cet excellent outil qui permet de visualiser les utilisateurs connectés :

    http://access.developpez.com/sources...#UtilConnectes

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 25
    Points : 11
    Points
    11
    Par défaut
    Bonjour nico84,

    je pensais en effet mettre en place un outil de ce type à titre informatif lors d'une demande de mise à jour. Ainsi on force la déconnection ou on attend que plus personne ne soit connecté.

    Merci en tout cas.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2010] Gestion de la connexion dorsale frontale
    Par docjo dans le forum Modélisation
    Réponses: 1
    Dernier message: 20/03/2011, 12h56
  2. rassembler base dorsale/frontale
    Par osia1 dans le forum VBA Access
    Réponses: 11
    Dernier message: 16/04/2008, 10h39
  3. Liaisons VBA Dorsale/ Frontale
    Par ThieBEN dans le forum VBA Access
    Réponses: 18
    Dernier message: 12/02/2008, 16h32
  4. Gestion Dorsale/Frontale erreur code
    Par surrounded dans le forum VBA Access
    Réponses: 2
    Dernier message: 08/08/2007, 14h53
  5. runtime dorsal/frontal table liée
    Par willytito dans le forum Runtime
    Réponses: 2
    Dernier message: 01/02/2007, 11h39

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