Origin - LabTalk Richtlinien
Bezüglich der LabTalk Programmierung gibt es vom Hersteller empfohlene Richtlinien.
Erläuterung
- Zeichenketten (Strings) werden immer in Anführungszeichen gesetzt (test.string$="Hallo";)
- Alle Zeichenketten (Nachrichten, Warnungen) stehen nicht im LabTalk Code, sondern in einer separaten OMG Datei. (siehe Origin Hilfe zum Befehl Type)
- Der LabTalk Code steht in OGS Dateien, in Templates treten hauptsächlich run.section Kommandos auf. Variablen, die beim Aufruf benötigt werden, werden zu Beginn der Sektion in Kommentaren gelistet.
- Argumente können in Sections übergeben werden:
run.section(test,main,1 2 $(a) "hallo")
In der Section werden sie mit %1, %2 etc. angesprochen. - Für numerische Wertzuweisungen werden keine String-Operatoren verwendet.
- Berechnungen in Wertzuweisungen werden durch runde Klammern geschützt (a = data1_b[(i + 3*j)];)
- Kommentare werden im C++ Stil eingefügt ( // ).
- #! Kommentare werden zum Debuggen eingefügt. Die folgenden Kommandos werden nur ausgeführt, wenn @B=1. So werden alle type Anweisungen eingebaut.
- Tools: Die Drop-Down Area einer Combobox darf NICHT über Buttons reichen, die eine Ballon-Hilfe haben ≥ nur Statusbar Hilfe verwenden
- Tools: Die Master-Tab (die beim Start angezeigt wird) muss breiter sein als alle weiteren Tabs, sonst kann es zu Problemen kommen.
- Tools: Schließen nur mit win -wc name; ≥ danach darf kein weiterer Code kommen, wenn es auf einen OK oder Cancel Button innerhalb des Tools gelegt ist.
- Debuggen: Script Fenster aufmachen, echo=7 eingeben, und das Skriptfenster so platzieren, dass es immer sichtbar ist. Origin zeigt dort alle Kommandos an, die es ausführt, so kann die Stelle herausgefunden werden, an der das Problem auftritt.
- Zugriff auf Zellen des WKS: Besser die Notation data1_a[ii]$ anstelle von %(WKSNAME, COLNUM, ROWNUM) verwenden.
- Schleifen / Bedingungen (if, loop, for) dürfen maximal 20 Zeilen enthalten. Um Probleme mit dem Interpreter zu vermeiden, run.sections einfügen.
- Fenster öffnen: Das Verwenden von win -ti anstelle von win -t öffnet ein Fenster und minimiert es zugleich. So kann das Aufblinken des Bildschirms verhindert werden, wenn das Fenster sowieso minimiert oder versteckt wird.
- Zugriff auf Excel Workbooks per Script: Zuerst die Arbeitsmappe mit win -a book1; layer -s; set book1 -ui; aktualisieren, dann auf die Daten zugreifen. Andernfalls nimmt Origin mögliche Veränderungen an den Daten nicht wahr.
- Fenster schließen: Sie können ein Fenster mit win -c schließen. Dieser Befehl löscht allerdings nicht die Daten. Wenn Sie ein Fenster schließen möchten und die Daten löschen. Verwenden Sie deshalb immer folgende Konvention den Befehl win -o %K.
- Rückgabewerte aus Sections: Eine Section immer mit Return 0 abschließen, wenn kein Fehler auftritt, ansonsten mit Return 1. So kann einfach überprüft werden, ob ein Fehler auftrat.
Nachstehend ein Beispielcode zum Thema Fenster schließen und Rückgabewerte aus Sections.
%K = Data1; win -o %K { page.closebits=2; // keine Rückfrage win -ca; // Fenster + Datensatz löschen, kein Argument geduldet } // win -o In diesem Beispielcode überprüfen Sie den Rückgabewert aus Sections. if (run.section(test,main)){ return 1; // fehler!! } // if
|