cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 2023
-
14 juil. 2005 à 13:48
wmlogistic
Messages postés1Date d'inscriptionlundi 27 février 2006StatutMembreDernière intervention13 juin 2006
-
13 juin 2006 à 09:12
Bonjour...
J'ai besoin d'explication a propos du ListView...
J'utilise ACCESS, ADO et VB6
Voici mon code...
While Not BD2005.EOF
With ListView1.ListItems.Add(, , IsN(BD2005!Dossier)) ' Colonne 1
.Tag = AdoRst!IdClient
Cette ligne plante dans mon programme et elle n'est pas bien codé....
With ListView1.ListItems.Add(, , IsN(BD2005!Dossier)) ' Colonne 1
.Tag = AdoRst!IdClient
J'aimerais savoir comment la changer pour que ca fonctionne avec mon code...
Le nom de ma ListView = ListView1
Recordset = BD2005
Ficchier ACCESS = Dossier_Actif.mdb
Nom de la Table = [Travaux en cours 2005]
J'aimerais sasoir qu'est ce que le IsN dans la ligen de code précédente et à quoi sert le TAG ??? Bon dans mon code je n'ai pas de IdClient. À vrai dire cette ligne (.Tag = AdoRst!IdClient) n'a pas été modifier avec mon code je l'ai laisse comme l'exemple que j'ai recu.
Je me demande que veux dire le IsN mais je crois que c'est une variable mais je veux savoir quelle est cette variable. Je veux la modifier mais je ne sais pas avec quelle variable (si c'est une varaible) la changer pour que ca fonctionne avec mon code..
cs_CanisLupus
Messages postés3757Date d'inscriptionmardi 23 septembre 2003StatutMembreDernière intervention13 mars 200620 14 juil. 2005 à 16:31
Salut,
Heu, si c'est TON code, comme tu le dis comment se fait-il que tu ne saches pas ce que tu écris ?
Bon, voilà ce que je pense de TON code.
1 - je suppose que la mise en forme de la listview est faite avant, par ex :
ListView1.View = lvwReport
ListView1.ColumnHeaders.Add ...
ListView1.ColumnHeaders.Add ...
etc ...
Sinon, ça ne marchera pas.
2 - IsN doit être une fonction astucieuse pour éviter les plantages quand le champs est null et en même temps pour éviter d'alourdir le code avec d'innombrables tests, quelque chose comme :
Function IsN(Valeur as string) as string
if isnull(Valeur) then
IsN = ""
else
IsN = Valeur
end if
end function
3 - le Tag, dans le cas présent sert à mémoriser l'id de l'enreg que tu affiches. A quoi ça sert ? tout simplement à retrouver le bon enreg dans le recordset pour le modifier ou le supprimer ou ..., par ex :
AdoRst.Findfirst "IdClient = " & listview1.SelectedItem.Tag
ou
"select * from latable where IdClient = " & listview1.SelectedItem.Tag
4 - Peut-être un tit cafouillis entre les recordset BD2005 et AdoRst ? Dans TON code, le contenu du Tag sera le même pour toutes les lignes. M'enfin, puisque c'est TON code, tu dois savoir ce que fais.
-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 20234 14 juil. 2005 à 18:36
Rectification....
J'entendais pas mon code... mon programme
J'ai spécifié que le code à propos du listview était un exemple donné par quelqu'un du site (mais j'ai oublié le nom de la personne qui me l'a donné)...
héhéhéhéhé
Donc MON code, jusqu'à présent je le comprend mais je ne saisi pas le code du ListView (Code qui m'a été donné par quelqu'un du site)
Donc... j'espere avoir été plus clair... Bref... passons à autre chose... héhéhéhéhé
J'essairai d'être plus clair dans mes prochain messages....
Ok alors j'ai changer LE code et j'ai enlever le TAG et ca fonctionne à moitier...
C'est à dire que ca affiche les informations des 6 premières colonnes et randu à la septième colone ca me dit comme Erreur
Utilisation non autorisé de Null
Ce que je ne sais pas c'est que dans l'Exemple que je prends pour faire le test tout les champs ont du texte donc j'ai aucunne valeur Null dans mon exemple. De plus j'ai été dans le fichier ACCESS j'ai mit à Chaîne Vide autorisé à Oui et ca plante pareil...
Je te remte le code que j'ai "modifié"
BD2005.Open "SELECT * FROM [TRAVAUX EN COURS 2005] WHERE [DOSSIER] like '%" & txtRechercheNormale.Text & "%'", Connection, adOpenKeyset, adLockBatchOptimistic
While Not BD2005.EOF
With ListView1.ListItems.Add(, , IsN(BD2005!Dossier)) ' Colonne 1
'.Tag = AdoRst!IdClient
cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 20234 14 juil. 2005 à 18:46
Et l'autre prob que j ene sais pas c'est que je ne veux (enfin de compte) pas faire de boucle car je veux faire une recherche du dossier et que voir l'information de ce dossier....
Mais c'est toujours la première ligne qui m'embête
QU'EST CE QUE JE METS ICI
.SubItems(1) = IsN(BD2005![DATE D'OUVERTURE]) ' Colonne '2
.SubItems(2) = IsN(BD2005![NATURE DU TRAVAIL]) ' Colonne 3
ETC...
À quoi ressemble le code pour lui dire de mettre le .ADD afin de voir les résult
cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 20234 14 juil. 2005 à 19:36
Salut non mon erreur ne vient pas de ma requête
BD2005.Open "SELECT * FROM [TRAVAUX EN COURS 2005] WHERE [DOSSIER] like '%" & txtRechercheNormale.Text & "%'", Connection, adOpenKeyset, adLockBatchOptimistic
MAis elle arrive lorsqu'elle arrive à la prmiere ligne
Si oui je vais essayer d'enlever le % mais j'avais l'impression que ma requête était bonne... enfin je l'utilise a un autre place avec un recordset différent et ca fonctionne tres biens...
Enfin de compte je veux seulement savoir s'il faut écrire
ListView1.subitems(0) = IsN (BD2005!DOSSIER) Pour la première ligne
et pour les autre ligne j'Écris
.SubItems(1) = IsN(BD2005![DATE D'OUVERTURE])
etc..
cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 20234 15 juil. 2005 à 13:39
Rebonjour... je crois que j'aurai toujours des problèmes...
et bien voici maintenant le code que j'tuilise et ca plante toujours...
BD2005.Open "SELECT * FROM [TRAVAUX EN COURS 2005] WHERE [DOSSIER] like '%" & txtRechercheNormale.Text & "%'", Connection, adOpenKeyset, adLockBatchOptimistic
Erreur de compilation
Référence incorrecte ou non qualifié
Ce que je ne saisi pas c'est que lorsque je faisais une boucle pour voir la totalité de la BD ca ne plantais pas à cet endroit... et j'ai enlever la boucle car je veux seulement voir l'information que je recherche et ca plante...
Si quelqu'un peut m'aider ENCORE...
Merci d'avance...
P.S. ca marche sans les parenthèse :)
Et le Isn dans mon code règle le prob des valeurs nul...
voici le code...
Function IsN(Valeur As Variant) As String
If IsNull(Valeur) Then
IsN = ""
Else
IsN = Valeur
End If
wmlogistic
Messages postés1Date d'inscriptionlundi 27 février 2006StatutMembreDernière intervention13 juin 2006 13 juin 2006 à 09:12
Salut
Oui bon je sais ... 1 an après lol mais bon ca peut servir pour d'autres hehehe
Pour régler le problème voici la solution :
Tu peux aussi aller dans -> option onglet général et vérifier que l' Arret sur toutes les erreurs ne soit pas coché mais bien le Arret dans le module de classe.