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 :

Comment Désactiver un bouton du formulaire principal si le sous-formulaire ne contient pas d'enregistrements [AC-2010]


Sujet :

IHM

  1. #1
    Membre à l'essai
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Septembre 2011
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien réseau
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 22
    Points : 15
    Points
    15
    Par défaut Comment Désactiver un bouton du formulaire principal si le sous-formulaire ne contient pas d'enregistrements
    Bonjour, j'ai un formulaire principal qui contient les données de la table contact et un sous-formulaire qui contient les items achetés par ce contact. Le sous-formulaire affiche tous les achat quand je l'ouvre seul, mais jumelé au formulaire contact, il n'affiche que les achats de ce contact (lien parent/enfant entre les 2 formulaires). Tout ceci fonctionne très bien.

    Voici le problème, Dans le formulaire principal, j'ai un bouton pour supprimer un élément du sous-formulaire, tout fonctionne très bien sauf si j'appuie sur le bouton supprimer s'il n'y a pas d'enregistrement dans le sous-formulaire. J'aimerais désactiver le bouton dans le cas où le sous-formulaire ne contient pas de données.

    J'ai tenté de connaitre le nombre d'enregistrements dans le sous-formulaire avec le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [FAcheteur_SFItemAchetes].[Formulaire].[Compte]
    Ce code me retourne toujours la même valeur soit 19, je ne sais pas d'où sort ce nombre...

    J'ai aussi tenté de compter les champs du sous-formulaire en ajoutant un champ calculé dans le pied du sous- formulaire et d'y faire référence à partir du formulaire principal : ça fonctionne tant qu'il y a des enregistrements dans le sous-formulaire. S'il n'y a pas d'enregistrements dans le sous-formulaire au lien d'inscrire le nombre d'enregistrement, ça inscrit !erreur ou quelque chose comme cela dans le contrôle affiché dans le formulaire...

    Quelqu'un peut m'aider s.v.p.

    Merci à l'avance !

  2. #2
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 108
    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 108
    Points : 5 231
    Points
    5 231
    Par défaut
    Bonjour,

    Pour savoir si le sous-form est vide, tu peux tester
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    form_monsousform.recordset.eof
    ou 
    forms("monsousform").recordset.eof
    ou
    me.fillexxx.recordset.eof
    En remplaçant fillexxx ou monsousform par le nom dans l'appli

  3. #3
    Membre à l'essai
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Septembre 2011
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien réseau
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    Merci, j'ai utilisé ce code car .recordset ne m'était pas proposé... j'ai mis ce code dans l'événement minuterie; Il me semble que ce n'est pas très efficace... je suis à la recherche d'une méthode pour executer le code sur modification du sous-formulaire... Peut-être peux-tu m'aider...

    Merci !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    If FAcheteur_SFItemAchetes.Form.Recordset.recordcount = 0 Then
        Me.BAnnuleAchat.Enabled = False
    Else
        Me.BAnnuleAchat.Enabled = True
    End If

  4. #4
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 108
    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 108
    Points : 5 231
    Points
    5 231
    Par défaut
    Il faudrait mettre ce code sur un évènement "modification du parent" ou choix de la ligne courante si le form principal est une liste

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/07/2009, 14h18
  2. Réponses: 0
    Dernier message: 11/04/2008, 10h33
  3. Réponses: 6
    Dernier message: 23/02/2007, 10h56
  4. Réponses: 4
    Dernier message: 08/02/2007, 15h00
  5. Réponses: 5
    Dernier message: 01/10/2006, 13h48

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