Bug 3807

PB2019R2 - System Class Not Up-to-date 23 May, 2022

Chris Pollach @Appeon
23 December, 2019
Product: PowerBuilder Category: IDE
Version: 2019 R2 Beta Build:
Classification: Enhancement Publishing: Public
Priority: P2
Appeon Product 23 May, 2022
Hi Roland and Chris,

Thank you for submitting the ticket.  

We now acknowledge this ticket to be an enhancement request and will record and track it internally in our enhancement management system. At the same time, we are closing the ticket here because this support system is for handling standard support services but not for maintaining enhancement requests.  

Please note that despite its "Closed" status, you are welcome to come back here and leave further comments or query the relevant development progress on this ticket.  


Ken Guo @Appeon 14 April, 2022
Hi Roland and Chris,

Thank you very much for your detailed explanation. I will submit this valuable suggestion as a new requirement to the product team.

Chris Pollach @Appeon 13 April, 2022
Hi Ken;

  FYI: Roland makes another good argument for the App Object class needing to be up-to-date in the PB System Class!  ;-)

Regards .. Chris
Roland Smith 13 April, 2022
I wonder if you can use edit source to make an application object inherited. If you can and the IDE were changed to allow 'inherit from' for application objects, the IDE should be changed to allow editing of an application object that isn't 'current'. Otherwise we would need a separate target for coding the ancestor application.
Roland Smith 13 April, 2022
Look up 'Application object' in the help and take a look at the Properties section. All the values in the type section of the source code should be available so we can call GetApplication to get an application object so we can read all those values and possible change any that support runtime update.

global type desktop from application
string appname = "desktop"
string themepath = "D:\Program Files (x86)\Appeon\PowerBuilder 19.0\IDE\theme"
string themename = "Do Not Use Themes"
boolean nativepdfvalid = false
boolean nativepdfincludecustomfont = false
string nativepdfappname = ""
long richtextedittype = 2
long richtexteditx64type = 3
long richtexteditversion = 1
string richtexteditkey = ""
string appicon = "userobject.ico"
string appruntimeversion = ""
end type
Chris Pollach @Appeon 13 April, 2022
Hi Ken;

  Just export any PB2019R3 Application Object class source or even better yet a PB2021 version. Then compare that source with the App Object Class in the PB IDE System Object Browser. All the properties in the exported AO source should be in its System Class equivalent. That is part #1.

  For part #2, once the AO System Class definition is fixed - the add inheritance to the AO & App Painter. These are long awaited changes even from way back in the PowerSoft / Sybase days of PB.

Regards ... Chris
Ken Guo @Appeon 13 April, 2022
Hi Chris,

Sorry, I don’t think I fully understand. Can you help elaborate on this requirement? It would be better if you can provide some screenshots as well.

Chris Pollach @Appeon 11 April, 2022
Hi Ken;

  As stated in my last reply .. the App Object in the System Class needs a big update plus, inheritance needs to be added to the App Painter. This has been a long requested change by many customers way back into the Sybase days of PB. 

Regards ... Chris
Ken Guo @Appeon 10 April, 2022
Hi Chris,

I'm just touching base with you about this ticket.
Please let us know if there is something else we can do in order to keep supporting you.  

BTW, PB has hide these private properties.

Chris Pollach @Appeon 22 July, 2021
Hi Ken;

  This is an easy fox for Engineering. Just add the new methods and properties to the Application object in PB's System Class and then everything would be OO compliant. Super easy fix IMHO vs an improper implementation currently.

Food for thought.

Regards ... Chris
Ken Guo @Appeon 22 July, 2021
Hi Chris,

These attributes are mainly for the internal use of PB and are generally not used by users. So we didn't make them public.

Do you have any other questions or can I close this ticket?

Chris Pollach @Appeon 24 December, 2019
Hi Ken;

  Thanks. Not sure why that would be necessary though. One would think that all properties should be readable with some properties write protected for safety.

Just my $0.02.

Regards ... Chris
Ken Guo @Appeon 24 December, 2019
Hi Chris,

Regarding the ‘compile errors for themename’:
We had modified the design of it in PB 2019 R2, new properties like themename, richtextedittype, etc. are all adjusted to be private properties. Thus it is not supported to access them via code anymore.

Regarding the issue ‘it won’t display all properties in Object Browser’:
We have fixed this issue in the latest PB 2019 R2 version.

Chris Pollach @Appeon 23 December, 2019
PB2019R2_System_Class.png (94KB)

Unbalanced Application Painter  to System Class definitions. Note: Other Object Classes could also be affected in this way.
Chris Pollach @Appeon 23 December, 2019
*Phenomenon: Using the new PB2019R2 Beta, there are numerous compile errors around the Application Object class because the IDE's "System Class" definition was not updated to reflect the current properties and methods of this class. This is a critical issue and also one identified in PB2019 GA.

*Reproduce Steps: See attachment

Remarks: This defect will prevent proper Object Oriented programming from being used,
Database Type:
SAP SQL Anywhere
Database Version: