private void cmdValider_Click(object sender, RoutedEventArgs e) { //on vérifit si tous les champs ont été corectement rempli if ((cmbClasse.Text != null && txtAnneeScolaire.Text != null && cmbSequence.Text != null) && (cmbClasse.Text != "" && txtAnneeScolaire.Text != "" && cmbSequence.Text != "")) { //si on a choisi <Toutes les classes> if (cmbClasse.Text.Equals("<Toutes Les Classes>")) { if (cmbSequence.Text.Equals("<Toutes Les Séquences>")) { //--------------------------- Action pour toutes les classes et toutes les séquences //on liste toutes les classes List <ClasseBE> LClasse = genererBulletinsSequentielBL.listerToutesLesClasses(); List <SequenceBE> LSequence = genererBulletinsSequentielBL.listerToutesLesSequences(); //Configure the ProgressBar ProgressBar1.Minimum = 0; ProgressBar1.Maximum = LClasse.Count; ProgressBar1.Value = 0; //Stores the value of the ProgressBar double value = 0; //Create a new instance of our ProgressBar Delegate that points // to the ProgressBar's SetValue method. UpdateProgressBarDelegate updatePbDelegate = new UpdateProgressBarDelegate(ProgressBar1.SetValue); //on affiche la barre de progression ProgressBar1.Visibility = System.Windows.Visibility.Visible; for (int i = 0; i < LClasse.Count; i++) { //on liste les élèves de la classe List <EleveBE> LEleve = genererBulletinsSequentielBL.listeEleves(LClasse.ElementAt(i), Convert.ToInt16(txtAnnee.Text)); for (int j = 0; j < LEleve.Count; j++) { for (int k = 0; k < LSequence.Count; k++) { // ***********calcul des moyennes //remplissage de la table "moyennes" genererBulletinsSequentielBL.genererBulletinSequentielDunEleve(LEleve.ElementAt(j).matricule, Convert.ToInt16(txtAnnee.Text), LClasse.ElementAt(i).codeClasse, LSequence.ElementAt(k).codeseq, LEleve.ElementAt(j).photo); value += 1; Dispatcher.Invoke(updatePbDelegate, System.Windows.Threading.DispatcherPriority.Background, new object[] { ProgressBar.ValueProperty, value }); } } } MessageBox.Show("Opération Terminée !! "); //on cache la barre de progression ProgressBar1.Visibility = System.Windows.Visibility.Hidden; } else { //--------------------------- Action pour toutes les classes et un trimestre particulier //on liste toutes les classes List <ClasseBE> LClasse = genererBulletinsSequentielBL.listerToutesLesClasses(); //Configure the ProgressBar ProgressBar1.Minimum = 0; ProgressBar1.Maximum = LClasse.Count; ProgressBar1.Value = 0; //Stores the value of the ProgressBar double value = 0; //Create a new instance of our ProgressBar Delegate that points // to the ProgressBar's SetValue method. UpdateProgressBarDelegate updatePbDelegate = new UpdateProgressBarDelegate(ProgressBar1.SetValue); //on affiche la barre de progression ProgressBar1.Visibility = System.Windows.Visibility.Visible; for (int i = 0; i < LClasse.Count; i++) { //on liste les élèves de la classe List <EleveBE> LEleve = genererBulletinsSequentielBL.listeEleves(LClasse.ElementAt(i), Convert.ToInt16(txtAnnee.Text)); for (int j = 0; j < LEleve.Count; j++) { // ***********calcul des moyennes //remplissage de la table "moyennes" genererBulletinsSequentielBL.genererBulletinSequentielDunEleve(LEleve.ElementAt(j).matricule, Convert.ToInt16(txtAnnee.Text), LClasse.ElementAt(i).codeClasse, cmbSequence.Text, LEleve.ElementAt(j).photo); value += 1; Dispatcher.Invoke(updatePbDelegate, System.Windows.Threading.DispatcherPriority.Background, new object[] { ProgressBar.ValueProperty, value }); } } MessageBox.Show("Opération Terminée !! "); //on cache la barre de progression ProgressBar1.Visibility = System.Windows.Visibility.Hidden; } } else { if (cmbSequence.Text.Equals("<Toutes Les Séquences>")) { //--------------------- Action pour une classe particulière et toutes les Séquences List <SequenceBE> LSequence = genererBulletinsSequentielBL.listerToutesLesSequences(); //Configure the ProgressBar ProgressBar1.Minimum = 0; ProgressBar1.Maximum = LSequence.Count; ProgressBar1.Value = 0; //Stores the value of the ProgressBar double value = 0; //Create a new instance of our ProgressBar Delegate that points // to the ProgressBar's SetValue method. UpdateProgressBarDelegate updatePbDelegate = new UpdateProgressBarDelegate(ProgressBar1.SetValue); //on affiche la barre de progression ProgressBar1.Visibility = System.Windows.Visibility.Visible; ClasseBE classe = new ClasseBE(); classe.codeClasse = cmbClasse.Text; classe = genererBulletinsSequentielBL.rechercherClasse(classe); //on liste les élèves de la classe List <EleveBE> LEleve = genererBulletinsSequentielBL.listeEleves(classe, Convert.ToInt16(txtAnnee.Text)); for (int j = 0; j < LEleve.Count; j++) { for (int k = 0; k < LSequence.Count; k++) { // ***********calcul des moyennes //remplissage de la table "moyennes" genererBulletinsSequentielBL.genererBulletinSequentielDunEleve(LEleve.ElementAt(j).matricule, Convert.ToInt16(txtAnnee.Text), classe.codeClasse, LSequence.ElementAt(k).codeseq, LEleve.ElementAt(j).photo); value += 1; Dispatcher.Invoke(updatePbDelegate, System.Windows.Threading.DispatcherPriority.Background, new object[] { ProgressBar.ValueProperty, value }); } } MessageBox.Show("Opération Terminée !! "); //on cache la barre de progression ProgressBar1.Visibility = System.Windows.Visibility.Hidden; } else { //--------------------- Action pour une classe particulière et un trimestre particulier //Configure the ProgressBar ProgressBar1.Minimum = 0; ProgressBar1.Maximum = 1; ProgressBar1.Value = 0; //Stores the value of the ProgressBar double value = 0; //Create a new instance of our ProgressBar Delegate that points // to the ProgressBar's SetValue method. UpdateProgressBarDelegate updatePbDelegate = new UpdateProgressBarDelegate(ProgressBar1.SetValue); //on affiche la barre de progression ProgressBar1.Visibility = System.Windows.Visibility.Visible; // ***********calcul des moyennes //remplissage de la table "moyennes" ClasseBE classe = new ClasseBE(); classe.codeClasse = cmbClasse.Text; classe = genererBulletinsSequentielBL.rechercherClasse(classe); //on liste les élèves de la classe List <EleveBE> LEleve = genererBulletinsSequentielBL.listeEleves(classe, Convert.ToInt16(txtAnnee.Text)); for (int j = 0; j < LEleve.Count; j++) { // ***********calcul des moyennes //remplissage de la table "moyennes" genererBulletinsSequentielBL.genererBulletinSequentielDunEleve(LEleve.ElementAt(j).matricule, Convert.ToInt16(txtAnnee.Text), cmbClasse.Text, cmbSequence.Text, LEleve.ElementAt(j).photo); value += 1; Dispatcher.Invoke(updatePbDelegate, System.Windows.Threading.DispatcherPriority.Background, new object[] { ProgressBar.ValueProperty, value }); } //calcul des résultats //remplissage de la table "resultats" //genererResultatsTrimestrielsBL.calculerResultatsTrimestriels(cmbClasse.Text, cmbTrimestre.Text, Convert.ToInt16(txtAnnee.Text)); MessageBox.Show("Opération Terminée !! "); //on cache la barre de progression ProgressBar1.Visibility = System.Windows.Visibility.Hidden; } } } else { MessageBox.Show("Tous les champs doivent êtres remplis !! "); } }
//-------------------Imprimer les relevés des élèves sélectionnés------------------- public void imprimerBulletinSequentiel(int annee, string classe, string sequence) { Document doc = new Document(iTextSharp.text.PageSize.A4, 5, 5, 5, 25); CreerEtat etat = new CreerEtat(); etat.docname = ConnexionUI.DOSSIER_BULLETINS + annee + "-" + classe + "-" + sequence + ".pdf"; etat.title = "BULLETIN DE NOTES DE LA SEQUENCE " + sequence; PdfWriter writer = PdfWriter.GetInstance(doc, new System.IO.FileStream(etat.docname, System.IO.FileMode.Create)); Ecole.DataAccess.ParametresDA parametreDA = new Ecole.DataAccess.ParametresDA(); ParametresBE parametre = parametreDA.rechercherDerniereValeur(); writer.PageEvent = new PDFFooter1(parametre.nomEcole); doc.Open(); //on vérifit si tous les champs ont été corectement rempli if ((cmbClasse.Text != null && txtAnnee.Text != null && cmbSequence.Text != null) && (cmbClasse.Text != "" && txtAnnee.Text != "" && cmbSequence.Text != "")) { //si on a choisi <Toutes les classes> if (cmbSequence.Text.Equals("<Toutes Les Séquences>")) { //--------------------- Action pour une classe particulière et toutes les Séquences List <SequenceBE> LSequence = bulletinsSequentielBL.listerToutesLesSequences(); //Configure the ProgressBar ProgressBar1.Minimum = 0; ProgressBar1.Maximum = LSequence.Count; ProgressBar1.Value = 0; //Stores the value of the ProgressBar double value = 0; //Create a new instance of our ProgressBar Delegate that points // to the ProgressBar's SetValue method. UpdateProgressBarDelegate updatePbDelegate = new UpdateProgressBarDelegate(ProgressBar1.SetValue); //on affiche la barre de progression ProgressBar1.Visibility = System.Windows.Visibility.Visible; for (int i = 0; i < listBoxEleve.Items.Count; i++) { for (int k = 0; k < LSequence.Count; k++) { ListBoxItem item = listBoxEleve.ItemContainerGenerator.ContainerFromIndex(i) as ListBoxItem; if (item != null) { CheckBox myCheckBox = FindVisualChild <CheckBox>(item) as CheckBox; if (myCheckBox.IsChecked.Value) { // bulletinsSequentielBL.genererBulletinSequentielDunEleve((listBoxEleve.Items[i] as ElementListeEleve).matricule, annee, classe, sequence); string matricule = (listBoxEleve.Items[i] as ElementListeEleve).matricule; EleveBE eleve = new EleveBE(); eleve.matricule = matricule; eleve = bulletinsSequentielBL.rechercherEleve(eleve); bulletinsSequentielBL.genererBulletinSequentielDunEleve(doc, etat, writer, (listBoxEleve.Items[i] as ElementListeEleve).matricule, Convert.ToInt16(txtAnnee.Text), classe, LSequence.ElementAt(k).codeseq, eleve.photo); value += 1; Dispatcher.Invoke(updatePbDelegate, System.Windows.Threading.DispatcherPriority.Background, new object[] { ProgressBar.ValueProperty, value }); } } } } MessageBox.Show("Opération Terminée !! "); //on cache la barre de progression ProgressBar1.Visibility = System.Windows.Visibility.Hidden; } else { //--------------------- Action pour une classe particulière et un trimestre particulier //Configure the ProgressBar ProgressBar1.Minimum = 0; ProgressBar1.Maximum = 1; ProgressBar1.Value = 0; //Stores the value of the ProgressBar double value = 0; //Create a new instance of our ProgressBar Delegate that points // to the ProgressBar's SetValue method. UpdateProgressBarDelegate updatePbDelegate = new UpdateProgressBarDelegate(ProgressBar1.SetValue); //on affiche la barre de progression ProgressBar1.Visibility = System.Windows.Visibility.Visible; // ***********calcul des moyennes //remplissage de la table "moyennes" //ClasseBE classe = new ClasseBE(); //classe.codeClasse = cmbClasse.Text; //classe = bulletinsSequentielBL.rechercherClasse(classe); //on liste les élèves de la classe for (int i = 0; i < listBoxEleve.Items.Count; i++) { ListBoxItem item = listBoxEleve.ItemContainerGenerator.ContainerFromIndex(i) as ListBoxItem; if (item != null) { CheckBox myCheckBox = FindVisualChild <CheckBox>(item) as CheckBox; if (myCheckBox.IsChecked.Value) { // bulletinsSequentielBL.genererBulletinSequentielDunEleve((listBoxEleve.Items[i] as ElementListeEleve).matricule, annee, classe, sequence); string matricule = (listBoxEleve.Items[i] as ElementListeEleve).matricule; EleveBE eleve = new EleveBE(); eleve.matricule = matricule; eleve = bulletinsSequentielBL.rechercherEleve(eleve); bulletinsSequentielBL.genererBulletinSequentielDunEleve(doc, etat, writer, matricule, Convert.ToInt16(txtAnnee.Text), classe, cmbSequence.Text, eleve.photo); value += 1; Dispatcher.Invoke(updatePbDelegate, System.Windows.Threading.DispatcherPriority.Background, new object[] { ProgressBar.ValueProperty, value }); } } } //calcul des résultats //remplissage de la table "resultats" //genererResultatsTrimestrielsBL.calculerResultatsTrimestriels(cmbClasse.Text, cmbTrimestre.Text, Convert.ToInt16(txtAnnee.Text)); MessageBox.Show("Opération Terminée !! "); //on cache la barre de progression ProgressBar1.Visibility = System.Windows.Visibility.Hidden; } } else { MessageBox.Show("Tous les champs doivent êtres remplis !! "); } try { doc.Close(); } catch (Exception) { } System.Diagnostics.Process.Start(System.IO.Path.GetFullPath(etat.docname)); //etat.SendToPrinter(System.IO.Path.GetFullPath(etat.docname)); }