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 :

Ouvrir un formulaire modal avec 2 titres différents suivant l'événement enclencheur


Sujet :

IHM

  1. #1
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2016
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2016
    Messages : 171
    Points : 79
    Points
    79
    Par défaut Ouvrir un formulaire modal avec 2 titres différents suivant l'événement enclencheur
    Bonjour à toutes et tous.
    Dans une BDD j'ai un formulaire F_Pays permettant d'introduire le nom et le code ISO d'un pays. Afin de ne pas introduire 2x l'une ou l'autre de ces données, je les teste et, si une des 2 figure déjà dans la T_Pays, un formulaire modal s'ouvre avec un message. Toutefois, je ne parviens pas à faire en sorte que le titre du message soit différent selon qu'il s'agit d'un doublon au niveau du nom du pays ou du code ISO. Je souhaiterais dans le premier cas que le message dise: "ATTENTION! - Le nom de ce pays a déjà été enregistré." et dans le second que ce soit: "ATTENTION! - Ce code ISO a déjà été enregistré.". Il faudrait je pense enregistrer une donnée ou code dans le F_Pays avant l'appel du formulaire modal FM_DoublonsPays et transférer cette donnée de F_Pays à FM_DoublonsPays, mais je n'y parviens pas malgré que j'aie parcouru et lu des informations dans ce forum.
    Je joins une image des 2 formulaires et la BDD.
    Merci d'avance.
    Images attachées Images attachées
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 273
    Points : 6 582
    Points
    6 582
    Par défaut
    Salut
    Essayez ceci. A améliorer bien entendu.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Form_Current()
      Titre = "ATTENTION! - Le pays " & Forms.F_Pays.Pays_Nom.Value & " ou son code ISO " & Forms.F_Pays.Pays_ISO.Value & " figure a déjà été enregistré."
    End Sub
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  3. #3
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2016
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2016
    Messages : 171
    Points : 79
    Points
    79
    Par défaut Ouvrir un formulaire modal avec 2 titres différents suivant l'événement enclencheur
    Merci Hyperion13 pour votre réponse rapide.
    Néanmoins, je pense m'être mal exprimé. Dans le formulaire F_Pays je teste le pays après l'avoir introduit et, en suite, le code ISO. A chaque test, le formulaire modal constituant un message est susceptible de s'ouvrir et j'essayais, suivant que c'est le 1er test ou le 2ème qui enclenche l'erreur, de différencier le message. Pour cela je pense qu'il faut dans chaque test du F_Pays créer une variable et que celle-ci puisse, dans le sous-formulaire afficher l'un ou l'autre message. par exemple: "ATTENTION ! - Ce pays existe déjà." après le test sur le pays et ""ATTENTION ! - Ce code ISO a déjà été attribué." après le test sur le code ISO. Ce que je ne parviens pas à réaliser c'est créer une variable dans le F_Pays qui soit reconnue dans le FM_DoublonsPays et permette d'afficher le message adéquat.
    Bonne journée.

  4. #4
    Expert éminent Avatar de hyperion13
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 273
    Points : 6 582
    Points
    6 582
    Par défaut

    Essayez ceci. Je n'ai pas testé.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Private Sub Form_Current()
     
    If Len(Forms.F_Pays.Pays_Nom.Value & vbNullString) <> 0 And Len(Forms.F_Pays.Pays_ISO.Value & vbNullString) = 0 Then
        Titre = "ATTENTION ! - Le Pays_Nom " & Forms.F_Pays.Pays_Nom.Value & " a déjà été enregistré."
    End If
     
    If Len(Forms.F_Pays.Pays_Nom.Value & vbNullString) = 0 And Len(Forms.F_Pays.Pays_ISO.Value & vbNullString) <> 0 Then
        Titre = "ATTENTION ! - Le Pays_ISO " & Forms.F_Pays.Pays_ISO.Value & " a déjà été enregistré."
    End If
     
    If Len(Forms.F_Pays1.Pays_Nom.Value & vbNullString) <> 0 And Len(Forms.F_Pays1.Pays_ISO.Value & vbNullString) <> 0 Then
        Titre = "ATTENTION! - Le pays " & Forms.F_Pays.Pays_Nom.Value & " et son code ISO " & Forms.F_Pays.Pays_ISO.Value & " a déjà été enregistré."
    End If
     
    End Sub
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  5. #5
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2016
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2016
    Messages : 171
    Points : 79
    Points
    79
    Par défaut Ouvrir un formulaire modal avec 2 titres différents suivant l'événement enclencheur
    Merci Hyperion13 pour votre réponse.
    Je vais essayer cela. Je suppose que ces lignes doivent se trouver dans le formulaire modal FM_DoublonsPays.
    Je vous tiendrez au courant car je dois actuellement m'absenter.

  6. #6
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2016
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Janvier 2016
    Messages : 171
    Points : 79
    Points
    79
    Par défaut Ouvrir un formulaire modal avec 2 titres différents suivant l'événement enclencheur
    Merci à Hyperion13 pour ton éclairage.
    Après consultation de plusieurs articles et de votre réponse, voici ce que j'ai réalisé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    Test de doublons dans le formulaire principal F_Pays
    'Test de doublon sur code ISO'
    Private Sub Pays_ISO_BeforeUpdate(Cancel As Integer)
       If DCount("*", "T_Pays", "Pays_ISO=""" & Me.Pays_ISO & """") <> 0 Then
        Beep
        CléPays = "2"
        DoCmd.OpenForm "FM_DoublonsPays"
      End If
    End Sub
     
    'Test de doublon sur Pays'
    Private Sub Pays_Nom_BeforeUpdate(Cancel As Integer)
      If DCount("*", "T_Pays", "Pays_Nom=""" & Me.Pays_Nom & """") <> 0 Then
        Beep
        CléPays = "1"
        DoCmd.OpenForm "FM_DoublonsPays"
      Else
      End If
    End Sub
     
     
    Messages du Formulaire modal FM_DoublonsPays
    Private Sub Form_Current()
      Titre1 = " ATTENTION ! "
     
     If Forms.F_Pays.CléPays = "1" Then
       Titre2 = "Ce pays existe déjà."
     End If
     
     If Forms.F_Pays.CléPays = "2" Then
        Titre2 = "Ce code ISO a déjà été attribué"
     End If
     
      Titre3 = "Voulez-vous:"
      Titre4 = " - CORRIGER les données introduites ?"
      Titre5 = " - QUITTER sans sauvergarder ?"
    Forms.F_Pays.CléPays = ""
    End Sub
    Cela fonctionne parfaitement.
    Bonne journée à toutes et tous. Encore merci.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 22/04/2013, 11h47
  2. [OpenOffice][Base de données] Ouvrir un formulaire B avec un bouton se trouvant dans un formulaire A
    Par frack dans le forum OpenOffice & LibreOffice
    Réponses: 1
    Dernier message: 10/02/2009, 08h33
  3. ouvrir un formulaire infopath avec un autre logiciel
    Par yanaba dans le forum InfoPath
    Réponses: 2
    Dernier message: 01/09/2008, 18h48
  4. [VB.NET] Comment ouvrir une fenêtre modale avec Thread ?
    Par Damien10 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 19/11/2006, 11h28
  5. Ouvrir un formulaire presaisie avec les champs liés
    Par FrédéricCM dans le forum Access
    Réponses: 1
    Dernier message: 02/06/2006, 21h14

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