Sequence number

4D - Documentation   Français   English   German   English   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next

Version 2004.1 (Geändert)


Sequence number {(Tabellenname)} Numerisch

ParameterTypBeschreibung
TabellennameTabelleTabelle, für deren Datensätze eine fortlaufende
Nummer vergeben wird oder Haupttabelle
ohne Angabe
FunktionsergebnisNumerischSequenznummer

Beschreibung

Sequence number gibt die nächste Sequenznummer für Tabellenname zurück. Die Sequenznummer ist für jede Tabelle einmalig und wird für jeden neuen Datensatz der Tabelle um 1 erhöht. Die Nummerierung beginnt standardmäßig bei 1. Über den Befehl SET DATABASE PARAMETER können Sie die Nummerierung für eine Tabelle ändern.

Sie müssen Sequence number anstatt #N verwenden, wenn:

der Datensatz durch eine Methode erzeugt wurde.

die Numerierung nicht mit 1 beginnen soll.

nicht in Einer-Schritten hochgezählt werden soll.

die Nummer Teil eines Codes sein soll, z.B. einer Artikelnummer

Um eine Sequenznummer über eine Methode zu speichern, erstellen Sie ein Datenfeld vom Typ Lange Ganzzahl in der Tabelle und weisen die Nummer diesem Feld zu.

Die Sequenznummer ist dieselbe Nummer, die Sie über das Symbol #N als Standardwert für ein Feld in einem Formular zuweisen. Weitere Informationen zum Zuweisen von Standardwerten finden Sie im Handbuch 4th Dimension Designmodus.

Soll die Sequenznummer nicht mit 1 beginnen, müssen Sie lediglich die entsprechende Differenz hinzufügen. Folgende Methode lässt die Numerierung der Datensätze mit 1000 beginnen:

   [Table1]Seq Field := Sequence number ([Table1]) + 999

Beispiel

Folgendes Beispiel ist Teil einer Formularmethode. Sie testet, ob es ein neuer Datensatz ist; z.B. ob die Rechnungsnummer ein leerer String ist. Ist der Datensatz neu, weist die Methode eine Nummer zu. Diese Nummer setzt sich aus zwei Teilen zusammen: Der Sequenznummer und dem Benutzerkürzel, das beim Öffnen der Datenbank eingegeben wird. Die Sequenznummer wird als fünfstelliger String formatiert:

   If ([Invoices]Invoice No = "")   
         ` Ist Rechnungsnummer leer, erstelle neue Rechnungsnummer
         ` Rechnungsnummer ist String, der mit Benutzerkürzel endet. 
      [Invoices]Invoice No:=String(Sequence number;"00000")+[Invoices]OpID 
   End if

Referenz

Datensatznummern, Record number, Selected record number.

Anwendung des Befehls

Auto Numbering Records, Custom List Manager, Sequence Number


4D - Documentation   Français   English   German   English   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next