VO -> X# mit GA2

Deutschsprachiges X#-Forum – German language forum

Moderator: wriedmann

Frank Müßner
Posts: 276
Joined: Sat Dec 12, 2015 2:22 pm
Location: Germany

VO -> X# mit GA2

Post by Frank Müßner »

Hallo zusammen,
jetzt wo die vorerst finale Version von X# draußen ist soll jetzt endlich der Transport erfolgen. Der 3. Anlauf :-)
Das es eine kurze Reise wird, davon hab ich mich schon verabschiedet. Mein Ansatz ist das der Code in VO zuerst soweit wie möglich angepasst wird, weil ich vermute das der Transport häufiger erfolgen wird. Die VO Version muss in der Zeit weiter gepflegt werden.

Der Ansatz von Wolfgang mit der Definition:
#ifndef __XSHARP__
X# Code
#else
VO Code
#endif
ist wohl die Lösung.

Dabei meine erste Frage,
wie kann ich in VO und X# festlegen das keine Fehlermeldung beim compilieren kommt?
Beispiel:
FUNCTION GetGUID() as STRING
LOCAL cGuid as STRING

#ifndef __XSHARP__
cGuid:=System.NewGuid() -> VO Fehler: 51132 unknown variable SYSTEM
#else
cGuid:=NewGUID() -> X# Fehler XS0103 NewGuid does not exist..
#endif
Return cGuid


Weiter eine Frage zu den Menüs.
Nach dem Transport müssen die Menüs einmal in XS geöffnet werden und gespeichert damit die Defines neu geschrieben werden. Gibt es da eine andere Einstellung?


Habt ihr da einen Tip?
Frank
User avatar
lumberjack
Posts: 723
Joined: Fri Sep 25, 2015 3:11 pm

VO -> X# mit GA2

Post by lumberjack »

Hi Frank,

Is this not the feature that is now implemented in the XPorter that you are looking for?

Code: Select all

// VXP-COM : comments the line when exporting it
// VXP-UNC : uncomments the line
// VXP-DEL : deletes the line contents
example:
// METHOD ThisMethodDoesNotGetDefinedInVOcode() // VXP-UNC
// RETURN NIL // VXP-UNC
User avatar
Chris
Posts: 4562
Joined: Thu Oct 08, 2015 7:48 am
Location: Greece

VO -> X# mit GA2

Post by Chris »

Hi Frank,

With #ifndef __XSHARP__ , you tell the compiler (parser) to NOT include the following code when compiling in X#. Use #ifdef __XSHARP__ to tell it to compile it ONLY in X#.

About menus, can you please explain more? Why do you need to save the menu in the designer first? What does it do different regrding the DEFINEs compared to the original DEFINEs created by the VOXporter?
Chris Pyrgas

XSharp Development Team test
chris(at)xsharp.eu
User avatar
wriedmann
Posts: 3644
Joined: Mon Nov 02, 2015 5:07 pm
Location: Italy

VO -> X# mit GA2

Post by wriedmann »

Hallo Frank,

Code: Select all

FUNCTION GetGUID() as STRING
LOCAL cGuid as STRING

#ifdef __XSHARP__
cGuid:=System.NewGuid() 
#else
cGuid:=NewGUID()
#endif
Return cGuid
Also andersrum.
Wenn __XSHARP__ definiert ist (bei VO nicht), dann sollte der X#-Code stehen, und im #else dann der VO-Code.

Der VO-Compiler sieht den ersten Teil (also nach dem #ifdef) nicht, der X#Compiler den zweiten Teil (also nach dem #else).

Wolfgang
Wolfgang Riedmann
Meran, South Tyrol, Italy
wolfgang@riedmann.it
https://www.riedmann.it - https://docs.xsharp.it
Karl-Heinz
Posts: 774
Joined: Wed May 17, 2017 8:50 am

VO -> X# mit GA2

Post by Karl-Heinz »

Kleine Korrektur bzgl. Erstellung einer GUID mit X# ;-)

cGuid := System.Guid.NewGuid():ToString()

oder

cGuid := System.Guid.NewGuid().ToString()

Gruß
Karl-Heinz
Frank Müßner
Posts: 276
Joined: Sat Dec 12, 2015 2:22 pm
Location: Germany

VO -> X# mit GA2

Post by Frank Müßner »

Guten Morgen,

vielen Dank für die Hilfe. Ich hab es nicht gesehen mit if(n)def , wohl überarbeitet. :-(

@Karl-Heinz Schon geändert :-)

@Chris, i will make a new sample transport an send a sample to you.

Grüße Frank
Frank Müßner
Posts: 276
Joined: Sat Dec 12, 2015 2:22 pm
Location: Germany

VO -> X# mit GA2

Post by Frank Müßner »

Hi Chris,
Problem the German Umlaute.
Code after transport:

Code: Select all

#define IDM_KDSUCHMENUE_Spalten_zusätzlich_anzeigen_Zusatzbezeichung_ID 16861
#define IDM_KDSUCHMENUE_Spalten_zusätzlich_anzeigen_Infofeld_12_ID 16862
#define IDM_KDSUCHMENUE_Spalten_zusätzlich_anzeigen_Spaltenpositionen_auf_Standardwerte_setzen_ID 16863
 KDSUCHMENUE MENU
Begin
	POPUP "Spalten zusätzlich anzeigen"
	BEGIN
		MENUITEM "Zusatzbezeichung", IDM_KDSUCHMENUE_Spalten_zusätzlich_anzeigen_Zusatzbezeichung_ID
		MENUITEM "Infofeld 12", IDM_KDSUCHMENUE_Spalten_zusätzlich_anzeigen_Infofeld_12_ID
		MENUITEM "Spaltenpositionen auf Standardwerte setzen", IDM_KDSUCHMENUE_Spalten_zusätzlich_anzeigen_Spaltenpositionen_auf_Standardwerte_setzen_ID
	END
End
Error:

Code: Select all

Fehler	RC2008	'õ' : unexpected in macro definition	....W_Sons_Menus.KDSUCHMENUE.rc	1
After once open the Menue Designer:

Code: Select all

//------------------------------------------------------------------------------
//  <auto-generated>
//     This code was generated by a tool.
//     Runtime version: 4.0.30319.42000
//     Generator      : XSharp.MenuEditor 2.0.0.0
//     Timestamp      : 26.08.2019 08:52:46
//     
//     Changes to this file may cause incorrect behavior and may be lost if
//     the code is regenerated.
//  </auto-generated>
//------------------------------------------------------------------------------

#define IDM_KDSUCHMENUE_Spalten_zusatzlich_anzeigen_ID 19500
#define IDM_KDSUCHMENUE_Spalten_zusatzlich_anzeigen_Zusatzbezeichung_ID 19501
#define IDM_KDSUCHMENUE_Spalten_zusatzlich_anzeigen_Infofeld_12_ID 19502
#define IDM_KDSUCHMENUE_Spalten_zusatzlich_anzeigen_Spaltenpositionen_auf_Standardwerte_setzen_ID 19503
KDSUCHMENUE MENU
BEGIN
	POPUP "Spalten zusätzlich anzeigen"
	BEGIN
		MENUITEM "Zusatzbezeichung" , IDM_KDSUCHMENUE_Spalten_zusatzlich_anzeigen_Zusatzbezeichung_ID
		MENUITEM "Infofeld 12" , IDM_KDSUCHMENUE_Spalten_zusatzlich_anzeigen_Infofeld_12_ID
		MENUITEM "Spaltenpositionen auf Standardwerte setzen" , IDM_KDSUCHMENUE_Spalten_zusatzlich_anzeigen_Spaltenpositionen_auf_Standardwerte_setzen_ID
	END
END
Not a big Problem when i Replace the Menu Folder after new Transporting.

Regards, Frank
Frank Müßner
Posts: 276
Joined: Sat Dec 12, 2015 2:22 pm
Location: Germany

VO -> X# mit GA2

Post by Frank Müßner »

Hi Chris,
other found with Menu:

VO Code:

Code: Select all

MENUITEM "Auswertungen (Charts)", IDM_EMPTYSHELLMENU_Auswertungen__Auswertungen_Charts_ID
Define IDM_EMPTYSHELLMENU_Auswertungen__Auswertungen_Charts_ID := 9982
After Transport:

Code: Select all

Define IDM_EMPTYSHELLMENU_Auswertungen__Auswertungen_Charts_ID := 9982
After one touch with designer:

Code: Select all

#define IDM_EMPTYSHELLMENU_Auswertungen_Auswertungen__Charts__ID 20532
Note the change of '__'

Frank
User avatar
Chris
Posts: 4562
Joined: Thu Oct 08, 2015 7:48 am
Location: Greece

VO -> X# mit GA2

Post by Chris »

HI Frank,

Ah, I was not aware of those issues, thanks, I will have a look. Will tell you if I need a sample to reproduce them.
Chris Pyrgas

XSharp Development Team test
chris(at)xsharp.eu
Frank Müßner
Posts: 276
Joined: Sat Dec 12, 2015 2:22 pm
Location: Germany

VO -> X# mit GA2

Post by Frank Müßner »

Hi Chris,
OK, tell me if you need a sample.
Frank
Post Reply