Forum > Ported from Delphi/Kylix
Problems with Rp units when trying to port application from Delphi
SimDala:
Hi, I'm having problems with these units when trying to port application from Delphi 7.2 to Lazarus 2.2.2:
RpRenderPrinter
RpRenderPreview
RpFormSetup
RpRender
RpRenderCanvas
Is there some good equivalent unit to be used in Lazarus to solve these missing units problem?
The application is also using TeeChart that was inclued in Delphi 7.2.
If I'm correct informed, I need to exchange a license to use TeeChart within Lazarus.
Does someone here know how straight forward this porting issues are?
I unfortunatley do not have any access to a working Delphi environment at the moment, only the source code available.
marcov:
A bit of googling shows that rp* is rave reports. Both Rave Reports and TeeChart are third party addons distributed with (some) delphi versions.
Afaik Rave, Fast and Crystal reports were bundled with Delphi as reporting solution one time or another.
The Lazarus default reporting solution has the same pedigree as the Fast Report, so probably there is no easy solution for that, as it seems Rave doesn't sell a Lazarus product. Note that even with Delphi converting with vast version differences is not a breeze either (specially over the D2009 unicode line)
As for TeeChart, there are two options. Migrate to the Lazarus native TACharting solution, or try to obtain a license from Steema (afaik they do have licenses for Lazarus, but that doesn't necessarily make it a slam dunk).
For relatively light to moderate usage I would consider converting/recreate to TAChart (I routinely do), for heavier usage, you'll have to do some research.
SimDala:
Yes, thanks a lot for very fast reply.
Sorry for giving the feeling that I hadn't checked anything on other knowledge sources before.
I know that the units are Rave Reports that was a third party addon to Delphi 7.2.
What I didn't found was some information on how to replace the Rp units with some equivalent functionality within Lazarus, but didn't found so much information about that. I was just wondering if there was any good replacement solution within Lazarus to switch to.
I got some suggestions about writing a wrapper to be able to use Rp in Lazarus, but I don't see that as a especially fast solution to the problem and it's hard to do that
without access to a working Delphi environment.
In the case of the TeeChart, I've asked Steema about the license issue and that seems to be a quite straight forward solution but I won't know if there's needed some source coude update or how much that needs to be change to support the other version.
Is the TACharting solution much different from TeeChart? I know it's hard to answer without any specific use case, but just if they're releated in any way or uses some standardised API that can be quite ok to switch between.
I have no needs that the Lazarus version of the software shall be compatible with Delphi in the future, just make the application to be runnable within the Lazarus environment.
marcov:
--- Quote from: SimDala on October 10, 2022, 11:15:32 am ---Yes, thanks a lot for very fast reply.
Sorry for giving the feeling that I hadn't checked anything on other knowledge sources before.
--- End quote ---
I'm just trying to prepare you that it won't be a simple exchanging of some units in some uses. You'll probably need to really understand what is happening, and what you actually use from both sets components.
An additional problem is that Rave Reports feature list explicitly that it can incorporate teechart charts in its report. So there is possible crosstalk too.
--- Quote ---I know that the units are Rave Reports that was a third party addon to Delphi 7.2.
What I didn't found was some information on how to replace the Rp units with some equivalent functionality within Lazarus, but didn't found so much information about that. I was just wondering if there was any good replacement solution within Lazarus to switch to.
--- End quote ---
There is Lazreport, which is based on an older, open sourced version of fastreport. Afaik the new version of fastreport (4) also has commercial licensing.
--- Quote ---I got some suggestions about writing a wrapper to be able to use Rp in Lazarus, but I don't see that as a especially fast solution to the problem and it's hard to do that
without access to a working Delphi environment.
--- End quote ---
That makes it even more difficult, because it hampers investigating how the Delphi side works.
--- Quote ---In the case of the TeeChart, I've asked Steema about the license issue and that seems to be a quite straight forward solution but I won't know if there's needed some source coude update or how much that needs to be change to support the other version.
Is the TACharting solution much different from TeeChart? I know it's hard to answer without any specific use case, but just if they're releated in any way or uses some standardised API that can be quite ok to switch between.
I have no needs that the Lazarus version of the software shall be compatible with Delphi in the future, just make the application to be runnable within the Lazarus environment.
--- End quote ---
TAChart is roughly similar in build up as TChart, but the devil is, like always in the details.
ccrause:
--- Quote from: SimDala on October 10, 2022, 11:15:32 am ---Is the TACharting solution much different from TeeChart? I know it's hard to answer without any specific use case, but just if they're releated in any way or uses some standardised API that can be quite ok to switch between.
--- End quote ---
Some properties are named differently, some properties are not supported, and some class structures are organized differently, see this comparison. Depending on your mix of features used, it may be trivial to moderately difficult to port TeeChart to TAChart. E.g. zoom in TAChart is part of TChartTools, while in TeeChart it is a property of TChart. If you are moving away from Delphi, then it is IMHO worth it to make the transition to TAChart. There will be an initial learning curve to get used to the slight differences, but TAChart is a really good charting component.
TAChart wiki documentation
Navigation
[0] Message Index
[#] Next page