Beispiele csv

Aus bafbal.de
Version vom 22. Dezember 2020, 15:29 Uhr von Michaelebner (Diskussion | Beiträge) (→‎User-Tabelle als CSV-Datei exportieren)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

User-Tabelle als CSV-Datei exportieren

#text_clear
#cmd_clear
#text user_user_id;login;lastname;firstname

#cmd #text $DATA(usr,user_user_id);$DATA(usr,login);$DATA(usr,lastname);$DATA(usr,firstname)

#sql   select * from user_user
#sql_open   n=usr   er=1

#text_save  fn=$DIR(doc)\user.csv   o=Y

Zunächst wird sichergestellt, dass Text und Kommando leer sind, dann wird dem Text die Headerzeile hinzugefügt.

Für jede Zeile in der Datenmenge wird eine Zeile dem Text hinzugefügt. Dafür wird ein eigenes Kommando benötigt, das dann im Parameter er von #sql_open angegeben werden kann. Dieses Kommando wird hier als lokales Kommando (#cmd, also die Nummer 1) angelegt. Es fügt dem Text eine Zeile hinzu, welche die Felder der Datenmenge enthält. Auf die Felder wird mit $DATA zugegriffen, zunächst muss der Name der Datenmenge angegeben werden, dann der Feldname.

Nun wird eine Datenmenge mit #sql definiert und mit #sql_open geöffnet. Dabei muss mit dem Parameter n die Datenmenge benannt werden, auf den verwendeten Namen bezieht sich dann $DATA. Mit dem Parameter er ("each row") wird das Kommando spezifiziert, das für jede Zeile der Datenmenge ausgeführt wird. Da es sich hier um ein lokales Kommando handelt, ist der Bezeichner eine Nummer.

Zuletzt wird der Text gespeichert und die Datei gleich geöffnet (o=Y). Der Dateiname wird mit fn ("FileName" angegeben). Die Funktion $DIR(doc) gibt das Windows-Dokumentenverzeichnis zurück.