Globale Variabeln im Makro

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Globale Variabeln im Makro

Re: Globale Variabeln im Makro

von sschultewolter » Fr, 05.06.2015 16:08

Hab das ganze nun so ersteinmal gelöst. Bei CONST meckert er nicht ;)
Danke

Code: Alles auswählen

' Parameter, nur Änderungen hier vornehmen
CONST maxSizeList = 	200					' Anzahl Datensätze die geladen werden sollen
CONST pathRoot = 		"X:/"				' Pfad der Datensätze (Windows: "X:/" Linux: "file:///mnt/Kunden/)
CONST pathDocuments =	"/"					' Pfad Dokumente
CONST pathVnc = 		"/5.IT/bhkw.vnc" 	' Pfad VNC-Verknüpfung


SUB formLoaded
	' Nur zur Laufzeit, nicht im Desginer
	if not thiscomponent.currentcontroller.isFormDesignMode then	
		oForm = thisComponent.drawpage.forms.MainForm
  		oForm.fetchSize = maxSizeList
	end if

	' Einmalig ausführen beim Laden der Maske
	openDir
	openVnc
END SUB

' Öffnet den Dokumenten Ordner
SUB openDir
	oDoc = thisComponent
	oDrawpage = oDoc.drawpage
	oForm = oDrawpage.forms.getByName("MainForm")
	oFeld1 = oForm.getByName("fmtID")				' Anlagen ID auslesen
	stText = oFeld1.Text
	stURL = pathRoot & stText & pathDocuments
	oFeld2 = oForm.getByName("Unterlagen")
	oFeld2.TargetURL = stURL
END SUB

' Startet VNC-Verknüpfung
SUB openVnc
	oDoc = thisComponent
	oDrawpage = oDoc.drawpage
	oForm = oDrawpage.forms.getByName("MainForm")
	oFeld1 = oForm.getByName("fmtID")				' Anlagen ID auslesen
	stText = oFeld1.Text
	stURL = pathRoot & stText & pathVnc
	oFeld2 = oForm.getByName("VNC")
	oFeld2.TargetURL = stURL
END SUB

Re: Globale Variabeln im Makro

von sschultewolter » Fr, 05.06.2015 16:00

Ja komma4,
es soll sowas wie const rauskommen.

Habe mit der Makro Programmierung sonst nichts am hut. In C hätte ich da nun einfach const int, .. oder #defines genutzt.

Re: Globale Variabeln im Makro

von komma4 » Fr, 05.06.2015 15:31

Na... so, wie du es machst
F1 Hilfe zu PUBLIC hat geschrieben:Dimensioniert eine Variable oder ein Array auf Modulebene (also nicht innerhalb eine Subroutine oder Funktion), sodass die Variable bzw. das Array in allen Bibliotheken und Modulen gültig ist.
Ich denke aber, Du willst eher eine Konstante CONST definieren.

Globale Variabeln im Makro

von sschultewolter » Fr, 05.06.2015 11:30

Hallo,

ich habe ein paar Parameter, die bei mir einmal eingestellt werden müssen. Die möchte ich aber ungern im nachfolgenden Code machen. Sondern das ganze global in die ersten Zeilen schreiben.

Wie mache ich das am besten? Es wird ein Int-Wert sowie 3 Strings benötigt.

Code: Alles auswählen

Public maxSizeList = 200
Public pathRoot = "A:/"
Public pathDocuments = "/"
Public pathVnc = "/xy/test.vnc"

Sub func1
// ruft einmalig func2 und func3 auf
func2
func3
End Sub

Sub func2
// mach was
End Sub


Sub func3
// mach was anderes
End Sub


Nach oben