1. Philip Troise
  2. PowerBuilder
  3. Tuesday, 20 July 2021 16:23 PM UTC

below fixed the problem recommend by Chris Pollack

 

Have you tried on the DC/DS’s destructor event …

 

THIS.RESET()

THIS.DataObject =””

 

 

powerbuilder 2019

Build 2702

 

7/21 Update

I took the executable and ran it on my laptop computer. The issue was completely gone. user gained Instantaneous control. So now I have to figure out why this happens on our servers? 

our servers are windows server 2016. 

 

 

7/20 update

I just observed that accounts that have over 300 records in the w_update_selection window, when closed, take 10 seconds for user to gain access to select another ribbon menu 

An account that had just 5 records, it was instantaneous. 

Why does the number of records influence how fast the window returns control to the user, after close window is issued

 

ISSUE Description

When selecting “Update Reservation” on the XML Ribbon menu, below case will first popup w_update_selection", "1", Then open w_update_selection

After hitting close, 15 seconds later, the messagebox("w_update_selection", "2") pops up.

 

Only until after this does control return to the use to select another xml menu option…

messagebox(w_update_selection", "1") does not pop up again, so it is not re selecting the last XML ribbon menu selection, control just goes into limbo in between the openWithParm and the next processing line

 

HELP!!!! What is happening during this time frame??? 

 

of_opensheet in w_main    ----------------------------------------------------------------------------------

case "Update Reservation"

messagebox("w_update_selection", "1")

IF IsValid(w_checkin_reservation) = FALSE THEN

       IF IsValid(w_checkin_sheet) = FALSE THEN

           IF IsValid(w_checkin_upddel) = FALSE THEN

                IF IsValid(w_maintenance_guest) = FALSE THEN

                     IF IsValid(w_reservation_sheet) = FALSE THEN

                        IF IsValid(w_room_layout) = FALSE THEN

                           IF IsValid(w_folio_management) = FALSE AND IsValid(w_folio_management_hist) = FALSE THEN

                                 str_confirm_1.confirm = 0

                                 OpenWithParm(w_update_selection, "R", w_main)                                                                                               messagebox("w_update_selection", "2")

                                 RETURN

                           END IF

                        ELSE

                            str_confirm_1.confirm = 0

                            OpenWithParm(w_update_selection,  "R", w_main)

                            RETURN

                        END IF

                    END IF  

               END IF

           END IF

     END IF

END IF  

 

Mark Lee @Appeon Accepted Answer Pending Moderation
  1. Wednesday, 21 July 2021 06:41 AM UTC
  2. PowerBuilder
  3. # 1

Hi Philip,

 

Thanks for reporting this problem.

From your description, it might be a RibbonBar performance issue.

However, I can't reproduce this issue using the sample code you provided.

I personally agree with Miguel, we recommend you please report this problem to our ticket system: https://www.appeon.com/standardsupport/newbug so it can be properly received and tracked. 

Please also provide a sample PB test case (with PBT / PBL) when you submit it to the ticket system.

Thanks in advance.

 

Regards,

Comment
There are no comments made yet.
René Ullrich Accepted Answer Pending Moderation
  1. Wednesday, 21 July 2021 05:36 AM UTC
  2. PowerBuilder
  3. # 2

To find performance issues the best way is to run your application with enabled tracing with clock timer (see "Profiling" in "System Options"). Then you can check the trace using one of the trrace tools ("New"-Dialog, "Tool" tab), e.g. "Profiling Routine View".

Comment
There are no comments made yet.
Miguel Leeuwe Accepted Answer Pending Moderation
  1. Tuesday, 20 July 2021 16:56 PM UTC
  2. PowerBuilder
  3. # 3

your:

"OpenWithParm(w_update_selection, "R", w_main)"

doesn't "feel right".

Is w_update_selection inherited from w_main?

w_main should be a valid instance of a w_main window in that case.

w_main whould be an instance of the parentwindow where you open the w_update_selection window from.

Are you using an MDI frame application? Try using gnv_app.of_getFrame().

 

Try

"OpenWithParm(w_update_selection, "R", this)" 

instead.

Then, if you are using pfc's the way of opening a window might not be the ideal way.

Sorry, but maybe we need more information before we can really get a clear idea of what's going wrong.

regards,

Comment
  1. Philip Troise
  2. Tuesday, 20 July 2021 17:14 PM UTC
w_update_selection is inherited from window



It tried all the below with no change in results



OpenWithParm(w_update_selection, "R", this)

OpenSheetWithParm(w_update_selection, "R", w_main)

/OpenSheetWithParm(w_update_selection, "R", this)



not sure how to use gnv_app.of_getFrame(). to solve this problem
  1. Helpful
  1. Miguel Leeuwe
  2. Tuesday, 20 July 2021 17:19 PM UTC
Well, I'll just assume then that you'd be using PFC classes, since you have a w_main window and "of_opensheet ". Since you are not opening w_update_selection using the of_opensheet() function itself. then what call are you doing to open it from WHERE and how do you end up opening the window from of_opensheet (of another window, since it's not inherited from anything but "window").

Sorry I don't understand, maybe a small sample application would help us to understand what you're doing.

regards.
  1. Helpful
  1. John Fauss
  2. Tuesday, 20 July 2021 22:55 PM UTC
I suggest you describe for us the desired behavior you want to have happen. Be as descriptive/complete as possible. Is w_main a sheet window? is w_update_selection a sheet window or response window? How familiar are you with the PFC? It is very difficult to troubleshoot without understanding what you are trying to accomplish.
  1. Helpful
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.