[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Wird die Join-Datei über DDS oder per SQL erstellt? Sind die physischen Dateien darin qualifiziert angegeben? Falls nicht, wie steht denn die Bibliotheksliste? Auf welchen Dateien basiert denn die erstellte Join-Datei (DSPFD auf die Join-Datei), auf welchen die zurückgespeicherte?

  2. #2
    Registriert seit
    Jan 2001
    Beiträge
    62
    Die Datei wird mittels DDS ohne dedizierte Bibliotheksangabe erstellt.
    Ich habe 4 phy. Dateien in Lib A und die 4. Datei zusätzlich in Lib B.
    Einmal erstelle ich die Join-Datei in Lib A mit LIB A in der LIBL.
    dann erstelle ich die Joindatei in LIB B mit LIB B,A in der LIBL.

    Die Join-Datei in LIB B verwendet den Index der Joindatei aus LIB A und somit auch nur die phy. aus LIB A.

    Komischerweise ist das auf einer 2. identen AS400 (beide V5R4) nicht so.

  3. #3
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Zitat Zitat von Zehetner Beitrag anzeigen
    Die Join-Datei in LIB B verwendet den Index der Joindatei aus LIB A und somit auch nur die phy. aus LIB A.
    Ich habe das gerade hier ausprobiert: Wenn man mit SQL per SELECT auf die jeweilige Join-Datei zugreift, dann bestehen Sperren auf die entsprechend korrekten physischen Dateien. Außerdem werden in der physischen Datei in LIB B geänderte Daten nur über die zweite Join-Datei anzeigt, welche als einzige der beiden auf dieser physischen Datei beruht. Die Join-Datei über die physischen Dateien in LIB A zeigt den Inhalt der entsprechenden Datei in LIB A an.

    Bei beiden Join-Dateien wird beim DSPF jedoch folgendes angezeigt: "Datei, der der Zugriffspfad gehört . . : LIB1/JOINFILE". Die Angaben unter "Basiert auf Datei" sind jedoch wie erwartet und auch korrekt teilweise unterschiedlich.

  4. #4
    Registriert seit
    Nov 2003
    Beiträge
    2.403
    Nachtrag: Eine Join-Datei kann auf der AS/400 für die Schlüsselfelder anscheinend nur Datenfelder aus der ersten physischen Datei beinhalten (siehe DSPMSGD CPD7986). Somit besitzt eine Join-Datei, die dieselbe erste physische, jedoch andere weitere physischen Datei besitzt als eine andere Join-Datei natürlich die gleiche Sortierfolge über dieselbe erste physische Datei und kann deren Zugriffspfad mitbenützen.

  5. #5
    Registriert seit
    Jan 2001
    Beiträge
    62
    Hat sich erledigt.

    Danke für die prompten Ratschläge.

    Es war folgendes:
    Nach Aufruf und Beendigung des PGMs, das die Dateien verwendet, waren alle Dateien noch offen. Ich habe zwar ein RCLRSC durchgeführt, aber nicht mit *CALLER.
    Also hat er nach einem erneuten Aufruf mit einer anderen LIBL die Dateien in LIB B nicht geöffnet, sondern die der LIB A verwendet.

    lG
    Otto

Berechtigungen

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