Bug 6325

IDE crashing at exit (pbdom extension related) 05 April, 2021

Chris Tillman
20 March, 2021
Product: PowerBuilder Category: PowerBuilder IDE
Version: 2019 R3 Build: 2670
Classification: Issue Publishing: Public
Priority: P3
Status: Closed Reason: RESOLVED
Mark Lee @Appeon 05 April, 2021
Hi Chris,

Thanks for your feedback! We will proceed to close this ticket. 
You are welcome to open a new ticket if you have other issue.
Have a good day!

Mark Lee
Chris Tillman 02 April, 2021
Yes, you can close the ticket. My take is, don't use PBX.
Mark Lee @Appeon 02 April, 2021
Hi Chris,

Since the problem was resolved.
We would like to confirm with you if we can close this ticket?
If you have other issues, you are welcome to open a new ticket.

Mark Lee
Chris Pollach @Appeon 22 March, 2021
Hi Chris;

IMHO ....

No more importing hassles (delete, new PBL, refresh, etc).
Always up-to-date by just replacing PBD file on migration to new PB version. Easier to control where the related object are. 
More "Goof" proof for new PB developers when upgrading in the future.

Just my $0.02. 

Regards ... Chris
Chris Tillman 22 March, 2021
Yes, if I import to another PBL which did not have a former version installed, I don't get the error. So now you know what the bug is.

Hi Chris, so what is the advantage and/or why were PBX files provided in the first place? I thought it was a superior approach to PBD. It's about the same amount of effort to update the library list as to re-import (as long as you don't have to manually delete the old objects). 

What really would be valuable is a build-time message that the objects (pbd or pbx) are not synchronized with a release. Instead strange bugs result.
Chris Pollach @Appeon 22 March, 2021
Hi Chris;

  Just an FYI on top of Mark's suggestion ...

  After deleting the PBDOM objects from your App's libraries. Instead of importing the .PBX, just add the PBDOM.PBD to your App's library list. Voila, you will never have to import again. Instead, just replace the PB2019Rx .PBD file with the PB2021, 2022, etc PBDOM's .PBD file when you migrate next time. Food for thought.

Regards ... Chris
Mark Lee @Appeon 22 March, 2021

Hi Chris,

Thanks for reporting this problem.
I didn't reproduce the issue on my local machine. (Please refer to the attachment.)
I suggest that you provide a complete and reproducible case for us to do some further verification and analysis. Thanks!
Also, I suggest that you can manually delete all corresponding PBDOM objects of the current PBL and then import this PBDOM.pbx file again and see if you would still receive the error.
You can also refer to the PB local help file and the PowerBuilder Document Object Model feature is still currently supported in PB 2019 R3.

Mark Lee
Chris Tillman 20 March, 2021

 ---------- Import PB Extension:    (12:43:29 PM)
Importing C:\Program Files (x86)\Appeon\Common\PowerBuilder\Runtime\PBDOM.pbx  -  Error: The string returned by function "GetDescription" has a syntax error.
 ---------- Finished    (12:43:29 PM)

*Reproduce Steps:
Tried to import 2019 PBDOM.pbx from given path. 

The reason I was trying to import was that a very simple application was crashing at exit. In the past I have had difficulty when upgrading to new PB versions with the extensions needing to be re-imported to the PBL. When I commented out the code using the extension, the crash didn't happen.

When I went to import the 2019 version of PBDOM.pbx, I received the above error in the IDE.

I also tried the x64 version but received this error instead:
 ---------- Import PB Extension:    (12:51:11 PM)
Importing C:\Program Files (x86)\Appeon\Common\PowerBuilder\Runtime\x64\PBDOM.pbx  -  Error: The file is not a valid dll or pbx file.
 ---------- Finished    (12:51:11 PM)

Next I went to the 2017 folder, and got the same error as the first one:
 ---------- Import PB Extension:    (12:53:22 PM)
Importing C:\Program Files (x86)\Appeon\Shared\PowerBuilder\PBDOM170.pbx  -  Error: The string returned by function "GetDescription" has a syntax error.
 ---------- Finished    (12:53:22 PM)

Finally, instead of importing a PBX I added the PBDOM.pbd library from 
C:\Program Files (x86)\Appeon\PowerBuilder 19.0\IDE
in my application library path. That allowed the code to work again and the IDS stopped crashing at exit.

Is the PBDOM.pbx unsupported in 2019 R3?
Windows 10
Database Type:
Microsoft SQL Server
Database Version: