[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Feb 2006
    Beiträge
    9

    nächste Satznummer ermitteln

    Hallo Gurus,

    welche ist die schnellste Möglichkeit eine Satznummer zu ermitteln:
    - Nummer im Datenbereich lesen, erhöhen und neue Nummer zurückschreiben
    - Nummer in einem Feld / Tabelle erhöhen

    Ich benötige eine schnelle Möglichkeit um in einen Triggerprogramm die eine eindeutigen Primery Key zu erzeugen. Diese Datensätze werden später wieder gelöscht so muss ich die Nummer wo extern speichern.
    Da ein Datum + Uhrzeit in Millisekunden scheinbar nicht ausreicht - wurde ja hier schon diskutiert: http://www.newsolutions.de/forum-sys...isekunden.html

    Eventuell gibt es ja auch eine andere Lösung

    Danke im voraus für eure Antworten

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Die schnellste und einfachste in (ILE)RPG ist sicherlich die DTAARA.

    Wichtig:

    LOCK
    IN
    ADD 1
    OUT
    UNLOCK

    Wobei ggf. der Out schon einen Unlock macht.
    Ansonsten gehts noch mit SQL und einem Generator, was aber sicherlich etwas langsamer ist.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Feb 2006
    Beiträge
    9
    Danke für die rasche Antwort

  4. #4
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    Hallo,

    wenn die Dinger nicht lückenlos sein müssen, dann ist eine Datei und Blockweises ziehen das non plus ultra.

    mfg

    Dieter Bender

    PS: das manchmal angepriesene GENUUID ist auf Multiprozessor Maschinen auch nicht eindeutig und der neuen SQL Function in V5R4 traue ich ebenfalls nicht über den Weg, das hört sich nach GENUUID an.


    Zitat Zitat von Juergen_G Beitrag anzeigen
    Hallo Gurus,

    welche ist die schnellste Möglichkeit eine Satznummer zu ermitteln:
    - Nummer im Datenbereich lesen, erhöhen und neue Nummer zurückschreiben
    - Nummer in einem Feld / Tabelle erhöhen

    Ich benötige eine schnelle Möglichkeit um in einen Triggerprogramm die eine eindeutigen Primery Key zu erzeugen. Diese Datensätze werden später wieder gelöscht so muss ich die Nummer wo extern speichern.
    Da ein Datum + Uhrzeit in Millisekunden scheinbar nicht ausreicht - wurde ja hier schon diskutiert: http://www.newsolutions.de/forum-sys...isekunden.html

    Eventuell gibt es ja auch eine andere Lösung

    Danke im voraus für eure Antworten
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  5. #5
    Registriert seit
    Jan 2007
    Beiträge
    1.002
    Ich würde den Pointer des Files auf EOF stellen und einen Satz zurücklesen - entsprechenden Recordcounter um 1 erhöhen. Nicht die schnellste aber m.E. die sicherste Lösung. Ausserdem wird ein externer Counter umgangen.

    Zur DTAARA-Lösung:
    Gesetzt die DTAARA enthält einen falschen Wert, fliegt die ganze Sache beim Schreiben auf die Nase.

Similar Threads

  1. Dateigröße ermitteln und anzeigen
    By Bratmaxxe in forum NEWSboard Programmierung
    Antworten: 9
    Letzter Beitrag: 08-01-07, 09:50
  2. Fixtexte in Bildschirmdateien ermitteln
    By ulbrecht in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 06-12-06, 17:06
  3. LPAR Prozessor Leistung Ermitteln
    By Weki in forum NEWSboard Server Software
    Antworten: 6
    Letzter Beitrag: 29-08-06, 09:09
  4. nach Insert neu gen. Datensatz ermitteln
    By M.Kasper in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 25-08-06, 07:32
  5. SQL Select mit SUM aus einer DB
    By JonnyRico in forum NEWSboard Programmierung
    Antworten: 14
    Letzter Beitrag: 30-03-06, 12:33

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •