Hi BOb,
>Are these remote views? If so...
Yes
>Are either of the views parameterized?
Yes
>Are they sharing a connection?
Yes
>If so, are you using any progressive fetching. I don't think select will use the views that you have already opened. Have you tried to remove the USE commands and see what happens. Since I think the select is going to run the views' SQL again, perhaps if you are using progressive fecthing then the first view fetch will block the second. But...
No Progressive fetching, and I've checked the views with Browse and the DataSession window to be sure they are correctly populated.
>I don't know why code would run differently in a method or a form, but, how are you looking at the data after the method executes?
Browse for testing. A grid is the eventual result.
>
>Now, real stupid questions, why not use SPT or create a view that has the join in it inheriently? Doing the join at the client seems very inefficient.
The remote views are actually opened earlier in the form - this is a specialized method rarely called. Since all the data I need is in the two views, and since I'm not updating it, making a cursor from the two views seemed the best way to go.
>Another thing to try:
I LIKE this idea. I'll try it and let you know!
>
>
>USE rv1 in 0
>
>USE rv2 in 0
>
>cRV1 = dbf('rv1')
>cRV2 = dbf('rv2')
>
>SELECT v1.*, v2.* from (cRV1) v1 ;
> left outer join (cRV2) v2 on v1.IDField = v2.IDField ;
> into cursor curTemp
>
>
>********************
>
>Just some ideas...
>
>BOb