1. Terry Schaff
  2. PowerBuilder
  3. Thursday, 18 May 2023 03:31 AM UTC

Looking for advice:

A 20+ yr old PowerBuilder app is being sunsetted, so we are trying to use PBTrace to see what code(windows/user-events/methods) are still being executed, so we know what scripts need to be converted/migrated to the new development stack.  

 

Problems:

1. We have 1,000-2,000 end users, therefore I have to solve how to remotely retrieve the results of the trace from each file.

2. If #1 can be solved, is there a way to consolidate/rollup each one for a group report?

Need to report what users are actively using the system and what code they are executing

3. Are there better tools to read the captured trace file than the ones inside of the PowerBuilder 2019R3 environment under File->New 

 

Thanks for your time.

Terry

Roland Smith Accepted Answer Pending Moderation
  1. Thursday, 18 May 2023 15:35 PM UTC
  2. PowerBuilder
  3. # 1

 

There surely will be functionality that is run monthly/quarterly/annually that will need to be in the replacement app. I don't think this is a good idea. Projects that replace working PowerBuilder applications often fail after years of delay and millions of dollars wasted. What is the intended replacement language?

Comment
  1. Roland Smith
  2. Thursday, 18 May 2023 19:14 PM UTC
To collect files, the app could post the file to a webservice that saved it to disk or updateblob it to the database. You'd have to write a custom analyzer in PB to read each file and extract the information needed. The information for each file could be stored in a database table. Then after processing each file, run a report.
  1. Helpful
  1. Roland Smith
  2. Thursday, 18 May 2023 19:20 PM UTC
We are doing a similar exercise. We have a 20+ year old PB app. We have a web app written in C# ASP.NET. It has been in development for 7 or 8 years. It will probably take another couple years until it is near complete. Really all you need to do is identify the windows that are used. You aren't going to be able to recode it in Java by following along the PB code. It will be a completely different interface (web) using the same database doing the same tasks in hopefully a manner that is easier for the users. Reproducing an old design with different technology isn't going to please the customers.
  1. Helpful
  1. Chris Pollach @Appeon
  2. Thursday, 18 May 2023 21:19 PM UTC
Hi Terry;

Yes, I am still here (alive and licki9ng - LOL) and now working for Appeon. :-)

Sorry for the slow reply but I have been super busy this week with the PB 2022 R2 rollout.

I would recommend adding your own App Profiling code to track only exactly what you need! I added this feature to my STD Framework over a decade ago just for this and other exact data collection requirements for monitoring PB App resources being consumed.

FYI: http://chrispollach.blogspot.com/2015/10/app.html

In recent framework updates too, I have added the ability to track the Apps resources and also produce a "real time" App profile right within the App during it's execution. http://chrispollach.blogspot.com/2020/08/2020r2.html

Once the proper information that you desire is captured under PowerScipt control you can then run this through the various PB IDE's profile "viewers" or use what I did - in the STD Framework - utilize the BuildModel() command to render this information yourself - say in your own App modeller. ;-)

HTH

Regards ... Chris
  1. Helpful
There are no comments made yet.
Terry Schaff Accepted Answer Pending Moderation
  1. Thursday, 18 May 2023 15:09 PM UTC
  2. PowerBuilder
  3. # 2

Thanks for responding, but I must not have asked my question good enough, so I'm going to restate/enhance my question.

 

A 20+ yr old PowerBuilder app is being sunsetted, so we are trying to use PBTrace to see what code(windows/user-events/methods) are still being executed, so we know what scripts need to be converted/migrated to the new development stack.  

 

Problems:

1. We have 1,000-2,000 end users, therefore I have to solve how to remotely retrieve the results of the trace from each local user desktop.

2. If #1 can be solved, is there a way to consolidate/rollup thousands of trace files in order to produce a group report in order to report what users are actively using the system and what code they are executing

3. Are there better tools to read the captured trace file than the ones inside of the PowerBuilder 2019R3 environment under File->New 

 

Thanks for your time.

Terry

Comment
There are no comments made yet.
Miguel Leeuwe Accepted Answer Pending Moderation
  1. Thursday, 18 May 2023 05:09 AM UTC
  2. PowerBuilder
  3. # 3

Hi,

If you use a transaction object, like for example n_tr of the PFC classes, you can use the SQLPreview() event to see which SQL is being executed.

From there you could insert the sql into some table. (I'd recommend using a separate transaction object for that Insert, so that you can do a COMMIT without affecting any other active transactions of the application).

regards.

Comment
  1. Miguel Leeuwe
  2. Thursday, 18 May 2023 05:10 AM UTC
I would not use the sqlca.dbms TRACE option for this, though that might be another way of doing things, but it makes the process more complicated.
  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.