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 087
    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 087
    Points : 5 203
    Points
    5 203
    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
    Utilisez Planet, gestion d'entreprise gratuite pour TPE / PME

  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 087
    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 087
    Points : 5 203
    Points
    5 203
    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
    Utilisez Planet, gestion d'entreprise gratuite pour TPE / PME

+ 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