edu-senex/edu/content/cheatsheets/notation-cheatsheet.md

3 KiB

Omnis $-Notation Cheat Sheet

Navigation durch die Hierarchie

$root                          Die Omnis-Wurzel
  .$libs                       Alle geoeffneten Libraries
    .myLib                     Bestimmte Library
      .$classes                Alle Klassen
        .myClass               Bestimmte Klasse
          .$methods            Alle Methoden
          .$objs               Alle UI-Objekte
          .$ivars              Alle Instanz-Variablen

Kontext-Shortcuts

Pfad Bedeutung JS-Aequivalent
$cinst Aktuelle Instanz this
$cclass Aktuelle Klasse this.constructor
$clib Aktuelle Library -
$ctask Aktueller Task Global scope
$cmethod Aktuelle Methode -
$cwind Aktuelles Window window

UI-Objekte

$cinst.$objs.feldName.$contents          Wert lesen
$cinst.$objs.feldName.$contents.$assign(x)  Wert setzen
$cinst.$objs.feldName.$visible           Sichtbar?
$cinst.$objs.feldName.$enabled           Aktiv?
$cinst.$objs.feldName.$textcolor         Textfarbe
$cinst.$objs.feldName.$backcolor         Hintergrundfarbe
$cinst.$objs.feldName.$font              Schriftart
$cinst.$objs.feldName.$tooltip           Tooltip-Text
$cinst.$objs.feldName.$dataname          Gebundene Variable

Listen-Notation

lList.$linecount          Anzahl Zeilen
lList.$line               Aktuelle Zeile (1-basiert)
lList.$colcount           Anzahl Spalten
lList.$cols               Spalten-Collection
lList.$cols.$add(...)     Spalte hinzufuegen
lList.$add()              Zeile hinzufuegen
lList.$remove(n)          Zeile n entfernen
lList.$clear()            Alle Zeilen loeschen
lList.$search(expr)       Suchen
lList.$sort(col, asc)     Sortieren
lList.$sendall(expr)      Auf alle Zeilen anwenden
lList.$merge(other)       Listen zusammenfuegen
lList.$selected           Auswahl-Flag der akt. Zeile
lList.[3].colname         Spalte in Zeile 3
lList.colname             Spalte in aktueller Zeile

Methoden aufrufen

Do iObj.$method()                     Ohne Rueckgabe
Do iObj.$method() Returns lResult     Mit Rueckgabe
Do iObj.$method(p1, p2) Returns lR    Mit Parametern
Do $cinst.$objs.btn.$visible.$assign(kTrue)  Property setzen
Do inherited                          Super-Methode

Wichtige Konstanten

kTrue / kFalse          Boolean
kCharacter              String-Typ
kInteger                Ganzzahl-Typ
kNumber                 Dezimal-Typ
kDate                   Datum-Typ
kList                   Listen-Typ
kRow                    Row-Typ
kBoolean                Boolean-Typ
kFetchAll               Alle Zeilen holen
kFetchOne               Eine Zeile holen
kSimplechar             Einfacher String-Subtyp
k2dp                    2 Dezimalstellen

Merkhilfe: LESEN vs SETZEN

LESEN:  Calculate lVal as $cinst.$objs.feld.$contents
SETZEN: Do $cinst.$objs.feld.$contents.$assign(lVal)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
           Nie = verwenden! Immer $assign() !