Nested datawindow within a nested datawindow

I have a report, that contains a datawindow, which itself contains a
datawindow. Everything is working fine until the number of retrieved lines
get's over about 1100 primary and over about 3200 retrieved nested lines.
Although the task manager (I'm using Powerbuilder 7.0.3 on Windows 2000)
shows me, that there is still enough free memory, the data retrieval stops
and Powerbuilder (or the application which called the Retrieve() method)
ends itself without any error message. That allways happens when the
datawindow has allocated about 70 MB of  virtual memory. (About 99% of those
70 MB are allocated during the retrieval of the nested lines.) Can you help
me?

Thanks in advance,
Detlef



-1
Detlef
6/18/2001 2:30:36 PM
📁 sybase.powerbuilder.datawindow
📃 28057 articles.
⭐ 5 followers.

💬 4 Replies
👁️‍🗨️ 1584 Views

That's not a high number of rows at all.  You can try using the new feature
in 703 to change memory management:
dw_1.object.datawindow.storagepagesize='large'

--
Terry Dykstra (TeamSybase)
Please state PB / OS / DB versions in your post.
MySybase http://my.sybase.com/mysybase
Search Deja: http://www.pfcguide.com/_newsgroups/search.asp

"Detlef Keil" <Detlef.Keil@MAPWARE.de> wrote in message
news:En8UYZA#AHA.261@forums.sybase.com...
> I have a report, that contains a datawindow, which itself contains a
> datawindow. Everything is working fine until the number of retrieved lines
> get's over about 1100 primary and over about 3200 retrieved nested lines.
> Although the task manager (I'm using Powerbuilder 7.0.3 on Windows 2000)
> shows me, that there is still enough free memory, the data retrieval stops
> and Powerbuilder (or the application which called the Retrieve() method)
> ends itself without any error message. That allways happens when the
> datawindow has allocated about 70 MB of  virtual memory. (About 99% of
those
> 70 MB are allocated during the retrieval of the nested lines.) Can you
help
> me?
>
> Thanks in advance,
> Detlef
>
>
>


-1
Terry
6/18/2001 2:59:52 PM
Hi Detlef,
i hav PB6.5, can you use "SAVE ROWS TO DISK" for the two datawindows, then the
memory shoud not be the problem.

Willi

On Mon, 18 Jun 2001 16:30:36 +0200,

 in powersoft.public.powerbuilder.datawindow
Detlef Keil <Detlef.Keil@MAPWARE.de> wrote: 
>I have a report, that contains a datawindow, which itself contains a
>datawindow. Everything is working fine until the number of retrieved lines
>get's over about 1100 primary and over about 3200 retrieved nested lines.
>Although the task manager (I'm using Powerbuilder 7.0.3 on Windows 2000)
>shows me, that there is still enough free memory, the data retrieval stops
>and Powerbuilder (or the application which called the Retrieve() method)
>ends itself without any error message. That allways happens when the
>datawindow has allocated about 70 MB of  virtual memory. (About 99% of those
>70 MB are allocated during the retrieval of the nested lines.) Can you help
>me?
>
>Thanks in advance,
>Detlef
>
>
>

---== Posted via the PFCGuide Web Newsreader ==---
http://www.pfcguide.com/_newsgroups/group_list.asp
1
Willibald
6/18/2001 6:13:40 PM
Sorry, but this didn't change anything. I explored this problem further by
adding the following Lines to the DataWindow control's RetrieveRow-Event:

   int liFile
   lifile = FileOpen( 'debug.log', LineMode!, Write!, LockWrite!)
   FileWrite( liFile, "Retrieved Row " + String( row ) + ". Memory: " +
String( this.Object.DataWindow.Storage ) )
   FileClose( liFile )

The resulting logfile contained the following Lines (I added line numbers
for clearification):

    1: Retrieved Row 1. Memory: 53248
    2: Retrieved Row 2. Memory: 53248
    3: Retrieved Row 3. Memory: 53248
       ....
 3179: Retrieved Row 3179. Memory: 487424
 3180: Retrieved Row 3180. Memory: 487424
 3181: Retrieved Row 3181. Memory: 487424
 3182: Retrieved Row 0. Memory: 462848
 3183: Retrieved Row 0. Memory: 462848
 3184: Retrieved Row 0. Memory: 462848
       ....
11948: Retrieved Row 0. Memory: 565248
11949: Retrieved Row 0. Memory: 565248
11950: Retrieved Row 0. Memory: 565248

Thus the logfile tells me, that about 0.5 MB are allocated for the
DataWindow. Nevertheless, the Windows 2000 Taskmanager says, that about 70
MB are allocated during the retrieval. This amount of 70 MB is about the
same when I start the retrieve in Powerbuilder 7.0.3 and when I start it in
my application. I suppose that most of the the 70 MB are used for allocating
DataWindow objects and the 0.5 MB are for the information I retrieved. Is
there a software dependant upper bound for memory allocation in PB?

Thanks a lot,
Detlef

P.S.: In my last post I didn't write that I'm using Adaptive Server Anywhere
7.


"Terry Dykstra" <dontreply_tdykstra@cfol.ab.ca> schrieb im Newsbeitrag
news:nAMjgpA#AHA.85@forums.sybase.com...
> That's not a high number of rows at all.  You can try using the new
feature
> in 703 to change memory management:
> dw_1.object.datawindow.storagepagesize='large'
>
> --
> Terry Dykstra (TeamSybase)
> Please state PB / OS / DB versions in your post.
> MySybase http://my.sybase.com/mysybase
> Search Deja: http://www.pfcguide.com/_newsgroups/search.asp
>....


0
Detlef
6/19/2001 11:31:54 AM
Hi,
as you said most of memory is not used by data. Data window print preview
presentation is problem (you can't turn it off, you have nested reports).
There is the main memory alocated. So you should start print using
PrintOpen(),  Print()  in smaller steps and then PrintClose(). Needs coding,
but it is possible.
Bye, Damir


0
Damir
6/20/2001 1:21:28 PM
Reply: