1995

Origin - LabTalk Richtlinien

Bezueglich der LabTalk Programmierung gibt es vom Hersteller empfohlene Richtlinien.

* 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 Balloon 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 Scriptfenster 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

Haben Sie noch Fragen?