谁知道如何将报表保存到报表服务器 (Report Builder 3.0)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了谁知道如何将报表保存到报表服务器 (Report Builder 3.0)相关的知识,希望对你有一定的参考价值。
用新的tablix
数据区域.rdl)。每个创作环境提供了不同的方式来创建、打开和保存报表和相关项。有关详细信息.0
中设计报表
(ssrs)”,再单击“添加组”,然后选择要添加的组的类型,需要先复制组头单元中的值,再删除组列,然后将该值粘贴到组头行的第一个文本框中。若要删除组列.54
厘米)cm厘米mm毫米pt磅(1
磅
=
1/。下图显示了该数据区域在设计图面上可能的外观。在“属性”窗格的“对齐”下,例如
:in英寸(1
英寸
=
2。注意该向导仅在报表生成器中提供。选择包含要缩进显示的详细信息字段的单元。对于“左填充”.com
中的“在报表设计器和
report
builder
3。“分组”窗格将显示“行组”窗格中的详细信息组。在“分组”窗格中。例如,[postalcode]
是数据集中
postalcode
字段的简单字段表达式,您将看到一列组实例值,以及一列或多列分组的详细信息数据。该下拉列表显示了“报表数据”窗格中可用的简单字段表达式。注意
在business
intelligence
development
studio
中,您可以在
report
builder
3.0
和报表设计器中创建和修改报表定义
(,然后单击“删除列”,指向“添加组”,以便于创建递阶报表。
创建递阶报表创建一个表报表。例如,展开“填充”的属性,可以向同一列添加组和详细信息行或子组。若要将组行与详细信息行或子组行区分开来,可以应用格式设置(如字体颜色)或缩进详细信息行。本主题中的过程说明如何手动创建递阶报表,但您也可以使用新建表和矩阵向导。该向导为递阶报表提供布局,插入一个
tablix
数据区域,然后向数据行中添加字段。向报表添加一个父组。单击表中的任意位置以选择该表,然后单击“父组”。在“tablix
组”对话框中,为该组提供一个名称,并键入或从下拉列表中选择组表达式。现在即创建了一个基本表格报表。此报表呈现时。在完成该向导后.0
和
ssrs)。创建包含多个组的递阶报表按照前面步骤中所述创建一个报表。若要使同一列中组头行下方的详细信息行缩进显示,请更改详细信息数据单元的空白大小。有关详细信息,请参阅如何在数据区域中添加或删除组(report
builder
3。若要创建表达式。在“tablix
组”对话框中。同样地。向报表添加其他组。在“行组”窗格中,键入一个名称。在“组表达式”中;72
英寸)pc派卡(1
派卡
=
12
磅)数据区域的外观将与下例类似。递阶报表布局的数据区域在“主文件夹”选项卡上,不需要用于显示组实例的第一列。相反。选择“添加组头”。选择此选项将向组的上方添加一个组标签和组合计的静态行。填充会在单元中按照您指定的值缩进文本。默认空白大小为
2
磅。填充属性的有效值是零或正数,后跟一个大小指示符。大小指示符有,右键单击组。下图显示了该数据区域在设计图面上可能的外观,键入一个新的空白值,单击“运行”。报表将根据子组值的缩进级别显示组,请右键单击相应的组列或单元。下图显示了您查看报表时所呈现的数据区域可能的外观。对于递阶报表,可以选择“添加组尾”在组的下方添加一个静态行。单击“确定”.5in,请参阅
web
上
microsoft,您可以进一步增强该报表。注意可以通过若干种方式向数据区域添加组,右键单击详细信息组,键入一个表达式或选择要用作分组依据的数据集字段。该单元的文本框属性显示在“属性”窗格中 参考技术A 将报表保存到报表服务器时,其他用户可以查看报表。每次运行已发布的报表时,将检索最新的数据。若要保存所呈现报表的静态副本,请将该报表导出为另一文件格式并保存它,或使用报表历史记录功能来保存所呈现报表的各个版本。本回答被提问者采纳
水晶报表 Crystal Report 调用存储过程时出错 找不到表 ,解决方法。
用 CrystalReportViewer1 控件在asp.net的网页上显示报表,假设做报表时调用数据表数据的方式调用是能够成功的。但报表是用存储过程获取数据方式会出现下面错误:
找不到表‘RptOpenCheck;1‘ 。 文件 G:\TEMP\FO-OpenCheck {6D191F06-DECF-4A25-88FC-8553E3D435AA}.rpt 内出错: 找不到表。
Error: 未将对象引用设置到对象的实例。
The table ‘RptOpenCheck;1‘ could not be found. Error in File G:\TEMP\FO-OpenCheck {6D191F06-DECF-4A25-88FC-8553E3D435AA}.rpt: The table could not be found.
未能打开该连接。 未能打开该连接。
G:\TEMP\FO-OpenCheck {4E60249E-FC16-4F3D-A610-138FC3297171}.rpt
VS2005 环境,Crsytal Reports 11.5
代码下面:
Dim crtableLogoninfos As New TableLogOnInfos
Dim crtableLogoninfo As New TableLogOnInfo
Dim crConnectionInfo As New ConnectionInfo
Dim crParameterFields As ParameterFields
Dim crParameterField As ParameterField
Dim crParameterValues As ParameterValues
Dim crParameterDefValues As ParameterValues
Dim crParameterValue As ParameterValue
Dim crParameterDiscreteValue As ParameterDiscreteValue
Dim CrTables As Tables
Dim CrTable As Table
Dim ReportName As String
Dim PrintTo As String ‘ P Printer V Window
Dim ReportPath As String
Dim UserName As String
Dim Password As String
Dim ServerName As String
Dim DatabaseName As String
Dim crReportDocument As New ReportDocument
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load, Me.Load
Dim strParam As String = Request("p")
‘获取用户请求參数
If Right(strParam, 1) = "~" Then
strParam = Mid(strParam, 1, Len(strParam) - 1)
End If
‘參数转换为数组
s = Split(strParam, "~")
‘use odbc connection database
With crConnectionInfo
.AllowCustomConnection = True
.ServerName = ”ODBCName"
‘.DatabaseName = "TempDB"
.UserID = "sa"
.Password = "Microwin"
End With
‘‘use SQL connection database
‘With crConnectionInfo
‘ .AllowCustomConnection = True
‘ .ServerName = "(local)"
‘ .DatabaseName = "TempDB"
‘ .UserID = "sa"
‘ .Password = "Microwin"
‘End With
‘指定报表路径
ReportPath = Server.MapPath(Request.ApplicationPath)
ReportNamePath = ReportPath & "\testing.rpt"
‘check report file exists and Load Report
If System.IO.File.Exists(ReportNamePath) Then
crReportDocument.Load(ReportNamePath)
End If
‘设置报表文档给报表控件
Me.CrystalReportViewer1.ReportSource = crReportDocument
‘设置连接数据库信息给报表文档
CrTables = crReportDocument.Database.Tables
For Each CrTable In CrTables
crtableLogoninfo = CrTable.LogOnInfo
crtableLogoninfo.ConnectionInfo = crConnectionInfo
CrTable.ApplyLogOnInfo(crtableLogoninfo)
‘就是这句没有加,所以会出现以上错误信息。仅仅有报表是调用存储过程取数据时才会出现错误。花了我几天时间,最终攻克了。
CrTable.Location = CrTable.Name
Next
‘设置控件显示的属性
With CrystalReportViewer1
.AutoDataBind = True
.ReuseParameterValuesOnRefresh = True
.EnableDatabaseLogonPrompt = False
.EnableParameterPrompt = False
CrystalReportViewer1.DisplayGroupTree = False
CrystalReportViewer1.DisplayPage = True
CrystalReportViewer1.DisplayToolbar = True
CrystalReportViewer1.ReportSource = crReportDocument
End With
If Not IsPostBack Then
‘取用户请求的參数赋值给报表。假设报表须要參数的话。从第三个元素開始为报表參数值。
crParameterFields = Nothing
crParameterFields = CrystalReportViewer1.ParameterFieldInfo
Dim j As Integer = UBound(s, 1)
For i = 0 To crParameterFields.Count - 1
crParameterField = crParameterFields.Item(i)
crParameterValues = crParameterField.CurrentValues
crParameterDefValues = Nothing
crParameterDefValues = New ParameterValues
crParameterDefValues = crParameterField.DefaultValues
crParameterDiscreteValue = Nothing
crParameterDiscreteValue = New ParameterDiscreteValue
If i > (j - 2) Then
Select Case crParameterField.ParameterValueKind
Case ParameterValueKind.BooleanParameter
crParameterDiscreteValue.Value = False
Case ParameterValueKind.CurrencyParameter
crParameterDiscreteValue.Value = Nothing
Case ParameterValueKind.DateParameter
crParameterDiscreteValue.Value = System.DateTime.Now
Case ParameterValueKind.DateTimeParameter
crParameterDiscreteValue.Value = System.DateTime.Now
Case ParameterValueKind.NumberParameter
crParameterDiscreteValue.Value = Nothing
Case ParameterValueKind.StringParameter
crParameterDiscreteValue.Value = " "
Case ParameterValueKind.TimeParameter
crParameterDiscreteValue.Value = System.DateTime.Now
End Select
crParameterValues.Add(crParameterDiscreteValue)
Else
Select Case crParameterField.ParameterValueKind
Case ParameterValueKind.BooleanParameter
crParameterDiscreteValue.Value = IIf(s(i + 2) = "0", False, True)
Case ParameterValueKind.CurrencyParameter
crParameterDiscreteValue.Value = IIf(Trim(s(i + 2) & "") = "", Nothing, s(i + 2))
Case ParameterValueKind.DateParameter
crParameterDiscreteValue.Value = IIf(Trim(s(i + 2) & "") = "", Nothing, s(i + 2))
Case ParameterValueKind.DateTimeParameter
crParameterDiscreteValue.Value = IIf(Trim(s(i + 2) & "") = "", Nothing, s(i + 2))
Case ParameterValueKind.NumberParameter
crParameterDiscreteValue.Value = IIf(Trim(s(i + 2) & "") = "", Nothing, s(i + 2))
Case ParameterValueKind.StringParameter
crParameterDiscreteValue.Value = IIf(Trim(s(i + 2) & "") = "", " ", s(i + 2))
Case ParameterValueKind.TimeParameter
crParameterDiscreteValue.Value = IIf(Trim(s(i + 2) & "") = "", Nothing, s(i + 2))
End Select
crParameterValues.Add(crParameterDiscreteValue)
End If
Next
End If
End Sub
以上是关于谁知道如何将报表保存到报表服务器 (Report Builder 3.0)的主要内容,如果未能解决你的问题,请参考以下文章