Bonjour à tous,
j'ai longtemps hésité à venir poster, mais la je suit vraiment bloquer :s
Donc voila j'ai une bdd en ms sql serveur 2005 et je programme une interface en vb6.
J'ai déjà fait quelques programmes qui communiquent entre les 2 logiciel pas de problème et là j'ai voulu faire une boucle pour la copie de champs, d'habitude dans ma boucle j'avais une seul valeur a récuperer (while not eof etc...) ici je récupere 5 collone par ligne et dès que j'arrive sur une autre commande de récupération de champs sa plante.
Bon voici mon code sa sera plus clair !
NB j'ai mit en rouge l'endroit ou sa plante.
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80 ' VARIABLE ' Pour recherche du PV Public Date_PV1 As String Public Date_PV As String Public NbrePV As Integer Public TabPV() As String Public IDPerso As Integer Public NomPerso As String 'Declaration d'objet pour la BDD Public ConnecDB As ADODB.Connection Public rst As ADODB.Recordset Public rst1 As ADODB.Recordset ' PROGRAMME Public Sub RecherchePV() 'Recherche le PV selon les critères ' (1) Set ConnecDB = New ADODB.Connection ConnecDB.Provider = "SQLOLEDB.1" ConnecDB.ConnectionString = "Persist Secutity Info= False;User ID= user;Password= X;Initial Catalog= TEST;Data Source= X\SQLEXPRESS;" ConnecDB.Open ' (2) Set rst = New ADODB.Recordset ' (3) rst.Open "SELECT * From PV_DMS Where (DateCreationPV >= " & Date_PV & ") And (DateCreationPV < " & Date_PV1 & ") And (IDProduit = " & choixidproduit & ") And (IDPresse = " & choixidpresse & ")", ConnecDB ' (4) If rst.EOF = False Then rst.MoveFirst NbrePV = 0 While Not rst.EOF NbrePV = NbrePV + 1 rst.MoveNext Wend ReDim TabPV(1 To NbrePV) NbrePV = 0 rst.MoveFirst While Not rst.EOF NbrePV = NbrePV + 1 IntRecupData = rst("IDPV") TabPV(NbrePV) = IntRecupData Frm_Page_Principale.MSFlexGrid1.AddItem (IntRecupData) Frm_Page_Principale.MSFlexGrid1.Row = NbrePV IDPerso = rst("Monteur1") RecupNomPerso Frm_Page_Principale.MSFlexGrid1.Col = 1 Frm_Page_Principale.MSFlexGrid1.Text = NomPerso IDPerso = rst("Monteur2") 'JE PLANTE ICI RecupNomPerso Frm_Page_Principale.MSFlexGrid1.Col = 2 Frm_Page_Principale.MSFlexGrid1.Text = NomPerso IDPerso = rst("Regleur") RecupNomPerso Frm_Page_Principale.MSFlexGrid1.Col = 3 Frm_Page_Principale.MSFlexGrid1.Text = NomPerso IDPerso = rst("GapLeader") RecupNomPerso Frm_Page_Principale.MSFlexGrid1.Col = 4 Frm_Page_Principale.MSFlexGrid1.Text = NomPerso rst.MoveNext Wend For x = LBound(TabPV) To UBound(TabPV) Frm_Page_Principale.Combo7.AddItem (TabPV(x)) Next x Frm_Page_Principale.Combo7.Text = "" Else End If ' (5) ConnecDB.Close Set rst = Nothing Set ConnecDB = Nothing End Sub
Donc j'ai déjà éssayé pas mal de chose et la je désespère....
Merci d'avance pour vos réponses !!
Partager