Page 3 of 3
First X# runtime: available to the public?
Posted: Wed Jun 13, 2018 6:40 am
by wriedmann
Hi Danilo,
currently they are not available, but it should be a matter of days.
The next version of X# will include them, but will not include the RDDs (as the team needs time to write them....).
Therefore many people relying on the DBFCDX or the ADS RDD will need to use the Vulcan runtime for their migration.
You for example, since you are using only MySQL as database, can try them immediatly.
Wolfgang
First X# runtime: available to the public?
Posted: Wed Jun 13, 2018 7:12 am
by rjpajaron
Thanks Wolfgang,
Look forward to it.
First X# runtime: available to the public?
Posted: Wed Jun 13, 2018 9:15 am
by FFF
Can we mix the RTs? I.e., try the new X# one WITH the VN-Rdd?
Karl
First X# runtime: available to the public?
Posted: Wed Jun 13, 2018 9:23 am
by wriedmann
Hi Karl,
no, unfortunately not. Please see here:
https://www.xsharp.eu/kunena/public-product/679-rdds-and-the-new-x-runtime
The Vulcan RDDs have dependencies to the Vulcan runtime and the Vulcan macrocompiler, and they cannot coexist in the same application.
Wolfgang
First X# runtime: available to the public?
Posted: Wed Jun 13, 2018 9:33 am
by FFF
Ah, missed that, thx.
First X# runtime: available to the public?
Posted: Wed Jun 13, 2018 9:51 am
by robert
Karl,
This is what the new documentation says about mixing things:
Technically it is possible to include both the X# and the Vulcan runtime libraries in your application. When you do so then the compiler will assume that you want to use the X# implementations for the XBase types such as USUAL and DATE. If the compiler does not find the XSharp.Core and XSharp.VO assemblies then it will assume you want to map these types to the Vulcan runtime types.
So you can mix things. However if you want to call code in the Vulcan runtime DLLs you may have to use the fully qualified classnames or typenames.
And remember: there is no automatic translation between the X# types and Vulcan types.
If you want to convert an X# variable to a Vulcan variable you may have to cast it to an intermediate type first.
Call Vulcans implementation of Left()
LOCAL cValue as STRING
cValue := VulcanRTFuncs.Functions.Left("abcdefg",2)
If you want to convert an X# usual to a Vulcan usual, cast to OBJECT
LOCAL xUsual as USUAL
LOCAL vUsual as Vulcan.__Usual
xUsual := 10
vUsual := (OBJECT) xUsual
For dates you can do something similar. In that case you should cast the X# date to a DateTime.
LOCAL xDate as DATE
LOCAL vDate as Vulcan.__VODate
xDate := ToDay() // will call the X# implementation of ToDay()
vDate := (System.DateTime) xDate
Robert
First X# runtime: available to the public?
Posted: Wed Jun 13, 2018 9:55 am
by robert
Wolfgang,
This will not be necessary. As soon as we have the RDD support in the runtime we will also come with an ADS RDD.
We want to implement that RDD quickly because many people have asked for it, and we know that the ADS code is stable. So All we have have to do is map the RDD calls to calls inside the ADS runtime DLLs.
Decompiling the Vulcan RDD and recompiling for X# will not work. Apart from the legal issues we have also some changes in our RDD system when compared to Vulcan.
Robert
wriedmann wrote:Hi Rene,
the original ADS RDD for Vulcan.NET is written in C#, but has dependencies to the Vulcan runtime DLLs.
It is very easy to decompile it and recompile it with a new version of runtime DLLs. This was the only possibility to make them run with Vulcan.NET v4.
Therefore it should be no problem to try this with X#.
For sure, you break the SAP license decompiling the RDD, but I don't think SAP will do anything because they don't sell the RDD, but the server, and are interested in selling more servers.
But since this is not a legal behaviour, the X# team cannot do this for you. But as Robert stated several times, the ADS RDD will be the first RDD they will do for themselves.
Of course I will let know you if I'm able to make the ADS RDD run with the X# runtime.
Wolfgang
First X# runtime: available to the public?
Posted: Wed Jun 13, 2018 10:00 am
by wriedmann
Hi Robert,
thank you very much for this information! So I will not even try.
So in the meantime I will use Advantage Data Provider to access my ADS data.
Wolfgang
First X# runtime: available to the public?
Posted: Wed Jun 13, 2018 10:38 am
by ic2
Hello Wolfgang,
wriedmann wrote:Hi Dick,
the X# development team is really fast in delivering, but unfortunately they cannot do all on the same time.
Therefore you will have to wait for the X# RDDs.
You won't hear me complain about the speed of delivering X# updates
. I think it's great if we can get our X# programs working without the need for Vulcan libs but as this currently works I am not in a hurry.
It is always difficult to set priorities. Even though the Vulcanless X# is appealing, I find entering X# command in the VS Immediate Window more important. This would make working in VS less annoying than it already is. And others probably can't wait for one of the other announced features. But I know the Immediate Window, the RDD's, Advantage and so on are all on the agenda so no doubt we will see this working in 10% of the timeframe which was usual at Grafx.
Dick