[gelöst] Macro-Syntax

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: [gelöst] Macro-Syntax

Re: Macro-Syntax

von hk3003 » Di, 14.03.2023 13:33

Hallo Robert,
danke für die intensive Unterstützung und Kompliment für das Handbuch,
lg heinz

Re: Macro-Syntax

von RobertG » Di, 14.03.2023 10:35

Hallo Heinz,

Du kannst auch Text mit Hilfe von + oder & ganz normal verbinden.

Gruß

Robert

Re: Macro-Syntax

von hk3003 » Mo, 13.03.2023 17:29

Hallo Robert,
Screenshot 2023-03-13 172500.png
Screenshot 2023-03-13 172500.png (4.95 KiB) 1490 mal betrachtet
jetzt ist mir das klar! Und das gilt nur für Variablen?
lg heinz

Re: Macro-Syntax

von RobertG » Mo, 13.03.2023 16:39

Hallo Heinz,

wenn Du den Code im Editor von Base siehst wird Dir das durch die Farbgebung schneller klar.

Code: Alles auswählen

"…""Zeitspeicher"" =  '"
Damit endet der erste Textteil

Code: Alles auswählen

+loZeit
Damit wird die Variable loZeit an den vorhergehenden Textteil angehängt.

Code: Alles auswählen

+"' WHERE …"
Und hiermit folgt wieder Text.
Die einfachen Anführungszeichen stehen in dem vorgefertigten Textteil. Sie wären bei loZeit auch nicht notwendig, weil es sich dabei ja um eine Zahl handelt. Text muss in SQL hingegen auf jeden Fall in einfache Anführungszeichen gesetzt werden.

Gruß

Robert

Re: Macro-Syntax

von hk3003 » Mo, 13.03.2023 15:33

Hallo Robert,
In der Variable stSql wird ein Text gespeichert. Der Text wird dabei zusammengesetzt aus SQL-Code und einigen Variablen. Mit + oder & werden einzelne Elemente im Makro verbunden. Du könntest also die + - Zeichen auch durch & - Zeichen ersetzen.
Es ist mir noch immer nicht klar warum die + Zeichen am Anfang und am Ende der Feldnamen sind. Noch dazu sind sie - nach meiner Logik - ja von Hochkomma begrenzt und daher zum Namen gehörend? Oder bewirken diese Steuerzeichen (+), dass hier keine Tabellen- oder Formularfelder eingebunden werden?
Ich hoffe ich bin nicht zu lästig,
lg heinz

Re: Macro-Syntax

von RobertG » Mo, 13.03.2023 08:34

Hallo Heinz,

da ich die Datenbanken und die Beschreibung erstellt habe hier zur ersten Frage ein Verweis auf die Beschreibung zu den Beispielen:
Aus dem Feld "Startzeit" soll der Zeitstempel für die Startzeit ausgelesen werden (Zeile 10). Dieser kann auch Nachkommastellen enthalten. Deshalb wird der Wert als String ausgelesen und berücksichtigt nur die ersten 19 Zeichen (10 Zeichen für das Datum, ein Leerzeichen, 8 Zeichen für die Zeit).
In der Variable stSql wird ein Text gespeichert. Der Text wird dabei zusammengesetzt aus SQL-Code und einigen Variablen. Mit + oder & werden einzelne Elemente im Makro verbunden. Du könntest also die + - Zeichen auch durch & - Zeichen ersetzen.

Gruß

Robert

[gelöst] Macro-Syntax

von hk3003 » So, 12.03.2023 11:30

Hallo Forum,
in der Beispieldatenbank Zeitmessung ist ein Macro bei dem ich 2 Zeilen nicht ganz verstehe:

Code: Alles auswählen

SUB Zeitmessung_Start_System(oEvent AS OBJECT)
	DIM oForm AS OBJECT
	DIM oFeld AS OBJECT
	DIM oConnection AS OBJECT
	DIM oSQL_Statement AS OBJECT
	DIM stStartzeit AS STRING
	DIM stSql AS STRING
	DIM loZeit AS LONG
	oForm = oEvent.Source.Model.Parent
	stStartzeit = Left(oForm.getString(oForm.findColumn("Startzeit")),19)	<-- was passiert hier genau?
	loZeit = getSystemTicks() ' Gibt die Systemzeit in Millisekunden an
	oConnection = oForm.activeConnection()
	oSQL_Statement = oConnection.createStatement()
	stSql = "UPDATE ""T_Zeitspeicher"" SET ""Zeitspeicher"" =  '"+loZeit+"' WHERE ""Startzeit"" = '"+stStartzeit+"'"	<-- wozu die Pluszeichen?
	oSQL_Statement.executeUpdate(stSql)
END SUB
ich hoffe es kann mir jemand helfen,
lg heinz

Nach oben