关于水晶报表的问题,在线等,急!

feiji358712414 2015-01-07 12:41:45
问题描述:

例如:

某个公司整理公司所有员工的简历!

那么肯定是每个人的简历是单独的一份,但是每个人的简历中的项目介绍都不相同,有的可能有10个项目经验,有的可能有20个甚至更多。

那么我需要的显示大概就是:

简历报表


姓名:XXX 员工编号:#XXXXX

入职日期:20140102 性别:男
------------------------------------------------------------------------
项目经验:

名称 项目简介 日期
project1 desc1 2015-01-01
project1 desc1 2015-01-01
project1 desc1 2015-01-01
project1 desc1 2015-01-01
。。。
项目较多的时候分页显示,不需要显示分割线以上内容,只需要继续显示项目经验。。。的部分

当循环到另外一个员工的时候,另起一页,并重复显示以上格式!


求大神大概说一下解决思路,顺便说一下我的开发环境VS2010

...全文
689 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
eee_gaohao 2015-04-01
  • 打赏
  • 举报
回复
对水晶报表中的数据进行分组 private void Frm_Main_Load(object sender, EventArgs e) { crystalReportViewer1.ReportSource = new MyCrystalReport();//将报表绑定到CrystalReportViewer控件 }
xxxuan 2015-02-04
  • 打赏
  • 举报
回复
分组就可以了,在分组后自动分页OK,拿分来
kjs_2234693186 2015-01-09
  • 打赏
  • 举报
回复
使用报表分析人力资源情况 private void CreateImage() { //连数据库 SqlConnection Con = new SqlConnection(ConfigurationManager.AppSettings["ConSql"]); Con.Open(); string str1 = "select * from tb_manpower"; SqlCommand Com = new SqlCommand(str1, Con); DataSet ds = new DataSet(); SqlDataAdapter Da = new SqlDataAdapter(Com); Da.Fill(ds); Con.Close(); //计算员工总和 string str2 = "SELECT SUM(Employee+SellMan+Director+Manager) AS Number FROM tb_manpower"; SqlDataAdapter Da2 = new SqlDataAdapter(str2, Con); DataSet ds2 = new DataSet(); Da2.Fill(ds2); int Sum = Convert.ToInt32(ds2.Tables[0].Rows[0][0].ToString()); //获取普通员工数目 int employee = Convert.ToInt32(ds.Tables[0].Rows[0][1].ToString()); //获取销售员工数目 int sellman = Convert.ToInt32(ds.Tables[0].Rows[0][2].ToString()); //获取主任数目 int director = Convert.ToInt32(ds.Tables[0].Rows[0][3].ToString()); //获取经理数目 int manager = Convert.ToInt32(ds.Tables[0].Rows[0][4].ToString()); //创建画图对象 int width = 400, height = 450; Bitmap bitmap = new Bitmap(width, height); Graphics g = Graphics.FromImage(bitmap); try { //清空背景色 g.Clear(Color.White); Pen pen1 = new Pen(Color.Red); Brush brush1 = new SolidBrush(Color.YellowGreen); Brush brush2 = new SolidBrush(Color.Blue); Brush brush3 = new SolidBrush(Color.Brown); Font font1 = new Font("Courier New", 16, FontStyle.Bold); Font font2 = new Font("Courier New", 8); g.FillRectangle(brush1, 0, 0, width, height); //绘制背景图 g.DrawString("公司人力资源饼形图", font1, brush2, new Point(80, 20)); //书写标题 //普通员工在饼形图中分配的角度 float angle1 = Convert.ToSingle((360 / Convert.ToSingle(Sum)) * Convert.ToSingle(employee)); //销售员工在饼形图中分配的角度 float angle2 = Convert.ToSingle((360 / Convert.ToSingle(Sum)) * Convert.ToSingle(sellman)); //主任在饼形图中分配的角度 float angle3 = Convert.ToSingle((360 / Convert.ToSingle(Sum)) * Convert.ToSingle(director)); //经理在饼形图中分配的角度 float angle4 = Convert.ToSingle((360 / Convert.ToSingle(Sum)) * Convert.ToSingle(manager)); g.FillPie(Brushes.Beige, 50, 100, 100, 100, 0, 360); g.FillPie(brush2,50 , 100,100 ,100 , 0, angle1); //绘制普通员工所占比例 g.FillRectangle(brush2, 50, 220, 20, 10); //绘制小矩形 g.DrawString("普通员工" + Convert.ToSingle(employee) * 100 / Convert.ToSingle(Sum) + "%", font2, brush2, 80, 220); g.FillPie(Brushes.Beige, 200, 100, 100, 100, 0, 360); g.FillPie(brush3, 200, 100, 100, 100, 0, angle2); //绘制销售员工所占比例 g.FillRectangle(brush3, 200, 220, 20, 10); //绘制小矩形 g.DrawString("销售员工" + Convert.ToSingle(sellman) * 100 / Convert.ToSingle(Sum) + "%", font2, brush3, 230, 220); g.FillPie(Brushes.Beige, 50, 260, 100, 100, 0, 360); g.FillPie(Brushes.BlueViolet, 50, 260, 100, 100, 0, angle3); //绘制普通员工所占比例 g.FillRectangle(Brushes.BlueViolet, 50, 380, 20, 10); //绘制小矩形 g.DrawString("主任" + Convert.ToSingle(director) * 100 / Convert.ToSingle(Sum) + "%", font2, Brushes.BlueViolet, 80, 380); g.FillPie(Brushes.Beige, 200, 260, 100, 100, 0, 360); g.FillPie(Brushes.Black, 200, 260, 100, 100, 0, angle4); //绘制销售员工所占比例 g.FillRectangle(Brushes.Black, 200, 380, 20, 10); //绘制小矩形 g.DrawString("经理" + Convert.ToSingle(manager) * 100 / Convert.ToSingle(Sum) + "%", font2, Brushes.Black, 230, 380); } catch (Exception md) { Response.Write(md.Message); } System.IO.MemoryStream ms = new System.IO.MemoryStream(); bitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Gif); Response.ClearContent(); Response.ContentType = "image/Gif"; Response.BinaryWrite(ms.ToArray()); }

4,820

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 图表区
社区管理员
  • 图表区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧