public PrintReport() { InitializeComponent(); this.ReportViewer1.RenderBegin += new Telerik.ReportViewer.Silverlight.RenderBeginEventHandler(ReportViewer1_RenderBegin); }
void ReportViewer1_RenderBegin(object sender, Telerik.ReportViewer.Silverlight.RenderBeginEventArgs args)
{
args.ParameterValues["ObjectTypeId"] = 40;
args.ParameterValues["Page"] = 1;
args.ParameterValues["PageSize"] = 10;
}
Hi,
I am trying to build a report programmatically without using the wizard. In this report am using parameter which also should be done programmatically according to my data, and through a query that also be added.
I tried this >> http://www.telerik.com/help/reporting/programmatic-creating-report.html
But I don’t know why am getting and empty report?!
Also the parameters and filter?!
Is there is any procedures behind that
Imports System.ComponentModel Imports System.Drawing Imports System.Windows.Forms Imports Telerik.Reporting Imports Telerik.Reporting.Drawing Imports System.Data.SqlClient Partial Public Class Visitreport Inherits Telerik.Reporting.Report Public Sub New() InitializeComponent() Dim report As New Report() 'Dim sql As String = "SELECT " Dim sql As String = "" Dim connectionString As String = "" Dim adapter As New SqlDataAdapter(sql, connectionString) report.DataSource = adapter 'creating item programatically Dim detail As New DetailSection() Me.detail.Height = New Telerik.Reporting.Drawing.Unit(3, Telerik.Reporting.Drawing.UnitType.Inch) Me.detail.Name = "detail" report.Items.Add(DirectCast(detail, ReportItemBase)) Dim panel1 As New Telerik.Reporting.Panel() Dim textBox1 As New Telerik.Reporting.TextBox() 'panel1 panel1.Location = New Telerik.Reporting.Drawing.PointU(New Telerik.Reporting.Drawing.Unit(1, Telerik.Reporting.Drawing.UnitType.Cm), New Telerik.Reporting.Drawing.Unit(1, Telerik.Reporting.Drawing.UnitType.Cm)) panel1.Size = New Telerik.Reporting.Drawing.SizeU(New Telerik.Reporting.Drawing.Unit(8.5, Telerik.Reporting.Drawing.UnitType.Cm), New Telerik.Reporting.Drawing.Unit(3.5, Telerik.Reporting.Drawing.UnitType.Cm)) panel1.Style.BorderStyle.Default = Telerik.Reporting.Drawing.BorderType.Solid 'textBox1 textBox1.Location = New Telerik.Reporting.Drawing.PointU(New Telerik.Reporting.Drawing.Unit(0, Telerik.Reporting.Drawing.UnitType.Cm), New Telerik.Reporting.Drawing.Unit(0, Telerik.Reporting.Drawing.UnitType.Cm)) textBox1.Name = "NameDataTextBox" textBox1.Size = New Telerik.Reporting.Drawing.SizeU(New Telerik.Reporting.Drawing.Unit(5, Telerik.Reporting.Drawing.UnitType.Cm), New Telerik.Reporting.Drawing.Unit(0.6, Telerik.Reporting.Drawing.UnitType.Cm)) textBox1.Style.BorderStyle.Default = Telerik.Reporting.Drawing.BorderType.Solid textBox1.StyleName = "Data" textBox1.Value = "=Fields.AssignTo" panel1.Items.AddRange(New Telerik.Reporting.ReportItemBase() {textBox1}) detail.Items.AddRange(New Telerik.Reporting.ReportItemBase() {panel1}) Dim reportParameter1 As New Telerik.Reporting.ReportParameter() reportParameter1.Name = "Parameter1" reportParameter1.Text = "Enter Value for Parameter1" reportParameter1.Type = Telerik.Reporting.ReportParameterType.Integer reportParameter1.AllowBlank = False reportParameter1.AllowNull = False reportParameter1.Value = "=10" reportParameter1.Visible = True report.ReportParameters.Add(reportParameter1) reportParameter1.AvailableValues.DataSource = adapter reportParameter1.AvailableValues.ValueMember = "= Fields.AssignTo" reportParameter1.AvailableValues.DisplayMember = "= Fields.AssignTo" Dim filter1 As New Telerik.Reporting.Data.Filter() filter1.Expression = "=Fields.AssignTo" filter1.Operator = Telerik.Reporting.Data.FilterOperator.Equal filter1.Value = "=Parameters.AssignTo" reportParameter1.AvailableValues.Filters.AddRange(New Telerik.Reporting.Data.Filter() {filter1}) Dim sorting1 As New Telerik.Reporting.Data.Sorting() sorting1.Expression = "=Fields.AssignTo" sorting1.Direction = Telerik.Reporting.Data.SortDirection.Asc reportParameter1.AvailableValues.Sortings.AddRange(New Telerik.Reporting.Data.Sorting() {sorting1}) ' report.ReportParameters("AssignTo").Value = "" End Sub Private Sub detail_ItemDataBound(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles detail.ItemDataBound 'Take the Telerik.Reporting.Processing.Report instance 'Dim report As Telerik.Reporting.Processing.Report = DirectCast(sender, Telerik.Reporting.Processing.Report) ' Transfer the value of the processing instance of ReportParameter ' to the parameter value of the sqlDataSource component ' Me.SqlDataSource1.Parameters(0).Value = report.Parameters("AssignTo").Value ' Set the SqlDataSource component as it's DataSource report.DataSource = Me.SqlDataSource1 End Sub End ClassHi,,..
I had added a parameter, however am not able to build the datasourse object
I do not want to use the sqldatasourse control, so how can I build it to get the data from the parameter I create.
How to bind the data to it
I use this code to build the parameter
Dim reportParameter1 As New Telerik.Reporting.ReportParameter() reportParameter1.Name = "Parameter1" reportParameter1.Text = "Category" reportParameter1.Type = Telerik.Reporting.ReportParameterType.String reportParameter1.AllowBlank = False reportParameter1.AllowNull = False reportParameter1.Value = "= Fields.Category" reportParameter1.Visible = True Report.ReportParameters.Add(reportParameter1) reportParameter1.AvailableValues.DataSource = objectDataSource1 reportParameter1.AvailableValues.ValueMember = "= Fields.Category" reportParameter1.AvailableValues.DisplayMember = "= Fields.Category" Furthermore, I wanna bind this parameter to a objectdatasourse,,so I found this code but I could not use it
Public Sub HowToObjectDataSourceParameters()
Dim objectDataSource1 As New Telerik.Reporting.ObjectDataSource()
objectDataSource1.DataMember = "GetCars"
objectDataSource1.DataSource = GetType(Cars)
objectDataSource1.Parameters.Add(New Telerik.Reporting.ObjectDataSourceParameter("year", GetType(Integer), 2010))
objectDataSource1.Parameters.Add(New Telerik.Reporting.ObjectDataSourceParameter("color", GetType(String), "=Parameters.Color"))
End Sub