ADO VB6 Textet numérique ???

cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 - 9 août 2005 à 18:54
cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 - 10 août 2005 à 13:39
Salut....

J'ai un petit problème que je ne saisi pas....

Je dois faire, pour le moment, un textbox (txtRecherche)où je rentre un numéro de Lot et dans un autre Textbox (txtFolio) ca me donne son Folio. J'ai ajouter pour un test un troisième textbox afin que le programme inscrive le numéro de Lot (donc ce textbox doit m'inscrire la même informtion que mon premier testbox.

J'ai fais quelque tes et voici ce que ca me donne.

Lorsque j'inscris un nombre dans le textbox, par exmeple, 203 (txtRecherche) ca me donne un Folio qui égal à 60. Vous comprendrez que ce n'est pas le bon Folio (txtFolio) et le bon Numéro de lot (txtLot). Donc ici il y a un bug. Toutefois si j'entre un numéro de lot en text, par exemple, le lot 20-3 ca me donne les bonne information dans mes deux textbox (txtFolio et txtLot).

Je ne sais pas comment faire pour lui dire que prendre une valeur numérique et de la convertir en text.... ET est-ce que ca vient de ca mon problème.. ????


Si mon problème vient de la conversion du numérique en text.... c'est où je lui dit de faire la conversion ???? J'ai fais des test mais ca fonctionne pas....

Voici mon code


Mon Load

Private Sub form_Load()

Connection.Provider = "Microsoft.jet.OLEDB.4.0"
Connection.ConnectionString = App.Path & "\FOLIO_RENO.mdb"
Connection.Open
BD.Open "Select * from FOLIO_CADASTRE", Connection, adOpenDynamic, adLockOptimistic

Me.Show

End Sub

Mon Activate

Private Sub form_Activate()

Set txtFolio.DataSource = BD
txtFolio.DataField = "folio"
Set txtLot.DataSource = BD
txtLot.DataField = "DATE"

txtFolio.Text = ""
txtLot.Text = ""

End Sub

Mon bouton Recherche

Private Sub cmdRecherche_Click()

Dim supression As Variant

Set BD2 = New ADODB.Recordset

BD2.Open "SELECT * FROM [FOLIO_CADASTRE] WHERE [cad] like '%" & txtRecherche.Text & "%'", Connection, adOpenKeyset, adLockBatchOptimistic

If BD2.RecordCount <> 0 Then

txtFolio.Text = BD2!folio & ""
txtLot.Text = BD2!cad & ""

Else
supression = MsgBox("Cette (Ces) donnée(s) n'existe(ent) que dans votre tête", vbOKOnly, "Non Disponible")

End If

End Sub

Merci de votre aide.....

2 réponses

mythic_kruger Messages postés 241 Date d'inscription jeudi 8 janvier 2004 Statut Membre Dernière intervention 10 novembre 2005
10 août 2005 à 08:05
select * from [table] where [champ] like 'recherche*';

Ca donne

select * from [FOLIO_CADASTRE] where [cad] like '" + txtrecherche.text + "*';

Pas besoin de convertir txtrecherche en string, c'en est déjà un!
0
cs_JeffC1977 Messages postés 928 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 23 septembre 2023 4
10 août 2005 à 13:39
Salut....

Mais mon problème peut venir de où ??????????

Pourquoi si j'ainscrit 20-3 (je mets un "-") ca fonctionne mais si je mets 20 (le chiffre seulement) ca fonctionne pas....

Bon il est à noter que j'ai dans ma base de donnée un folio allant pour le lot 20 et le lot 20-3

Ca fais trois programme que j'utilise avec ADO et il fonctionne tous bien (pour ce qui est de la recherche) et mon programme ne fonctionne pas et je n'ai que fais des copier coller en modifiant le nom des varibales, textbox, etc.

Je te remerci d'avance de ton aide
0
Rejoignez-nous