Current filter:
                                You should refresh the page.
                                  • operating system : Windows 7 x64 build 7600
                                    system language : Russian
                                    system up time : 6 hours 52 minutes
                                    program up time : 46 minutes 8 seconds
                                    processors : 2x Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz
                                    physical memory : 1174/2047 MB (free/total)
                                    free disk space : (C:) 25,42 GB
                                    display mode : 1280x1024, 32 bit
                                    process id : $64c
                                    allocated memory : 657,37 MB
                                    executable : Debt.exe
                                    exec. date/time : 2011-10-24 12:19
                                    version : 1.6.4.49
                                    compiled with : BCB 2006/07
                                    madExcept version : 3.0n
                                    callstack crc : $d9a9726b, $9d31798c, $d6d36093
                                    exception number : 1
                                    exception class : EOutOfMemory
                                    exception message : Out of memory.
                                    main thread ($1a4):
                                    00516c2b +00f Debt.exe system 8807 +1 TObject.NewInstance
                                    00c0b65f +023 Debt.exe Dxcustomtree TdxTreeCustomNode.AddNode
                                    00c0b634 +008 Debt.exe Dxcustomtree TdxTreeCustomNode.AddChild
                                    00c01f98 +008 Debt.exe dxXMLDoc TdxXMLNode.AddChild
                                    00bd622b +05b Debt.exe dxXLSXExport TdxXLSXSheet.SetDataAsString
                                    00bd777c +110 Debt.exe dxXLSXExport TdxXLSXExportProvider.WriteData
                                    00bd6b77 +1f3 Debt.exe dxXLSXExport TdxXLSXExportProvider.CreateXMLStructure
                                    00bd68dc +054 Debt.exe dxXLSXExport TdxXLSXExportProvider.Commit
                                    00bbea40 +018 Debt.exe cxGridExportLink TcxGridCustomExport.DoExport
                                    00bbe704 +108 Debt.exe cxGridExportLink ExportGridToFile
                                    00bc51e3 +01f Debt.exe cxGridExportLink ExportGridToXLSX
                                    0045236c +3d8 Debt.exe frmclaimunit.cpp 2120 +28 TfrmClaim.actExportToExcelAccept
                                    009d2da5 +015 Debt.exe stdactns 851 +1 TCommonDialogAction.DoAccept
                                    009d2e17 +047 Debt.exe stdactns 868 +8 TCommonDialogAction.ExecuteTarget
                                    007f64b4 +01c Debt.exe Classes 10756 +3 TComponent.ExecuteAction
                                    005fb94e +00a Debt.exe cxGridCustomView TcxGridSite.ExecuteAction
                                    0079628e +01a Debt.exe forms 5920 +1 _16753
                                    00796340 +020 Debt.exe forms 5946 +3 TCustomForm.CMActionExecute
                                    00481495 +031 Debt.exe frmclaimunit.h 1598 +2 TfrmClaim.Dispatch
                                    007a3e77 +2bb Debt.exe Controls 5146 +83 TControl.WndProc
                                    007a9c37 +007 Debt.exe Controls 8293 +1 TWinControl.WMNCDestroy
                                    007a3e77 +2bb Debt.exe Controls 5146 +83 TControl.WndProc
                                    007a7ec3 +4fb Debt.exe Controls 7304 +111 TWinControl.WndProc
                                    00791b0f +553 Debt.exe forms 3512 +136 TCustomForm.WndProc
                                    007a3b04 +024 Debt.exe Controls 5021 +5 TControl.Perform
                                    0079b5cf +023 Debt.exe forms 9016 +2 TApplication.DispatchAction
                                    007992cf +407 Debt.exe forms 7769 +82 TApplication.WndProc
                                    007f7504 +014 Debt.exe Classes 11583 +8 _17350
                                    772000e3 +02b ntdll.dll KiUserCallbackDispatcher
                                    007f670f +013 Debt.exe Classes 11010 +2 TBasicActionLink.Execute
                                    0066ea56 +052 Debt.exe dxBar TdxBarItem.DoClick
                                    0066e9d3 +03b Debt.exe dxBar TdxBarItem.DirectClick
                                    006691af +11f Debt.exe dxBar TdxBarItemControl.ControlUnclick
                                    0066c641 +059 Debt.exe dxBar TdxBarButtonControl.ControlUnclick
                                    006944b7 +0df Debt.exe dxBar TCustomdxBarControl.DoLButtonUp
                                    00692fe8 +028 Debt.exe dxBar TCustomdxBarControl.WMLButtonUp
                                    007a3e77 +2bb Debt.exe Controls 5146 +83 TControl.WndProc
                                    007a7ec3 +4fb Debt.exe Controls 7304 +111 TWinControl.WndProc
                                    00693abf +1bb Debt.exe dxBar TCustomdxBarControl.WndProc
                                    007a75ec +02c Debt.exe Controls 7073 +3 TWinControl.MainWndProc
                                    007f7504 +014 Debt.exe Classes 11583 +8 _17350
                                    74f9810d +00a USER32.dll DispatchMessageA
                                    0068f573 +20f Debt.exe dxBar TdxBarCustomPopupMenu.Popup
                                    00603c20 +060 Debt.exe cxGridPopupMenu TcxGridPopupMenu.TryPopupAsIcxPopupMenuIntf
                                    00603c32 +072 Debt.exe cxGridPopupMenu TcxGridPopupMenu.TryPopupAsIcxPopupMenuIntf
                                    006036fe +046 Debt.exe cxGridPopupMenu _16407
                                    0060398a +0a2 Debt.exe cxGridPopupMenu _16409
                                    00603aab +10b Debt.exe cxGridPopupMenu TcxGridPopupMenu.DoPopup
                                    006033a0 +028 Debt.exe cxGridPopupMenu _16393
                                    005cc46b +073 Debt.exe cxGrid TcxCustomGrid.SendNotifications
                                    005faf27 +04b Debt.exe cxGridCustomView TcxGridSite.DoContextPopup
                                    007a5308 +0bc Debt.exe Controls 5798 +22 TControl.WMContextMenu
                                    007abd18 +06c Debt.exe Controls 9632 +7 TWinControl.WMContextMenu
                                    007a3e77 +2bb Debt.exe Controls 5146 +83 TControl.WndProc
                                    007a7ec3 +4fb Debt.exe Controls 7304 +111 TWinControl.WndProc
                                    00597e95 +119 Debt.exe cxControls TcxControl.WndProc
                                    005fb5b6 +01e Debt.exe cxGridCustomView TcxGridSite.WndProc
                                    007a75ec +02c Debt.exe Controls 7073 +3 TWinControl.MainWndProc
                                    007f7504 +014 Debt.exe Classes 11583 +8 _17350
                                    772000e3 +02b ntdll.dll KiUserCallbackDispatcher
                                    74fa7b0a +016 USER32.dll CallWindowProcA
                                    005106be +0ee Debt.exe VCLFixPack _16427
                                    007a481c +00c Debt.exe Controls 5372 +1 TControl.WMRButtonUp
                                    007a3e77 +2bb Debt.exe Controls 5146 +83 TControl.WndProc
                                    00516c8c +008 Debt.exe system 8832 +1 TObject.Free
                                    00803234 +008 Debt.exe SysUtils 16983 +2 FreeAndNil
                                    00557f90 +014 Debt.exe cxClasses _16625
                                    00557fc8 +010 Debt.exe cxClasses cxRemoveObjectLink
                                    00597f43 +1c7 Debt.exe cxControls TcxControl.WndProc
                                    005fb5b6 +01e Debt.exe cxGridCustomView TcxGridSite.WndProc
                                    007a75ec +02c Debt.exe Controls 7073 +3 TWinControl.MainWndProc
                                    007f7504 +014 Debt.exe Classes 11583 +8 _17350
                                    74f9810d +00a USER32.dll DispatchMessageA
                                    00799ca4 +0fc Debt.exe forms 8105 +23 TApplication.ProcessMessage
                                    00799cde +00a Debt.exe forms 8124 +1 TApplication.HandleMessage
                                    00799fd3 +0b3 Debt.exe forms 8223 +20 TApplication.Run
                                    004b1d17 +30b Debt.exe frmmainunit.cpp 296 +79 WinMain_
                                    004afd37 +00f Debt.exe debt.cpp 33 +2 WinMain
                                    00bc7430 +14c Debt.exe __startup
                                    75563675 +010 kernel32.dll BaseThreadInitThunk

                                • Paulo (DevExpress Support) 10.27.2011

                                  Hello,
                                  I have just tried to reproduce this issue, but failed (even with a large amount of data). Please answer a couple of questions that may help us:

                                  1. Does the problem occur often, rarely, or every time?
                                  2. Does it take much time to export the grid?
                                  A sample project to demonstrate the problem would be very much appreciated.
                                  Best Regards,
                                  Paulo
                                • Vladimir Ulchenko 10.27.2011

                                  please tell me how large is your "large"? :)
                                  according to the bugreport I received the attempt was made to export 147157 records

                                  1. since I put new exe built with v. 2007 into production quite recently it is the very first time I got such report
                                  2. according to logging and bugreport info it took ~3-4 minutes until it crashed
                                  capability to export grid contents into modern excel versions was one of the main motivating reasons to upgrade devex version, it even forced me to change bds version and it took me ~ whole month to smooth away most of the problems I faced (and I still do) during migration
                                  users of my app have been waiting for that feature for several years and it is very discouraging to see that apparently it was implemented sub-optimal way :(
                                • Paulo (DevExpress Support) 10.28.2011

                                  Hello,
                                  Thank you for your reply.
                                  << Please tell me how large is your "large"? :)
                                  >> I have tested the ExportGridToXLSX function using 200000 records, each with 5 string(20) fields and it takes less than a minute.
                                  As for the memory usage issue, we received a similar report in the past (ExportGridToXLSX Uses a lot of memory). We also made efforts to improve the ExportGridToXLSX performance and reduce the memory usage (XLSX export - Low performance when exporting large amounts of data in Unicode IDEs), but it seems that there is not any other obvious way to optimize the export to Excel. We appreciate your understanding.
                                  Best Regards,
                                  Paulo

                                • Vladimir Ulchenko 10.28.2011

                                  mine dataset currently has 113 fields and still constantly growing as the app evolves
                                  but tbh I don't think that that really matters
                                  > it seems that there is not any other obvious way to optimize the export to Excel
                                  of course there is always another way
                                  may I ask you why you create and build the entire xml tree in memory creating LOTS of objects before streaming it? why not to simply write the data row by row or avoid that high-level internal tree structure??
                                  I must admit that I know virtually nothing about xlsx format but I think it is quite possible to rewrite your exporting infrastructure because this is rather poor implementation
                                  and even if you decide to reject my suggestion and keep the functionality unusable for real-world application as it currently is I believe you should close the issue with the "as designed" resolution not as "can't reproduce" because it is obviously reproducible but your engineers designed the export that way

                                1 Solution

                                Creation Date Importance Sort by

                                Hello Vladimir,
                                I have discussed this behavior with our developers. I regret to inform you that there is no easy way to reduce the current memory usage due to XLSX format peculiarities. XLSX is an archived XML file. Additionally, we have to create a special file header that contains information about the whole document. So, the Export mechanism requires all cells to be loaded, to correctly create and format the output file. I can only suggest not increasing the amount of memory available on your machine. Please accept our apologies for not being helpful this time.
                                Note that we are planning to add support for Delphi XE2 x64 IDE with the next major build, 2011 vol 2. With this IDE, your application will not be limited to 4GB memory (actually, this value is even less). Thus, you will be able to export more records.
                                Thanks,
                                Valdemar

                                Show all comments
                                • Vladimir Ulchenko 11.02.2011

                                  > there is no easy way to reduce the current memory usage due to XLSX format peculiarities
                                  oh, really. I wonder how ms excel 2007+ handles 1m+ rows then?
                                  > we are planning to add support for Delphi XE2 x64 IDE with the next major build
                                  I don't care much about delphi 64 since I use bcb and it will take codegear another few years to produce anything useful in this regard

                                • Valdemar (DevExpress Support) 11.02.2011

                                  Hello Vladimir,
                                  We do not have information how MS Excel is designed.
                                  Please note that XLSX is a native format of this program, whereas our Grid is forced to convert data from its custom format to XLSX.
                                  Thanks,
                                  Valdemar

                                • Vladimir Ulchenko 11.03.2011

                                  of course you don't otherwise you wouldn't have created the export to xlsx such ridiculous and inefficient way
                                  but I believe that internal excel storage format has nothing to do with its streaming capabilities
                                  its existence and ability to handle many rows without much problems (as "out of memory" induced by devex export) should give you some hints that it is quite possible to implement export another, more efficient and smart way
                                  moreover there are 3rd party components exist that able to export to newer excel format almost without using any extra RAM at all
                                  in my test EMS Advanced Data Export created large xlsx file with many rows/columns without any memory related troubles
                                  so your developers really should try harder to implement the export properly

                                • Valdemar (DevExpress Support) 11.04.2011

                                  Hello,
                                  Thank you for the additional clarification. We understand your point of view.
                                  We will possibly update the export functionality with future TcxGrid versions.
                                  Thanks for your patience.
                                  Thanks,
                                  Valdemar

                                • Michel Lenweiter 04.29.2013

                                  We do have exactly the same problem and also with the latest Version. When are you gonna solve this problem?
                                  with ExportGridToExcel we can export more data as with ExportGridToXLSX, but ExportGridToExcel his limited by the XLS format.
                                  That's why we have to use ExportGridToXLSX to export more than ~62'000 lines in Excel.

                                  When are you gonna solve this Out of Memory issue?

                                • Paulo (DevExpress Support) 04.29.2013

                                  I am afraid that we do not have any ETA for resolving this "Out of Memory" problem.