Grid Widget has restriction or not?

Author: (_baterfly)

 I have tried to use Grid Widget in my Windows Application. The reason to use Grid Widget, It looks much nicer and you can easer add additional behaviour to your data representation. It works well for small massive of data, but strange behaviour when number of grid records achieve 32000. After several tests on a different machines I have such results: 32560, 32670, 32618, 32580 and so on. All results in interval between 31600 - 32670 records per Grid Widget.
Every time my application shuted down and I received this message:


If you have any idea or experience how resolve this issue welcome :)


  1. looks like a memory problem, doesn't it?

    And the grid widget may have it's own data buffer so you have to allocat double space.

    Any way to reduce these masses of data with some filter (who wants to scroll through 32K of records)?

    Using lookup to find the number of hits (without moving data) and then give a nice option:

    askmess "Too many hits (nnnnnn) what do you want to do?","add some selections, use another presentation"




    P.S: once upon a time, we implemented a corporate telephone book application.

    In acceptance test, one retrieved the data without any profile and claimed that it took far too long to show all the info.

    Our reply was: what is the use case to go trough all 30K entries line by line. You have no name, no department, no xxxx?

    Author: ulrich-merkel (
  2. Of course I can use $hit in case if I read data from Database. But in my case, I try to parse XML file and populate all data directly to my grid.

    Author: _baterfly (
  3. The grid widget is a mean of data presentation, so it is choosen in design to support user interaction.

    Let me repeat my question: what does an enduser wants to do with that monster of lines?
    Scroll through it line by line so he has something to do for the next couple of days ??

    If you do not have user interaction, there is no justification to use the grid widget.


    But it is totally up to you how you cope with this situation.



    BTW. you can filter even in your XMLREADER parsing
    and/or stop processing after a given number of records;
    XMLREADER is no "do or die".

    As the XML document is parsed, the operations in the handler instance are activated based on what the parser encounters in the XML document. When PARSE or PARSEFILE returns, either the entire XML document has been successfully parsed, or a fatal error has occurred, in which case a negative return value is returned.

    A fatal error can be caused by:

    • An XML document that contains invalid XML
    • A handler component's callback operation returning a negative value or setting $status to a negative value.



    Author: ulrich-merkel (