Does telerik reporting work in Mono?

47 posts, 0 answers
  1. Andrey
    Andrey avatar
    5 posts
    Member since:
    Jul 2012

    Posted 06 May 2013 Link to this post

    I've build everything from git (include libgdiplus).
  2. Igor
    Igor avatar
    145 posts
    Member since:
    Jan 2011

    Posted 06 May 2013 Link to this post

    Ok, that's super!
    do you have the crash details in Mono, when you rendering PDF? Is anything there about EMF/WMF codecs?
  3. DevCraft banner
  4. Andrey
    Andrey avatar
    5 posts
    Member since:
    Jul 2012

    Posted 06 May 2013 Link to this post

    Mono consuming lots of cpu and after long time waiting throw exception:

    System.Threading.ThreadAbortException: Thread was being aborted
      at Telerik.Reporting.Drawing.UnitHelper.ConvertToUnits (Double pixels, UnitType type) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Drawing.Unit.ChangeType (UnitType type) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Drawing.FontFacade.ToGdiFont (IFont font) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.VisualElement.Telerik.Reporting.Drawing.IFont.ToGdiFont () [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.MeasureContext.MeasureString (System.String text, IFont font, SizeF layoutArea, System.Drawing.StringFormat stringFormat, System.Int32& charactersFitted, System.Int32& linesFilled) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.TextRenderer.SplitText (IMeasureContext context, System.String text, IFont font, RectangleF bounds, System.Drawing.StringFormat format, Telerik.Reporting.Processing.DrawTextContext drawTextContext, System.Drawing.RectangleF& textBounds) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.TextRenderer.SplitText (IMeasureContext context, System.String text, IFont font, RectangleF bounds, Double angle, System.Drawing.StringFormat stringFormat, System.Drawing.RectangleF& textBounds) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.TextBoxUtil.FillTextElement (ITextContainer textContainer, RectangleF layoutBounds, IMeasureContext context) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.TextBox.MeasureItem (IMeasureContext context, SizeRF availableClientSize, Boolean canGrow) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.TextBox.MeasureItem (IMeasureContext context, SizeRF availableClientSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.TextBox.MeasureContent (IMeasureContext context, SizeRF availableClientSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.LayoutElement.MeasureCore (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.VisualElement.MeasureCore (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.ProcessingElement.MeasureCore (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.LayoutElement.Measure (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.AbsolutePositionLayout.MeasureChildItems (IMeasureContext context, SizeRF availableClientSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.AbsolutePositionLayout.MeasureContent (IMeasureContext context, SizeRF availableClientSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.ReportSectionBase.MeasureContent (IMeasureContext context, SizeRF availableClientSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.LayoutElement.MeasureCore (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.VisualElement.MeasureCore (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.ProcessingElement.MeasureCore (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.LayoutElement.Measure (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.StackLayout.MeasureContent (IMeasureContext context, SizeRF availableClientSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.Group.MeasureContent (IMeasureContext context, SizeRF availableClientSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.LayoutElement.MeasureCore (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.VisualElement.MeasureCore (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.ProcessingElement.MeasureCore (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.LayoutElement.Measure (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.StackLayout.MeasureContent (IMeasureContext context, SizeRF availableClientSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.Report.MeasureContent (IMeasureContext context, SizeRF availableClientSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.LayoutElement.MeasureCore (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.VisualElement.MeasureCore (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.ProcessingElement.MeasureCore (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.LayoutElement.Measure (IMeasureContext context, SizeRF availableSize) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.Processing.LayoutElement.MeasureElement (Telerik.Reporting.Processing.LayoutElement elementToMeasure, IMeasureContext context) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.BaseRendering.RenderingExtensionBase.MeasureReportCore (Telerik.Reporting.Processing.Report report, IMeasureContext measureContext) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.ImageRendering.PdfReport.MeasureReportCore (Telerik.Reporting.Processing.Report report, IMeasureContext measureContext) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.BaseRendering.RenderingExtensionBase.MeasureReport (Telerik.Reporting.Processing.Report report) [0x00000] in <filename unknown>:0
      at Telerik.Reporting.BaseRendering.RenderingExtensionBase.Render (Telerik.Reporting.Processing.Report report, System.Collections.Hashtable renderingContext, System.Collections.Hashtable deviceInfo, Telerik.Reporting.Processing.CreateStream createStreamCallback, Telerik.Reporting.Processing.EvaluateHeaderFooterExpressions evalHeaderFooterCallback) [0x00000] in <filename unknown>:0


  5. Igor
    Igor avatar
    145 posts
    Member since:
    Jan 2011

    Posted 06 May 2013 Link to this post

    I am not sure, but i can propose you (if it is still actual for Reporting sources), try with the changes mentioned by me in this post: http://www.telerik.com/community/forums/reporting/telerik-reporting/does-telerik-reporting-work-in-mono.aspx#2081803

    First thing as i mentioned before (server exception 500 error) is related to RegionInfo.CurrentRegion
    http://lists.ximian.com/pipermail/mono-bugs/2010-March/098641.html 

    Workaround: 
    CultureInfo ci = CultureInfo.CurrentCulture;
     // If current culture is invariant then region is not available.
    if (ci != null && CultureInfo.BootstrapCultureID != 0x7F)
     currentRegion = new RegionInfo(CultureInfo.BootstrapCultureID);

    so the best way - is to add a static variable currentRegion and replace all occurences of accessing property RegionInfo.CurrentRegion:
    • Telerik.Reporting\Drawing\PageSettings.cs line 261
    • Telerik.Reporting\Drawing\Unit.cs line 145
    • Telerik.Reporting\Report.cs line 115
    • Telerik.Reporting\ReportSectionBase.cs line 16
    • Telerik.Reporting.Pdf\PdfPageDictionary.cs line 23 
    • Telerik.Reporting.Pdf\PdfPageDictionary.cs line 43

    Not sure, if it help
  6. Andrey
    Andrey avatar
    5 posts
    Member since:
    Jul 2012

    Posted 06 May 2013 Link to this post

    How I can modify telerik sources? Sources available somewhere on site or you using reverse engineered version?
  7. Igor
    Igor avatar
    145 posts
    Member since:
    Jan 2011

    Posted 06 May 2013 Link to this post

    Unfortunately, sharing the source code of the product is not allowed publicly in the Forums, but i believe, the Telerik team could help you with it ;)
    Let's wait them to answer
  8. Rav
    Rav avatar
    36 posts
    Member since:
    Nov 2011

    Posted 06 May 2013 Link to this post

    Can someone from Telerik please assist us with the appropriate source code?
  9. Vassil Petev
    Admin
    Vassil Petev avatar
    1765 posts

    Posted 07 May 2013 Link to this post

    Hi Rav and Andrey,

    The Telerik Reporting source code is available to all Subscription license holders. If you have purchased a subscription for either Telerik Reporting or Telerik DevCraft, you can download the product source code from:

    your account --> Products & Subscriptions --> Reporting (or DevCraft) --> Download installer & other resources --> Browse all product files.


    Kind regards,
    Vassil Petev
    the Telerik team

    Have you tried the new visualization options in Telerik Reporting Q1 2013? You can get them from your account.

  10. Igor
    Igor avatar
    145 posts
    Member since:
    Jan 2011

    Posted 07 May 2013 Link to this post

    Hi Vassil,

    as you told in this thread before, you have forwarded my proposals (http://www.telerik.com/community/forums/reporting/telerik-reporting/does-telerik-reporting-work-in-mono.aspx#2081803)  to the Telerik development team. Do you know, if anything was changed and the workaround for Mono has been applied?


  11. Stef
    Admin
    Stef avatar
    3036 posts

    Posted 10 May 2013 Link to this post

    Hello Igor,

    Our development team is well acquainted with the progress of this forum thread and your proposals. We have discussed the pros and cons of Mono, and we don't find it reliable enough to shift up the priority of supporting it.

    Any community member interested in using our product in Mono, including us as a team, will appreciate your updates, and as far as it is related to Telerik Reporting technical questions, we will be glad to provide you all the needed support.

    All the best,
    Stef
    the Telerik team

    Have you tried the new visualization options in Telerik Reporting Q1 2013? You can get them from your account.

  12. Igor
    Igor avatar
    145 posts
    Member since:
    Jan 2011

    Posted 10 May 2013 Link to this post

    Hi Stef!
    I am glad to know that.

    Please tell me if it is possible to submit some modifications of your Reporting sources, or you probably could add a separate branch for Mono?
    Rav and Andrey are able to test your product with the Linux and Mono, so i think we could mix up together.
  13. Vassil Petev
    Admin
    Vassil Petev avatar
    1765 posts

    Posted 14 May 2013 Link to this post

    Hello Igor,

    We held an internal discussion about supporting Mono last week, and we think that the effort we'll put into supporting Mono will not pay off. The interest in the platform has decreased substantially in the past several months. The opportunity was there a few years ago (which we have missed obviously), but this is not the case today.

    We prefer to focus our efforts in developing features which to cover new markets, such as support for MVC, HTML5 and mobile.

    We hope this will not stop you from collaborating with other community members and continue working on this challenge.

    We are sorry to bring you this news.
     
     
    Best Regards,
    Vassil Petev
    the Telerik team

    Have you tried the new visualization options in Telerik Reporting Q1 2013? You can get them from your account.

  14. Igor
    Igor avatar
    145 posts
    Member since:
    Jan 2011

    Posted 14 May 2013 Link to this post

    Hi Vassil,

    yes i understood that and totally agree with you. Porting on Mono is not a high priority for now, but part of your community uses ASP .NET MVC running on Linux Servers, with Telerik technologies, such as KendoUI, and they work perfectly (i have started from Telerik Extensions for MVC, then migrated to KendoUI). The point of interest is to cover all Telerik web technologies running with Mono as well as .NET Framework. So i believe we will continue with our researches. The question is - could Telerik help with it by sharing a version of Telerik Reporting sources (maybe to the common storage, such as Codeplex), where it could be edited by community and all neccesary changes will be submitted for Mono compatibility.
    Thank you!
  15. Stef
    Admin
    Stef avatar
    3036 posts

    Posted 17 May 2013 Link to this post

    Hello Igor,

    Telerik Reporting as our other products is an intellectual property (IP) of Telerik, so its source code cannot be published in Codeplex or other storage for open source hosting.

    Your collaboration is in the spirit of the idea of our community and we appreciate your undertaking. However, please keep in mind the license agreements protecting our IP and do not redistribute the source code on the net.

    All the best,
    Stef
    the Telerik team

    Have you tried the new visualization options in Telerik Reporting Q1 2013? You can get them from your account.

  16. Igor
    Igor avatar
    145 posts
    Member since:
    Jan 2011

    Posted 17 May 2013 Link to this post

    Hi Stef, that is right!
    with my big respect to your company i am not going to redistribute any part of your IP.
    It was a proposal for Telerik about such possibility. 
    I believe we will find out a workaround for the Mono support ;) 
  17. Rav
    Rav avatar
    36 posts
    Member since:
    Nov 2011

    Posted 22 Jun Link to this post

    Hello, I know its been a long time (2 years) since the last post.. but we're still interested in trying to port to Mono. Is there any advances or change in direction from the Telerik team here?
  18. Stef
    Admin
    Stef avatar
    3036 posts

    Posted 24 Jun Link to this post

    Hello Rav,

    Telerik Reporting does not include Mono support and such is not planned.
    If other community members have news, we will appreciate your updates here.

    Regards,
    Stef
    Telerik
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items
Back to Top
DevCraft banner