[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Apr 2005
    Beiträge
    385

    Question Wie declariere ich folgende DS im free

    Hallo zusammen,

    ich habe eine DS im D-Karten Format, die ich gerne im free definieren möchte, allerdings weiß ich nicht wie ich das angehe?

    Code:
         D                 DS
         D SATZ                         128A   DIM(9999)
         D  ARTNR                        10A   OVERLAY(SATZ:*NEXT)
         D  AVK01                         9  0 OVERLAY(SATZ:*NEXT)
         D  AVK02                         9  0 OVERLAY(SATZ:*NEXT)
         D  AVK03                         9  0 OVERLAY(SATZ:*NEXT)
         D  AVK04                         9  0 OVERLAY(SATZ:*NEXT)
         D  AVK05                         9  0 OVERLAY(SATZ:*NEXT)
         D  AVK06                         9  0 OVERLAY(SATZ:*NEXT)
         D  AVK07                         9  0 OVERLAY(SATZ:*NEXT)
         D  AVK08                         9  0 OVERLAY(SATZ:*NEXT)
         D  AVK09                         9  0 OVERLAY(SATZ:*NEXT)
         D  AVK10                         9  0 OVERLAY(SATZ:*NEXT)
         D  AVK11                         9  0 OVERLAY(SATZ:*NEXT)
         D  AVK12                         9  0 OVERLAY(SATZ:*NEXT)
         D  AVK                            9  0 DIM(12) OVERLAY(SATZ:11)
         D  BEST                          9  0 OVERLAY(SATZ:*NEXT)
         D  AUFB1                         9  0 OVERLAY(SATZ:*NEXT)
         D  AUFB2                         9  0 OVERLAY(SATZ:*NEXT)
         D  AUFBG                         9  0 OVERLAY(SATZ:*NEXT)

    Mit dem Schlüsselwort Pos klappt das nicht so richtig

    Danke an alle Helfenden!

    David

  2. #2
    Registriert seit
    Aug 2001
    Beiträge
    2.873
    Warum verwendest Du nicht wie gehabt OVERLAY?
    Pos benötigts Du nur wenn Du eine komplette Daten-Struktur überlagern willst.
    Für das Überlagern von einzelnen Feldern kann weiterhin OVERLAY verwendet werden:

    Code:
     DCL-DS *N;
       Satz     Char(128) Dim(9999);
          ArtNr Char(10)  Overlay(Satz: *Next);
          AVK01 Packed(9) Overlay(Satz: *Next);
        .... usw.
     END-DS;
    Birgitta
    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

  3. #3
    Registriert seit
    Apr 2005
    Beiträge
    385
    weil ich beim umwandeln folgenden Fehler bekomme

    Code:
    RNF3467: Der erste Parameter für das Schlüsselwort OVERLAY ist ungültig; das Schlüsselwort wird ignoriert.

  4. #4
    Registriert seit
    Apr 2005
    Beiträge
    385
    Denke habe den Fehler gefunden :| das END-DS war eine stelle zu weit links, dadurch wurde es nicht erkannt und somit war die ganze DS-Deklaration für den ....

    Trotzdem danke.

  5. #5
    Registriert seit
    May 2002
    Beiträge
    1.121
    Ich hätte da noch eine Frage dazu.
    Wenn ich die DS nachbaue...
    PHP-Code:
      dcl-ds *N;                                                    
             
    Satz                dim(9999);                         
              
    ArtNr              Char(10)  Overlay(Satz:*Next);     
              
    Avk01              Packed(9)  Overlay(Satz:*Next);    
              
    Avk02              Packed(9)  Overlay(Satz:*Next);    
              
    Avk03              Packed(9)  Overlay(Satz:*Next);    
              
    Avk04              Packed(9)  Overlay(Satz:*Next);    
              
    Avk05              Packed(9)  Overlay(Satz:*Next);    
              
    Avk06              Packed(9)  Overlay(Satz:*Next);    
              
    Avk07              Packed(9)  Overlay(Satz:*Next);    
              
    Avk08              Packed(9)  Overlay(Satz:*Next);    
              
    Avk09              Packed(9)  Overlay(Satz:*Next);    
              
    Avk10              Packed(9)  Overlay(Satz:*Next);    
              
    Avk11              Packed(9)  Overlay(Satz:*Next);    
              
    Avk12              Packed(9)  Overlay(Satz:*Next);    
               
    AVK               Packed(9Dim(12Overlay(Satz:11);
              
    Best               Packed(9)  Overlay(Satz:*Next);    
              
    Aufb1              Packed(9)  Overlay(Satz:*Next); 
              
    Aufb2              Packed(9)  Overlay(Satz:*Next); 
              
    AufbG              Packed(9)  Overlay(Satz:*Next); 
      
    end-ds
    Bekomme ich beim Wandeln folgenden Fehler:
    PHP-Code:
        18            AVK               Packed(9Dim(12Overlay(Satz:11);          
    ======>                                                       
    aaaa               
    *RNF3733 20 a      000412  Eine Feldgruppe darf eine andere Feldgruppe nicht     
                               überlagern
    das Schlüsselwort OVERLAY wird ignoriert
    Gruß
    Ronald

  6. #6
    Registriert seit
    Apr 2005
    Beiträge
    385
    Ja den Fehler bekam ich auch, aber da er schon beim ersten Overlay gestreikt hat, ist dieser mir nicht sofort aufgefallen.

    David

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Eigentlich müsstest du bereits beim 1. Format den Fehler bekommen haben.
    Eine 2-stufige (oder mehr) geht nur per Qualified, da der Name sonst nicht ansprechbar ist.
    Oder wie soll der Compiler die Variable AVK ansprechen?

    Erlaubt ist ja nur Struktur(n).Feld(m), AVK(n)(m) geht nicht.

    Also benenne die Struktur selber SATZ mit qualiefied und DIM(9999), lass das Overlay einfach weg und definiere dann die Felder.
    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. Callp im free-RPG
    By Michael Rude in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 17-04-03, 15:16
  2. %dec in free-rpg ??
    By Gimli in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 11-03-03, 10:16
  3. Free RPG??
    By DEVJO in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 05-03-03, 07:18
  4. Free - RPG
    By Gimli in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 04-03-03, 09:47
  5. Free-RPG
    By Gimli in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 03-03-03, 10:23

Tags for this Thread

Berechtigungen

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