eightthwonder
asked on
Power Builder 6.0 Application
We have developed an Application on PB6 and SSA5.5 .
1. Even when the source codes or the PB Version are not changed, the application undergoes Migration frequently.
2. Also while regenerating the pbls, receiving error message : Probable Library File I/O Error. When the pbls are renamed or copied to other area on the hard disk, regenration is successful.
3. On build of application, which uses list values to dynamically open windows, some windows crash saying : Null Object Referenced while others go through.
1. Even when the source codes or the PB Version are not changed, the application undergoes Migration frequently.
2. Also while regenerating the pbls, receiving error message : Probable Library File I/O Error. When the pbls are renamed or copied to other area on the hard disk, regenration is successful.
3. On build of application, which uses list values to dynamically open windows, some windows crash saying : Null Object Referenced while others go through.
ASKER
1 Q. Are you at 6.5.1? or 6.0? You might consider updating to the latest 6.x version.
1 A. We were previously using PB6.0. After the build started giving problem we upgraded to PB6.5. There is a new problem that has come up since then, every time we start the computer afreash and then Power Builder the application says that it has changed to a newer version and it needs to migrate. At this stage it leaves no options but to migrate.
2 Q. Make sure all the PBLs are local on the machine whhen you are doing this and not over the network.
2 A. Ya during the build all the pbls related to the application are on the local machine only.
2. Make sure all the PBLs are local on the machine whhen you are doing this and not over the network.
3 Q. Need more detail.
3 A. When we are running the application through powerbuilder it is running through fine but after a build is made it is crashing saying null object referenced.
1 A. We were previously using PB6.0. After the build started giving problem we upgraded to PB6.5. There is a new problem that has come up since then, every time we start the computer afreash and then Power Builder the application says that it has changed to a newer version and it needs to migrate. At this stage it leaves no options but to migrate.
2 Q. Make sure all the PBLs are local on the machine whhen you are doing this and not over the network.
2 A. Ya during the build all the pbls related to the application are on the local machine only.
2. Make sure all the PBLs are local on the machine whhen you are doing this and not over the network.
3 Q. Need more detail.
3 A. When we are running the application through powerbuilder it is running through fine but after a build is made it is crashing saying null object referenced.
Are you referencing any objects through variables? For example, do you have a datawindow placed on the screen that could represent multiple datawindow objects at run-time? If so, you need to include all the datawindows (or other objects) not referenced directly in the code in a PBR file.
PB only knows to include objects from your PBL that are directly referenced as properties of the object, so something that's not directy referenced but set via code won't get included.
Let me know if that's not the case.
David
PB only knows to include objects from your PBL that are directly referenced as properties of the object, so something that's not directy referenced but set via code won't get included.
Let me know if that's not the case.
David
ASKER
Are you referencing any objects through variables?
A. Yes. We have many datawindows as well as windows which have been dynamically called. The names of these windows have been read into the variable from the database.
If so, you need to include all the datawindows (or other objects) not referenced directly in the code in a PBR file.
A. We have tried this out. Created a PBR file with names of windows and datawindows and tried building. This dint work out.
A. Yes. We have many datawindows as well as windows which have been dynamically called. The names of these windows have been read into the variable from the database.
If so, you need to include all the datawindows (or other objects) not referenced directly in the code in a PBR file.
A. We have tried this out. Created a PBR file with names of windows and datawindows and tried building. This dint work out.
Have you tried running with /pbdebug ?
If you're not aware of it, it's a switch that can be added to the command line when you run your program. PowerBuilder will then create a log file containing trace information and that might help pinpoint your issue. This significantly slows down the execution of your program, but it will show you where, or close to where, the problem is occuring and that might help you identify the issue.
If you're not aware of it, it's a switch that can be added to the command line when you run your program. PowerBuilder will then create a log file containing trace information and that might help pinpoint your issue. This significantly slows down the execution of your program, but it will show you where, or close to where, the problem is occuring and that might help you identify the issue.
A comment to your dynamically loaded DW's.
Leave the DataWindow objects in their PBL's. Then use LibraryExport to read the DW syntax from the PBL into a string. You can then use datawindow.Create( Syntax ) do create the DW at runtime. I use this for accessing reports that my users can build themselves using InfoMaker. Also take a look at LibraryCreate, LibraryDirectory and related functions.
Leave the DataWindow objects in their PBL's. Then use LibraryExport to read the DW syntax from the PBL into a string. You can then use datawindow.Create( Syntax ) do create the DW at runtime. I use this for accessing reports that my users can build themselves using InfoMaker. Also take a look at LibraryCreate, LibraryDirectory and related functions.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
2. Make sure all the PBLs are local on the machine whhen you are doing this and not over the network.
3. Need more detail.
David