Version 11 (Geändert)
Open document (Dokument{; DateiTyp{; Modus}}) DokRef
Parameter | Typ | Beschreibung | |
Dokument | String | Dokumentname oder | |
Kompletter Pfadname oder | |||
leerer String für Standarddialog für Datei | |||
DateiTyp | String | Liste der anzuzeigenden Dokumenttypen | |
oder *, um Dokumente nicht anzuzeigen | |||
Modus | Ganzzahl | Modus für Öffnen des Dokuments | |
Funktionsergebnis | DokRef | Referenznummer des Dokuments |
Beschreibung
Die Funktion Open document öffnet das Dokument, dessen Namen bzw. Pfadnamen Sie in Dokument übergeben haben.
Ist Dokument ein leerer Text, wird durch Open document der Standarddialog zum Öffnen von Dokumenten angezeigt. Brechen Sie diesen Dialog ab, wird kein Dokument geöffnet. Open document gibt in RefNr Null zurück und setzt die OK Variable auf 0.
Wird das Dokument korrekt geöffnet, gibt Open document die Referenznummer des Dokuments zurück, die Systemvariable OK nimmt den Wert 1 an.
Ist das Dokument bereits geöffnet und der Parameter Modus nicht gewählt, öffnet Open document das Dokument im Lesemodus, die Systemvariable OK nimmt den Wert 1 an.
Ist das Dokument bereits geöffnet und Sie versuchen, es im Schreibmodus zu öffnen, erhalten Sie eine Fehlermeldung.
Gibt es das Dokument nicht oder ist es bereits geöffnet, erhalten Sie eine Fehlermeldung.
Im Parameter DateiTyp übergeben Sie den/die Dateitypen, die im Öffnen-Dialog auswählbar sind. Sie können eine Liste der Dokumenttypen übergeben, getrennt durch Strichpunkt (;). Für jeden gesetzten Typ wird im Menü zum Auswählen des Typs im Dialogfenster ein Eintrag hinzugefügt.
Auf Mac OS können Sie einen Macintosh Standardtyp (TEXT, APPL, etc.) oder einen UTI Typ(Uniform Type Identifier) übergeben. Apple hat UTIs zur Standardisierung von Dateitypen definiert. So ist z.B. "public.text" der UTI Typ für Dateien vom Typ Text. Weitere Informationen dazu finden Sie im Internet unter: http://developer.apple.com/documentation/Carbon/Conceptual/understanding_utis/index.html.
Unter Windows können Sie auch einen Mac OS Standardtyp übergeben - 4D sorgt intern für die Entsprechung - oder eine Dateierweiterung (.txt, .exe, etc.) Beachten Sie, dass der Benutzer unter Windows durch Eingabe von ** die Anzeige aller Dateitypen erzwingen kann. In diesem Fall führt 4D jedoch eine zusätzliche Überprüfung der gewählten Dateitypen aus: Wählt der Benutzer einen nicht zugelassenen Dateityp, gibt die Funktion einen Fehler zurück.
Wollen Sie die angezeigten Dateien nicht auf bestimmte Typen beschränken, übergeben Sie in Dateitypden String * (Stern) oder .*.
Mit dem optionalen Parameter Modus definieren Sie, wie DokName geöffnet werden soll. Es gibt vier Möglichkeiten. 4D bietet unter dem Thema "Systemdokumente" folgende vordefinierten Konstanten:
Konstante | Typ | Wert |
Read and Write (Standardwert) | Ganzzahl | 0 |
Write Mode | Ganzzahl | 1 |
Read Mode | Ganzzahl | 2 |
Get Pathname | Ganzzahl | 3 |
Ist einDokument geöffnet, setzt Open document die Dateiposition an den Anfang des Dokuments. Die Funktion Append Document setzt sie am Ende der Datei.
Haben Sie ein Dokument geöffnet, können Sie mit den BefehlenRECEIVE PACKET und SEND PACKET im Dokument lesen und schreiben. Sie können diese auch mit Get document position und SET DOCUMENT POSITION kombinieren, um direkt auf jeden beliebigen Teil des Dokuments zuzugreifen.
Vergessen Sie nicht, bei Bedarf CLOSE DOCUMENT für das Dokument aufzurufen.
Beispiele
Folgendes Beispiel öffnet ein vorhandenes Dokument mit Namen Notiz, trägt den String "Adieu" ein und schließt das Dokument. Enthielt das Dokument bereits den String "Hallo", wird er überschrieben:
C_TIME(vhDokRef) vhDocRef:=Open document ("Notiz.txt";Read and Write) ` Öffne Dokument mit Namen Notiz If (OK=1) SEND PACKET (vhDokRef;"Adieu") ` Schreibe ein Wort in Dokument CLOSE DOCUMENT (vhDokRef) ` Schließe Dokument End if
2. Sie können nun ein Dokument lesen, das bereits im Schreibmodus geöffnet ist:
vDoc:=Open document ("ÜbergebeDatei";"TEXT") ` Datei ist geöffnet ` Bevor Datei geschlossen wird, kann sie im Nur Lesen Modus eingesehen werden: vRef:=Open document ("ÜbergebeDatei";"TEXT";Read Mode)
Systemvariablen und Mengen
Wurde das Dokument korrekt geöffnet, wird die Systemvariable OK auf 1 gesetzt, sonst auf 0 (Null). Die Systemvariable Document enthält nach dem Aufruf den vollen Namen des Dokuments.
Übergeben Sie in Modus 3, gibt die Funktion ?00:00:00? zurück (keine Referenz auf Dokument). Das Dokument wird nicht geöffnet, die Systemvariablen Document und OK werden jedoch aktualisiert:
OK ist gleich 1.
Document enthält den kompletten Pfadnamen und den Namen von Dokument.
Hinweis: Wird die in Dokument angegebene Datei nicht gefunden oder wurde ein leerer String übergeben, erscheint das Dialogfenster zum Öffnen einer Datei. Wählt der Benutzer ein Dokument und klickt auf die Schaltfläche OK, wird Dokument auf den Pfad des Dokuments gesetzt, das der Benutzer gewählt hat und OK wird auf 1 gesetzt. Hat der Benutzer auf die Schaltfläche Abbrechen geklickt, ist OK gleich 0 (Null).
Referenz
Append document, Create document.
File Names and Paths, Virtual Structure 2