public void loadAgeProfile(List <Customer> AllStudents) { AgeProfileReport rpt = new AgeProfileReport(); AgeProfile ds = new AgeProfile(); List <String> Levels = new List <string>(); foreach (Customer c in AllStudents) { if (!Levels.Exists(delegate(String s) { return(s.Equals(c.Level)); })) { Levels.Add(c.Level); int age = DateTime.Now.Year - Convert.ToDateTime(c.Birthday).Year; //DataRow cRow = ds.Level.NewRow(); if (getCount(AllStudents, c.Level, "Male") != 0 || getCount(AllStudents, c.Level, "Male").ToString() != "") { if (getCount(AllStudents, c.Level, "Female") != 0 || getCount(AllStudents, c.Level, "Female").ToString() != "") { if (c.Level.Equals("Grade 1") || c.Level.Equals("Grade 2") || c.Level.Equals("Grade 3") || c.Level.Equals("Grade 4") || c.Level.Equals("Grade 5") || c.Level.Equals("Grade 6")) { if (age >= 16 && age <= 18) { ds.Level[0][18 + c.Level + "M"] = getCount(AllStudents, c.Level, "Male"); ds.Level[0][18 + c.Level + "F"] = getCount(AllStudents, c.Level, "Female"); } else if (age >= 19) { ds.Level[0][19 + c.Level + "M"] = getCount(AllStudents, c.Level, "Male"); ds.Level[0][19 + c.Level + "F"] = getCount(AllStudents, c.Level, "Female"); //DataRow cRow2 = ds.Level.NewRow(); //cRow2[19 + c.Level + "M"] = getCount(AllStudents, c.Level, "Male"); //cRow2[19 + c.Level + "F"] = getCount(AllStudents, c.Level, "Female"); //ds.Level.Rows.Add(cRow2); } else { DataRow cRow3 = ds.Level.NewRow(); cRow3[age + c.Level + "M"] = getCount(AllStudents, c.Level, "Male"); cRow3[age + c.Level + "F"] = getCount(AllStudents, c.Level, "Female"); ds.Level.Rows.Add(cRow3); ds.Level[0][age + c.Level + "M"] = getCount(AllStudents, c.Level, "Male"); ds.Level[0][age + c.Level + "F"] = getCount(AllStudents, c.Level, "Female"); } } } } } } //DataView myView = new DataView(ds.Level); //dataGridView1.DataSource = myView; rpt.SetDataSource(ds); crystalReportViewer1.ReportSource = rpt; crystalReportViewer1.Refresh(); }
public void loadAgeProfile(List<Customer> AllStudents) { AgeProfileReport rpt = new AgeProfileReport(); AgeProfile ds = new AgeProfile(); List<String> Levels = new List<string>(); foreach (Customer c in AllStudents) { if (!Levels.Exists(delegate(String s) { return s.Equals(c.Level); })) { Levels.Add(c.Level); int age = DateTime.Now.Year - Convert.ToDateTime(c.Birthday).Year; //DataRow cRow = ds.Level.NewRow(); if (getCount(AllStudents, c.Level, "Male") != 0 || getCount(AllStudents, c.Level, "Male").ToString() != "") { if (getCount(AllStudents, c.Level, "Female") != 0 || getCount(AllStudents, c.Level, "Female").ToString() != "") { if (c.Level.Equals("Grade 1") || c.Level.Equals("Grade 2") || c.Level.Equals("Grade 3") || c.Level.Equals("Grade 4") || c.Level.Equals("Grade 5") || c.Level.Equals("Grade 6")) { if (age >= 16 && age <= 18) { ds.Level[0][18 + c.Level + "M"] = getCount(AllStudents, c.Level, "Male"); ds.Level[0][18 + c.Level + "F"] = getCount(AllStudents, c.Level, "Female"); } else if (age >= 19) { ds.Level[0][19 + c.Level + "M"] = getCount(AllStudents, c.Level, "Male"); ds.Level[0][19 + c.Level + "F"] = getCount(AllStudents, c.Level, "Female"); //DataRow cRow2 = ds.Level.NewRow(); //cRow2[19 + c.Level + "M"] = getCount(AllStudents, c.Level, "Male"); //cRow2[19 + c.Level + "F"] = getCount(AllStudents, c.Level, "Female"); //ds.Level.Rows.Add(cRow2); } else { DataRow cRow3 = ds.Level.NewRow(); cRow3[age + c.Level + "M"] = getCount(AllStudents, c.Level, "Male"); cRow3[age + c.Level + "F"] = getCount(AllStudents, c.Level, "Female"); ds.Level.Rows.Add(cRow3); ds.Level[0][age + c.Level + "M"] = getCount(AllStudents, c.Level, "Male"); ds.Level[0][age + c.Level + "F"] = getCount(AllStudents, c.Level, "Female"); } } } } } } //DataView myView = new DataView(ds.Level); //dataGridView1.DataSource = myView; rpt.SetDataSource(ds); crystalReportViewer1.ReportSource = rpt; crystalReportViewer1.Refresh(); }