Vorheriger Abschnitt - Bedienung - Zum Inhalt

6.5 ARexx

Hinweis:

Der ARexx-Port steht Ihnen nur unter AmigaOS zur Verfügung. Bei anderen Betriebsystemen entfällt dieser Teil.

6.5.1 Einführung

Sollten Sie mit der grundsätzlichen Funktion von ARexx nicht vertraut sein, so lesen Sie bitte zunächst das ARexx Handbuch, welches mit Ihrem Amiga geliefert wurde, oder das sich auf der Betriebsystem-CD befindet.

Mit dem ARexx-Port von DataM II steht Ihnen unter AmigaOS eine mächtige Schnittstelle zur Makroprogrammierung und zur Interprozesskomunikation zur Verfügung. Sie können somit die Funktionalität von DataM II durch Eigenentwicklungen, oder Programmsequenzen von anderen gezielt erweitern.

6.5.2 Portname

Der ARexx-Port von DataM II ist unter dem Namen DataM_II.x zu erreichen, wobei das x durch die Instanznummer zu ersetzen ist. Starten Sie DataM II nur einmal, so ist der Name daher DataM_II.1. Starten Sie DataM II erneut, ohne das Programm vorher zu beenden (so, daß DataM II jetzt zweimal läuft), so ist der neue Prozess unter DataM_II.2 zu erreichen.

6.5.3 Objekthandler

Für fast jedes ARexx-Kommando benötigen Sie einen Objekthandler, der eine Zuordnung des Kommandos zu einem Objekt (z.B. eine Tabelle oder ein Blatt) erlaubt. Sie erhalten einen solchen Handler mit den Kommandos FINDOBJECT oder GETACTIVE. Benutzen Sie das RESULT dieser Kommandos als Parameter für weitere Funktionen.

6.5.4 Liste der Kommandos

DataM II kennt folgende Kommandos:

FINDOBJECT
GETACTIVE
GETATTR
GETBLOCK
GETCONTENT
GOTO
LOCK
OBJECTNAME
OBJETCTTYPE
QUERY
REDRAW
REQUESTCHOICE
REQUESTCOLOR
REQUESTNOTIFY
REQUESTSTRING
SETATTR
SETBLOCK
SETCONTENT
UNLOCK

 

6.5.5 Erklärung der einzelnen Kommandos

GETACTIVE TYPE

Mit diesem Kommando erhalten Sie in der Variable RESULT einen Objekthandler für das aktive Objekt. Wenn Sie als Parameter TYPE einen Objekttyp angeben, so erhalten Sie nur dann einen gültigen Zeiger, wenn das aktive Objekt vom gewünschten Typ ist. Erhalten Sie 0 zurück, dann gibt es kein aktives Objekt, oder das aktive Objekt ist nicht vom verlangten Typ.

FINDOBJECT NAME,TYPE

Mit diesem Kommando suchen Sie einen Handler auf ein bestimmtes Objekt. Geben Sie den Parameter NAME nicht an, dann entspricht das Kommando dem Kommando GETACTIVE. Geben Sie den Parameter NAME an, so wird nach einem Objekt mit dem spezifizierten Namen gesucht. Im Falle des Erfolgs erhalten Sie in der Variable RESULT einen Handler auf das gesuchte Objekt, andernfalls 0. Geben Sie als Parameter TYPE einen gewünschten Typ an, so wird nur nach Objekten diesen Typs gesucht.

GETCONTENT OBJECT/A/N,COLUMN/N,LINE/N,I=INTERPRET/S,R=RENDERED/S

Mit diesem Kommando erhalten Sie in der Variable RESULT den Inhalt einer Zelle eines Tabellenblattes. Der Parameter OBJECT muß der Handler zu einem Objekt des Typs Tabelle oder Blatt sein. Handelt es sich um einen Handler einer Tabelle, so bezieht sich das Kommando auf das aktive Blatt dieser Tabelle. Mit den Parametern COLUMN und LINE spezifizieren Sie die Spalte, respektive die Zeile. Geben Sie keine weiteren Parameter an, so erhalten Sie den Inhalt, wie er in der Eingabezeile angezeigt wird. Geben Sie das Schlüsselwort INTERPRET an, so wird zunächst die Formel der Zelle (soweit eine vorhanden ist) ausgewertet. Wird das Schlüsselwort RENDERED angegeben, so wird der Text in der Form zurückgegeben, wie er im Ausdruck erscheinen würde; so werden in diesem Fall Prefix und Postfix hinzugefügt, und ggf. der Dezimalpunkt durch ein Komma ersetzt.

SETCONTENT OBJECT/A/N,COLUMN/N/K,LINE/N/K,CONTENT/A/F

Mit diesem Kommando wird der Inhalt einer Zelle eines Tabellenblattes verändert. Der Parameter OBJECT muß der Handler zu einem Objekt des Typs Tabelle oder Blatt sein. Handelt es sich um einen Handler einer Tabelle, so bezieht sich das Kommando auf das aktive Blatt dieser Tabelle. Mit den Parametern COLUMN und LINE spezifizieren Sie die Spalte, respektive die Zeile. Werden diese Parameter nicht angegeben, so wird die aktive Zelle verändert. Der Parameter CONTENT muß den neuen Inhalt der Zelle enthalten. Dieser Parameter wird genauso behandelt, als ob er in der Eingabezeile eingegeben wurde.

GOTO OBJECT/A/N,COLUMN/A/N,LINE/A/N,RELATIVE/S

Bewegt den Cursor des als Parameter OBJECT übergebenen Objekts an die Koordinaten, die durch die Parameter COLUMN (Spalte = x) und LINE (Zeile = y) bestimmt werden. Wird zusätzlich der Parameter RELATIVE angegeben, so werden sie Koordinaten relativ zu der derzeitigen Cursorposition ausgewertet.

REQUESTCHOICE TITLE/A,BODY/A,CHOICES/A

Öffnet ein Fenster, welches dem Benutzer die Wahl zwischen verschiedenen Möglichkeiten läßt. Der Parameter TITLE gibt den Fenstertitel an. Der Parameter BODY gibt den Text des Fensters an. Der Parameter CHOICES gibt die Auswahlmöglichkeiten an. Jede Wahlmöglichkeit wird durch einen senkrechten Strich getrennt ("|"). Als Variable RESULT wird die Nummer der Wahl des Benutzers zurück gegeben. Die vorgegebenen Möglichkeiten werden von links nach rechts durchnummeriert, mit der Ausnahme, daß die letzte Möglichkeit oder das Schließsymbol des Fensters der 0 entspricht.

REQUESTNOTIFY PROMPT/A/F

Öffnet ein Fenster, in dem dem Benutzer eine Information, übergeben als Parameter PROMPT, angezeigt wird. Der Benutzer kann diese Information nur bestätigen.

QUERY PARAMETER/A

Erfragt den Status von DataM II. Als PARAMETER können folgende Werte genutzt werden:

LANGUAGE

Erfragt die Sprache die DataM II zur Zeit benutzt.

REDRAW OBJECT/A/N,CURSOR/S,ALL/S

Zeichnet das Objekt neu, dessen Handler als Parameter übergeben wird. Wirk kein weiterer Parameter übergeben, so versucht DataM II zu entscheiden, welche Teile des Objekts neu gezeichnet werden müssen. Wird der Parameter CURSOR übergeben, so wird nur der aktive Teil des Objekts (z.B. die Zelle eines Tabellenblatts unter dem Cursor) neu gezeichnet. Wird der Parameter ALL angegeben, so wird das komplette Objekt neu gezeichnet.

OBJECTTYPE OBJECT/A/N,NUMERIC/S

Erfragt den Typ eines Objekts, dessen Handler als Parameter übergeben wird. Wird der Parameter NUMERIC angegeben erhalten Sie die Typnummer, ansonsten den Typnamen.

OBJECTNAME OBJECT/A/N

Erfragt den Namen des Objekts, dessen Handler als Parameter übergeben wird.

GETATTR OBJECT/A/N,ATTR/A

Bestimmt den Wert des mit dem Parameter ATTR festgelegten Attributs des gegebenen Objekts. Die Möglichen Attribute können dem Abschnitt "Attribute" entnommen werden.

SETATTR OBJECT/A/N,ATTR/A,VALUE/A/F

Setzt den Wert des mit dem Parameter ATTR festgelegten Attributs des gegebenen Objekts auf den mit VALUE festgelegten Wert. Die Möglichen Attribute können dem Abschnitt "Attribute" entnommen werden.

LOCK OBJECT/N,ALL/S

Verriegelt das angegebene Objekt, so daß keine Benutzereingaben mehr möglich sind. Bei dem gegebenen Objekt muß es sich um ein Fenster handeln. Wird der Parameter ALL angegeben, so werden alle offenen Fenster gesperrt.

UNLOCK OBJECT/N,ALL/S

Entriegelt das angegebene Objekt, so daß wieder Benutzereingaben möglich sind. Bei dem gegebenen Objekt muß es sich um ein Fenster handeln. Wird der Parameter ALL angegeben, so werden alle offenen Fenster entsperrt.

REQUESTCOLOR TITLE,BODY,COLOR

Öffnet ein Fenster, daß den Benutzer auffordert, eine Farbe zu wählen. Mit dem Parameter TITLE kann der Fenstertitel festgelegt werden. Der Parameter BODY legt einen Text fest, der über der Farbliste angezeigt wird. Mit dem Parameter COLOR kann eine Farbe festgelegt werden, die zu Beginn angewählt ist.

REQUESTSTRING TITLE,BODY,CONTENT

Öffnet ein Fenster, daß den Benutzer zu einer Texteingabe auffordert. Mit dem Parameter TITLE kann der Fenstertitel festgelegt werden. Der Parameter BODY legt einen Text fest, der über dem Texteingabefeld angezeigt wird. Der Parameter CONTENT legt den Inhalt des Texteingabefeldes zu beginn fest.

GETBLOCK OBJECT/A/N

Erfragt den markierten Bereich (Block) des gegebenen Objekts. Das Ergebnis ist ein String mit zwei (z.B. "8 7") oder vier (z.B. "3 2 4 7") Zahlen. Werden nur zwei Zahlen zurückgegeben, so ist kein Block markiert. Die Werte beschreiben die Cursorposition. Werden vier Zahlen zurückgegeben, so beschreiben die ersten beiden die Koordinaten der linken, oberen Ecke des Blocks, die letzteren die untere, rechte Ecke des Blocks. Die Werte können leicht mit der Funktion WORD() des ARexx-Interpreters getrennt werden.

SETBLOCK OBJECT/A/N,X1/N,Y1/N,X2/N,Y2/N,OFF/S

Markiert im gegebenen Objekt eine Block, oder hebt eine bestehende Markierung auf. Die obere, linke Ecke des Blocks wird durch die Parameter X1 und Y1 bestimmt, die untere, rechte Ecke mit den Parametern X2 und Y2. Wird das Schlüsselwort OFF angegeben, so wird eine evtl. bestehende Markierung aufgehoben.

 

6.5.6 Zulässige Typenbezeichner und -nummern

Derzeit kennt DataM II folgende Typen:

 Typnummer  Typname  Beschreibung
 1  PROJECT  Projekt
 2  TABLE  Tabelle
 3  SHEET  Blatt

 

6.5.7 Attribute

Der folgenden Tabelle können die derzeit bekannten Attribute entnommen werden.

 Objektart  Attribut  Wertebereich  Beschreibung
Blatt (Block oder Bereich)  BACKGROUND Farbname Hintergrundfarbe des markierten Bereichs oder der aktiven Zelle
   FOREGROUND Farbname Vordergrundfarbe des markierten Bereichs oder der aktiven Zelle
   FRAMECOLOR Farbname Rahmenfarbe des markierten Bereichs oder der aktiven Zelle
   FONTNAME Fontname Schriftart des markierten Bereichs oder der aktiven Zelle
   FONTSIZE Fontgröße in Punkten Schriftgröße des markierten Bereichs oder der aktiven Zelle
   FRAMELEFT Dicke in Punkten Dicke des linken Rahmens des markierten Bereichs oder der aktiven Zelle
   FRAMERIGHT Dicke in Punkten Dicke des rechten Rahmens des markierten Bereichs oder der aktiven Zelle
   FRAMETOP Dicke in Punkten Dicke des oberen Rahmens des markierten Bereichs oder der aktiven Zelle
   FRAMEBOTTOM Dicke in Punkten Dicke des unteren Rahmens des markierten Bereichs oder der aktiven Zelle
   HALIGN LEFT, CENTER, RIGHT Horizontale Ausrichtung des markierten Bereichs oder der aktiven Zelle
   VALIGN TOP, CENTER, BOTTOM Vertikale Ausrichtung des markierten Bereichs oder der aktiven Zelle
   TYPE TEXT, NUMBER, DATE, TIME, FILE Zelltyp des markierten Bereichs oder der aktiven Zelle
Blatt (Block oder Bereich; nur Text)  MAXLEN    
Blatt (Block oder Bereich; nur Zahlen)  DIGITS    
   DECIMALS    
   SEPERATOR    
   KOMMA    
   LEADING    
   SIGN ALLWAYS, NEVER, NEGATIVE, UNDEFINED  
   PREFIX    
   POSTFIX    
Blatt (Block oder Bereich; nur Datum oder Zeit)  FORMAT    
Blatt (Block oder Bereich; nur externe Dateien)  SHOW    
       
       


Vorheriger Abschnitt - Bedienung - Zum Inhalt