xsharp.eu • Using DTP:IsNone - Page 3
Page 3 of 5

Using DTP:IsNone

Posted: Sun Jun 23, 2019 10:02 pm
by Chris
BiggyRat wrote:LMAO! I'm not that paranoid Chris, but I do know the way I have my aef files won't please you guys one iota. I have since changed my ways, but this app has the old way... ALL screens/forms in one MEF, Servers in another etc. I'll extract the relevant stuff put them in another aef and see how it goes.
Don't worry, everybody has or has had his own style and nobody is here to judge. You may get suggestions, if you ask for them, but nobody will or should attack you.

If it makes you feel better, personally I always prefer having as much code and editors in as less modules/prg files as possible. In my (old) VO apps, I have several modules with dozens of windows in each of them. In XIDE, some of its .prg files consists of more than 10,000 (!) lines and there are some functions more than 500 lines long. I know many people would never do that and would strongly advice against it, but this is the style that makes myself more productive, so I just do it my way.

So please do not worry and do send samples demonstrating the issues you are seeing. Many of the discussions here could had lasted one tenth of the time they do now, if we had a sample demonstrating the problem. On the other hand, that would be less activity in the forum though :)

Using DTP:IsNone

Posted: Sun Jun 23, 2019 11:49 pm
by Jamal
Hi Karl,

Yes, there are differences in the name of variables and some other internal differences in the methods. It gives compile errors on for example lNullFormat is not an access. Also, the method declaration needs PASCAL not STRICT conversion. So, it not a drop-in replacement.

The code I posted also works when setting oDTP:Value.

For example:
oDTP:Value := ""

or

oDTP:Value := "21:30:00"

Jamal

Using DTP:IsNone

Posted: Mon Jun 24, 2019 1:37 am
by BiggyRat
LOL. See Chris? Always a bright side :) ;)

Here a zip file with an aef and the two database files, I think you should see what I mean from this... hopefully.

Using DTP:IsNone

Posted: Mon Jun 24, 2019 7:14 am
by Karl-Heinz
Jamal wrote:Hi Karl,

Yes, there are differences in the name of variables and some other internal differences in the methods. It gives compile errors on for example lNullFormat is not an access.
Hi Jamal,
'
very strange ... The question is: *Which* VO-SDK Version exactly does X# compile ????

attached is a viaef that shows how my modified X# timepicker class behaves during a skip or when the checkbox is checked/unchecked. In the Start modul you must change the path to the DBF if you use another path than d:test.

GLOBAL gcPfad := "D:test" AS STRING

regards
Karl-Heinz

Using DTP:IsNone

Posted: Mon Jun 24, 2019 7:25 am
by wriedmann
Hi Karl-Heinz,
The question is: *Which* VO-SDK Version exactly does X# compile ????
I can only say that Vulcan even in the latest version had included the SP3 version, as there were some breaking changes between SP3 and SP4, and I had to add some conditional compiling statements when porting my mainl library.

Wolfgang

Using DTP:IsNone

Posted: Mon Jun 24, 2019 8:49 am
by robert
Karl-Heinz wrote:
Jamal wrote: very strange ... The question is: *Which* VO-SDK Version exactly does X# compile ????
You can see the code here:
https://github.com/X-Sharp/XSharpPublic ... SDK/Source

If you see something that needs to be fixed or improved, please let us know.
Remember: this is open source. You can clone the repo, make your changes, push your changes to Github and send us a pull request.


Robert

Using DTP:IsNone

Posted: Mon Jun 24, 2019 9:23 am
by wriedmann
Hi Robert,

this source seems to be based on VO 2.8 SP3, and not SP4.
As sample: VO 2.8 SP4 has the following methods:

Code: Select all

_DLL METHOD __FocusPage(nIndex AS DWORD) AS VOID PASCAL CLASS TabControl:VO28GUI.TabControl:__FocusPage
In SP3, Vulcan and X# code the nIndex parameter is defined as int:

Code: Select all

METHOD __FocusPage(nIndex AS INT) AS VOID STRICT
This is also the case for the methods

Code: Select all

_DLL METHOD __FocusPage(nIndex AS DWORD) AS VOID PASCAL CLASS TabControl:VO28GUI.TabControl:__FocusPage
_DLL METHOD __GetPageFromIndex(nTabIndex AS DWORD) AS OBJECT PASCAL CLASS TabControl:VO28GUI.TabControl:__GetPageFromIndex
_DLL METHOD __GetSymbolFromIndex(nTabIndex AS DWORD) AS SYMBOL PASCAL CLASS TabControl:VO28GUI.TabControl:__GetSymbolFromIndex
I have come across this because I had overwritten these methods in a subclass.

Wolfgang

Using DTP:IsNone

Posted: Mon Jun 24, 2019 12:58 pm
by Chris
BiggyRat wrote:LOL. See Chris? Always a bright side :) ;)

Here a zip file with an aef and the two database files, I think you should see what I mean from this... hopefully.
Thanks, but please also post the fpt files are well, they are necessary for opening the dbfs.

Using DTP:IsNone

Posted: Mon Jun 24, 2019 2:21 pm
by BiggyRat
Oops... sorry...

Using DTP:IsNone

Posted: Mon Jun 24, 2019 2:49 pm
by Karl-Heinz
wriedmann wrote:
I can only say that Vulcan even in the latest version had included the SP3 version, as there were some breaking changes between SP3 and SP4, and I had to add some conditional compiling statements when porting my mainl library.
Hi Wolfgang,

it´s no pure SP3. The DTP class sources on Github show many improvements compared to the SP3 DTP sources. Also, Jamal mentioned that the GitHub DTP and SP4 DTP sources are not the same. Maybe some extension have been made to the VO-Libs in the VN times, so the GitHub sources show SP3 + VN enhancements/fixes ?

regards
Karl-Heinz