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

IHM Discussion :

Sous-formulaires et requêtes SQL


Sujet :

IHM

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mars 2015
    Messages : 14
    Points : 7
    Points
    7
    Par défaut Sous-formulaires et requêtes SQL
    Bonjour,

    Dans un formulaire, j'ai deux sous-formulaires en mode "Feuille de données", tous deux basés sur une requête sur la même table (mais n'affichant pas les mêmes enregistrements). Appelons-les SF_A et SF_B.
    Le code AfterUpdate d'un champ dans SF_A exécute une requête SQL qui modifie certains enregistrements affichés dans SF_B et en rafraîchit l'affichage.

    La plupart du temps, ça fonctionne très bien, mais de temps en temps, j'obtiens une erreur me disant qu'il ne peut pas mettre à jour les enregistrements car ils sont verrouillés (je ne suis pas sûr du terme exact, car au moment où j'écris ce post, je n'arrive pas à reproduire l'erreur ).

    En fait, tout se passe comme si les enregistrements affichés dans SF_B étaient verrouillés (du fait de leur affichage, je suppose), ce qui empêcherait la requête en arrière plan de les modifier.

    Comment gérer ce problème ? Y a-t-il un moyen par exemple, de forcer la requête à s'exécuter ?

    Merci.
    Lomion

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    essaye en forçant l'enregistrement au niveau de ton sous-formulaire avant de lancer ton SQL.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mars 2015
    Messages : 14
    Points : 7
    Points
    7
    Par défaut
    Bonjour,

    J'ai pensé à quelque chose de ce genre, mais comment forcer l'enregistrement ?

    Un DoCmd.RunCommand acCmdSaveRecord ?
    Est-ce que ça forcera aussi l'enregistrement d'un formulaire "Feuille de données" (dans lequel par définition, plusieurs enregistrements sont affichés en même temps) ?

    Y a-t-il une autre syntaxe ou commande utilisable ?

    Merci !
    Lomion

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Est-ce que ton formulaire qui bloque sert à faire de la saisie ?

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mars 2015
    Messages : 14
    Points : 7
    Points
    7
    Par défaut
    Alors, en fait, les deux servent à la saisie.
    Pour être plus précis :
    - Les deux sous formulaires affichent quelques enregistrement venant d'une même table (mais pas les mêmes enregistrements) sous forme "feuille de données (donc, un par ligne) et les champs sont modifiables sur toutes les lignes dans les deux.
    - Sur certains champs, le code de sortie modifie (par SQL) un champ dans l'autre formulaire (donc, un autre enregistrement de la même table)
    - Normalement, il ne devrait pas y avoir de conflit puisque les enregistrements affichés ne sont pas les mêmes.

    Mais de temps en temps, j'obtiens une erreur d'exécution du code SQL qui me dit que la table est déjà en cours de modif (ou quelque chose comme ça, je n'ai plus le message exact).

  6. #6
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    Donc à priori, tu ne peux pas être en train de modifier les 2 en même temps.
    La sauvegarde du second sous-formulaire ne devrait rien changer.

    Access ne verrouille pas vraiment les enregistrements, il verrouille des plages de 2000 caractères donc il se peut qu'il verrouille plus que ce que tu penses.

    Essaye tout de même de balancer le DoCmd.RunCommand acCmdSaveRecord avant de commencer ton SQL.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

Discussions similaires

  1. [AJAX] Formulaire html requête SQl et autocomplétion Ajax
    Par fabrizti dans le forum jQuery
    Réponses: 2
    Dernier message: 17/12/2015, 16h10
  2. [AC-2010] Remplissage d'un formulaire par requête SQL
    Par Kalskoy dans le forum IHM
    Réponses: 1
    Dernier message: 13/06/2014, 20h18
  3. Réponses: 12
    Dernier message: 20/03/2010, 00h52
  4. Problème avec un sous formulaire et requetes SQL
    Par louzz dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 15/01/2010, 14h22
  5. Réponses: 6
    Dernier message: 08/07/2008, 10h44

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