Version 3
CREATE RECORD {(Tabellenname)}
Parameter | Typ | Beschreibung | |
Tabellenname | Tabelle | Tabelle, für die ein Datensatz angelegt werden | |
soll oder Haupttabelle ohne Angabe |
Beschreibung
Der Befehl CREATE RECORD legt einen neuen Datensatz der Tabelle Tabellenname im Arbeitsspeicher an und wählt diesen als aktuellen Datensatz aus. Er erscheint jedoch nicht auf dem Bildschirm. Mit ADD RECORD wird ein neuer Datensatz angelegt und auch auf dem Bildschirm angezeigt. Tabellenname ist optional. Wird kein Parameter angegeben, bezieht sich CREATE RECORD auf die Haupttabelle.
Sie verwenden CREATE RECORD anstelle von ADD RECORD, wenn der Datensatz per Programmierung mit Daten gefüllt wird.
Dieser Datensatz wird nur im Arbeitsspeicher erzeugt. Daher müssen Sie mit dem Befehl SAVE RECORD den Datensatz sichern. Nach dem Aufruf von CREATE RECORD bleibt die aktuelle Auswahl für Tabellenname unverändert. Der Datensatz wird außerhalb der Auswahl erzeugt. Sichern Sie den erzeugten Datensatz mit SAVE RECORD, enthält die aktuelle Auswahl nur den erzeugten Datensatz.
Der aktuelle Datensatz geht verloren, wenn er vor dem Sichern gewechselt wird, z.B. bei einer Suche.
Beispiel
Folgendes Beispiel archiviert Datensätze, die älter als 30 Tage sind. Dazu werden in einer Archiv-Tabelle neue Datensätze erzeugt. Diese Datensätze werden anschließend in der Tabelle [Accounts] gelöscht. Der Code sieht folgendermaßen aus:
` Finde Datensätze älter als 30 Tage QUERY ([Accounts]; [Accounts]Entered < (Current date 30)) For ($vlRecord;1; Records in selection([Accounts])) ` Durchlaufe einmal pro Datensatz CREATE RECORD ([Archive]) ` Erstelle neuen Archiv-Datensatz [Archive]Number:=[Account]Number ` Kopiere Felder in Archiv-Datensatz [Archive]Entered:=[Account]Entered [Archive]Amount:=[Account]Amount SAVE RECORD([Archive]) ` Sichere Archiv-Datensatz NEXT RECORD([Accounts]) ` Gehe in Accounts zum nächsten Datensatz End for DELETE SELECTION([Accounts]) ` Lösche Datensätze in Accounts
Referenz
ADD RECORD, MODIFY RECORD, SAVE RECORD.