Bonjour,

Connecté sur une machine distante sous IBM OS/400, à partir d'une application VB.NET je récupère les données d'une table avec SQL pour les intégrer dans un DATASET. Etant donné que la table est volumineuse je voudrais mettre en action une barre de progression sans passer par un DATAREADER.

Voici le code utilisé :

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
Private Connection400 As New IBM.Data.DB2.iSeries.iDB2Connection
Private Command400 As New IBM.Data.DB2.iSeries.iDB2Command
Private DataAdapter400 As New IBM.Data.DB2.iSeries.iDB2DataAdapter
Private Dataset400 As New DataSet
Private Dataview400 As New DataView
 
.
.
 
Rem En cliquant sur le bouton 2 de l'application, voici le code qui est déroulé ...
 
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
rem Définition de la requête SQL ...
           Command400.CommandText = "SELECT * FROM GCASH/LIGNES"
rem Remise à blanc du dataset ...
            Dataset400.Tables.Remove("DATABASE")
rem Connection à la machine distante ...
            Call ConnectionServeur400()
rem Déclaration des éléments de la PROGRESSBAR
            ProgressBar1.Minimum = 0
            ProgressBar1.Maximum = NombreEnregSQL (Nombre d'enreg. fourni par SQL)
            ProgressBar1.Step = 1
            ProgressBar1.Value = 1
            ' Fait avancer la barre de progression :
            ' ProgressBar1.PerformStep() = ???????????????????????
 
 
Rem => Comment faire pour alimenter la barre de progression pendant le remplissage du DATASET400 avec DATAADAPTER400.FILL, sans boucler avec un DATAREADER, faut-il créer un événement ... ? Comment ! D'avance MERCI pour vos précisions !
Daniel 
 
 
 
rem Remplissage du DATASET
            DataAdapter400.Fill(Dataset400, "DATABASE")
            ' Base complète ...
rem Positionner les valeurs dans le DataGridView ...
            Dataview400.Table = Dataset400.Tables("DATABASE")
            DataGridView1.DataSource = Dataview400
rem Déconnection de la machine distante ...
            Call DéconnectionServeur400()
rrem Affichage du Datagridview1 ...
            DataGridView1.Visible = True
    End Sub