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 :

Problème pour un formulaire avec RefreshQuery


Sujet :

IHM

  1. #61
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2007
    Messages : 62
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par ft035580
    Un autre exemple dans lequel tu opères ton tri sur "tout","Blocage","Planifié" ou entre 2 dates sur "tout","Blocage","Planifié" par l'intermédiaire d'un groupe d'option.
    je suis moins sympa je la laisse bosser

  2. #62
    Membre éclairé Avatar de ft035580
    Profil pro
    Inscrit en
    Août 2004
    Messages
    689
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 689
    Points : 799
    Points
    799
    Par défaut
    Salut christrabin,

    Je pensais que nous allions nous dépatouiller du problème avec des exemples mais je m'apperçois qu'il n'en ai rien

    Courage ........ nous entamons la 5e page.

  3. #63
    Membre émérite Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Points : 2 520
    Points
    2 520
    Par défaut
    Je vous dit un peu où j'en suis et je suis désolée...
    Mon formulaire a beaucoup d'exigences et je ne suis pas la meilleure dans ce domaine...

    Alors voilà les codes pour les arrêts planifiés, les blocages et les deux ensembles marchent :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     If Me.q3Blocage And Not (Me.q3Planifié) Then
        Sql = Sql & "WHERE ARRET!Type = 'Blocage'"
    End If
     
    If Me.q3Planifié And Not (Me.q3Blocage) Then
        Sql = Sql & "WHERE ARRET!Type = 'Planifié'"
    End If
     
     
    If Me.q3Planifié And Me.q3Blocage Then
     
        Sql = Sql & "WHERE (ARRET!Type = 'Planifié' OR ARRET!Type = 'Blocage')"
    End If
    Maintenant je m'attaque aux dates, ce qui est le plus délicat il me semble...
    ~ Lola ~

  4. #64
    Membre émérite Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Points : 2 520
    Points
    2 520
    Par défaut
    Les dates toutes seules marchent maintenant je vais lier les dates et les arrêts....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     If q2Début And q2Fin Then
     
        Me.q2DateDébut.RowSource = "SELECT  Date FROM ARRET;"
        Me.q2DateFin.RowSource = "SELECT  Date FROM ARRET;"
        Me.q2DateDébut.Requery
        Me.q2DateFin.Requery
     
        Sql = Sql & "WHERE ARRET.Date >= [Forms]![Formulaire]![q2DateDébut] And ARRET.Date <= [Forms]![Formulaire]![q2DateFin]"
    End If
     
    If Me.q2Début And Not (Me.q2Fin) Then
        Sql = Sql & "WHERE ARRET!Date like '*" & Me.q2DateDébut & "*' "
    End If
    Une petite question, en fait on doit faire toutes les possibilités possibles pour que le questionnaire marche bien ? Parce que si c'est ça je vais mettre beaucoup de temps à le finir...
    Parce que ça c'est juste une partie... Heureusement après tout se ressemble, je vous embéterai plus quand ça sera finit....
    ~ Lola ~

  5. #65
    Membre émérite Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Points : 2 520
    Points
    2 520
    Par défaut
    Alors voilà ça marche !!!!!!
    Mais je suis obligé de tous tous tapé à la main, il n'y aurai pas une autre façon : là ca va parce qu'il n'y a que 4 case à cocher mais en tout à la fin j'en aurai 21 en comptant celles là...
    Alors je me vois très mal faire des if avec 21 conditions....
    Parce que si je ne fais pas les Not ça ne marche pas...
    Si vous avez des idées je suis preneuse....

    MERCI à christrabin et à ft035580 de m'avoir aidée et supportée....
    ~ Lola ~

  6. #66
    Membre éclairé Avatar de ft035580
    Profil pro
    Inscrit en
    Août 2004
    Messages
    689
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 689
    Points : 799
    Points
    799
    Par défaut
    Citation Envoyé par lola06
    Alors je me vois très mal faire des if avec 21 conditions....
    Parce que si je ne fais pas les Not ça ne marche pas
    Le groupe d'option ne t'interresse pas ?

  7. #67
    Membre émérite Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Points : 2 520
    Points
    2 520
    Par défaut
    Voilà le code final pour ceux que ça interesse....

    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
     Option Compare Database
    Private Sub Form_Load()
    Me.résultats.RowSource = "SELECT NuméroAuto, CodeSystème, Date, HeureDébut, Durée, Type, Caractéristique, CodeCause FROM ARRET;"
    Me.résultats.Requery
    End Sub
     
     
    Private Sub RefreshQuery()
    Dim Sql As String
     
    Sql = "SELECT NuméroAuto, CodeSystème, Date, HeureDébut, Durée, Type, Caractéristique, CodeCause FROM ARRET "
    '--------------------------------------------------------------------------------------------------------------------
    If Me.q3Blocage And Not (Me.q3Planifié) And Not (Me.q2Début) And Not (Me.q2Fin) Then
        Sql = Sql & "WHERE ARRET!Type = 'Blocage'"
    End If
    '--------------------------------------------------------------------------------------------------------------------
    If Me.q3Planifié And Not (Me.q3Blocage) And Not (Me.q2Début) And Not (Me.q2Fin) Then
        Sql = Sql & "WHERE ARRET!Type = 'Planifié'"
    End If
     
    '--------------------------------------------------------------------------------------------------------------------
    If Me.q3Planifié And Me.q3Blocage And Not (Me.q2Début) And Not (Me.q2Fin) Then
     
        Sql = Sql & "WHERE (ARRET!Type = 'Planifié' OR ARRET!Type = 'Blocage')"
    End If
     
    '--------------------------------------------------------------------------------------------------------------------
    If Me.q2Début And Not (Me.q2Fin) And Not (Me.q3Planifié) And Not (Me.q3Blocage) Then
        Sql = Sql & "WHERE ARRET!Date like '*" & Me.q2DateDébut & "*' "
    End If
    '--------------------------------------------------------------------------------------------------------------------
    If Me.q2Début And Me.q2Fin And Not (Me.q3Planifié) And Not (Me.q3Blocage) Then
     
        Me.q2DateDébut.RowSource = "SELECT Date FROM ARRET;"
        Me.q2DateFin.RowSource = "SELECT Date FROM ARRET;"
        Me.q2DateDébut.Requery
        Me.q2DateFin.Requery
     
        Sql = Sql & "WHERE ARRET.Date >= [Forms]![Formulaire]![q2DateDébut] And ARRET.Date <= [Forms]![Formulaire]![q2DateFin]"
    End If
    '--------------------------------------------------------------------------------------------------------------------
    If Me.q2Début And Me.q2Fin And Me.q3Planifié And Not (Me.q3Blocage) Then
     
        Me.q2DateDébut.RowSource = "SELECT Date FROM ARRET;"
        Me.q2DateFin.RowSource = "SELECT Date FROM ARRET;"
        Me.q2DateDébut.Requery
        Me.q2DateFin.Requery
     
        Sql = Sql & "WHERE ARRET.Type = 'Planifié' AND ARRET.Date >= [Forms]![Formulaire]![q2DateDébut] And ARRET.Date <= [Forms]![Formulaire]![q2DateFin]"
    End If
    '--------------------------------------------------------------------------------------------------------------------
    If Me.q2Début And Me.q2Fin And Me.q3Blocage And Not (Me.q3Planifié) Then
     
        Me.q2DateDébut.RowSource = "SELECT Date FROM ARRET;"
        Me.q2DateFin.RowSource = "SELECT Date FROM ARRET;"
        Me.q2DateDébut.Requery
        Me.q2DateFin.Requery
     
        Sql = Sql & "WHERE ARRET.Type = 'Blocage' AND ARRET.Date >= [Forms]![Formulaire]![q2DateDébut] And ARRET.Date <= [Forms]![Formulaire]![q2DateFin]"
    End If
    '--------------------------------------------------------------------------------------------------------------------
    If Me.q2Début And Me.q2Fin And Me.q3Blocage And Me.q3Planifié Then
     
        Me.q2DateDébut.RowSource = "SELECT Date FROM ARRET;"
        Me.q2DateFin.RowSource = "SELECT Date FROM ARRET;"
        Me.q2DateDébut.Requery
        Me.q2DateFin.Requery
     
        Sql = Sql & "WHERE (ARRET.Type = 'Blocage' OR ARRET.Type = 'Planifié' ) AND ARRET.Date >= [Forms]![Formulaire]![q2DateDébut] And ARRET.Date <= [Forms]![Formulaire]![q2DateFin]"
    End If
    '--------------------------------------------------------------------------------------------------------------------
     
    Sql = Sql & ";"
    'on affecte à la listbox 'résultats' l'instruction SQL
    Me.résultats.RowSource = Sql
    Me.résultats.Requery
    End Sub
     
    Private Sub q2Début_Click()
     
        If Me.q2Début = True Then
            Me.q2DateDébut.Visible = True
        Else
            Me.q2DateDébut.Visible = False
        End If
     
        RefreshQuery
     
    End Sub
     
    Private Sub q2DateDébut_AfterUpdate()
     
        RefreshQuery
     
    End Sub
     
    Private Sub q2DateFin_AfterUpdate()
     
        RefreshQuery
     
    End Sub
     
    Private Sub q2Fin_Click()
     
        If Me.q2Fin = True Then
            Me.q2DateFin.Visible = True
            Me.q2Début = True
        Else
            Me.q2DateFin.Visible = False
        End If
     
        RefreshQuery
     
    End Sub
     
    Private Sub q3Blocage_Click()
     
        RefreshQuery
     
    End Sub
     
    Private Sub q3planifié_Click()
     
        RefreshQuery
     
    End Sub
     
     
    Private Sub résultats_DblClick(Cancel As Integer)
     
        DoCmd.OpenForm "Formulaire1", acNormal, , "[NuméroAuto] = " & Me.résultats
     
    End Sub
    ~ Lola ~

  8. #68
    Membre émérite Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Points : 2 520
    Points
    2 520
    Par défaut
    En fait il faut que dans le formulaire on puisse choisir plusieurs options:
    par exemple après je dois faire la cause des arrêts (Software, Hardware..), on dois pouvoir voir si on veut un seul ou plusieurs ensembles...
    Je ne sais pas si je suis claire...?
    ~ Lola ~

  9. #69
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2007
    Messages : 62
    Points : 62
    Points
    62
    Par défaut
    géré 21 conditions avec des if 21 c'est l'usine à gaz...et le bug assuré
    Le groupe d'option ou la liste déroulante non ??

    Quand à la question, "Une petite question, en fait on doit faire toutes les possibilités possibles"

    vaut mieux pour éviter d'avoir un bug. Du genre, tu as une liste avec 2 dates début et fin. mais que se passe t il si ton utilisateur met une date de fin antérieure à ta date de début ?
    Exemple : début 01/01/05 et fin 01/01/03

    Il faut alors gérer un test sur la date pour éviter cela ....Bon, je ne vais pas te décourager dans ce bel élan

  10. #70
    Membre émérite Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Points : 2 520
    Points
    2 520
    Par défaut
    Je vais déjà essayer de tout faire marcher avec des groupes d'otions pour éviter trop de conditions et tout simple et après je verrai si je peux faire autrement.

    Si j'ai du mal pour les dates alors je reviendrais encore une fois ici.....
    Merci de m'aider...
    ~ Lola ~

  11. #71
    Membre éclairé Avatar de ft035580
    Profil pro
    Inscrit en
    Août 2004
    Messages
    689
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 689
    Points : 799
    Points
    799
    Par défaut
    Salut,

    Citation Envoyé par lola06
    j'en suis a à peu près 100 possibilités et ce n'est pas fini,
    Priviligie alors un système de liste(s) déroulante(s) voire des formulaires de formulaire.

  12. #72
    Membre émérite Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Points : 2 520
    Points
    2 520
    Par défaut
    Salut,
    je ne vois pas comment faire ce que tu as dit, est ce que le fait de faire des listes déroulantes va vraiment diminuer le nombre de conditions ?

    Je ne comprend pas ce que tu entend par des formulaires de formulaires, des sous formulaires c'est ça ?

    Merci d'essayer de m'éclairer je vais essayer d'avancer comme je peux...
    ~ Lola ~

  13. #73
    Membre émérite Avatar de lola06
    Femme Profil pro
    Consultante en Business Intelligence
    Inscrit en
    Avril 2007
    Messages
    1 316
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultante en Business Intelligence
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 316
    Points : 2 520
    Points
    2 520
    Par défaut
    Voilà c'est bon ça marche, j'ai écrit toutes les possibilités (très pratique le bloc note avec Remplacer par ... )
    Donc mon sujet est résolu on va dire.

    Merci à tous ceux qui m'ont aidée et qui m'ont permis de finir mon formulaire assez compliqué...

    P.S: je ne met pas le code il y aurait trop de lignes...
    ~ Lola ~

+ Répondre à la discussion
Cette discussion est résolue.
Page 4 sur 4 PremièrePremière 1234

Discussions similaires

  1. Réponses: 3
    Dernier message: 21/07/2012, 23h04
  2. Problème pour stopper thread avec runnable
    Par fabou3377 dans le forum Concurrence et multi-thread
    Réponses: 3
    Dernier message: 13/03/2008, 13h43
  3. Problème pour la Division avec NOT EXISTS
    Par myzu69 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 08/11/2007, 14h50
  4. Problème pour compiler Ogre avec VS 2005
    Par Oxideur dans le forum Ogre
    Réponses: 2
    Dernier message: 01/03/2007, 18h33
  5. Problème pour utiliser split avec "\"
    Par Nicolas_555 dans le forum Langage
    Réponses: 6
    Dernier message: 03/08/2006, 14h42

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