Bonjour, voila je cherche depuis hier soir une solution a mon problème sur internet mais rien n'y fait je vous explique :
j'ai ma procédure 'gsm_affectation_list()' qui parcours la liste 'identite()' contenant un nom et prénom et en utilisant la fonction 'gsm_search_tel' elle affecte à une autre list 'identite_phone' le nom ainsi que le numéro de téléphone issue d'une base de donnée mysql extraite à l'aide de la fonction 'gsm_search_tel', pour faire plus simple voici le code :
par la même occasion voici ma fonction qui retourne le numéro de téléphone avec l'identité passé en paramètre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Module GPRS Public identite As New ArrayList() 'on recupére juste l'identité des gens sur le ticket de départ Public identite_phone As New ArrayList() 'On crée une collection ArrayList qui contient lidentité des personnes concerné et leur tel Sub gsm_affectation_list() Dim i As Integer For i = 0 To identite.Count - 1 identite_phone.Add(identite(i) & "=" & gsm_search_tel(identite(i))) 'ajoute à la list :: DUPONT JACQUE = 0303040506 Next End Sub End Module
Le soucis est le suivant :
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 '################################################################## '## cherche dans la table personnel le numéro de tel correspandant à un agent sur le ticket de depart '################################################################## Public Function gsm_search_tel(ByVal indicatifs As String) As String log("Cherche le numero de telephone du gars sur le ticket de depart avec sont indicatif") Try Dim Requete As String Dim sqlCommand As New MySqlCommand Dim myAdapter As New MySqlDataAdapter Dim myData As MySqlDataReader Requete = "SELECT portable FROM personnel WHERE indicatif = '" & indicatifs & "'" connection_Mysql.Open() sqlCommand.Connection = connection_Mysql sqlCommand.CommandText = Requete myAdapter.SelectCommand = sqlCommand myData = sqlCommand.ExecuteReader() myData.Read() Return myData.GetString("portable") myData.Close() connection_Mysql.Close() Catch ex As Exception les_try("fonction gsm_search_tel :: " & ex.Message) 'ecrit dans le fihier texte exception l'erreur Return "inconnu" End Try End Function
Lorsque j’insère un breakpoint dans ma procédure 'gsm_affectation_list()' je constate que seul la première itération de la boucle for récupère le numéro de téléphone des personnes enregistré dans ma list 'identite()' alors que les autres même si il sont en base de donnée sont affecté comme 'inconnu'
Alors j'ai regardé du coté des exceptions sauvegardé dans un fichier texte et voici ce que j'ai pour ma fonction 'gsm_search_tel':
08/08/2014 11:31:47 fonction gsm_search_tel :: The connection is already open.
Pourtant je ferme la connection mysql à la fin de la fonction !!! je ne comprend pas ou est le problème ???
Partager