SDO query cannot be browsed by more than one SDB

KaysarSoze

New Member
In my main Window i have an sdo and sdb with the proper links, i know want to start an additional screen with the same sdo (it's a input parameter in the new screen). before a start the second screen i remove the link between the sdo and sdb in my main window. but i still get the following error: SDO query cannot be browsed by more than one SDB

Can anybody help me
 

Rdd_vr4

New Member
I am fighting with the same issue. In my case i am moving to Progress 102b from 91c. my product works fine for many years in 91c but i get this error in 102b and have not found a work around for it yet.
I change the fields in the browse display DYNAMIC-FUNCTION('setDisplayedFields',input v-brws-fields) then run initializeObject for the browse, this is when i get the error. From the Run Super logic.

Also working on delete object issue with no luck.
 

RealHeavyDude

Well-Known Member
@Rdd_vr4: You are not fighting with the same issue - please start your own thread for it ...



@KaysarSoze:
  • Do you use ADM2 or Dynamics?
  • Is there a specific reason why you want to use the same SDO for two different browsers?
  • How do you remove the link? If I would need to speculate I would say that the problem is that just removing the link won't do. The reason for that is because the browse widget on the smart data browser has an attribute of type handle (QUERY) which is set to the handle of the dynamic query in the SDO. AFAIK, this is done during initializeObject. You need to "blank" this attribute too. The reason for the error message is that there is only one browse widget's QUERY attribute allowed to point to a particular query - not the existence of a second data link. But, again, fiddling with this is quiet complex to get it done so that it will hold water ...
Regards, RealHeavyDude.
 

Cringer

ProgressTalk.com Moderator
Staff member
Wouldn't be surprised if the OP doesn't answer as original post was made 8 years ago!! I'd have hoped he'd have solved it by now ;)
 

RealHeavyDude

Well-Known Member
Good point - didn't recognize that ...

Anyway, reviving old threads for different problems, to me it does not seem okay.


Regards, RealHeavyDude.
 

Cringer

ProgressTalk.com Moderator
Staff member
Totally agree with that! Particularly as it's a no brainer that the 2 problems are different. Unlikely the OP was upgrading to 10.2b in 2002 :D
 

Rdd_vr4

New Member
It's sad that this is the only thread I found when trying to solve this issue. We are currently upgrading our version of Progress 91c.14 to 102b.

The fix for my issue was to insert > {set dataQueryBrowsed False v-source-hdl}.
before the RUN InitializeObject.

Hope this helps somebody - somewhere - sometime!
 

RealHeavyDude

Well-Known Member
The reason why I asked you to open a new thread is because it's confusing reviving old threads. Plus I think your issue is not just one ADM2 property.

You need to be aware: Beginning with 9.1c until (I think) 10.0b the ADM2 has evolved dramatically. The main driver for this was Dynamics which was based on the ADM2. I has always been my position that you must see the ADM2 as part of your application. Therefore, to be on the save side, you should make a copy of the ADM2 as ships with the development license and place it in a directory in your PROPATH so that it is picked up before the version which resides in the installation directory. When you then uprade to another Progress/OpenEdge version you do it with your version of the ADM2 and not the version which ships with the latest and greatest version of Progress/OpenEdge.

The reason why I suggest this is because thorough tests need to be conducted to make sure that you don't run into problems in a production system. Especially when you make such a huge step from Progress 9.1c to OpenEdge 10.2b.

Regards, RealHeavyDude.
 
Top