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
|
public partial class frmGestionErreurs : Form
{
// champs
string maRequeteSQL = "";
string monChamp = "";
private List<ClassePersonne> ListeContact;
private ClasseODBC odbc = new ClasseODBC();
private ClassePersonne Personne = new ClassePersonne();
// constructeur
public frmGestionErreurs()
{
InitializeComponent();
// création d'une liste de personnes
ListeContact = new List<ClassePersonne>();
}
// charge la lst
private void Chargement(ListBox listeConcernee)
{
listeConcernee.Items.Clear();
if (odbc.OuvrirConnexion())
{
DataTable maTable = odbc.laTableRenvoyee(maRequeteSQL);
// recherche des données
foreach (DataRow row in maTable.Rows)
{
listeConcernee.Items.Add(row[0].ToString());
}
// fermeture de la connexion
if (!odbc.FermerConnexion())
{
MessageBox.Show("Impossible de se déconnecter de la base de données.", "Erreur de fermeture de la connexion", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
else
{
MessageBox.Show("Impossible de se connecter à la base de données.", "Erreur de connexion", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
// Gestion des listes
private void lstErreur_SelectedIndexChanged(object sender, EventArgs e)
{
// on nettoye la liste
lstPersonne.Items.Clear();
maRequeteSQL = "SELECT * FROM t_info WHERE " + monChamp + " LIKE '%" + lstErreur.SelectedItem.ToString() + "%'";
if (odbc.OuvrirConnexion())
{
DataTable maTable = odbc.laTableRenvoyee(maRequeteSQL);
/* on crée une classe Personne qui va récupérer les infos
* pour ensuite ajouter cette classe dans notre liste de classe
*/
// recherche des données
foreach (DataRow row in maTable.Rows)
{
Personne.NOM = row["nom"].ToString();
Personne.ADRESSE = row["adresse"].ToString();
Personne.SEXE = row["sexe"].ToString();
Personne.CARTEIDENTITE = row["carte_identite"].ToString();
Personne.CODEPOSTAL = Int32.Parse(row["cp"].ToString());
Personne.CONJOINT = row["conjoint"].ToString();
Personne.ETATCIVIL = row["civil"].ToString();
Personne.LIEUNAISSANCE = row["lieu_naiss"].ToString();
Personne.LOCALITE = row["localite"].ToString();
Personne.NATIONALITE = row["nationalite"].ToString();
Personne.PARENTTUTEUR = row["parent_tuteur"].ToString();
Personne.PROFESSION = row["profession"].ToString();
// TODO gérer le prénom d'une personne
//Personne.PRENOM = row[""].ToString();
// TODO modifier la condition if car la date de naissance peut aussi être 01-01-0...
//if (row["naiss"].ToString() == "00-00-0000")
//{
// TODO choisir une action pour la date de naissance.
Personne.DATENAISSANCE = DateTime.Now;
//}
//else
//{
// Personne.DATENAISSANCE = Convert.ToDateTime(row["naiss"].ToString());
//}
try
{
Personne.DATENAISSANCE = Convert.ToDateTime(row["naiss"].ToString());
}
catch
{
Personne.DATENAISSANCE = DateTime.Now;
}
// Ajouter la personne à la liste
ListeContact.Add(Personne);
// ajouter la personne à la liste
lstPersonne.Items.Add(Convert.ToString(Personne.NOM + " " + Personne.PRENOM).Trim());
}
// fermeture de la connexion
if (!odbc.FermerConnexion())
{
MessageBox.Show("Impossible de se déconnecter de la base de données.", "Erreur de fermeture de la connexion", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
else
{
MessageBox.Show("Impossible de se connecter à la base de données.", "Erreur de connexion", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void lstPersonne_SelectedIndexChanged(object sender, EventArgs e)
{
ucInfoPersonne.AfficherPersonne( ListeContact.Find(delegate(ClassePersonne p){Convert.ToString(p.NOM + " " + p.PRENOM).Trim() == lstPersonne.SelectedItem.ToString();}) );
}
} |
Partager