4,816
社区成员




MySqlConnection conn;
MySqlDataAdapter da;
MySqlDataAdapter da1;
private void CrsForm_Load(object sender, EventArgs e)
{
DataSet ds = new DataSet();
DataSet ds2 = new DataSet();
DataSet ds3 = new DataSet();
conn = new MySqlConnection(PubConstant.ConnectionString);
//显示报表内容
try
{
int MemberIdtmp = Program.Num_id;
//int MemberIdtmp = 149;
member member = new member();
memscore memscore = new memscore();
member.GetModel(MemberIdtmp);
ds.Tables.Add("MyReportDataTable");
ds.Tables[0].Columns.Add("MemberId",Type.GetType("System.String"));
ds.Tables[0].Columns.Add("MemberName",Type.GetType("System.String"));
ds.Tables[0].Columns.Add("ScoreZero", Type.GetType("System.String"));
ds.Tables[0].Columns.Add("ScoreOne", Type.GetType("System.String"));
ds.Tables[0].Columns.Add("Poto", Type.GetType("System.Byte[]"));
ds.Tables[0].Columns.Add("ScoreSum", Type.GetType("System.String"));
DataSet dstmp = new DataSet();
DataRow row = ds.Tables["MyReportDataTable"].NewRow();
row[0] = MemberIdtmp.ToString();
row[1] = member.MemberName.ToString();
dstmp = memscore.GetList("MemberId = " + MemberIdtmp + " and Type = '0'");
if (dstmp.Tables[0].Rows.Count > 1)
{
MessageBox.Show("成绩记录错误,请联系工作人员!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning);
return;
}
else if (dstmp.Tables[0].Rows.Count == 1)
{
row[2] = Convert.ToString(Convert.ToInt32(dstmp.Tables[0].Rows[0]["Score"]));
}
else
{
row[2] ="0";
}
dstmp = memscore.GetList("MemberId = " + MemberIdtmp + " and Type = '1'");
if (dstmp.Tables[0].Rows.Count > 1)
{
MessageBox.Show("成绩记录错误,请联系工作人员!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
else if (dstmp.Tables[0].Rows.Count == 1)
{
if (Convert.ToInt32(dstmp.Tables[0].Rows[0]["Score"]) == 0)
{
row[3] = "不合格";
}
else if (Convert.ToInt32(dstmp.Tables[0].Rows[0]["Score"]) == 1)
{
row[3] = "合格";
}else
{
MessageBox.Show("成绩记录错误,请联系工作人员!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
}
else
{
row[3] = "不合格";
}
row[4] = Convert.FromBase64String(member.Poto.ToString());
if (row[3].ToString() == "不合格")
{
row[5] = Convert.ToString(Convert.ToInt32(row[2]) * 0.6);
}
else if (row[3].ToString() == "合格")
{
row[5] = Convert.ToString((Convert.ToInt32(row[2]) * 0.6) + 40);
}
else
{
MessageBox.Show("成绩记录错误,请联系工作人员!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
int MemberId = Program.Num_id;
ds.Tables["MyReportDataTable"].Rows.Add(row);
da = new MySqlDataAdapter("select * from assessmentinfo where MemberId=" + MemberId + "", conn);
da.Fill(ds2, "DataScoreInfo");
da1 = new MySqlDataAdapter("select memque.Answer as memAnswer,Question,question.Answer as queAnswer,(case when question.Answer='A' then OptionA when question.Answer='B' then OptionB when question.Answer='C' then OptionC when question.Answer='D' then OptionD end) as questionAnswer from memque,question where memque.QuestionId=question.QuestionId and memque.Answer!=question.Answer and memberId=" + MemberId + "", conn);
da1.Fill(ds3, "QueTable");
crystalReport21.Load(Application.StartupPath + "CrystalReport2.rpt");
crystalReport21.SetDataSource(ds);
//crystalReport21.Subreports[0].SetDataSource(ds2);//将记录集传给子报表
crystalReport21.Subreports["CrystalReport3.rpt"].SetDataSource(ds2);
crystalReportViewer1.ReportSource = crystalReport21;
crystalReport21.Subreports["CrystalReport1.rpt"].SetDataSource(ds3);
//crystalReport21.Subreports[1].SetDataSource(ds3);//将记录集传给子报表
crystalReportViewer1.ReportSource = crystalReport21;
crystalReportViewer1.ShowPrintButton = false;
crystalReport21.PrintOptions.PrinterName = printDocument1.PrinterSettings.PrinterName;
crystalReport21.PrintToPrinter(1, true, 1, 999);//打印
}
catch
{
return;
}
}