[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Apr 2003
    Beiträge
    195

    Question Verschachtelte Datenstruktur

    Hallo allerseits,
    und wieder einmal benötige ich Euer Schwarmwissen.

    Ich habe das Problem, dass ich 4 Felder habe und diese gerne in eine Struktur bringen möchte.

    Ich dachte, dass ich das auf die Art lösen kann, aber da habe ich mich geirrt:

    D DS01
    d satz 1 49a DIM(5)
    d DS01ARTN 1 8s 0
    d DS01LINR 9 16s 0
    d DS01LANR 17 41a
    d DS01AEDT 42 49s 0


    Satz sollte die Felder beinhalten und satz sollte 5 mal vorkommen.
    Wie müsste ich das richtig definieren und ist das überhaupt möglich? Und wenn ja, wie greife ich die Felder ab?

    Danke schon mal für Eure Unterstützung
    LG
    Franz-Georg
    Last edited by FNeurieser; 14-02-22 at 07:53. Grund: Gelöst

  2. #2
    Registriert seit
    Apr 2003
    Beiträge
    195
    Hallo,

    funktioniert mit overlay, danke.

  3. #3
    Registriert seit
    Aug 2001
    Beiträge
    2.869
    Ich hoffe, dass Du die Datenstruktur im Free-Format etwa so:
    Code:
    DCL-DS  DS01  Inz;
      Satz             Dim(5);
        DS01ArtN       Zoned(8)    Overlay(Satz);
        DS01LinNr      Zoned(8)    Overlay(Satz: *Next);
        DS01LaNr       Char(25)    Overlay(Satz: *Next);
        DS01AeDt       Zoned(8)    Overlay(Satz: *Next);
    End-DS;
    oder zumindest im fixen Format ohne die Von-/Bis-Angaben definiert hast.
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 4. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  4. #4
    Registriert seit
    Apr 2003
    Beiträge
    195
    Ja, danke, genauso habe ich es gemacht.
    Ist mir wieder eingefallen :-)

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Ja, und Pos(n) klappt auch noch.
    Allerdings nach neuen Regeln wäre dies besser:
    Code:
    dcl-ds SatzDs qualified template;
        ArtN       Zoned(8);
        LinNr      Zoned(8);
        LaNr       Char(25);
        AeDt       Zoned(8);
    end-ds;
    
    DCL-DS  DS01  Inz;
      Satz             likeds(SatzDs) Dim(5);
    End-DS;
    Der Zugriff erfolg dann per "Satz(ind).Artn".
    Dann spricht man auch von geschachtelten Strukturen.
    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

  6. #6
    Registriert seit
    Jan 2007
    Beiträge
    904
    Yep,genau so Baldur, wobei SatzDS_t wäre noch besser ;-)
    kf

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Vorschriften gibt's soviele wie Firmen, die welche haben oder gar keine.
    Mir sagt man zumindest nach, dass meine Quellen gut zu lesen und zu verstehen sind;-).

    GoTo verwende ich gefühlt schon seit 35 Jahren nicht mehr, das geht auch in COBOL.
    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

  8. #8
    Registriert seit
    Aug 2001
    Beiträge
    2.869
    Was heißt hier alt oder neu?
    Das sind einfach 2 unterschiedliche Techniken, und jede hat ihre Existenzberechtigung!
    Das Überlagern von Arrays mit anderen Array und Sortierung nach den "Unter-Arrays" war schon Release V5R1M0 möglich
    Das Überlagern und Sortieren von Array Datenstrukturen ist erst seit den 7er Releasen möglich.
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 4. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  9. #9
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Benziner/Diesel oder E-Autos sind auch unterschiedliche Techniken. Die einen sind eben alt und die anderen neuer.
    Was die Existenzberechtigung angeht, so scheiden sich da die Geister.

    Und möglich war das Alte schon mit V2R1. Nur nicht mit Dim sondern mit Occurs (was heute ja auch noch klappt).

    Und eben weil das Alte noch existiert, glauben die Neuen dass das Neue gar nicht vorhanden ist und gehen daher auf die noch neueren Alternativen.
    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

  10. #10
    Registriert seit
    Jan 2007
    Beiträge
    904
    Birgitta, wie war das jetzt wieder mit den Legacy Applikationen? Nicht alles neue muss gleichzeitig besser sein. Jedem das Seine.

    Für meinen Teil habe ich jetzt SQL teilweise Addio sagen müssen, von wegen Modernisierung. So unbestritten dessen Vorteile, so gewichtig können auch die Nachteile sein. Eine sauber referenzierte Datenbank kann genauso sexy sein, wie eine SQL-Datenbank. Und abgesehen davon, ich wiederhole mich, bietet mir eine NoSQL Datenbank sogar mehr Vorteile, wenn's denn modern sein muss.
    kf

  11. #11
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    NoSQL = Not only SQL
    Dusiehst also, SQL geht da meist auch.
    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

Similar Threads

  1. Zeilenumbruch Datenstruktur
    By pabloesco in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 04-05-20, 11:20
  2. CL Parameterübergabe als Datenstruktur
    By camouflage in forum NEWSboard Programmierung
    Antworten: 7
    Letzter Beitrag: 05-09-19, 16:01
  3. Antworten: 7
    Letzter Beitrag: 24-04-14, 11:00
  4. Sql und Datenstruktur
    By tarkusch in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 24-01-14, 17:51
  5. SQL verschachtelte CTEs
    By KM in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 12-11-12, 11:21

Berechtigungen

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