4.3.3.Le formulaire de présence
a. Forme
Ce formulaire permet à l'utilisateur de saisir les
présences des agents et les introduire dans la base des données.
L'utilisateur va saisir la date du jour, le numéro matricule de l'agent,
l'heure d'arrivée, l'heure de départ et le motif de
départ.
Les boutons de commande permettent de passer d'une
présence à une autre (quatre boutons : Premier, Dernier,
Précédent, Suivant), de saisir, d'insérer et supprimer des
présences (Nouveau, Insérer, Supprimer) et de rechercher si un
agent a été présent à une date
quelconque(Rechercher).
b. Codes du formulaire Présence
Imports System.Data
Imports System.Data.OleDb
Public Class frmPresence
Dim con As OleDbConnection
Dim cmd As OleDbCommand
Dim da As OleDbDataAdapter
Dim ds As DataSet
Dim x As Integer
Dim NbreEnreg As Integer
Private Sub frmPresence_Load(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles MyBase.Load
con = New OleDbConnection
con.ConnectionString =
"Provider=Microsoft.ACE.OLEDB.12.0;Data
Source=C:\Users\ZADO\Documents\GESTION_RESSOURCES_HUMAINES_DB.accdb"
con.Open()
cmd = New OleDbCommand
cmd.CommandText = "Select*From PRESENCE"
cmd.Connection = con
da = New OleDbDataAdapter(cmd)
ds = New DataSet
da.Fill(ds, "PRESENCE")
x = 0
NbreEnreg = ds.Tables("PRESENCE").Rows.Count
Afficher()
con.Close()
End Sub
Private Sub Afficher()
txtDatejour.Text =
ds.Tables("PRESENCE").Rows(x).Item(0)
txtMatricule.Text =
ds.Tables("PRESENCE").Rows(x).Item(1)
txtHeureArriv.Text =
ds.Tables("PRESENCE").Rows(x).Item(2)
txtHeureDepart.Text =
ds.Tables("PRESENCE").Rows(x).Item(3)
txtMotifDepart.Text =
ds.Tables("PRESENCE").Rows(x).Item(4)
End Sub
Private Sub cmdSuivant_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles cmdSuivant.Click
If x < NbreEnreg - 1 Then
x = x + 1
Afficher()
Else
MsgBox("Attention dernière présence
enregistrée")
End If
End Sub
Private Sub cmdPrecedent_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles cmdPrecedent.Click
If x <> 0 Then
x = x - 1
Afficher()
Else
MsgBox("Attention première présence
enregistrée")
End If
End Sub
Private Sub cmdPremier_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles cmdPremier.Click
If x <> 0 Then
x = 0
Afficher()
Else
MsgBox("Attention première présence
enregistrée")
End If
End Sub
Private Sub cmdDernier_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles cmdDernier.Click
If x <> NbreEnreg - 1 Then
x = NbreEnreg - 1
Afficher()
Else
MsgBox("Attention dernière
présence")
End If
End Sub
Private Sub cmdNouveau_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles cmdNouveau.Click
txtDatejour.Text = ""
txtHeureArriv.Text = ""
txtHeureDepart.Text = ""
txtMatricule.Text = ""
txtMotifDepart.Text = ""
txtDatejour.Focus()
End Sub
Private Sub cmdInserer_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles cmdInserer.Click
Try
Dim d As Boolean
Dim h As Boolean
Dim i As Boolean
h = IsDate(txtHeureArriv.Text)
d = IsDate(txtDatejour.Text)
i = IsDate(txtHeureDepart.Text)
If d = True Then
If h = True Then
If i = True Then
con.Open()
Dim cmdAjout As OleDbCommand
cmdAjout = New OleDbCommand
cmdAjout.Connection = con
cmdAjout.CommandText = "Insert into
PRESENCE values ('" & txtDatejour.Text & "','" & txtMatricule.Text
& "','" & txtHeureArriv.Text & "','" & txtHeureDepart.Text
& "','" & txtMotifDepart.Text & "')"
cmdAjout.CommandType =
CommandType.Text
cmdAjout.ExecuteNonQuery()
MsgBox("Félicitation, une
présence a été ajoutée")
con.Close()
Else
MsgBox("L'heure de depart saisie n'est
pas valide, saisissez de nouveau")
txtHeureDepart.Text = ""
txtHeureDepart.Focus()
End If
Else
MsgBox("L'heure d'arrivée saisie n'est
pas valide")
txtHeureArriv.Text = ""
txtHeureArriv.Focus()
End If
Else
MsgBox("Tu as saisie une date du jour non valide,
saisissez de nouveau")
txtDatejour.Text = ""
txtDatejour.Focus()
End If
Catch ex As Exception
MsgBox(ex.Message.ToString)
End Try
End Sub
Private Sub cmdSupprime_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles cmdSupprime.Click
Try
con.Open()
Dim cmdSuppr As OleDbCommand
cmdSuppr = New OleDbCommand
cmdSuppr.CommandText = "Delete From PRESENCE Where
DATEJOUR='" & txtDatejour.Text & "' and NUMMATR= " &
txtMatricule.Text & ""
cmdSuppr.CommandType = CommandType.Text
cmdSuppr.Connection = con
cmdSuppr.ExecuteNonQuery()
con.Close()
MsgBox("Une présence a été
supprimée avec succes")
Catch ex As Exception
MsgBox(ex.Message.ToString)
End Try
End Sub
Private Sub cmdRecherche_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles cmdRecherche.Click
Try
con.Open()
Dim Recherche As New OleDbCommand
Dim p As String
p = InputBox("Entrer le numéro matricule ")
Recherche.CommandText = "select * from PRESENCE where
NUMMATR= " & p & ""
Recherche.Connection = con
Dim dbreader As OleDbDataReader
dbreader = Recherche.ExecuteReader
If dbreader.Read = True Then
txtDatejour.Text = dbreader.Item(0)
txtMatricule.Text = dbreader.Item(1)
txtHeureArriv.Text = dbreader.Item(2)
txtHeureDepart.Text = dbreader.Item(3)
txtMotifDepart.Text = dbreader.Item(4)
Else
MsgBox("Le matricule saisie n'est pas
présent ")
End If
con.Close()
Catch ex As Exception
MsgBox(ex.Message.ToString)
End Try
End Sub
End Class
|