Comme nous avons franchi la phase d’analyse du Système d’Information Existant du magasin central de Banro Congo Mining/Bukavu au travers de la modélisation, nous allons maintenant passer à la phase de l’automatisation de ses activités. Pour implémenter notre logiciel, nous allons exploiter l’environnement Microsoft ACCESS 2007.
« Une base de données Access est composée de différents éléments appelés objets.
Ces objets sont les suivants :
Les tables sont des éléments contenant les données à gérer, composées des champs et d’enregistrements » [RIG2000a].
Pour le cas de notre travail, prenons l’exemple de la table produit appelée ‘‘T_ITEM’’.
« Objets permettant d’interroger une base de données.
Composée de champs provenant d’une ou plusieurs tables, éventuellement de champs et de critères, une requête va permettre de réaliser des statistiques, mettre à jour des données, ou bien rassembler des données de plusieurs tables afin que le résultat de la requête puisse être utilisé comme source de données pour un formulaire ou un état » [RIG2000b].
« L’interrogation de la base des données peut être faite sous-forme de requête QBE (Query By Example) ou de requête SQL (Stuctured Query Language) » [JOL1996a]. Dans notre travail, nous nous sommes inspiré de la requête QBE.
« La mise en œuvre de QBE se déroule en plusieurs temps. D’abord, il faut choisir les tables concernées, celles qui comprennent les données dont on recherche certaines valeurs et celles qui comprennent le ou les points d’entrée. Par un choix interactif, leurs structures sont affichées à l’écran. Ensuite, il faut porter dans ces structures des indications qui représentent les opérateurs relationnels qu’il faut utiliser pour obtenir le résultat voulu. » [JOL1996b] Exemple : la requête R-fiche-stock
1.3 Formulaires
« Affichage à l’écran des données en provenance de tables ou requêtes.
Un formulaire permet d’effectuer la saisie, la modification, la suppression… d’un enregistrement » [RIG2000c].
Exemple : Le formulaire nous permettant d’entrer les équipements dans le logiciel et de faire, par le tremplin d’un sous formulaire y associé, la saisie des produits.
1.4 Etats
« Mise en forme des données en provenance d’une table ou d’une requête en vue de leur impression » [RIG2000d].
Exemple : L’état qui permet d’imprimer l’inventaire par équipement.
1.5 Macros
« Ensemble d’actions permettant de réaliser un ensemble de tâches de façon automatique » [RIG2000e].
Exemple : Le bouton ACTUALISER résulte de la macro permettant d’actualiser tous les enregistrements dans un formulaire dans le cadre de notre logiciel.
1.6 Modules
« Ensemble de procédures (programmes) ‘‘Visual Basic’’» [RIG2000f].
A titre illustratif, présentons un module pour la manipulation des données liées au formulaire
EQUIPEMENT.
Private Sub CreerEq_Click()
Dim db As Database, rs As Recordset
Set db = CurrentDb()
Set rs = db.OpenRecordset("T_EQUIPEMENT", dbOpenDynaset)
rs.FindFirst "Shelf = ’" & Me!FShelf & "’"
If Not rs.NoMatch Then
MsgBox "Cet équipement existe deja"
Me!FShelf = rs!Shelf
Me!FName_Equipement = rs!Name_Equipement
Me!FObservation = rs!Observation
Else
rs.AddNew rs!Shelf = Me!FShelf
rs!Name_Equipement = Me!FName_Equipement rs!Observation = Me!FObservation
MsgBox " données enregistrées" rs.Update
Me!FShelf = ""
Me!FName_Equipement = ""
Me!FObservation = ""
End If
End Sub
Private Sub FShelf_AfterUpdate()
Dim db As Database, rs As Recordset
Set db = CurrentDb()
Set rs = db.OpenRecordset("T_EQUIPEMENT", dbOpenDynaset) rs.FindFirst "Shelf = ’" & Me!FShelf & "’" If Not rs.NoMatch Then
MsgBox "Cet equipement existe deja"
Me!FShelf = rs!Shelf
Me!FName_Equipement = rs!Name_Equipement
Me!FObservation = rs!Observation
Else
MsgBox "Cet equipement n’existe pas encore"
Me!FName_Equipement = ""
Me!FObservation = "" End If rs.Close
End Sub
Private Sub FShelf_BeforeUpdate(Cancel As Integer)
Dim db As Database, rs As Recordset
Set db = CurrentDb()
Set rs = db.OpenRecordset("T_EQUIPEMENT", dbOpenDynaset) rs.FindFirst "Shelf = ’" & Me!FShelf & "’"
If Not rs.NoMatch Then
Me!FName_Equipement = rs!Name_Equipement
Me!FObservation = rs!Observation
MsgBox "Equipement retrouvé"
End If rs.Close
End Sub
Private Sub ModifierEq_Click()
Dim db As Database, rs As Recordset
Set db = CurrentDb()
Set rs = db.OpenRecordset("T_EQUIPEMENT", dbOpenDynaset)
rs.FindFirst "Shelf = ’" & Me!FShelf & "’" If Not rs.NoMatch Then
rs.Edit
rs!Name_Equipement = Me!FName_Equipement rs!Observation = Me!FObservation MsgBox " données modifiées " rs.Update
End If
Me!FShelf = ""
Me!FName_Equipement = ""
Me!FObservation = ""
End Sub
Private Sub SupprimerEq_Click()
Dim db As Database, rs As Recordset
Set db = CurrentDb()
Set rs = db.OpenRecordset("T_EQUIPEMENT", dbOpenDynaset)
rs.FindFirst "Shelf = ’" & Me!FShelf & "’"
If Not rs.NoMatch Then
NoMsg = MsgBox(" Etes vous sûr(e)?", vbYesNoCancel, "Suppression") If NoMsg = vbYes Then
rs.Delete
MsgBox "suppression effectuée"
End If
Me!FShelf = ""
Me!FName_Equipement = ""
Me!FObservation = ""
rs.Close End If
End Sub
Etant donné que l’utilisateur du logiciel ne maîtrise pas forcément l’environnement du SGBD, il est impérieux d’avoir des menus lui facilitant l’accès aux données et leur manipulation.
Le menu général présente à l’utilisateur le principe de fonctionnement du logiciel.
Le menu EQUIPEMENT permet à l’utilisateur d’enregistrer, de modifier, de supprimer ou d’actualiser un équipement contenant un ensemble de produits de même nature.
Le menu FICHE DE STOCK offre à l’utilisateur d’établir une fiche de stock et de manipuler les données y relatives.
Le menu IMPRESSION permettra à l’utilisateur d’imprimer la fiche de stock ainsi que les inventaires.