Telerik Forums
Reporting Forum
6 answers
331 views
I am building a report for the following data:
--> FacilitY
--> Assessments
--> Photos

A facility can have multiple assessments and an assessment can have multiple photos. I can get the Facility data and the Assessments data to show up. I can not get the photos to load. I am loading the Photos SubReport during the 'assessmentsTable_Item
DataBound()' event as a subReport in a cell, but it doesn't appear that it is loading. Here's the code:

private void assessmentsTable
_ItemDataBound(
object sender, EventArgs e)
{
    if (m_HasRecords)
    {
        Telerik.Reporting.Processing.Table tab = (Telerik.Reporting.Processing.Table)sender;
 
 
        Telerik.Reporting.Processing.ProcessingElement[] elems = tab.ChildElements.Find("textBox16", true);
 
        for (int i = 0; i < elems.Length; i++)
        {
            DataTable dt_assessments = GetAssessments();
            Telerik.Reporting.Processing.TextBox assessmentID = (Telerik.Reporting.Processing.TextBox)tab.ChildElements.Find("textBox16", true).GetValue(i);
 
            Telerik.Reporting.Processing.SubReport rep1 = (Telerik.Reporting.Processing.SubReport)tab.ChildElements.Find("subReport1", true).GetValue(i);
            //Telerik.Reporting.SubReport rep2 = (Telerik.Reporting.SubReport)tab.ChildElements.Find("subReport2", true).GetValue(i);
 
            DataTable dt_photos = GetPhotos();
 
            LoadPhotos(dt_photos, assessmentID.Value.ToString(), m_Counter++, table2.Height.Value + 10, rep1);


private void LoadPhotos(DataTable dt_photos, string assessmentID, int i, float height, Telerik.Reporting.Processing.SubReport subReport1)
{
    DataView dv = new DataView(dt_photos, "photoSourceID='" + assessmentID.ToString() + "'", "PhotoDateTime", DataViewRowState.CurrentRows);
    subReport1.Report.DataSource = new RMReports.AssessmentPhotos(dv, m_PhotoDirectory, m_EventID.ToString());
    subReport1.Location = new PointU(new Unit(0.5, UnitType.Inch), new Unit(m_CurrentYLocation + height + 1, UnitType.Inch));
    subReport1.Size = new Telerik.Reporting.Drawing.SizeU(new Telerik.Reporting.Drawing.Unit(7.9999217987060547, Telerik.Reporting.Drawing.UnitType.Inch), new Telerik.Reporting.Drawing.Unit(0.900000274181366, Telerik.Reporting.Drawing.UnitType.Inch));
}

public AssessmentPhotos(DataView dt_photos, string photo_directory, string eventid)
{
    /// <summary>
    /// Required for telerik Reporting designer support
    /// </summary>
    InitializeComponent();
 
    //
    // TODO: Add any constructor code after InitializeComponent call
    //
    m_PhotoDirectory = photo_directory;
    m_EventID = eventid;
    LoadPhotos(dt_photos);
}
 
private void LoadPhotos(DataView dt_photos)
{
    table2.DataSource = dt_photos;
}

Any help would be appreciated.
Kris
Top achievements
Rank 1
 answered on 17 Aug 2010
1 answer
204 views
Hi,
I try to display a report on both windows app and asp.net page using Telerik ReportViewer. My report is created on the fly. Because it's pretty narrow, I want to show the report in 2 colums in each page. It's working fine for Window app ReportViewer. In Web Browser Reportviewer It only shows 1 column per page, but when i export that to TIFF format, it shows 2 columns just like the windows app. Do I miss something when using Web Reportviewer?
Attaches are some screenshots.

Below are my codes related to this:

ReportTemplate.DetailSection1.ColumnCount = 2

ReportTemplate.Width =

New Telerik.Reporting.Drawing.Unit(3, Telerik.Reporting.Drawing.UnitType.Inch)

 

ReportTemplate.DataSource = dtReportData

ReportViewer1.Report = ReportTemplate

ReportViewer1.RefreshReport()


THanks
Quan

Steve
Telerik team
 answered on 17 Aug 2010
1 answer
87 views
Hi,

    Is there any way to stop the main report, in a drill report from requerying the database when it is reloaded?

thanks
Steve
Telerik team
 answered on 17 Aug 2010
1 answer
122 views
Is there anyway to log exceptions that may occur in the WCF ReportService while it is rendering a report?

there is a ReportServiceOperationException.  I can't see where it is raised or how it can be caught.

thanks

Michele
Top achievements
Rank 2
 answered on 17 Aug 2010
3 answers
420 views
Being a newcomer to Telerik Reporting I don't know if this is a known issue, or a work around is available, anyway.

I've a pretty simple table that renders in the web reportviewer just fine.
There are no header or footer rows, with just two columns of detail information.
The first column is a right justified percentage.
The second column is left justified text.  I've setting padding values so that there's some space between the columns at run time.
As I said, everything looks as expected in the web reportviewer.  When I export the report to PDF, XLS, TIF, XPS the text data is overlapping/overwriting the percentages.  If I change the text column's TextAlign to Center or Right, the overlapping/overwriting stops, but visually this isn't what I want.

Environment:
Windows 7 Pro
VS 2010
Reporting Q2 2010
Jim
Top achievements
Rank 1
 answered on 16 Aug 2010
6 answers
488 views
Hello:

Simply put, I want the report viewer's background color to not be white, but rather transparent. This includes the report & report details background as well as the report parameters area. I tried setting both the report Style background to transparent in the designer as well as setting the BackColor property to transparent where the report is generated. It still stays white. Any help is appreciated.

Thanks.
mc2000
Top achievements
Rank 1
 answered on 16 Aug 2010
0 answers
103 views
Su
Hi,
In my report, I did group by employee id, if there is no information or details available for one employee, the report is adding with a blank page. Can anyone please help me suppress\hide the blank pages in the report.

Thanks,

Regards,
Manoj
manoj
Top achievements
Rank 1
 asked on 16 Aug 2010
2 answers
267 views
The Document Map Show/Hide button doesnt seem to be working for me when I click it I have to re-preview the report.

David
Top achievements
Rank 2
 answered on 16 Aug 2010
7 answers
478 views

Hello,

I need to be able to present a user with, say, a list of check boxes which represent individual reports.  The user checks reports of interest and clicks "export" button.  Then, in code behind, I need to be able to dynamically create the multiple selected reports and export each report into an individual Excel worksheet within a single workbook.  The user is then prompted to save the workbook as a result of the browser detected content type.

I have seen an example of this export capability, but it was in conjunction with an existing Report Viewer control already on the page. 

If this is not possible, I think my next solution might be to add Report Viewer control to page design time, then populate it with reports selected by user via the check boxes.  Then, from Report Viewer export utility, create the multiple worksheet/single workbook file.

Thanks in advance for your time.

Jason

Steve
Telerik team
 answered on 16 Aug 2010
1 answer
136 views

Hi,

I'm trying to add a panel programatically to a report. I have a class that programattically generates a bunch of controls, then puts them in a panel, then returns the panel as an array of ReportItemBase with length of 1.

When i do this it appears to put a page break in after each panel.

I've tried altering the class to return just the controls without the panel parent and it works fine.

This is a problem though, because the reason I'm using a panel to put them inside of, is that I need each set of controls to make sure they are on the same page.

Here's the method

I've got commented out code line around where i've changed things to make it work. I've also tried two methods to add the controls to the panel, one is using the parent property and the other using the items.addrange, both work, but both cause the page break after each panel.


Public Overrides Function RenderControlSet(Optional ByRef parent As Telerik.Reporting.Panel = Nothing) As Telerik.Reporting.ReportItemBase()
    'MyBase.RenderControlSet()
    Dim questionDetail As DataTable = _questionDetail
    Dim question As DataRow = _question
    Dim cbl1 As ReportsCheckBoxList = New ReportsCheckBoxList
      
    Dim pnl As New Telerik.Reporting.Panel
    pnl.Top = New Drawing.Unit(StartTop, UnitType.Cm)
    pnl.KeepTogether = True
    pnl.StyleName = "stylePnl"
    'pnl.Style.BorderColor=
    If Not parent Is Nothing Then
        pnl.Parent = parent
    End If
    Dim t1 As New Telerik.Reporting.TextBox
    Dim TextBoxWidth As Drawing.Unit = New Drawing.Unit(14 - LeftMargin, UnitType.Cm)
    Dim TextBoxHeight As Drawing.Unit = New Drawing.Unit(0.6, UnitType.Cm)
    t1.Width = TextBoxWidth
    t1.Height = TextBoxHeight
    t1.Value = question("questionText").ToString()
    t1.Top = New Drawing.Unit(0, UnitType.Cm)
    't1.Top = New Drawing.Unit(StartTop, UnitType.Cm)
    t1.Left = New Drawing.Unit(LeftMargin, UnitType.Cm)
    t1.StyleName = "styleQuestion"
    'pnl.Items.AddRange(New Telerik.Reporting.ReportItemBase() {t1})
    t1.Parent = pnl
    ' When using the below and comment out the parent line above it works fine
    'ReDim Preserve Controls(Controls.Length)
    'Controls(Controls.Length - 1) = t1
    ResultHeight += 0.6
        ' CHECK BOX LIST FOR MULTIPLE OPTIONS
        cbl1.StartTop = 0.6 'StartTop + 0.6
        cbl1.StartTop = StartTop + 0.6
        cbl1.LeftMargin = LeftMargin
        If CInt(question("option1")) = 0 Then
            cbl1.RepeatColumns = 3
        Else
            cbl1.RepeatColumns = CInt(question("option1"))
        End If
        cbl1.DataTextField = "displayText"
        cbl1.DataValueField = "questionDetailId"
        cbl1.DataSource = questionDetail
        cbl1.Width = TextBoxWidth.Value
        Dim trb() As Telerik.Reporting.ReportItemBase
        trb = cbl1.Render()
        ResultHeight += cbl1.ResultHeight
        Dim x As Integer
        For x = 0 To trb.Length - 1
            'pnl.Items.AddRange(New Telerik.Reporting.ReportItemBase() {trb(x)})
            trb(x).Parent = pnl
            ' When using the below and comment out the parent line above it works fine
            'ReDim Preserve Controls(Controls.Length)
            'Controls(Controls.Length - 1) = trb(x)
        Next
    pnl.Height = New Drawing.Unit(ResultHeight, UnitType.Cm)
    ReDim Preserve Controls(Controls.Length)
    Controls(Controls.Length - 1) = pnl
    Return Controls
End Function


It's used like this in the VB code else where:

detail.Items.AddRange(c.RenderControlSet())



Where detail is the details section of the report.

I am using verison 4.0.10.423 of the Telerik.Report.dll

Thanks,

Joel
Ticket Solutions Account
Top achievements
Rank 1
 answered on 14 Aug 2010
Top users last month
Cynthia
Top achievements
Rank 1
Iron
Toby
Top achievements
Rank 3
Iron
Iron
Iron
Danielle
Top achievements
Rank 1
Iron
Iron
Joel
Top achievements
Rank 3
Bronze
Bronze
Iron
yw
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?