Code vb

Signaler
Messages postés
30
Date d'inscription
vendredi 9 mars 2012
Statut
Membre
Dernière intervention
13 juillet 2014
-
 Utilisateur anonyme -
Bonjour,

J'ai créé un menu strip qui contient 2 menus items(gestion documents administratifs et de bureau),chaque menu est permis(enabled)pour son utilisateur(administration) et non permis(disabled)pour les autres utilisateurs non administratifs
 Private Sub utilisateurs_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        Dim connection As New SqlClient.SqlConnection
        connection.ConnectionString = ""
        Dim cmd As New SqlCommand
        connection.Open()
        cmd.Connection = connection
        If cmd.CommandText = "SELECT * FROM Agent WHERE ID_type= 1100 or ID_type= 1200" Then
            GestionArchivesBureauPostalToolStripMenuItem.Enabled = True
            GestionArchivesAdministratifsToolStripMenuItem.Enabled = False

        ElseIf cmd.CommandText = "SELECT * FROM Agent WHERE ID_type= 1300 " Then
            GestionArchivesBureauPostalToolStripMenuItem.Enabled = False
            GestionArchivesAdministratifsToolStripMenuItem.Enabled = True
        End If
        connection.Close()
    End Sub

svp répondez moi le plus tôt possible et merci.

6 réponses


Bonjour,
Elle est où la question?


Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
Messages postés
30
Date d'inscription
vendredi 9 mars 2012
Statut
Membre
Dernière intervention
13 juillet 2014

Bonjour,

Elle est où la question?


ce code ne marche pas (rien ne se change pour le menustrip)
et je ne sais pas ou est la faute
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
232
Bonjour,
ce code ne marche pas (rien ne se change pour le menustrip)
et je ne sais pas ou est la faute

très probablement dans le fait d'expressions conditionnelles sur une chaine de caractères (cmd.CommandText) encore vide au moment de leur vérification !
ajoute-voir un else (après la fin de ton elseif) affichant "vide", et tu sauras !

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Messages postés
30
Date d'inscription
vendredi 9 mars 2012
Statut
Membre
Dernière intervention
13 juillet 2014

Bonjour,

très probablement dans le fait d'expressions conditionnelles sur une chaine de caractères (cmd.CommandText) encore vide au moment de leur vérification !


par quoi je peux remplacer le (cmd.CommandText)????
Messages postés
30
Date d'inscription
vendredi 9 mars 2012
Statut
Membre
Dernière intervention
13 juillet 2014

Bonjour,

 Private Sub utilisateurs_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        Dim connection As New SqlClient.SqlConnection
        connection.ConnectionString = "Server=LENOVO-PC;Database=BD_gestion_archives;trusted_connection=true;"
        Dim cmd As New SqlClient.SqlCommand
        Dim cnd1 As Boolean = Convert.ToBoolean("SELECT * FROM Agent WHERE ID_type= 1100 or ID_type= 1200")
        Dim cnd2 As Boolean = Convert.ToBoolean("SELECT * FROM Agent WHERE ID_type= 1300 ")
        connection.Open()
        cmd.CommandText = "select ID_type FROM Agent"
        cmd.Connection = connection
        If condition1 = True Then
            GestionArchivesBureauPostalToolStripMenuItem.Enabled = True
            GestionArchivesAdministratifsToolStripMenuItem.Enabled = False

        ElseIf condition2 = True Then
            GestionArchivesBureauPostalToolStripMenuItem.Enabled = False
            GestionArchivesAdministratifsToolStripMenuItem.Enabled = True

        End If
        connection.Close()
    End Sub


à l’exécution un message d'erreur s'affiche: La chaîne n'a pas été reconnue en tant que Boolean valide.

La chaîne n'a pas été reconnue en tant que Boolean valide.

Dim cnd1 As Boolean = Convert.ToBoolean("SELECT * FROM Agent WHERE ID_type= 1100 or ID_type= 1200")
Dim cnd2 As Boolean = Convert.ToBoolean("SELECT * FROM Agent WHERE ID_type= 1300 ")


Oui... comment veux-tu convertir une requête Sql en Bollean et surtout pourquoi faire ??
Es-tu sur de comprendre ce que tu codes?

Cordialement


CF2i - Guadeloupe
Ingénierie Informatique