1. Miller Rhodes
  2. PowerBuilder
  3. Thursday, 4 November 2021 16:35 PM UTC

I have an interesting issue.

 

I have a window inherited from w_sheet with a u_dw sitting on it.  I am using the pfc_retrieve to run a retrieve with 2 parameters.

This pulls in roughly 14,000 records.  It takes about 5 to 7 seconds for the whole retrieve to occur and for control to pass

completely back to the user.

When I ultimately close this window, my application gets locked and stays locked for a few minutes.

I am running Powerbuilder 2019 R3 Build 2703.

This has happened with some other windows we have and no idea what's going on.  

Miller Rhodes Accepted Answer Pending Moderation
  1. Monday, 8 November 2021 16:10 PM UTC
  2. PowerBuilder
  3. # 1

Thanks for all of the responses. you guys are all superstars.  I am trying different combinations of the advice given here and will report back

Comment
There are no comments made yet.
David Peace (Powersoft) Accepted Answer Pending Moderation
  1. Monday, 8 November 2021 15:04 PM UTC
  2. PowerBuilder
  3. # 2

Hi

The question I would ask is what code is being run in the closequery & close events. The PFC does all sorts of processing to check for updates pending etc. I would step through in the debugger to find out what code is being processed and decide if it's needed.

Cheers

David

Comment
There are no comments made yet.
Roland Smith Accepted Answer Pending Moderation
  1. Friday, 5 November 2021 03:19 AM UTC
  2. PowerBuilder
  3. # 3

Maybe retrieving that many rows isn't a good application design.

 
Comment
  1. mike S
  2. Monday, 8 November 2021 14:06 PM UTC
14,000 rows into a data entry screen is a bad design. However, the reality is that pulling out that many rows into a datawindow/store is often required for reporting /data extraction. In most cases it is to get it into a file, usually excel.



No one will want to use PB if it can't handle as few as 14,000 rows in a datawindow.

Having said that, you may need to go to 64 bit if you are not already compiling for that.
  1. Helpful
  1. Miguel Leeuwe
  2. Monday, 8 November 2021 18:50 PM UTC
Another scenario could be doing specific data migrations.
  1. Helpful
  1. Miguel Leeuwe
  2. Monday, 8 November 2021 18:51 PM UTC
... or a mad manager who allows the users to retrieve all 52,000 rows and 200 columns, haha.
  1. Helpful
There are no comments made yet.
Ronnie Po Accepted Answer Pending Moderation
  1. Thursday, 4 November 2021 22:58 PM UTC
  2. PowerBuilder
  3. # 4

Hey Miller,

Is anything happening after retrieval (in the retrieveend event or elsewhere) that is changing each row's item status to DataModified?

As a quick and dirty test, temporarily override the DW's pfc_updatespending() event and return 0, then see if the window closes faster.

 

 

Comment
There are no comments made yet.
mike S Accepted Answer Pending Moderation
  1. Thursday, 4 November 2021 18:17 PM UTC
  2. PowerBuilder
  3. # 5
Comment
There are no comments made yet.
Chris Pollach @Appeon Accepted Answer Pending Moderation
  1. Thursday, 4 November 2021 16:46 PM UTC
  2. PowerBuilder
  3. # 6

Hi Miller;

  Try adding this to the "u_dw" ancestor's "Destructor" event ...

  • This.reset()
  • This.dataobject = ""

I would also recommend updating to PB2019R3 build 2728 MR.

Regards ... Chris

Comment
There are no comments made yet.
  • Page :
  • 1


There are no replies made for this question yet.
However, you are not allowed to reply to this question.