Our company is using Powerbuilder 12.5.2 build 5629 on up-to-date Windows 7 machines (HP Elitebooks – few different models). During the last work project, we noticed that scripts 'disappear' from windows inherited from other windows.
We have our own framework, which has a few basic windows. All windows used across our program are inherited from those windows with added functions. This is the structure of windows for the given example:
Below is an example of the problem:
Window for adding new users (w_add_user) was created and it was inherited from a existing basic window (w_singledw_window from w_basic_window). It had a event triggered from 'Add user' button, which adds a new row to the datawindow. This worked fine in a previous project. Now it was needed to add a titlebar to all our window. This was done by editing the basic window (w_basic_window) from which all our windows are inherited. A full rebuild of the worskpace was done and all windows had a titlebar. Then during testing I noticed that the event on 'Add user' was no longer working. I checked the source and our event was missing from the list.
Afterwards, during testing, a few other windows had some events missing (not all). However it is hard to determin all windows with missing events, since our program has 100+ windows.
Did anyone else encounter this problem?
It sounds like you're defining "missing" based on behaviour at run time. In my experience, this is most often caused by one cause, two variations:
Hi Andrej;
With my STD Foundation Class framework, I currently work on PB 12.1, 12.5.1 and 12.6 and have never encountered your situation. In fact, since starting to build the initial framework back in 1993, I have never encountered this.
The framework is a complex set of inherited object classes with various cross object pointers. The frameworks also support Appeon Web & Mobile as well. So when I'm developing, testing PB & Appeon code - I'm compiling & cross compiling the PBL code constantly. Again, with no code less whatsoever.
I'm wondering if your issue could be related to:
1) PBL's stored on a network drive instead of local.
2) PBL's that have not been optimized for a long time.
3) A problem between PB & your SCN?
4) your specific build of PB
5) an issue with a specific PC
6) duplicate object across PBL's
Regards ... Chris
It looks like you have multiple copies (at least two - one duplicated ) of the ancestor window in different PBLs.
It seems you have modified the wrong copy (that is in a PBL that appears later in the library list) and so you did not regenerated all descendant with the expected version of the ancestor by doing a full rebuild.
Use a tool like double object (see PB tools codeplex project) to find duplicates location and remove all the incomplete version you found (keep a copy of them somewhere, we never known). Then do again a full rebuild.
That way you should recover everything and if not, you known that the Ancestor's pbl is corrupted somehow !
In that case, optimize the pbl, then redo a full build.
If it still not work, try to export every objects of this pbl to a newly created one, then replace the old library by the new one in the library list.
Restart Powerbuilder and do a full build.
This should work and if not, you will have to found the last backup of the ancestor and start from it to reconstruct anything is missing !
Hope this will help.
Add a comment