Fast Report s and Richview
Fast Report s and Richview
Hi
Is it possibly to use Fast Reports to print the contents of memo fields created with Richview
Regards
Bobby Gallagher
Is it possibly to use Fast Reports to print the contents of memo fields created with Richview
Regards
Bobby Gallagher
-
- Site Admin
- Posts: 17606
- Joined: Sat Aug 27, 2005 10:28 am
- Contact:
-
- Site Admin
- Posts: 17606
- Joined: Sat Aug 27, 2005 10:28 am
- Contact:
Hello there,
it's been quite a time in this thread without any post .
As long as there is no official support for FastReport just take the component that can be found here:
http://code.google.com/p/theunknownones ... chViewView
it is called TfrxRichViewView. We developed it for RichView V12 but it should work with the current version as well.
Regards
Marco
it's been quite a time in this thread without any post .
As long as there is no official support for FastReport just take the component that can be found here:
http://code.google.com/p/theunknownones ... chViewView
it is called TfrxRichViewView. We developed it for RichView V12 but it should work with the current version as well.
Regards
Marco
-
- Site Admin
- Posts: 17606
- Joined: Sat Aug 27, 2005 10:28 am
- Contact:
Marco, I just gave the component a try (with D7, Fastreport 4.9.123, TRichView 12.5.2).MarcoWarm wrote: As long as there is no official support for FastReport just take the component that can be found here:
http://code.google.com/p/theunknownones ... chViewView
it is called TfrxRichViewView. We developed it for RichView V12 but it should work with the current version as well.
Regards
Marco
Is the source on code.google.com really the latest, working version?
There is one compiler Error in it ( ms:=TCompressionStream.Create(Stream,zcMax); <- parameter wrong arrangement, zcmax is not defined; clmax?) and an unused variable ( tmpH: Integer;).
However, after fixing that the report designer is working but the preview shows nothing, giving exception errors of several kinds or EAccessViolation errors.
It would help me a lot to get a better Fastreport support for TRichview components.
Thank you Marco!!
your component is the long awaited (i'm sure i'm not the only one ) "missing link" between trichview and fastreport...
Here is a small demo project (http://www.kmedv.at/delphi/TRichView_Fa ... t_Demo.zip) if someone would like to give it a try.
I've tested it with Delphi XE, Fastreport 4.11.9, Trichview 13.1 and ufrxRichViewView.pas r859
Thank you again Marco, i hope that we will get an "official" version for TRichView soon (Sergey?)
Best Regards
Erich
your component is the long awaited (i'm sure i'm not the only one ) "missing link" between trichview and fastreport...
Here is a small demo project (http://www.kmedv.at/delphi/TRichView_Fa ... t_Demo.zip) if someone would like to give it a try.
I've tested it with Delphi XE, Fastreport 4.11.9, Trichview 13.1 and ufrxRichViewView.pas r859
Thank you again Marco, i hope that we will get an "official" version for TRichView soon (Sergey?)
Best Regards
Erich
I'm still debugging on the FestReport with no success.
Environment:
Still D7, Fastreport 4.12, TRichview 13.7
The source still has a syntax error, as mentioned above.
I corrected it this was:
So the code has no syntax error any more; it does compile and the new Richview-Komponent is visible in the Designer and can be place.
But during preview or print, the component stays blank/empty. This happens either if it should be loaded with a file or a query field or with direct content.
Does anybody has successfully get this working with D7 and can share the source with us here?
Thanks
Bernd
Environment:
Still D7, Fastreport 4.12, TRichview 13.7
The source still has a syntax error, as mentioned above.
I corrected it this was:
Code: Select all
procedure TfrxCustomRichViewView.WriteData(Stream: TStream);
var
ms: TCompressionStream;
begin
if (FMetaFile.Width > 0) and (FMetaFile.Height > 0) then
begin
ms := TCompressionStream.Create(clMax,Stream);
FMetaFile.SaveToStream(ms);
ms.Free;
end;
end;
But during preview or print, the component stays blank/empty. This happens either if it should be loaded with a file or a query field or with direct content.
Does anybody has successfully get this working with D7 and can share the source with us here?
Thanks
Bernd
Hi Bernd,
unfortunately I never tested the component with D7 since we don't have that here. As far as I see it it should not be a problem of your FR or TRichView version. Maybe you can put togehter a small demo project and send it to me. So I can see whether there is any other problem - or you try to compile the demo of erich_k4.
regards
Marco
unfortunately I never tested the component with D7 since we don't have that here. As far as I see it it should not be a problem of your FR or TRichView version. Maybe you can put togehter a small demo project and send it to me. So I can see whether there is any other problem - or you try to compile the demo of erich_k4.
regards
Marco
I'm still not any further with this issue. I'm trying to get the demo from erich_k4 running. But the "Show report" is failing with
" raise EDecompressionError.CreateRes(@sInvalidStreamOp);"
=> invalid Stream Operation.
Or is this simply related to the image stuff (gifimg, pngimg et cetera), which is present in XE2 but not in D7?
I also reduced the rvf file to a simple "test" text to be sure it's not a image processing issues, but no luck.
Does anybody reading here has a clue, how to get this Fast Report wrapper running with D7?
" raise EDecompressionError.CreateRes(@sInvalidStreamOp);"
=> invalid Stream Operation.
Or is this simply related to the image stuff (gifimg, pngimg et cetera), which is present in XE2 but not in D7?
I also reduced the rvf file to a simple "test" text to be sure it's not a image processing issues, but no luck.
Does anybody reading here has a clue, how to get this Fast Report wrapper running with D7?
I'm debugging on this for hours now. I can't get that demo from erich_k4 to work. So I'm working within my application to nail down the problem.
I managed to change some stuff so that data from the tables memo fields (contain the RTF text) is correctly transferred by a FReportHelper.RichView.LoadRTFFromStream (procedure TfrxCustomRichViewView.GetData).
But the Trichviewview fields on the report are still empty/blank.
Maybe someone can help me with that.
1.) What data is transfered through TfrxCustomRichViewView.DefineProperties?
My Debugger shows no data and nearly all variable are not available/visible (although $D+, l+, y+ are set)
2.) What is the purpose of FMetafile? How is it written and read?
This stays allways empty in my debugging. Maybe the procedures ReadData and Writedate should Read/Write into FMetafile, but the Stream argument in ReadData (which reads from Stream, decompresses it and writes into FMetafile) is always size=0. Therefore WriteData (which Reads from FMetafile and writes compressed into TStream) also stays empty.
3.) What should be the content of the Stream argument.
I assume: For a TRichviewview field the data is read from the database table by procedure GetData and the RTF/RVF blob is transferred to FReportHelper.RichView.
Then Trichview is drawing/rendering the RTF on the canvas, which is then stored in FMetafile in EMF/WMF Format. This Metafile is then stored in a compressed stream within Fastreport (through WriteData).
For the printing or preview process fastreport shovels the compressed streams of each field back by ReadData, which then displayed/printed directly from the EMF/WMF format.
4.) Is my above assumption about the data processing correct?
I managed to change some stuff so that data from the tables memo fields (contain the RTF text) is correctly transferred by a FReportHelper.RichView.LoadRTFFromStream (procedure TfrxCustomRichViewView.GetData).
But the Trichviewview fields on the report are still empty/blank.
Maybe someone can help me with that.
1.) What data is transfered through TfrxCustomRichViewView.DefineProperties?
My Debugger shows no data and nearly all variable are not available/visible (although $D+, l+, y+ are set)
2.) What is the purpose of FMetafile? How is it written and read?
This stays allways empty in my debugging. Maybe the procedures ReadData and Writedate should Read/Write into FMetafile, but the Stream argument in ReadData (which reads from Stream, decompresses it and writes into FMetafile) is always size=0. Therefore WriteData (which Reads from FMetafile and writes compressed into TStream) also stays empty.
3.) What should be the content of the Stream argument.
I assume: For a TRichviewview field the data is read from the database table by procedure GetData and the RTF/RVF blob is transferred to FReportHelper.RichView.
Then Trichview is drawing/rendering the RTF on the canvas, which is then stored in FMetafile in EMF/WMF Format. This Metafile is then stored in a compressed stream within Fastreport (through WriteData).
For the printing or preview process fastreport shovels the compressed streams of each field back by ReadData, which then displayed/printed directly from the EMF/WMF format.
4.) Is my above assumption about the data processing correct?