private void lvMedicamentsAutorisees_Click(object sender, EventArgs e) { int idxEtape = 0; tbDernierLibelle.Text = ""; tbDerniereNorme.Text = ""; tbNumDerniereEtape.Text = ""; lblAMM.Visible = false; tbAMM.Visible = false; int derniereetape = 0; int resultat = 0; int numligne = lvMedicamentsAutorisees.SelectedIndices[0]; string depotlegal = lvMedicamentsAutorisees.Items[numligne].Text; int nouvelleEtape = 0; Medicament unMedicament = Globale.lesMedicaments[depotlegal]; if (Globale.lesMedicaments[depotlegal].getlesEtapes().Count == 0) { nouvelleEtape = 1; } else { idxEtape = unMedicament.getlesEtapes().Count - 1; derniereetape = unMedicament.getlesEtapes().Count; if (derniereetape == 8) { MessageBox.Show("toutes les étapes de validation ont déjà été réalisées pour ce Médicament."); } else { resultat = Globale.lesMedicaments[depotlegal]. getlesEtapes().ElementAt(idxEtape).getIdDecision(); if (resultat == 2) { MessageBox.Show("Dernière étape non validée, il n'est plus possible de saisir d'étapes pour ce médicament"); } else { nouvelleEtape = derniereetape + 1; } } } if (nouvelleEtape != 1) { //dernière Etape Validée tbNumDerniereEtape.Text = Convert.ToString(derniereetape); tbDernierLibelle.Text = Globale.lesEtapes.ElementAt(derniereetape - 1).getLibelle(); DateTime dateDerniere = unMedicament.getlesEtapes().ElementAt(idxEtape).getDateDecision(); dtpDate.Value = dateDerniere; Etape unetape = Globale.lesEtapes.ElementAt(idxEtape); if (unetape.GetType().ToString() == "gesAMM.EtapeNormee") //debug projet //si l'étape est normée { DateTime dateDerniereNorme = (unetape as EtapeNormee).getDateEtapeNormee(); tbDerniereNorme.Text = (unetape as EtapeNormee).getEtapeNormee(); dtpDerniereDateNorme.Value = dateDerniereNorme; } } if (nouvelleEtape != 0) { //-- Nouvelle étape tbNumEtape.Text = Convert.ToString(nouvelleEtape); tbLibelle.Text = Globale.lesEtapes.ElementAt(nouvelleEtape - 1).getLibelle(); Etape uneNouvelleetape = Globale.lesEtapes.ElementAt(nouvelleEtape - 1); if (uneNouvelleetape.GetType().ToString() == "gesAMM.EtapeNormee") //debug projet //si l'étape est normée { DateTime dateDerniereNorme = (uneNouvelleetape as EtapeNormee).getDateEtapeNormee(); tbNorme.Text = (uneNouvelleetape as EtapeNormee).getEtapeNormee(); dtpNorme.Value = dateDerniereNorme; } } }