Solved

Issue with datawindow retrieval in PB9.0.1

Posted on 2004-09-17
6
452 Views
Last Modified: 2013-12-26
We are having some issues while trying to upgrade from PB 6.5 to PB 9.0.1 The database is Sybase.

Background:

There is a window  w_child inherited from w_parent.The datasource of this dw_1 is a Stored Procedure that runs in Sybase ASE 12.5 In ue_1 of w_parent there is a  dw_1.retrieve(arg1,arg2). ue_1 of w_child extends ue_1 of w_parent. In ue_1 of w_child the code checks the condition dw_1.rowcount() >0  based on which it decides on the execution flow.

Issue:

While running the application, no rows are getting retrived.The same happens in debug mode too. But when we have "dw_1.retrieve(arg1,arg2)" as a watch variable
in the debug mode the row is currectly getting retrieved.
The dw_1.retrieve returns 0 and the sqlcode & sqldbcode for the transaction is 0.
Also,the preview of DataWindow retrieves the row in PB 9.0.1.

In PB6.5 everything was working fine.

0
Comment
Question by:Coolcld
  • 2
6 Comments
 
LVL 33

Expert Comment

by:sajuks
ID: 12083275
If you check most of the posts here almost all of them got solved by updating to the latest EBF.
So i would recommend first update and then lets see if the problem still persist.
Latest is PowerBuilder 9.0.1 (7236) EBF Release
What version of PB are u using

// to download the patches one of the experts diasroshan has given some precise steps:

Go to http://www.sybase.com
---> go to the download option
---> in the download page there is a link EBFs/Maintenance
---> u will be asked to register once u go to that link....
---> register onto sybase(this will help in future)
---> there will be a selection of time frame...select 'all'
---> now when u search u will find build  PowerBuilder 9.0.1 (7236) EBF Release
---> Download it
Install this patch .
0
 
LVL 8

Expert Comment

by:Vikas_Dixit
ID: 12085318
if you still have problems, please check if you have over-ridded the ue_1 event in the child ( or some other event from where the ue_1 is called ) by mistake. Put a break point in ue_1 of w_parent and check if you are getting there.

Regards,
Vikas
0
 

Author Comment

by:Coolcld
ID: 12113012
Well, we are using PB9.0.1 with the latest patch(7236) only. Nowhere in the code we have over-ridden the child, it is always extended. We have verified and it does go to the parent code too.

Apart from the dw control(dw_1) derived from the parent, we are having another control in the child(dw_2). dw_2 is not derived from the parent. Now, both the controls have the same dataobject attached and Retrieve() is working fine for dw_2 and not for dw_1.

Now my question is why it is not retrieving for dw_1 ?

As a work around we have created a datastore & retrieved the row into it & then did a rowscopy into dw_1(). This is affecting the execution flow as in many places we have a check for the rowstatus. Due to rowscopy(), the rowstatus is NewModified! instead of NotModified!.
We tried using sharedata() to maintain the Notmodified status but the control(dw_1) vanishes  from the window after the script gets executed.

Please do help us out!! We are stuck at this!
0
 
LVL 8

Accepted Solution

by:
Vikas_Dixit earned 100 total points
ID: 12118725
Other checks you can perform :

Just add a dw_1.rowcount() afre the dw_1.retrieve in the parent., and see if there are rows retrieved.
Most prabably what is happeneing is dw_1 is getting re-set after it's retrieved, because you say the dw_1 vaishes after some time when you do sharedata()
Check if the code is being executed twice, or the dataobject is re-assigned, or there's a re-set being called somewhere. The event call sequence can be different in PB9  from PB6.5
debug step by step after the first dw_1.retrieve, until all the script is executed.. you will find something..

regards,
Vikas Dixit
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Update (December 2011): Since this article was published, the things have changed for good for Android native developers. The Sequoyah Project (http://www.eclipse.org/sequoyah/) automates most of the tasks discussed in this article. You can even fin…
How to install Selenium IDE and loops for quick automated testing. Get Selenium IDE from http://seleniumhq.org Go to that link and select download selenium in the right hand columnThat will then direct you to their download page.From that page s…
The viewer will learn how to use NetBeans IDE 8.0 for Windows to connect to a MySQL database. Open Services Panel: Create a new connection using New Connection Wizard: Create a test database called eetutorial: Create a new test tabel called ee…
THe viewer will learn how to use NetBeans IDE 8.0 for Windows to perform CRUD operations on a MySql database.

896 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now