I attached a couple methods from our app, in 2 methods you can see how we add images to
Infragistics.Documents.Report.Report [and how we disposed objects]
and in 2 methods how we try to save report to mempory or to FS ..
When we try to PUBLISH [not create, exception is in PUBLISH method] REPORT with ~ 1000 rows [each row 2 images ~10 kb, total 2000 images] we got out of memory exception ..
I used “Scietech.Net Memory Profiler” and found that Infragistics.Documents.Color and Infragistics.Documents.SolidColourBrush
objects are not properly disposed, but I do not think that it causes that problem [size of objects that was not dispozed is small]..
Is it limitation in size of Infragistics.Documents.Report.Report
that can be saved to FS using Infragistics.Documents.Report.Report Publish method ?
Do you have any suggestion related with memory issue and Infragistics.Documents.Report.Report ?
Hello ,
Thank you for the provided code snippet.
In order to investigate this issue further for you, could you please let me know the exactly version of Infragistics, which you are using. Also I have reviewed the code snippet and I was not able to find a method, which fills the report with content, so could you please give me a sample which I could run on my machine in order to see your issue or please provide me the methods, which you are using to fill the report.
I am waiting for your details.
We are using Infragistic35.WebUI.Documents.v9.1
I attached a couple methods that , together with 2 from images that I attached before, fills the report with content ..
But problem is not memory leak, problem is architecture of component.
It builds document in memory, means that its execution depends of memory of machine where is running.
Is it possible to STREAM data to FS when we build document ?
Without streaming it is not possible to use it for big size pdf file .
I am not sure how it works.
By any example that I found we first create report
PDFDoc = new Infragistics.Documents.Report.Report();
after that add data and images in report [build REPORT in memory]
and ond the end using Publish method [with save it to file or tu memory] .
PDFDoc.Publish(any stream, FileFormat.PDF);
or
PDFDoc.Publish(file URL, FileFormat.PDF);
How it works with SAVE() METHOD ?
Do I need , after I create new REPORT document to call SAVE() method and
on the end uses SAME STREAM [from SAVE] to call PUBLISH() with same STREAM ?
Is any example of streaming ?
Hello Dmcmichael,
You just need to call the Save method. If you can provide me with a full sample that I can run I could investigate it further.
Sincerely,
Georgi Sashev
Developer Support Engineer
Infragistics, Inc.
http://es.infragistics.com/support
Were you able to handle this.
If you need further assistance with this matter I will be glad to help.
Sorry .. I did not have time..
But for this question I will create and attach complete app , that you can use directly, in a day or 2 ..
Thank you for the update. I will wait for your response and sample application.
If installed the win controls you should have those dlls in the GAC. You will just need to change the references.
For any further questions do not hesitate to contact me.
Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4
If you installed our products for win forms you should have the dlls in the GAC just change the references.
When I started project and asked for help with examples [on Windows Forms forum]http://community.infragistics.com/forums/t/63265.aspx
support points to this reference [that I used ] :http://help.infragistics.com/NetAdvantage/ASPNET/2011.1/CLR4.0/?page=DocumentEngine_Writing_Reports.html
all libs there are "WebUI" what are "Win dlls" ?where we can download them ?
I reviewed the sample. You are using our Web dlls in Win forms project. Can you revert and use the win dlls. After that test this againg and let me know the results.
Did you have time to run app ?