DB Filesystem

Diese Datei dokumentiert alle Makrofunktionen der Kategorie DB Filesystem.

Inhaltsverzeichnis

Die folgenden Beispiele bilden einen zusammenhängenden Testablauf. Lokale Testdateien und Exportziele werden immer unterhalb des Benutzerverzeichnisses angelegt, das mit GetDirectory(14) ermittelt wird.

Für die Beispiele wird folgende lokale Teststruktur verwendet:

<Benutzerverzeichnis>\DBFilesystem_Quelle\
    Datei1.txt
    Unterordner\
        Datei2.txt

Die Testdateien können mit folgendem Makro vorbereitet werden:

Main()
{
    Benutzerverzeichnis = GetDirectory(14);

    LokalQuelle = Benutzerverzeichnis + "\\DBFilesystem_Quelle";
    LokalUnterordner = LokalQuelle + "\\Unterordner";
    LokalExport = Benutzerverzeichnis + "\\DBFilesystem_Export";
    LokalDirExport = LokalExport + "\\MakroBeispiele";

    Datei1 = LokalQuelle + "\\Datei1.txt";
    Datei2 = LokalUnterordner + "\\Datei2.txt";

    CreateDir(LokalQuelle);
    CreateDir(LokalUnterordner);
    CreateDir(LokalExport);
    CreateDir(LokalDirExport);

    Datei = OpenFile(Datei1,4097);

    if(Datei > 0)
    {
        WriteFile(Datei,"Testdatei 1 für DB Filesystem");
        CloseFile(Datei);
    }

    Datei = OpenFile(Datei2,4097);

    if(Datei > 0)
    {
        WriteFile(Datei,"Testdatei 2 im Unterverzeichnis");
        CloseFile(Datei);
    }
}

DbfDirCreate(Path)

Erstellt ein Verzeichnis im SQL Filesystem

Parameter

Nr. Parameter Beschreibung
1 Path Name des neuen Verzeichnisses

Rückgabewert

1:Verzeichnis erstellt, 0:Fehler

Verfügbarkeit

42 Makro Runtime

Beispiel

Das Beispiel erstellt im DB Filesystem das Verzeichnis MakroBeispiele und darin den Unterordner Unterordner.

Ergebnis = DbfDirCreate("MakroBeispiele");
print("DbfDirCreate MakroBeispiele: " + Ergebnis);

Ergebnis = DbfDirCreate("MakroBeispiele\\Unterordner");
print("DbfDirCreate Unterordner: " + Ergebnis);

DbfDirExport(Target,Source,[SubDirs])

Exportiert ein Verzeichnis aus dem SQL Filesystem ins Filesystem

Parameter

Nr. Parameter Beschreibung
1 Target Name des Quellverzeichnisses im SQL Filesystem
2 Source Name des Zielverzeichnisses auf dem Computer
3 SubDirs Optional: Unterverzeichnisse einbeziehen 1/0 [Default:1]

Rückgabewert

1:Verzeichnis exportiert, 0:Fehler

Verfügbarkeit

42 Makro Runtime

Beispiel

Das Beispiel exportiert das Verzeichnis MakroBeispiele einschließlich seiner Unterverzeichnisse in das Benutzerverzeichnis.

Benutzerverzeichnis = GetDirectory(14);
LokalExport = Benutzerverzeichnis + "\\DBFilesystem_Export";
LokalDirExport = LokalExport + "\\MakroBeispiele";

CreateDir(LokalExport);
CreateDir(LokalDirExport);

Ergebnis = DbfDirExport("MakroBeispiele",LokalDirExport,1);
print("DbfDirExport MakroBeispiele: " + Ergebnis);

Mit SubDirs = 1 werden vorhandene Unterverzeichnisse mit exportiert.


DbfDirImport(Target,Source,[SubDirs])

Importiert ein Verzeichnis aus dem Filesystem ins SQL Filesystem

Parameter

Nr. Parameter Beschreibung
1 Target Name des Zielverzeichnisses im SQL Filesystem
2 Source Name des Quellverzeichnisses auf dem Computer
3 SubDirs Optional: Unterverzeichnisse einbeziehen 1/0 [Default:1]

Rückgabewert

1:Verzeichnis importiert, 0:Fehler

Verfügbarkeit

42 Makro Runtime

Beispiel

Das Beispiel importiert das lokale Verzeichnis DBFilesystem_Quelle einschließlich seiner Unterverzeichnisse in das DB Filesystem.

Benutzerverzeichnis = GetDirectory(14);
LokalQuelle = Benutzerverzeichnis + "\\DBFilesystem_Quelle";

Ergebnis = DbfDirCreate("MakroBeispieleImport");
print("DbfDirCreate MakroBeispieleImport: " + Ergebnis);

Ergebnis = DbfDirImport("MakroBeispieleImport",LokalQuelle,1);
print("DbfDirImport MakroBeispieleImport: " + Ergebnis);

Beim Verzeichnisimport wird der Name des lokalen Quellverzeichnisses übernommen. Für das Beispiel entsteht im DB Filesystem folgende Struktur:

MakroBeispieleImport
└── DBFilesystem_Quelle
    ├── Datei1.txt
    └── Unterordner
        └── Datei2.txt

Mit SubDirs = 1 wird auch der Unterordner importiert.


DbfDirRemove(Path)

Löscht ein Verzeichnis im SQL Filesystem

Parameter

Nr. Parameter Beschreibung
1 Path Name des zu löschenden Verzeichnisses

Rückgabewert

0:Verzeichnis wurde gelöscht; -1:Nicht gelöscht, Dateien enthalten; -2:Nicht gelöscht, Unterverzeichnisse; -3:Nicht gelöscht, Dateien existieren; -4: Benutzerabbruch

Verfügbarkeit

42 Makro Runtime

Beispiel

Vor dem Löschen eines Verzeichnisses müssen enthaltene Dateien und Unterverzeichnisse entfernt werden. Deshalb wird zuerst Unterordner und anschließend MakroBeispiele gelöscht.

Ergebnis = DbfDirRemove("MakroBeispiele\\Unterordner");
print("DbfDirRemove Unterordner: " + Ergebnis);

Ergebnis = DbfDirRemove("MakroBeispiele");
print("DbfDirRemove MakroBeispiele: " + Ergebnis);

Bei erfolgreichem Löschen liefert DbfDirRemove() den Rückgabewert 0.


DbfExport(Target,Source)

Exportiert eine Datei aus dem SQL Filesystem Verzeichnis

Parameter

Nr. Parameter Beschreibung
1 Target Name der Quelldatei im SQL Filesystem
2 Source Name der Zieldatei auf dem Computer

Rückgabewert

1:Datei exportiert, 0:Fehler

Verfügbarkeit

42 Makro Runtime

Beispiel

Das Beispiel exportiert Datei1.txt aus dem DB Filesystem in das Benutzerverzeichnis.

Benutzerverzeichnis = GetDirectory(14);
LokalExport = Benutzerverzeichnis + "\\DBFilesystem_Export";
ExportDatei = LokalExport + "\\Datei1_Export.txt";

CreateDir(LokalExport);

Ergebnis = DbfExport("MakroBeispiele\\Datei1.txt",ExportDatei);
print("DbfExport Datei1.txt: " + Ergebnis);

DbfGetFiles(Array,[Path])

Ermittelt alle Dateien eines SQL Filesystem Verzeichnis

Parameter

Nr. Parameter Beschreibung
1 Array Ergebnisarray
2 Path Optional: Verzeichnis

Rückgabewert

1:Dateiliste ermittelt, 0:Fehler

Verfügbarkeit

42 Makro Runtime

Beispiel

Das Beispiel ermittelt die Dateien im Verzeichnis MakroBeispiele. Der Inhalt des Ergebnisarrays wird mit GetArrayString() ausgegeben.

Ergebnis = DbfGetFiles("Dateien","MakroBeispiele");
print("DbfGetFiles MakroBeispiele: " + Ergebnis);

if(Ergebnis == 1)
{
    print(GetArrayString("Dateien"));
}

Im zusammenhängenden Testablauf enthält das Verzeichnis die Datei Datei1.txt.


DbfGetSubDirs(Array,[Path])

Ermittelt alle direkten Unterverzeichnisse SQL Filesystem

Parameter

Nr. Parameter Beschreibung
1 Array Ergebnisarray
2 Path Optional: Verzeichnis

Rückgabewert

Anzahl der ermittelten Einträge

Verfügbarkeit

42 Makro Runtime

Beispiel

Das Beispiel ermittelt die direkten Unterverzeichnisse von MakroBeispiele.

Anzahl = DbfGetSubDirs("Unterverzeichnisse","MakroBeispiele");
print("DbfGetSubDirs - Anzahl: " + Anzahl);

if(Anzahl > 0)
{
    print(GetArrayString("Unterverzeichnisse"));
}

Im zusammenhängenden Testablauf wird der Unterordner Unterordner gefunden.


DbfImport(Source,Target,[Overwrite])

Importiert eine Datei aus dem Filesystem ins SQL Filesystem

Parameter

Nr. Parameter Beschreibung
1 Source Name der Quelldatei auf dem Computer
2 Target Name des Zielpfades im SQL Filesystem
3 Overwrite Optional: Überschreiben, wenn bereits vorhanden, sonst wird neuer Dateiname vergeben [Default: 1]

Rückgabewert

1:Datei importiert, 0:Fehler

Verfügbarkeit

42 Makro Runtime

Beispiel

Das Beispiel importiert zwei lokale Dateien in das DB Filesystem. Der Parameter Target bezeichnet dabei den Zielpfad beziehungsweise das Zielverzeichnis.

Benutzerverzeichnis = GetDirectory(14);

Datei1 = Benutzerverzeichnis + "\\DBFilesystem_Quelle\\Datei1.txt";
Datei2 = Benutzerverzeichnis + "\\DBFilesystem_Quelle\\Unterordner\\Datei2.txt";

Ergebnis = DbfImport(Datei1,"MakroBeispiele",1);
print("DbfImport Datei1.txt: " + Ergebnis);

Ergebnis = DbfImport(Datei2,"MakroBeispiele\\Unterordner",1);
print("DbfImport Datei2.txt: " + Ergebnis);

Dadurch entsteht im DB Filesystem folgende Struktur:

MakroBeispiele
├── Datei1.txt
└── Unterordner
    └── Datei2.txt

Wird dagegen als Target beispielsweise MakroBeispiele\\Datei1.txt angegeben, wird Datei1.txt als Verzeichnis angelegt und die importierte Datei darin gespeichert. Soll die Datei direkt unter MakroBeispiele liegen, wird deshalb nur MakroBeispiele als Zielpfad angegeben.


DbfRemove(FileName)

Löscht eine Datei aus dem SQL Filesystem Verzeichnis

Parameter

Nr. Parameter Beschreibung
1 FileName Name der zu löschenden Datei im SQL Filesystem

Rückgabewert

1:Datei gelöscht, 0:Fehler

Verfügbarkeit

42 Makro Runtime

Beispiel

Das Beispiel löscht zuerst Datei2.txt aus dem Unterordner und anschließend Datei1.txt aus MakroBeispiele.

Ergebnis = DbfRemove("MakroBeispiele\\Unterordner\\Datei2.txt");
print("DbfRemove Datei2.txt: " + Ergebnis);

Ergebnis = DbfRemove("MakroBeispiele\\Datei1.txt");
print("DbfRemove Datei1.txt: " + Ergebnis);