[NEWSboard IBMi Forum]
Seite 1 von 2 1 2 Letzte
  1. #1
    Registriert seit
    Sep 2004
    Beiträge
    129

    ovrdbf und sql

    Hallo Forum!

    Stehe vor einem Problem.
    Wir sind gerade dabei unsere ganze Datenbasis von DDS auf DDL umzustellen, viele alte Programme sollen aber noch genauso weiterlaufen wie bisher.
    In einigen Listen-Programmen wird mit Workfiles gearbeitet, diese werden im CL in die QTEMP kopiert, danach ein OVRDBF gemacht und dann eine logische Datei dazukopiert auf die ebenfalls ein OVRDBF gemacht wird. Jetzt hab ich das Problem dass ständig der Zugriffspfad auf die Originaldatei die nicht in QTEMP liegt verweist. Hab auch schon versucht die Dateien in QTEMP anders zu benennen, aber ohne Erfolg.
    "Gemeinsame Zugriffspfadbenutzung durch Datei WRKLGBE2 in QTEMP".
    Bitte wie kann ich das abstellen??
    Will nicht jedes Programm umbauen müssen, zumal ich gar nicht weiß wo das überall eingebaut ist.

    Danke!
    Wer andren eine Bratwurst brät, hat ein Bratwurstbratgerät!

  2. #2
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Wie wird denn die logische Datei dazukopiert?

  3. #3
    Registriert seit
    Sep 2004
    Beiträge
    129
    Mit einem CRTDUPOBJ.
    Hab auch schon ein CRTLF über DDS versucht im CL, geht aber auch nicht.
    Wer andren eine Bratwurst brät, hat ein Bratwurstbratgerät!

  4. #4
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Liegt die zu kopierende logische Datei in der selben Bibliothek wie die zu kopierende physische Datei? Dann müßte der CRTDUPOBJ die kopierte logische Datei eigentlich an die kopierte physische Datei hängen (das steht zumindest so im Hilfetext zum CRTDUPOBJ).

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Wenn eine PF mit LF kopiert werden soll, ist es erforderlich diese mit den gleichen Zeichen anfangen zu lassen wenn man CRTDUPOBJ machen will. In diesem Fall wird der Bezug der LF zu PF mitgenommen.
    Beispiel:

    MYFILE PF
    MYFILE01 LF

    CRTDUPOBJ MYFILE* ...

    Wenn man den CRTLF per DDS macht, sollte man die QTEMP dann nach vorne in die LIBL stellen, da ja der PFILE-Bezug ohne LIB-Angabe ist, damit dies funktioniert.

    Bei der Umstellung von DDS auf DDL kann es bei Altprogrammen zu massiven Problemen kommen.
    1. Die Formatid wird auf jeden Fall anders.
    2. Der Satzformatname ist per Default mit dem Dateinamen identisch, es sei denn man gibt diesen im CREATE TABLE explizit an (RCDFMT xxxx), was aber AS/400-spezifisch ist.
    3. Ohne OVRDBF ... LVLCHK(*NO) funktioniert das aber nicht, was zu weiteren Risiken führt.
    4. PF mit Key gibt es als TABLE nicht. Hier ist immer ein Index erforderlich auf den dann mit obigen Risiken überschrieben werden muss. Allerdings gibt's beim Index kein RCDFMT.
    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
    Nov 2003
    Beiträge
    2.403
    Zitat Zitat von Fuerchau Beitrag anzeigen
    Wenn eine PF mit LF kopiert werden soll, ist es erforderlich diese mit den gleichen Zeichen anfangen zu lassen wenn man CRTDUPOBJ machen will. In diesem Fall wird der Bezug der LF zu PF mitgenommen.
    Sicher? Im Hilfetext zum CRTDUPOBJ steht da aber was völlig anderes.

  7. #7
    Registriert seit
    Sep 2004
    Beiträge
    129
    Die Dateien heißen fast gleich, die physiche WRKLGEWP, die logische WRKLGBE2.

    Der Bezug ist aber immer noch auf die physiche in der falschen Bibliothek. Nicht einmal ein OVRDBF hilft da.

    @Fuerchau:
    Wir haben für die alten Programme logische Dateien erstellt die gleich heißen wie die alten Physischen.
    Programme die auf die neuen Dateien losgehen schreib ich gerade alle um. Haben Gott sei Dank ein Testsystem auf dem ich alles ausprobieren kann. ;-)
    Wer andren eine Bratwurst brät, hat ein Bratwurstbratgerät!

  8. #8
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Liegen die logischen Dateien vor dem Kopieren in der selben Bibliothek wie die physischen Dateien?

  9. #9
    Registriert seit
    Sep 2004
    Beiträge
    129
    Nein, die liegen in 2 unterschiedlichen Bibliotheken, eine für DDL eine für DDS. Wollten da eine Trennung.

    Hab jetzt die original Logische gelöscht und im CL ein CRTLF über DDS gemacht, geht aber auch nicht.

    Ich versteh nicht ganz warum ein OVRDBF hier nicht zieht ...
    Wer andren eine Bratwurst brät, hat ein Bratwurstbratgerät!

  10. #10
    Registriert seit
    Oct 2006
    Beiträge
    44
    Ist die QTEMP in der Bibliotheksliste?

    Eventuell hilft es, die QTEMP vor die eigentliche Quellbibliothek in die Bibliotheksliste zu setzen.

    Gruß

  11. #11
    Registriert seit
    Sep 2004
    Beiträge
    129
    so jetzt weiß ich woran es gelegen ist.

    Zitat Zitat von Pikachu Beitrag anzeigen
    Liegen die logischen Dateien vor dem Kopieren in der selben Bibliothek wie die physischen Dateien?
    Genau das ist das Problem, die logischen müssen vorher in der selben Bibliothek liegen, sonst geht es nicht.
    Mir ist das unterm schreiben der Antwort gedämmert.

    Recht herzlichen Dank!!
    Wer andren eine Bratwurst brät, hat ein Bratwurstbratgerät!

  12. #12
    Registriert seit
    Jan 2003
    Beiträge
    759
    Stehen WRKLGEWP und WRKLGBE2 in der gleichen *LIB?
    Steht die QTEMP zum Zeitpunkt des CRTDUPOBJ vorne?
    => CRTDUPOBJ F4, F1, F2

    Nachtrag: da war ich wohl zu spät, sozusagen CRTDUPPST ;-))

Similar Threads

  1. RPGLE - SQL
    By christian_lettner in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 16-11-06, 10:15
  2. SQL - Cursor vernichten ?!?
    By FNeurieser in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 11-10-06, 14:53
  3. SQL und OBJLCK
    By malzusrex in forum IBM i Hauptforum
    Antworten: 8
    Letzter Beitrag: 19-09-06, 11:04
  4. SQL - Fehler
    By Kaufmann in forum IBM i Hauptforum
    Antworten: 11
    Letzter Beitrag: 28-06-06, 14:11
  5. SQL .. for update of (RPG embedded SQL)
    By loeweadolf in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 01-06-06, 09:43

Berechtigungen

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