| URGENT VB.NET par cindy_misa |
mercredi 5 mars 2008 à 11:12:44 |
Configuration: Windows XP Firefox 2.0.0.12
Salut,
La textbox où tu veux faire afficher ta donnée va bien lire dans une base de donnée? Pourquoi ne testes-tu pas juste la cellule que tu lis? Je pense que pour la lecture tu as dûe faire un compteur donc tu n'as qu'a testé. Si ta céllule est vide tu envois un champs vide dans ta textbox sinon tu ecris la donnée. J'espere avoir été clair sinon n'hésites pas à me contacter. Bon courage |
bonjour,
En cherchant sur le site de developpez.com je suis tombé là dessus : http://faqvbnet.developpez.com/?page=adonet Regarde à : Comment exécuter une requête paramétrée ? il y a un exemple avec Is DBNull ... si ça peut t'aider !!! ;o) Polux
|
j'utilise les textbox pour afficher les champs de la table clients de la base de données ,voici le syntaxe qui teste si la valeur du champ est null :
If Not IsDBNull(dts.Tables("clients").Rows(0)(12)) Then t13.Text = dts.Tables("clients").Rows(0)(12) Else t13.Text = "" End If ça marche , mais j'ai beaucoup de champs dans cette table , alors je veux un syntaxe qui teste si un champ de la table est vide .....sans que je refais le sytaxe devant chaque affichage du textbox ,tu vois ce que je veux ? |
Je vois ce que tu veux oui.
Combien as-tu de textbox comme sa? |
ok , j'ai 75 textbox !! |
Ah ok!
A part créer une procédure qui testerait si tes cellules sont vides je vois pas trop. Parce que pour 75 textbox sa risque d'être galère. A mon avis il faut que tu créer une procédure public. Tu vois comment faire ou pas? |
oui , mais quel est le contenu de cette procédure , coment tester si les cellules sont null avec cette procédure ?
merci pour ton aide !! |
Oui je vois très bien ce que tu veux ... mais je n'ai pas la solution miracle ... dsl
;o( polux
|
regardez l'idée que j'ai :
j'ai declaré deux variables i et j : Dim i, j As Integer j'ai fait deux procedure : une pour l'affichage : Public Sub affichageclientes() t1.Text = dts.Tables("clientes").Rows(0)(0) t2.Text = dts.Tables("clientes").Rows(0)(1) t3.Text = dts.Tables("clientes").Rows(0)(2) t4.Text = dts.Tables("clientes").Rows(0)(3) t5.Text = dts.Tables("clientes").Rows(0)(4) t6.Text = dts.Tables("clientes").Rows(0)(5) . . . etc .... end sub et une pour affecter aux textbox des chaines vides : Public Sub affichagevide() t1.Text = "" t2.Text = "" t3.Text = "" t4.Text = "" t5.Text = "" t6.Text = "" t7.Text = "" t8.Text = "" . . . . . etc... end sub et dans le form_load j'ai fait ce test : str = "data source = localhost ;initial catalog=gestionempresa;integrated security=sspi" req = "select * from clientes " con = New SqlConnection(str) con.Open() dts = New DataSet("gestionempresa") dta = New SqlDataAdapter(req, con) dta.Fill(dts, "clientes") If Not (dts.Tables("clientes").Rows(i)(j)) Then affichageclientes() Else affichagevide() End If mais il a affiché seulement les premiers champs qui ne sont pas vide ,et il a arrete l'affichage . pouvez vous developpez cette idée avec moi ? |
C'est ce a quoi je faisais allusion toutaleur.
Tu t'y prends bien mais il faut que tu incrémente ton i et ton j qui sont je pense 2 compteurs que tu veux faire. Ceux que tu peux faire c'est te servir de i pour incrémenter ton numéro de ligne. Ensuite tu test à chaque fois si tu as une chaine vide, sa srait du genre: Public Sub affichageclientes() for i=1 to eof(1) t1.Text = dts.Tables("clientes").Rows(i)(0) t2.Text = dts.Tables("clientes").Rows(i)(1) t3.Text = dts.Tables("clientes").Rows(i)(2) t4.Text = dts.Tables("clientes").Rows(i)(3) t5.Text = dts.Tables("clientes").Rows(i)(4) t6.Text = dts.Tables("clientes").Rows(i)(5) next Je n'ai pas pu essayer vu que je n'ai pas vb sous la main mais j'espere que sa t'aidera. Sinon n'hesites pas a donner plus de renseignements encore pour un coup de main plus efficace.
|
C'est la fin de fichier. En fait il s'agit d'une fonction qui detecte la derniere ligne de ton tableau.
Pour le for il s'agit d'une boucle qui va executer tout ce que tu auras mis entre le debut et la fin de la valeur 1 à la derniere valeur du tableau. |
ok , j'ai fait ce que tu m'as dit mais il a affiché un message d'erreur :
bad file name or number c'est ce que j'ai ecrit : If Not (dts.Tables("clientes").Rows(i)(j)) Then For i = 1 To EOF(1) affichageclientes() Next Else affichagevide() End If
|
| 16/06 20h32 | Deploiement vb.net | Programmation | 16/06 22h47 | 1 |
| 09/06 10h03 | Gestion erreur VB.Net | Programmation | 09/06 15h18 | 7 |
| 09/06 09h59 | [VB.NET] Update et champ automatique | Programmation | 09/06 10h27 | 1 |
| 16/05 08h49 | Installation projet vb.net pb serveur proxy | Programmation | 16/05 14h52 | 3 |
| 06/05 11h01 | Besoin d'aide en VB.net | Programmation | 06/05 14h30 | 8 |
![]() | VB Editor - Décompileur de fichiers exécutables compilés avec Visual Basic 5 ou 6 | Catégorie: Visual Basic Licence: Freeware/gratuit |
![]() | Visual Basic Express - Visual Basic Express 2008 est la version gratuite de Visual Basic 2008, contenant toutes les fonctionnalités de base du... | Catégorie: Visual Basic Licence: Freeware/gratuit |
![]() | Paint.NET - Paint.NET est un outil de dessin et de retouche photo prévu pour fonctionner sous les systèmes Windows XP, Vista, ou Server... | Catégorie: Dessin Licence: Freeware/gratuit |
![]() | Microsoft .NET Framework 2.0 (x86) - Le package redistribuable de Microsoft .NET Framework 2.0 installe le runtime .NET Framework et les fichiers associés requis... | Catégorie: Librairies (DLL) Licence: Freeware/gratuit |