Seite 1 von 1
Konstanten (Enumeration) in Modul für externen Zugriff deklarieren
Verfasst: 07.02.2025 15:20
von Beefi
Hi zusammen,
gibt es eine Möglichkeit, in einem Modul (Deklarationsbereich) irgendwie Konstanten zu definieren, die quasi fest zum Modul
gehören und z.B. über den "Doppel-Doppelpunkt" verwendet werden können?
Beispiel:
Ich arbeite gerne mit Modulen, aber leider müssen (nach meinen Skills) die Konstanten im Hauptcode extra separat definiert werden,
was ich jetzt nicht so modulmäßig finde
VG Andi
Re: Konstanten in Modul für externen Zugriff deklarieren
Verfasst: 07.02.2025 16:08
von SMaag
nein, muss man nicht extern nochmal deklarieren.
Code: Alles auswählen
DeclareModule CST
#Constant1 = 1
#Constant2 = 2
Declare Test()
EndDeclareModule
Module CST
Procedure Test()
EndProcedure
EndModule
x=CST::#Constant1
Das einzige Problem ist das Intellisense der IDE!
Wenn das Modul im gleichen .pb File deklariert ist, dann aktiviert sich beim Tippen von CST:: automatisch das Auswahlfenster.
Wenn das Modul über IncludeFile eingebunden ist, dann geht das Intellisense nicht. Um Intellisense mit Modulen in der IDE zu nutzen muss
man zwingend ein Projekt erstellen und dort die Module einbinden.
Re: Konstanten in Modul für externen Zugriff deklarieren
Verfasst: 07.02.2025 16:15
von Beefi
Hi SMaag,
vielen Dank, ich habs gerade ausprobiert und es funktioniert einwandfrei.
Sorry, ich habe keine Ahnung, was da bei mir bisher falsch lief...ich habs jetzt einfach nochmal so gemacht, wie du es gezeigt hast und es funktioniert auf Anhieb.
Ja das Intellisense-Problem kenne ich, daher mach ich bei mehreren Dateien grundsätzlich immer ein Projekt auf und füge die Include-Dateien dem Projekt zu. Mit Intellisense ist man schon sehr viel angenehmer und flotter unterwegs.
Re: Konstanten (Enumeration) in Modul für externen Zugriff deklarieren
Verfasst: 25.02.2025 16:30
von Beefi
Hi SMaag,
nun ist es mir bei einem aktuellen Fall wieder eingefallen, was bei mir mit den Konstanten nicht geklappt hat.
Und zwar habe ich das Problem immer bei Enumerationen.
Die Frage des Threads wäre also, wie man auf Enumerationen (also ebenso Konstanten) von Modulen zugreifen kann.
Geht das überhaupt?
Viele Grüße
Re: Konstanten (Enumeration) in Modul für externen Zugriff deklarieren
Verfasst: 25.02.2025 17:48
von Axolotl
ja, genau wie bei Konstanten,
Code: Alles auswählen
DeclareModule Test
Enumeration ETest 1
#TEST_1
#TEST_2
#TEST_3
EndEnumeration
EndDeclareModule
Module Test
EndModule
; available:.
Debug "=> " + Test::#TEST_1
Debug "=> " + Test::#TEST_2
Debug "=> " + Test::#TEST_3
Re: Konstanten (Enumeration) in Modul für externen Zugriff deklarieren
Verfasst: 25.02.2025 20:24
von HeX0R
Wenn ich raten müsste, würde ich sagen Du platzierst Deine Konstanten falsch.
Alles innerhalb DeclareModule/EndDeclareModul ist außerhalb des Moduls erreichbar.
Alles innerhalb Module/EndModule NICHT!