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 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139
|
Private Sub RefreshDataSource()
'Remplissage de l'instance de notre DataTable "Contacts" par l'instance
'de Notre TableAdapter "ContactTableAdapter".
'Celui-ci exécute la requête SELECT pour remplir notre table des données
'que contient notre base physique "MaBaseLoacle.sdf".
Me.CandidatTableAdapter.Fill(Me.MyDataSet.Candidat)
End Sub
Private Sub Ajoutcand_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton3.Click
'Gestion des erreurs de saisie
'
Dim Num_row As Integer = 0
Dim ctl As Control
Dim HasError As Boolean = False
Dim Nom_champ As String
EP.Clear()
'For Each ctl1 In Me.Pnltex.Controls
' If ctl1.Text.Length = 0 Then
' Nom_champ = ctl1.Name
' EP.SetError(ctl1, "Le champ " & Nom_champ & " ne peut être vide !")
' HasError = True
' End If
'Next
For Each ctl In Me.Pnltex2.Controls
If ctl.Text.Length = 0 Then
Nom_champ = ctl.Name
If Nom_champ = "txt_complement" And txt_complement.Text = "" Then
HasError = False
Else
EP.SetError(ctl, "Le champ " & Nom_champ & " ne peut être vide !")
HasError = True
End If
End If
Next
For Each ctl2 In Me.Pnltex3.Controls
If ctl2.Text.Length = 0 Then
Nom_champ = ctl2.Name
If Nom_champ = "Comb_doc_a_temps" And Comb_doc_a_temps.Text = "" Then
HasError = False
Else
EP.SetError(ctl2, "Le champ " & Nom_champ & " ne peut être vide !")
HasError = True
End If
End If
Next
For Each ctl3 In Me.Pnltex4.Controls
If ctl3.Text.Length = 0 Then
Nom_champ = ctl3.Name
EP.SetError(ctl3, "Le champ " & Nom_champ & " ne peut être vide !")
HasError = True
End If
Next
If HasError Then
Exit Sub
End If
REM: nous pourrions aller plus loin dans cette gestion des erreur avec
REM: l'ajout d'expressions régilères (RegEx)
REM: pour contrôler les champs tel que l'email ou le code postal,
REM: mais ce n'est pas le but de ce tutoriel.
'
Try
'
'Appel de la procédure Insert de notre TableAdapter,
'qui transmettra la requête SQL INSERT.
Dim NbLine As Integer = CandidatTableAdapter.Insert(Txt_Numdossier.Text, cbo_civil.Text, Txt_Nom.Text, Txt_Prenom.Text, Date_Naissance.Value.Date.ToString, Txt_Tel.Text, Txt_email.Text, cbo_statutcand.Text, Txt_Numvoie.Text, cbo_attribvoie.Text, cbo_libellevoie.Text, Txt_Nomvoie.Text, txt_complement.Text, Txt_codepostal.Text, Txt_ville.Text, cbo_Pays.Text, Date_envoicand.Value.Date.ToString, Date_Receptioncand.Value.Date.ToString, cbo_convention.Text, txt_tuteur.Text, cbo_candtardive.Text, cbo_elimination.Text, cbo_Domaine.Text, Date_debutpossible.Value.Date.ToString, Date_debutoblig.Value.Date.ToString, Date_finoblig.Value.Date.ToString, cbo_Prolong.Text, Txt_Dureemin.Text, Txt_Dureemax.Text, txt_flex.Text, cbo_etab.Text, cbo_Numsession.Text, Date_session.Value.Date.ToString, txt_lieusession.Text, txt_com.Text)
REM: Cette procédure retourne un entier indiquant le nombre de lignes modifiés.
'
If NbLine > 0 Then
MessageBox.Show("Le contact a bien été ajouté à la base de données.", "Ajout du contact", MessageBoxButtons.OK, MessageBoxIcon.Information)
'
'L'ajout effectué nous actualisons les données de notre source
'de données en effectuant une requête SELECT de nouveau.
Call RefreshDataSource()
'
End If
'
Catch ex As Exception
'
MessageBox.Show("Une erreur est survenue durant l'accès à la base de données." & Environment.NewLine & "Détails de l'erreur: " & ex.Message, "Echec de l'accès aux données.", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
'
End Try
End Sub |
Partager