Home General
New Blog Posts: Merging Reports - Part 1 and Part 2

GDI Error

edited September 2013 in General
Using:
RAD Studio Delphi 2010
XP Professional
DevExpress 13.1.2
Report Builder 14.06 Build 249
KbmMemTable

At times I'm getting the following error: "Invalid operation in GDI+ (Code
3)"... followed by "Canvas does not allow drawing". Sometimes I can reboot
the system and the report will print correctly... or sometimes I choose a
different dataset (different records to be reported) and it will print OK.
Anyone have any idea what the problem might be?

Joe Hutchins

Comments

  • edited September 2013
    Hi Joe,

    We have not seen this error before. A quick search of the error you are
    getting on Google pulls up numerous issues related to DevExpress. As a
    test, try removing DevExpress from your test project and see if you
    still get the error.

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited September 2013
    It is definitely a problem between DevExpress and Report Builder...
    separate, they both work as expected; however, when I'm trying to print from
    a form with their cxGrid components displaying data... and run a report
    (from another mem table - not displayed in the grid) I get the error... if I
    make the grid.visible = false and then run the report there is no problem;
    however, if I try to make the grid "visible" after the report has been
    closed the grid doesn't display properly. Has anyone else encountered
    anything like this?

    Joe Hutchins


  • edited September 2013

    Give this a try...

    RB 14 introduces a new scrollable page preview, which generates pages in a
    background thread. This can cause threading issues in some cases,
    particularly if visual controls are connected to the same datasets as
    reports. You can set Report.PreviewFormSettings.SinglePageOnly to True to
    use the old single page preview. If you are loading templates from a .rtm
    files or a database, use the Report.Template.OnLoadEnd event to set this
    property.
    If you are using a separate TppViewer object, it has a SinglePageOnly
    property.



    Best regards,

    -
    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited September 2013
    Thanks, I really appreciate your help. That appears to fix the problem...


This discussion has been closed.