81 Zeilen
3,1 KiB
Markdown
81 Zeilen
3,1 KiB
Markdown
# Omnis Commands Cheat Sheet
|
|
|
|
## Die 10 wichtigsten Befehle
|
|
|
|
| # | Befehl | Was es tut | JS-Aequivalent |
|
|
|---|--------|-----------|----------------|
|
|
| 1 | `Calculate lX as expr` | Berechnung + Zuweisung | `let x = expr` |
|
|
| 2 | `Do obj.$method()` | Methodenaufruf | `obj.method()` |
|
|
| 3 | `If ... Else ... End If` | Bedingung | `if ... else ...` |
|
|
| 4 | `For i from a to b step c` | Zaehlschleife | `for (let i=a; i<=b; i+=c)` |
|
|
| 5 | `For each line in list` | Listen-Iteration | `for (const item of arr)` |
|
|
| 6 | `While ... End While` | Bedingungsschleife | `while (...)` |
|
|
| 7 | `Quit method lVal` | Methode beenden + Return | `return val` |
|
|
| 8 | `OK message {text}` | Nachricht anzeigen | `alert(text)` |
|
|
| 9 | `Switch ... Case ... End Switch` | Fallunterscheidung | `switch ... case` |
|
|
| 10 | `Do inherited` | Super-Methode rufen | `super.method()` |
|
|
|
|
## Variablen & Berechnung
|
|
```omnis
|
|
Calculate lName as "Harry" String zuweisen
|
|
Calculate lSum as lA + lB Berechnen
|
|
Calculate lText as con("Hallo ", lName) String verketten
|
|
Calculate lUpper as upp(lName) Grossbuchstaben
|
|
Calculate lLen as len(lName) String-Laenge
|
|
Calculate lSub as mid(lName, 2, 3) Substring
|
|
Calculate lPos as pos("r", lName) Zeichen finden
|
|
```
|
|
|
|
## Kontrollfluss
|
|
```omnis
|
|
If lAge >= 18 If lStatus = 'A' | lStatus = 'B'
|
|
# erwachsen # A oder B
|
|
Else If lAge >= 14 End If
|
|
# jugendlich
|
|
Else Switch lStatus
|
|
# kind Case 'A'
|
|
End If # aktiv
|
|
Case 'I'
|
|
While lX < 100 # inaktiv
|
|
Calculate lX as lX + 1 Default
|
|
End While # sonstiges
|
|
End Switch
|
|
For lI from 1 to 10 step 1
|
|
# lI = 1, 2, 3, ...10
|
|
End For
|
|
```
|
|
|
|
## Dialoge
|
|
```omnis
|
|
OK message {Fertig!} Info-Dialog
|
|
Yes/No message {Loeschen?} Ja/Nein Dialog
|
|
If flag true ... End If Ergebnis pruefen
|
|
Prompt for input {Name?} lName Eingabe-Dialog
|
|
No/Yes message {Abbrechen?} Nein/Ja (Default=Nein)
|
|
```
|
|
|
|
## Debugging
|
|
```omnis
|
|
Breakpoint Debugger oeffnen (= debugger; in JS)
|
|
OK message {Debug: [lVar]} Quick-Debug mit Message
|
|
Trace log {[lVar]} In Trace-Log schreiben
|
|
```
|
|
|
|
## SQL-Befehle (ueber Session/Statement)
|
|
```omnis
|
|
Do lSess.$logon(host, user, pw, 'sess') Returns #F Verbinden
|
|
Do lStmt.$prepare('SELECT...WHERE id=:1') Returns #F Vorbereiten
|
|
Do lStmt.$execute(lID) Returns #F Ausfuehren
|
|
Do lStmt.$fetch(lList, kFetchAll) Returns #F Ergebnis holen
|
|
Do lStmt.$execdirect('INSERT...') Returns #F Direkt ausfuehren
|
|
```
|
|
|
|
## Merkhilfe: Die Befehls-Familien
|
|
```
|
|
DATEN: Calculate, Do, Set current list
|
|
FLUSS: If/Else/End If, For/End For, While/End While, Switch/Case/End Switch
|
|
METHODE: Quit method, Do inherited, Quit all methods
|
|
DIALOG: OK message, Yes/No message, Prompt for input
|
|
FENSTER: Open window, Close window, Redraw, Enter data
|
|
SQL: $logon, $prepare, $execute, $fetch, $execdirect
|
|
```
|