IT人
相关图书

制作报表的问题

所属分类:.NET技术 图表区
-----------------------------------------

我的数据库里有一些表,分别包含了一个人的信息,比如说姓名、性别、籍贯、入党时间、工作时间、政治面貌、等等。我现在想把这些信息以word表格的形式打印出来(不是所有的信息在一行上的那种格式),就像我们制作简历的那种表格。一张纸上就一个人的信息。不知道怎么做,水晶报表能做吗?还是有什么好的报表控件。请高手赐教!谢谢!!!

----------------------------------------------------------------------

水晶报表直接就可以做了,以学生分组,再分页

--------------------------------------------------------

2005自带的reportviewer

--------------------------------------------------------

自己直接把它导到Word里,我以前搞这导到Excel中,用模板方式更爽

--------------------------------------------------------


报表打印控件wsReport4.6 


--------------------------------------------------------

flygoldfish(长江支流),你能说的具体点吗?最好有个代码.

--------------------------------------------------------

用 Grid++Report 可以借决你的问题,可以免费使用。

--------------------------------------------------------

http://blog.csdn.net/gxboy/archive/2007/04/20/1572867.aspx
这篇文章可以解决你的问题

--------------------------------------------------------

可以导出为word的形式的。
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
string strProvider = "Server=(local);DataBase=C1;UID=sa;PWD=sa";
SqlConnection MyConn = new SqlConnection(strProvider);
MyConn.Open();
string strSel = "Select * from exergy_loss";
SqlDataAdapter MyAdapter = new SqlDataAdapter(strSel,MyConn);
DataSet2 ds = new DataSet2();
MyAdapter.Fill(ds,"exergy_loss");
ReportDoc2.SetDataSource(ds);
crv.ReportSource = ReportDoc2;

}
导出代码为:
private void btnExport_Click(object sender, System.EventArgs e)
{
CrystalDecisions.Shared.DiskFileDestinationOptions DiskOpts = new CrystalDecisions.Shared.DiskFileDestinationOptions();
ReportDoc2.ExportOptions.ExportDestinationType = CrystalDecisions.Shared.ExportDestinationType.DiskFile;
switch (ddlFormat.SelectedItem.Text)
{
case "Rich Text (RTF)":
 ReportDoc2.ExportOptions.ExportFormatType =   CrystalDecisions.Shared.ExportFormatType.RichText;//
 DiskOpts.DiskFileName = "d:\\Output.rtf";//
break;
case "Portable Document (PDF)":
 ReportDoc2.ExportOptions.ExportFormatType =   CrystalDecisions.Shared.ExportFormatType.PortableDocFormat;//
 DiskOpts.DiskFileName = "d:\\Output.pdf";//
break;
case "MS Word (DOC)":
 ReportDoc2.ExportOptions.ExportFormatType =   CrystalDecisions.Shared.ExportFormatType.WordForWindows;//
 DiskOpts.DiskFileName = "d:\\Output.doc";//
break;
case "MS Excel (XLS)":
 ReportDoc2.ExportOptions.ExportFormatType =   CrystalDecisions.Shared.ExportFormatType.Excel;//
 DiskOpts.DiskFileName = "d:\\Output.xls";//
break;
default:
break;
}
ReportDoc2.ExportOptions.DestinationOptions = DiskOpts;
 ReportDoc2.Export();
}

--------------------------------------------------------

1、VB.NET示例
'创建ATGridServer WEB服务器端组件对象
Dim ATGrid1 As New ATGridServer

'打开报表模板文件,其中testDBF.et是有WinTable报表设计器制作完成
If Not ATGrid1.OpenDocEx("ETFiles/testDBF.et") Then
    Response.Write("不能装载报表模板")
    Response.End()
End If

'通过行列获得单元格对象
Dim ppCell As New Cell
ppCell = ATGrid1.GetCell(3, 2)
If Not (ppCell Is Nothing) Then
    Response.Write("字体名称:" & ppCell.FontName)
    Response.Write("字体大小:" & ppCell.FontSize)
    Response.Write("是否粗体:" & ppCell.FontBold)
    Response.Write("是否具有下划线:" & ppCell.FontUnderLine)
    Response.Write("是否具有删除线:" & ppCell.FontStrikeOut)
    Response.Write("是否斜体:" & ppCell.FontItalic)
    Response.Write("颜色:" & ppCell.FontColor)
    Response.Write("是否固定单元格:" & ppCell.FontCharSet)
End If

'输出为html页面
ATGrid1.ResponseHtml(false)

'释放ATGridServer WEB服务器端组件对象
ATGrid1.Close()



2、ASP示例
'创建ATGridServer WEB服务器端组件对象
Set ATGrid1 = new ATGridServer

'打开报表模板文件,其中testDBF.et是有WinTable报表设计器制作完成
If Not ATGrid1.OpenDocEx("ETFiles/testDBF.et") Then
    Response.Write "不能装载报表模板"
    Response.End
End If

'通过行列获得单元格对象
Set ppCell = New Cell
ppCell = ATGrid1.GetCell(3, 2)
If Not (ppCell Is Nothing) Then
    Response.Write "字体名称:" & ppCell.FontName
    Response.Write "字体大小:" & ppCell.FontSize
    Response.Write "是否粗体:" & ppCell.FontBold
    Response.Write "是否具有下划线:" & ppCell.FontUnderLine
    Response.Write "是否具有删除线:" & ppCell.FontStrikeOut
    Response.Write "是否斜体:" & ppCell.FontItalic
    Response.Write "颜色:" & ppCell.FontColor
    Response.Write "是否固定单元格:" & ppCell.FontCharSet
End If

'输出为html页面
ATGrid1.ResponseHtml False 

'释放ATGridServer WEB服务器端组件对象
ATGrid1.Close
Set ATGrid1=Nothing



3、C#.NET示例
//创建ATGridServer WEB服务器端组件对象
ATGridServer ATGrid1 = new ATGridServer();

//打开报表模板文件,其中testDBF.et是有WinTable报表设计器制作完成
if(!ATGrid1.OpenDocEx("ETFiles/testDBF.et"))
{
    Response.Write("不能装载报表模板");
    Response.End();
}

//通过行列获得单元格对象
Cell ppCell = new Cell();
ppCell = ATGrid1.GetCell(3, 2);
if(ppCell != null)
{
    Response.Write("字体名称:" + ppCell.FontName);
    Response.Write("字体大小:" + ppCell.FontSize);
    Response.Write("是否粗体:" + ppCell.FontBold);
    Response.Write("是否具有下划线:" + ppCell.FontUnderLine);
    Response.Write("是否具有删除线:" + ppCell.FontStrikeOut);
    Response.Write("是否斜体:" + ppCell.FontItalic);
    Response.Write("颜色:" + ppCell.FontColor);
    Response.Write("是否固定单元格:" + ppCell.FontCharSet);
}

//输出为html页面
ATGrid1.ResponseHtml(false);

//释放ATGridServer WEB服务器端组件对象
ATGrid1.Close();
ATGrid1=null;


4、JSP示例 (特别注意:jsp中属性名和其他语言属性名称不同,需用“Get+属性名”方法取得)
//创建ATGridServer WEB服务器端组件对象
ATGridServer ATGrid1 = new ATGridServer(pageContext);

//打开报表模板文件,其中testDBF.et是有WinTable报表设计器制作完成
if(!ATGrid1.OpenDocEx("ETFiles/testDBF.et"))
{
    out.print("不能装载报表模板");
    out.close();
}

//通过行列获得单元格对象
Cell ppCell = new Cell();
ppCell = ATGrid1.GetCell(3, 2);
if(ppCell != null)
{
    out.print("字体名称:" + ppCell.GetFontName());
    out.print("字体大小:" + ppCell.GetFontSize());
    out.print("是否粗体:" + ppCell.GetFontBold());
    out.print("是否具有下划线:" + ppCell.GetFontUnderLine());
    out.print("是否具有删除线:" + ppCell.GetFontStrikeOut());
    out.print("是否斜体:" + ppCell.GetFontItalic());
    out.print("颜色:" + ppCell.FontColor());
    out.print("是否固定单元格:" + ppCell.GetFontCharSet());
}

//输出为html页面
ATGrid1.ResponseHtml(false);

//释放ATGridServer WEB服务器端组件对象
ATGrid1.Close();
ATGrid1=null;



5、PHP示例
//创建一个ATGridServer控件对象
$ATGrid1 = new ATGridServer();

//打开jianli.eT报表模版文件,OpenDocEx()函数打开虚拟路方式的报表
if( !$ATGrid1->OpenDocEx("ETFiles/combobox.et"))
{
    $ATGrid1=null;
    echo "打开报表文件出现错误!";
    exit();
}

//通过行列获得单元格对象
$ppCell = new Cell();
$ppCell = $ATGrid1->GetCell(3, 2);
if($ppCell != null)
{
    echo "字体名称:".$ppCell->FontName;
    echo "字体大小:".$ppCell->FontSize;
    echo "是否粗体:".$ppCell->FontBold;
    echo "是否具有下划线:".$ppCell->FontUnderLine;
    echo "是否具有删除线:".$ppCell->FontStrikeOut;
    echo "是否斜体:".$ppCell->FontItalic;
    echo "颜色:".$ppCell->FontColor;
    echo "是否固定单元格:".$ppCell->FontCharSet;
}

//输出为html页面
$ATGrid1->ResponseHtml(false);

//释放ATGridServer WEB服务器端组件对象
$ATGrid1->Close();
$ppCell=null;
$ATGrid1=null;


相关问题
    Copyright ◎ 1998 - 2007 编程资料网 All Rights Reserved