Bonjour j'espère que le titre est assez clair ...
Mais au cas ou je décrit xD :
Dans un formulaire, j'ai un datagridview qui se base sur une datatable "Fiche de frais".
j'ai donc mon datagridview qui s'affiche avec le nom des colonnes ...
et l'utilisateur peut saisir les informations.
Et là 2 grandes questions:
- (Après avoir appuyer sur un bouton OK ...) comment envoyer les données saisies vers la datatable afin de remplir mon rapport CrystalReport ?
Mon brouillon:
- Comment activer des contrôles sur les saisies dans le datagridview :
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 'Traitement des informations saisies et génération du rapport Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim nbLigne = DataGridView1.RowCount 'for each nbligne ... supprimer Dim MyDA As New Data Dim ds As New Divers Try 'MyDA.'Fill(ds.Tables("listeCanaux")) Catch ex As InvalidOperationException MsgBox("Erreur pendant l'insertion des données dans la table temporaire (FicheDeFrais) !", 32, "Isis") Me.Close() End Try Dim report As New DocumentFicheFrais 'report.SetDataSource(ds) report.DataDefinition.FormulaFields("DateDeb").Text = "'" + MaskedTextBox1.Text + "'" report.DataDefinition.FormulaFields("DateFin").Text = "'" + MaskedTextBox2.Text + "'" report.DataDefinition.FormulaFields("UserName").Text = "'" + TextBox1.Text + "'" report.DataDefinition.FormulaFields("Centre").Text = "'" + TextBox2.Text + "'" Afficher_Etats.Show() Afficher_Etats.CRV.ReportSource = report End Sub
j'ai fait une sorte de gestion des dataerror, toutefois y a t'il un moyen plus simple (plus propre) pour gérer ces saisies ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 'Gestion des erreurs du datagrid (format des cellules,envoie des données dans le rapport) Private Sub DataGridView1_DataError(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewDataErrorEventArgs) Handles DataGridView1.DataError Select Case DataGridView1.Columns(e.ColumnIndex).DataPropertyName Case "Date" MessageBox.Show("Format error DATE") Case "Parking", "Repas", "Hotel", "Divers" MessageBox.Show("Format error DECIMAL") End Select End Sub
Partager