We started a couple of days ago with a conversion project from VO to X#. The customer has a class 'DBServerKL' that is inherited from DBServer.
Error XS1061 'DBServerKL' does not contain a definition for 'OrderDescend' and no extension method 'OrderDescend' accepting a first argument of type 'DBServerKL' could be found (are you missing a using directive or an assembly reference?)
DBServer is well recognized but as soon as there is a class that is derived from it, all methods seem to get lost.
I have looked at the compilerproperties. All Vo/Vulcan compatibility switches are set to true.
Is there anyone who has an idea how to solve this?
I suppose the DBServerKL class is defined in a library. This library has a reference to VulcanVORDDClasses and compiles.
Then you are using the DBServerKL class in an executable, and this executable has no reference to the VulcanVORDD classes. You need to add this, otherwise the DBServer methods and properties are not recognized.
You will have the same issue also with classes from the .NET framework.
The VO compiler hadn't this issue, it works in a different manner as it includes all classes from all used libraries.
In addition to what Robert said, the new build 12 (to be released in a very few days) also has several compiler improvements regarding compatibility with VO. So several (but of course not all) of the errors you will be seeing when trying to compile unmodified VO code with build 11 are not present anymore with build 12.
Also regarding the need to add USING Vulcan.VO statements, you can avoid this by enabling the "Enable implicit namespace lookup" project option (also in the Language page), this way the compiler will automatically take care of this.