1. Ivan Galetic
  2. PowerBuilder
  3. Thursday, 10 September 2020 10:11 AM

Greetings,

in our company we are currently trying to upgrade from PB 12.6 to PB 19.

We made it through creating runtime, getting all of the required dll's and we are able to install our app.

The problem comes when applying a theme and look of our application when we run it from runtime.

Our app looks exactly like on 12.6 version when run from IDE.

In attachments, there are two files, one how it supposed to look and how it is currently looking. As you can see, none of the modules are not displayed.

For the theme part, we do have theme190 folder set in the apps root directory and Canvas.pbx is also in its root folder.

Thank you for you patience and hope someone can help us.

Sincerely,

Sarda Team

Attachments (2)
John Fauss Accepted Answer Pending Moderation
  1. Friday, 11 September 2020 14:17 PM
  2. PowerBuilder
  3. # 1
2
Votes
Undo

Greetings, Ivan -

Since you are new to using Themes and new to using a post-SAP version of PowerBuilder, may I suggest you first create a simple test application (single window, no use of canvas.pbx, no database connections, use an external source DW with manually populated/saved data if you want to include a DataWindow ... but keep it simple), Build the test app as an executable and install on another machine so that you can get familiar with some of the run-time DLL's that are new to PB since v12.6 (there are quite a few!) I also recommend you avoid creating 64-bit executables and Remote Desktop/Citrix deployment, etc. for now ... keep it simple!

Once that is working as a compiled/deployed executable, apply a standard, out-of-the-box (not modified) theme and get that working. If you are wanting to eventually create/use a customized theme, then create your customized theme and get that working with your test application. If at any point along the way you run into questions or issues, either post additional questions here and you can include a zipped copy of your test application's pbl (and theme, if needed), or open a (free) support ticket and you can include a zipped copy of your test application's pbl.

At this point you could then try to add the use of the canvas.pbx to your test application.

Once successful, you should have gained enough experience with PB 2019 and themes to migrate your PB 12.6 application with less difficulties.

I think this approach would be more productive than trying to learn about everything all at once and attempting to troubleshoot and solve all of the issues you are experiencing all at once.

Finally, what does your legacy PB v12.6 app use the canvas.pbx for? If we knew a little more, we might be able to suggest an alternative solution to your needs that is more compatible with the current PowerBuilder product.

HTH. Regards, John

Comment
There are no comments made yet.
Ken Guo @Appeon Accepted Answer Pending Moderation
  1. Friday, 11 September 2020 02:58 AM
  2. PowerBuilder
  3. # 2
0
Votes
Undo

 

Hi Ivan

 

The third-party plugin doesn’t support Theme, but it shouldn’t lead to the undisplayable of the modules in the third-party plugin.

I suggest you open a ticket on https://www.appeon.com/standardsupport/newbug and also upload a reproducible small case when submitting the ticket. Thanks in advance.

 

 

Regards,

Ken

 

Comment
Thank you for your reply.

Below is code from u_canvas object in our project:



forward

global type u_canvas from userobject

end type

end forward



global type u_canvas from userobject native "Canvas.pbx"

public subroutine of_settransparent(boolean ab_set)

event type int onpaint(ulong hdc)

integer width = 400

integer height = 200

end type

global u_canvas u_canvas



on u_canvas.create

call super::create

TriggerEvent( this, "constructor" )

end on



on u_canvas.destroy

TriggerEvent( this, "destructor" )

call super::destroy

end on



As you notice, "Canvas.pbx" is listed, we tried to change it to PBDOM190.pbx that is included in %Appeon/Shared/Powerbuilder but al we got was the notorious serious goof error.



Does the theme190 folder also has to be in same folder as project during compile ? Maybe that is one of the problems, I'm sure we did not miss any of dll's that are needed.



We could submit a ticket, but if I remember correctly it is not free and we currently do not have funds to open one.
  1. Ivan Galetic
  2. Friday, 11 September 2020 07:02 AM
Hi Ivan,



Submitting a ticket on the Appeon Standard Support Portal is free. No matter whether you purchase the Appeon products or not, you can submit a bug related to the Appeon products.

Note: when submitting a PB bug, please also provide a complete small case including pbt, pbl, etc.



Regards,

Ken

  1. Ken Guo @Appeon
  2. Friday, 11 September 2020 07:48 AM
There are no comments made yet.
Daryl Foster Accepted Answer Pending Moderation
  1. Friday, 11 September 2020 00:40 AM
  2. PowerBuilder
  3. # 3
1
Votes
Undo

Canvas.pbx was part of the old Kodigo framework. I think it works via a Userobject called u_canvas.  Does the new theme feature use a u_canvas object that could be conflicting?

Comment
Thank you for your reply.



Sadly, I can't find anything on internet that would confirm that, but we also think that is the situation.

Below is code from u_canvas object in our project:



forward

global type u_canvas from userobject

end type

end forward



global type u_canvas from userobject native "Canvas.pbx"

public subroutine of_settransparent(boolean ab_set)

event type int onpaint(ulong hdc)

integer width = 400

integer height = 200

end type

global u_canvas u_canvas



on u_canvas.create

call super::create

TriggerEvent( this, "constructor" )

end on



on u_canvas.destroy

TriggerEvent( this, "destructor" )

call super::destroy

end on



As you notice, "Canvas.pbx" is listed, we tried to change it to PBDOM190.pbx that is included in %Appeon/Shared/Powerbuilder but al we got was the notorious serious goof error.



Does the theme190 folder also has to be in same folder as project during compile ? Maybe that is one of the problems, I'm sure we did not miss any of dll's that are needed.

  1. Ivan Galetic
  2. Friday, 11 September 2020 06:59 AM
There are no comments made yet.
Chris Pollach @Appeon Accepted Answer Pending Moderation
  1. Thursday, 10 September 2020 16:13 PM
  2. PowerBuilder
  3. # 4
1
Votes
Undo

Hi Ivan;

  The " Canvas.pbx" is not from Appeon or Sybase. My guess is that this is a 3rd party component and that it might be interfering with the PB 2019 Rx's "theme" feature.

Regards ... Chris

Comment
Thank you for your reply.



Below is code from u_canvas object in our project:



forward

global type u_canvas from userobject

end type

end forward



global type u_canvas from userobject native "Canvas.pbx"

public subroutine of_settransparent(boolean ab_set)

event type int onpaint(ulong hdc)

integer width = 400

integer height = 200

end type

global u_canvas u_canvas



on u_canvas.create

call super::create

TriggerEvent( this, "constructor" )

end on



on u_canvas.destroy

TriggerEvent( this, "destructor" )

call super::destroy

end on



As you notice, "Canvas.pbx" is listed, we tried to change it to PBDOM190.pbx that is included in %Appeon/Shared/Powerbuilder but al we got was the notorious serious goof error.



Does u_canvas object needs to be present in our project if "canvas.pbx" is some 3rd party file ?

Does the theme190 folder also has to be in same folder as project during compile ? Maybe that is one of the problems, I'm sure we did not miss any of dll's that are needed.
  1. Ivan Galetic
  2. Friday, 11 September 2020 07:00 AM
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.