21 个解决方案
#1
关注
#2
导出到PDF或EXCEL或其它格式的文件打印.示例代码如下:
报表名称 myrpt=new 报表名称();
myrpt.ExportOptions.ExportDestinationType=CrystalDecisions.Shared.ExportDestinationType.DiskFile;
myrpt.ExportOptions.ExportFormatType=CrystalDecisions.Shared.ExportFormatType.PortableDocFormat;
CrystalDecisions.Shared.DiskFileDestinationOptions opt=new CrystalDecisions.Shared.DiskFileDestinationOptions();
opt.DiskFileName=@"文件名";
myrpt.ExportOptions.DestinationOptions =opt;
myrpt.Export();
打印报表:
代码如下:
CrystalDecisions.CrystalReports.Engine.ReportDocument rd=new CrystalDecisions.CrystalReports.Engine.ReportDocument();
rd.Load(Server.MapPath("Crystalreport1.rpt"));
rd.PrintOptions.PrinterName="打印机名称";
rd.PrintToPrinter(1,true,0,0);
其中"打印机名称":如果是网络打印机,在打印机名称前面要加上"\\机器名".本地打印机也可以显示在DropDownList控件里让用户选择:
foreach(string iprt in System.Drawing.Printing.PrinterSettings.InstalledPrinters)
this.DropDownList1.Items.Add(iprt);
报表名称 myrpt=new 报表名称();
myrpt.ExportOptions.ExportDestinationType=CrystalDecisions.Shared.ExportDestinationType.DiskFile;
myrpt.ExportOptions.ExportFormatType=CrystalDecisions.Shared.ExportFormatType.PortableDocFormat;
CrystalDecisions.Shared.DiskFileDestinationOptions opt=new CrystalDecisions.Shared.DiskFileDestinationOptions();
opt.DiskFileName=@"文件名";
myrpt.ExportOptions.DestinationOptions =opt;
myrpt.Export();
打印报表:
代码如下:
CrystalDecisions.CrystalReports.Engine.ReportDocument rd=new CrystalDecisions.CrystalReports.Engine.ReportDocument();
rd.Load(Server.MapPath("Crystalreport1.rpt"));
rd.PrintOptions.PrinterName="打印机名称";
rd.PrintToPrinter(1,true,0,0);
其中"打印机名称":如果是网络打印机,在打印机名称前面要加上"\\机器名".本地打印机也可以显示在DropDownList控件里让用户选择:
foreach(string iprt in System.Drawing.Printing.PrinterSettings.InstalledPrinters)
this.DropDownList1.Items.Add(iprt);
#3
强烈关注
#4
风:你所说的打印是在一个LAN里,但我现的情况不是。
我可以将报表导出,但是导出在服务器端,有没有办法导出在客户端。
我可以将报表导出,但是导出在服务器端,有没有办法导出在客户端。
#5
不懂,客户端有没有安装水晶报表?
#6
据我所知是没办法直接在客户端导出的.但是可以在服务端导出后下载到客户端.
#7
风:我现在用也是这种办法,在服务器端导出,然后下到客户端
不能导出,能不能直接打印呢,我看深圳一家公司做的报表,可在客户端打印,不知他们乍个做的。
不能导出,能不能直接打印呢,我看深圳一家公司做的报表,可在客户端打印,不知他们乍个做的。
#8
风:我现在用的也是这个办法,没有其他方法吗
我看了深圳一家公司做的报表,可在客户端打印,不知他们是乍个做的。
我看了深圳一家公司做的报表,可在客户端打印,不知他们是乍个做的。
#9
1.导出为一个文件,让客户下载到本地打印
2.用IE自带的打印功能打印
2.用IE自带的打印功能打印
#10
双星大侠(jcyer):
没有其他办法了吗
没有其他办法了吗
#11
为什么我用了上面的代码,可以打印出报表,但报表的全部的参数值都不显示出来,是什么原因?如何才能将报表的全部的参数值都显示出来?
请帮忙!
请帮忙!
#12
为什么我用了上面的代码,可以打印出报表,但报表的全部的参数值都不显示出来,是什么原因?如何才能将报表的全部的参数值都显示出来?
请帮忙!
请帮忙!
#13
归纳起来,水晶报表的打印,大致有以下几种方法:
方法一:
浏览器可以在你按打印机图标时(包括选择打印菜单时)在后台从另一个网址打印页面。当用户按打印图标时,它的浏览页面没有任何变化,打印机从后台自动访问这个报表页面并且自动打印它。
方法二:
示例打印页面:
<html>
<head>
</head>
<body>
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0 VIEWASTEXT></OBJECT>
<BUTTON onclick="doPreview()">打印预览</BUTTON>
<BUTTON onclick="doPageSet()">打印</BUTTON>
<script language=javascript>
function doPageSet(){
//Page Set
WB.ExecWB(8,1)
}
function doPreview(){
//Print
WB.ExecWB(7,1)
}
</script>
</body>
</html>
方法三:
用IE的打印.调用window.print(),但这种办法对于页面上即有报表,又有其它控件情况就无法区分,不能达到只打印报表内容的目的;
方法四:
程序中通过输出到打印机(如上面的代码).
方法五:
导出到PDF或EXCEL或其它格式的文件打印.如上面的代码
方法一:
浏览器可以在你按打印机图标时(包括选择打印菜单时)在后台从另一个网址打印页面。当用户按打印图标时,它的浏览页面没有任何变化,打印机从后台自动访问这个报表页面并且自动打印它。
方法二:
示例打印页面:
<html>
<head>
</head>
<body>
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0 VIEWASTEXT></OBJECT>
<BUTTON onclick="doPreview()">打印预览</BUTTON>
<BUTTON onclick="doPageSet()">打印</BUTTON>
<script language=javascript>
function doPageSet(){
//Page Set
WB.ExecWB(8,1)
}
function doPreview(){
WB.ExecWB(7,1)
}
</script>
</body>
</html>
方法三:
用IE的打印.调用window.print(),但这种办法对于页面上即有报表,又有其它控件情况就无法区分,不能达到只打印报表内容的目的;
方法四:
程序中通过输出到打印机(如上面的代码).
方法五:
导出到PDF或EXCEL或其它格式的文件打印.如上面的代码
#14
gz
#15
to:冷风清扬
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0 VIEWASTEXT></OBJECT>
是什么对象组件?
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0 VIEWASTEXT></OBJECT>
是什么对象组件?
#16
gz
#17
to :冷风清扬
请问用上面的方法二的时候要不要写下面的代码?
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0 VIEWASTEXT></OBJECT>
请问用上面的方法二的时候要不要写下面的代码?
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0 VIEWASTEXT></OBJECT>
#18
up
#19
我的水晶报表的变量是用参数赋值的。
参数赋值的代码是:
discreteVal.Value = "ooop"
paramValues.Add(discreteVal)
myReport.DataDefinition.ParameterFields ("Priority").ApplyCurrentValues(paramValues)
打印水晶报表的代码是:
Dim myReport As CrystalDecisions.CrystalReports.Engine.ReportClass = New Report9()
myReport.Load()
myReport.PrintOptions.PrinterName = "\\F\hp LaserJet 1000"
myReport.PrintToPrinter(1, True, 0, 0)
为什么我用了上面的代码,可以打印出报表,但报表的全部的参数值都不显示出来,是什么原因?如何才能将报表的全部的参数值都显示出来?
请帮忙!
参数赋值的代码是:
discreteVal.Value = "ooop"
paramValues.Add(discreteVal)
myReport.DataDefinition.ParameterFields ("Priority").ApplyCurrentValues(paramValues)
打印水晶报表的代码是:
Dim myReport As CrystalDecisions.CrystalReports.Engine.ReportClass = New Report9()
myReport.Load()
myReport.PrintOptions.PrinterName = "\\F\hp LaserJet 1000"
myReport.PrintToPrinter(1, True, 0, 0)
为什么我用了上面的代码,可以打印出报表,但报表的全部的参数值都不显示出来,是什么原因?如何才能将报表的全部的参数值都显示出来?
请帮忙!
#20
gz
#21
看了许多资料,对水晶报表在客户端的打印只有两种方式:
导出在服务器端,然后客户端下载打印,
调用IE的打印
没有其他办法了。
导出在服务器端,然后客户端下载打印,
调用IE的打印
没有其他办法了。
#1
关注
#2
导出到PDF或EXCEL或其它格式的文件打印.示例代码如下:
报表名称 myrpt=new 报表名称();
myrpt.ExportOptions.ExportDestinationType=CrystalDecisions.Shared.ExportDestinationType.DiskFile;
myrpt.ExportOptions.ExportFormatType=CrystalDecisions.Shared.ExportFormatType.PortableDocFormat;
CrystalDecisions.Shared.DiskFileDestinationOptions opt=new CrystalDecisions.Shared.DiskFileDestinationOptions();
opt.DiskFileName=@"文件名";
myrpt.ExportOptions.DestinationOptions =opt;
myrpt.Export();
打印报表:
代码如下:
CrystalDecisions.CrystalReports.Engine.ReportDocument rd=new CrystalDecisions.CrystalReports.Engine.ReportDocument();
rd.Load(Server.MapPath("Crystalreport1.rpt"));
rd.PrintOptions.PrinterName="打印机名称";
rd.PrintToPrinter(1,true,0,0);
其中"打印机名称":如果是网络打印机,在打印机名称前面要加上"\\机器名".本地打印机也可以显示在DropDownList控件里让用户选择:
foreach(string iprt in System.Drawing.Printing.PrinterSettings.InstalledPrinters)
this.DropDownList1.Items.Add(iprt);
报表名称 myrpt=new 报表名称();
myrpt.ExportOptions.ExportDestinationType=CrystalDecisions.Shared.ExportDestinationType.DiskFile;
myrpt.ExportOptions.ExportFormatType=CrystalDecisions.Shared.ExportFormatType.PortableDocFormat;
CrystalDecisions.Shared.DiskFileDestinationOptions opt=new CrystalDecisions.Shared.DiskFileDestinationOptions();
opt.DiskFileName=@"文件名";
myrpt.ExportOptions.DestinationOptions =opt;
myrpt.Export();
打印报表:
代码如下:
CrystalDecisions.CrystalReports.Engine.ReportDocument rd=new CrystalDecisions.CrystalReports.Engine.ReportDocument();
rd.Load(Server.MapPath("Crystalreport1.rpt"));
rd.PrintOptions.PrinterName="打印机名称";
rd.PrintToPrinter(1,true,0,0);
其中"打印机名称":如果是网络打印机,在打印机名称前面要加上"\\机器名".本地打印机也可以显示在DropDownList控件里让用户选择:
foreach(string iprt in System.Drawing.Printing.PrinterSettings.InstalledPrinters)
this.DropDownList1.Items.Add(iprt);
#3
强烈关注
#4
风:你所说的打印是在一个LAN里,但我现的情况不是。
我可以将报表导出,但是导出在服务器端,有没有办法导出在客户端。
我可以将报表导出,但是导出在服务器端,有没有办法导出在客户端。
#5
不懂,客户端有没有安装水晶报表?
#6
据我所知是没办法直接在客户端导出的.但是可以在服务端导出后下载到客户端.
#7
风:我现在用也是这种办法,在服务器端导出,然后下到客户端
不能导出,能不能直接打印呢,我看深圳一家公司做的报表,可在客户端打印,不知他们乍个做的。
不能导出,能不能直接打印呢,我看深圳一家公司做的报表,可在客户端打印,不知他们乍个做的。
#8
风:我现在用的也是这个办法,没有其他方法吗
我看了深圳一家公司做的报表,可在客户端打印,不知他们是乍个做的。
我看了深圳一家公司做的报表,可在客户端打印,不知他们是乍个做的。
#9
1.导出为一个文件,让客户下载到本地打印
2.用IE自带的打印功能打印
2.用IE自带的打印功能打印
#10
双星大侠(jcyer):
没有其他办法了吗
没有其他办法了吗
#11
为什么我用了上面的代码,可以打印出报表,但报表的全部的参数值都不显示出来,是什么原因?如何才能将报表的全部的参数值都显示出来?
请帮忙!
请帮忙!
#12
为什么我用了上面的代码,可以打印出报表,但报表的全部的参数值都不显示出来,是什么原因?如何才能将报表的全部的参数值都显示出来?
请帮忙!
请帮忙!
#13
归纳起来,水晶报表的打印,大致有以下几种方法:
方法一:
浏览器可以在你按打印机图标时(包括选择打印菜单时)在后台从另一个网址打印页面。当用户按打印图标时,它的浏览页面没有任何变化,打印机从后台自动访问这个报表页面并且自动打印它。
方法二:
示例打印页面:
<html>
<head>
</head>
<body>
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0 VIEWASTEXT></OBJECT>
<BUTTON onclick="doPreview()">打印预览</BUTTON>
<BUTTON onclick="doPageSet()">打印</BUTTON>
<script language=javascript>
function doPageSet(){
//Page Set
WB.ExecWB(8,1)
}
function doPreview(){
//Print
WB.ExecWB(7,1)
}
</script>
</body>
</html>
方法三:
用IE的打印.调用window.print(),但这种办法对于页面上即有报表,又有其它控件情况就无法区分,不能达到只打印报表内容的目的;
方法四:
程序中通过输出到打印机(如上面的代码).
方法五:
导出到PDF或EXCEL或其它格式的文件打印.如上面的代码
方法一:
浏览器可以在你按打印机图标时(包括选择打印菜单时)在后台从另一个网址打印页面。当用户按打印图标时,它的浏览页面没有任何变化,打印机从后台自动访问这个报表页面并且自动打印它。
方法二:
示例打印页面:
<html>
<head>
</head>
<body>
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0 VIEWASTEXT></OBJECT>
<BUTTON onclick="doPreview()">打印预览</BUTTON>
<BUTTON onclick="doPageSet()">打印</BUTTON>
<script language=javascript>
function doPageSet(){
//Page Set
WB.ExecWB(8,1)
}
function doPreview(){
WB.ExecWB(7,1)
}
</script>
</body>
</html>
方法三:
用IE的打印.调用window.print(),但这种办法对于页面上即有报表,又有其它控件情况就无法区分,不能达到只打印报表内容的目的;
方法四:
程序中通过输出到打印机(如上面的代码).
方法五:
导出到PDF或EXCEL或其它格式的文件打印.如上面的代码
#14
gz
#15
to:冷风清扬
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0 VIEWASTEXT></OBJECT>
是什么对象组件?
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0 VIEWASTEXT></OBJECT>
是什么对象组件?
#16
gz
#17
to :冷风清扬
请问用上面的方法二的时候要不要写下面的代码?
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0 VIEWASTEXT></OBJECT>
请问用上面的方法二的时候要不要写下面的代码?
<OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0 VIEWASTEXT></OBJECT>
#18
up
#19
我的水晶报表的变量是用参数赋值的。
参数赋值的代码是:
discreteVal.Value = "ooop"
paramValues.Add(discreteVal)
myReport.DataDefinition.ParameterFields ("Priority").ApplyCurrentValues(paramValues)
打印水晶报表的代码是:
Dim myReport As CrystalDecisions.CrystalReports.Engine.ReportClass = New Report9()
myReport.Load()
myReport.PrintOptions.PrinterName = "\\F\hp LaserJet 1000"
myReport.PrintToPrinter(1, True, 0, 0)
为什么我用了上面的代码,可以打印出报表,但报表的全部的参数值都不显示出来,是什么原因?如何才能将报表的全部的参数值都显示出来?
请帮忙!
参数赋值的代码是:
discreteVal.Value = "ooop"
paramValues.Add(discreteVal)
myReport.DataDefinition.ParameterFields ("Priority").ApplyCurrentValues(paramValues)
打印水晶报表的代码是:
Dim myReport As CrystalDecisions.CrystalReports.Engine.ReportClass = New Report9()
myReport.Load()
myReport.PrintOptions.PrinterName = "\\F\hp LaserJet 1000"
myReport.PrintToPrinter(1, True, 0, 0)
为什么我用了上面的代码,可以打印出报表,但报表的全部的参数值都不显示出来,是什么原因?如何才能将报表的全部的参数值都显示出来?
请帮忙!
#20
gz
#21
看了许多资料,对水晶报表在客户端的打印只有两种方式:
导出在服务器端,然后客户端下载打印,
调用IE的打印
没有其他办法了。
导出在服务器端,然后客户端下载打印,
调用IE的打印
没有其他办法了。