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

Problem with designer in latest Delphi / Report Builder

edited March 2023 in General
Hi,

after upgrade to Delphi 10.3 and ReportBuilder 22.01 Build 99 almost all updated reports (worked with 10.2) thow the following error in IDE report designer:

[6435AC16]{rtl280.bpl } System.Move (Line 6257, "System.pas" + 34) + $0
[67F320C6]{vclimg280.bpl} Vcl.Imaging.pngimage.TChunkIHDR.PrepareImageData (Line 2338, "Vcl.Imaging.pngimage.pas" + 70) + $15
[67F3196D]{vclimg280.bpl} Vcl.Imaging.pngimage.TChunkIHDR.Assign (Line 2094, "Vcl.Imaging.pngimage.pas" + 14) + $25
[67F36D5F]{vclimg280.bpl} Vcl.Imaging.pngimage.TPngImage.AssignPNG (Line 5292, "Vcl.Imaging.pngimage.pas" + 15) + $1A
[67F34D68]{vclimg280.bpl} Vcl.Imaging.pngimage.TPngImage.Assign (Line 4293, "Vcl.Imaging.pngimage.pas" + 6) + $6
[65E25D0E]{vcl280.bpl } Vcl.Graphics.TPicture.SetGraphic$ActRec.$0$Body (Line 6055, "Vcl.Graphics.pas" + 0) + $6
[65E25A93]{vcl280.bpl } Vcl.Graphics.TPicture.Load (Line 5986, "Vcl.Graphics.pas" + 7) + $8
[65E25D69]{vcl280.bpl } Vcl.Graphics.TPicture.SetGraphic (Line 6052, "Vcl.Graphics.pas" + 6) + $D
[65E26660]{vcl280.bpl } Vcl.Graphics.TPicture.Assign (Line 6157, "Vcl.Graphics.pas" + 4) + $5
[57898C74]{rbRCL2228.bpl} Ppdrwcmd.TppDrawImage.SetPicture + $C
[57724147]{rbRCL2228.bpl} Ppctrls.TppCustomImage.PropertiesToDrawCommand + $1AB
[57C4B035]{rbIDE2228.bpl} Ppdesigncontrolsex.TppPrintableControl.CreateDrawCommand + $7D
[57C4B2E8]{rbIDE2228.bpl} Ppdesigncontrolsex.TppCustomImageControl.CreateDrawCommand + $20
[57C4B065]{rbIDE2228.bpl} Ppdesigncontrolsex.TppPrintableControl.PaintDesignControl + $21
[57C4F6D9]{rbIDE2228.bpl} Ppdesigncontrols.TppDesignControl.Paint + $169
[65E22D92]{vcl280.bpl } Vcl.Graphics.TCanvas.SetPenPos (Line 4221, "Vcl.Graphics.pas" + 1) + $9
[65E52D6D]{vcl280.bpl } Vcl.Controls.TGraphicControl.WMPaint (Line 14304, "Vcl.Controls.pas" + 7) + $5
[65E4802E]{vcl280.bpl } Vcl.Controls.TControl.WndProc (Line 7591, "Vcl.Controls.pas" + 91) + $6
[65E47C64]{vcl280.bpl } Vcl.Controls.TControl.Perform (Line 7369, "Vcl.Controls.pas" + 10) + $8
[65E4D696]{vcl280.bpl } Vcl.Controls.TWinControl.PaintControls (Line 10802, "Vcl.Controls.pas" + 27) + $D
[65E4D493]{vcl280.bpl } Vcl.Controls.TWinControl.PaintHandler (Line 10748, "Vcl.Controls.pas" + 24) + $8
[65E52027]{vcl280.bpl } Vcl.Controls.TWinControl.WMPrintClient (Line 13804, "Vcl.Controls.pas" + 14) + $6
[65E4802E]{vcl280.bpl } Vcl.Controls.TControl.WndProc (Line 7591, "Vcl.Controls.pas" + 91) + $6
[65E49B02]{vcl280.bpl } Vcl.Controls.TControl.GetStyleName (Line 8627, "Vcl.Controls.pas" + 1) + $8
[65E49B2E]{vcl280.bpl } Vcl.Controls.TControl.GetStyleName (Line 8631, "Vcl.Controls.pas" + 5) + $7
[6435A394]{rtl280.bpl } System.@GetMem (Line 4949, "System.pas" + 20) + $0
[6436236A]{rtl280.bpl } System.@NewUnicodeString (Line 26005, "System.pas" + 10) + $0
[64362815]{rtl280.bpl } System.@UStrAsg (Line 26933, "System.pas" + 18) + $0
[6435A3B0]{rtl280.bpl } System.@FreeMem (Line 4997, "System.pas" + 20) + $0
[64362490]{rtl280.bpl } System.@UStrArrayClr (Line 26349, "System.pas" + 9) + $0
[65E49BDF]{vcl280.bpl } Vcl.Controls.TControl.IsCustomStyleActive (Line 8645, "Vcl.Controls.pas" + 8) + $15
[65E4D1F5]{vcl280.bpl } Vcl.Controls.TWinControl.WndProc (Line 10644, "Vcl.Controls.pas" + 170) + $6
[65E47C64]{vcl280.bpl } Vcl.Controls.TControl.Perform (Line 7369, "Vcl.Controls.pas" + 10) + $8
[65E4DC53]{vcl280.bpl } Vcl.Controls.TWinControl.WMPaint (Line 10944, "Vcl.Controls.pas" + 19) + $D
[65E539C1]{vcl280.bpl } Vcl.Controls.TCustomControl.WMPaint (Line 14680, "Vcl.Controls.pas" + 2) + $4
[65E4802E]{vcl280.bpl } Vcl.Controls.TControl.WndProc (Line 7591, "Vcl.Controls.pas" + 91) + $6
[65E49B02]{vcl280.bpl } Vcl.Controls.TControl.GetStyleName (Line 8627, "Vcl.Controls.pas" + 1) + $8
[65E49B2E]{vcl280.bpl } Vcl.Controls.TControl.GetStyleName (Line 8631, "Vcl.Controls.pas" + 5) + $7
[6435A394]{rtl280.bpl } System.@GetMem (Line 4949, "System.pas" + 20) + $0
[6436236A]{rtl280.bpl } System.@NewUnicodeString (Line 26005, "System.pas" + 10) + $0
[64362815]{rtl280.bpl } System.@UStrAsg (Line 26933, "System.pas" + 18) + $0
[6435A3B0]{rtl280.bpl } System.@FreeMem (Line 4997, "System.pas" + 20) + $0
[64362490]{rtl280.bpl } System.@UStrArrayClr (Line 26349, "System.pas" + 9) + $0
[65E49BDF]{vcl280.bpl } Vcl.Controls.TControl.IsCustomStyleActive (Line 8645, "Vcl.Controls.pas" + 8) + $15
[65E4D1F5]{vcl280.bpl } Vcl.Controls.TWinControl.WndProc (Line 10644, "Vcl.Controls.pas" + 170) + $6
[65E4C700]{vcl280.bpl } Vcl.Controls.TWinControl.MainWndProc (Line 10321, "Vcl.Controls.pas" + 3) + $6
[64475C1C]{rtl280.bpl } System.Classes.StdWndProc (Line 18517, "System.Classes.pas" + 8) + $0
[57EA7303]{rbRTL2228.bpl} Pptb2hook. + $0
[65F95263]{vcl280.bpl } Vcl.Forms.TApplication.ProcessMessage (Line 11488, "Vcl.Forms.pas" + 23) + $1
[65F952A6]{vcl280.bpl } Vcl.Forms.TApplication.HandleMessage (Line 11518, "Vcl.Forms.pas" + 1) + $4
[65F955E5]{vcl280.bpl } Vcl.Forms.TApplication.Run (Line 11657, "Vcl.Forms.pas" + 27) + $3
[004D80A2]{bds.exe } bds.bds (Line 227, "" + 16) + $2

Any idea what's wrong?

Best regrads
Frank

Comments

  • Hi Frank,

    Do you mean Delphi 11.3 or 10.3?

    The call stack indicates an issue with TPngImage. Perhaps you have been using a 3rd party PNG image, such as from DevExpress. If so make sure you have the 3rd party PNG image installed in Delphi.

    If the issue persist, please save one of the reports from Delphi 10.2 to an .rtm file in text format (set Report.Template.Format to ftAscii). Send to support@ and I can test it. Let me know the Delphi version and RB version where it works and the one you upgraded to .



    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • Hi Nard,

    I don't use any third party components, except Reportbuilder, uniGUI and Fastreports. All of them are installed.
    I did an upgrade from latest Delphi 10.2 + RB to latest 10.3 + RB 22.01 Build 99.
    It's not possible to open those reports, so it's also not possible to save them. I can send you a binary version if that would help?

    Best regrads
    Frank
  • Hi Frank,

    I was thinking you could open a report in the last known configuration you had that worked. Delphi 10.2 with RB XX? If you no longer have this installed, please send a binary report definition to support@ and let me know what was the last Delphi and RB you had installed that could open the report.

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • Hi Nard,

    i did sent you one of the broken reports. I think the problem is embedded png image data. All reports without are working fine.

    Best regards
    Frank
  • Hi,

    This issue was resolved via email correspondence.

    Appears to be an issue with Delphi 11.3

    Report definition contains a TppImage with a blank PNG. Template can be opened by RB 22 with Delphi 10.4, 10.3, ... but not by RB 22 with Delphi 11.3. Further testing, with just a TImage has the same behavior. (RB TppImage and Delphi TImage both have a Picture: TPicture property that handles loading the graphic).

    Solutions:

    - use Delphi 10.x to load template and fix the PNG. Either clear the picture or load a valid PNG.

    or

    - use Delphi 11.3 and write code that uses TppReport.Template to load the template. Then iterate over the Report.Bands[ ].Objects[ ] structure and look for TppImage instance and set the Picture.Graphic to nil.




    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
Sign In or Register to comment.