-
Hallo Jochen,
es kommt darauf an wie deine Queries gestartet werden.
So wie ich es verstanden habe wird sich der Name deiner Datenlibrary ändern.
Wenn deine Queries über den Befehl RUNQRY
gestartet werden kannst Du global für den Job
ein OVRDBF auf die neue Bibliothek machen.
Der Runqry verwendet die Datei aus dem Override.
Wenn deine User aber über WRKQRY arbeiten
musst Du jede Querydefinition anpassen.
Gruss Michael
-
Im RUNQRY kann die zu verwendende Datei/Bibliothek direkt angegeben werden QRYFILE((LIB/F1) (LIB/F2)....), was natürlich etwas aufwändig wäre.
Vielleicht bin ich ja bereit, auf Basis des Programmes RTVQRYF (MI-Programm) ein CHGQRYLIB zu entwickeln.
Wer ist bereit dafür etwas Geld auszugeben ?
-
RunQry *LibL/File
Hallo,
a propos RunQry: wie wär's mit
RunQry ((*LIBL/F1) (*LIBL/F2) ... )
in einem Menü ?
Wenn man mit mehreren Datenbibliotheken in mehreren Umgebungen arbeitet, z.Bsp. PRODUCTION/TEST, ist das ohnehin die Lösung.
Gruss F.Ziegler
-
@Fuerchau
Der Hammer wäre ein Tool, das solche Altlasten (Queries) in SQLRPGLE übersetzt ;-)
Grüße,
Robert
-
@Robert
Dafür brauchts kein Tool. RTVQMQRY reicht da vollkommen aus, da dieser auch *QRYDFN-Objekte zuläßt.
Den SQL hast du dann anschließend in einer SRCPF.
-
Hallo Fürchau !
 Zitat von Fuerchau
RTVQMQRY reicht da vollkommen aus, da dieser auch *QRYDFN-Objekte zuläßt. Den SQL hast du dann anschließend in einer SRCPF.
Dieser SQL stimmt meines Wissens nach aber nicht unbedingt mit dem Query überein. Zum Beispiel besteht dieser SQL nur aus INNER JOINs, auch wenn in der Query bei "Art der Verknüpfung" Auswahl "2=Mit Primärdatei gleiche Sätze" ausgewählt wurde. Der SQL liefert also u.U. auch weniger Datensätze als die Query.
Viele Grüße
Jürgen
-
Auswahl "2=Mit Primärdatei gleiche Sätze" ist ein INNER JOIN !
-
Hallo Fürchau !
Ich dachte, Auswahl "1=Gleiche Sätze" wäre ein INNER JOIN und Auswahl "2=Mit Primärdatei gleiche Sätze" ein OUTER JOIN. D.h. bei Auswahl 2 bekommt man auch die Datensätze der Primärdatei, zu denen kein passender Datensatz in den Sekundärdateien vorhanden ist (und obwohl die entsprechenden Verknüpfungsfelder angegeben sind). Das geht im SQL mit dem WHERE, das der RTVQMQRY ALWQRYDFN(*ONLY) daraus macht, leider nicht.
Viele Grüße
Jürgen
-
 Zitat von Fuerchau
Auswahl "2=Mit Primärdatei gleiche Sätze" ist ein INNER JOIN !
Einspruch!!
Verknüpfungsart 1 (=gleiche Sätze):
ist ein INNER JOIN
Verknüpfungsart 2 (= mit Primärdatei gleiche Sätze)
ist ein LEFT OUTER JOIN
Verknüpfungsart 3 (= mit Primärdatei ungleiche Sätze)
ist ein OUTER JOIN
Ich kenne das Tool zwar nicht, aber wenn es die Verknüpfungsart 2 nicht mit LEFT OUTER JOIN übersetzt, ist es keine 100% Umsetzung.
Abgesehen davon, werden im SQL Felder von erfolglosen LEFT OUTER Joins mit NULL zurückgegeben, im Query mit dem Defaultwert. D.h. das ev. Abfragen anders reagieren können und 2. das Schlüsselwort VALUE (= COALESCE) im Query für diese Fälle unbrauchbar ist.
LG
Robert
-
Ja Ok, Verknüpfungsart stimmt.
Aber VALUE in Query hilft mir nicht (da ja immer Default geliefert wird, ausser bei SQL-Tables) sondern eher im SQL.
-
Hallo QRY - Leidensgenossen,
QRY sind halt Segen und Fluch zugleich.
Wir haben auch mehrere tausend QRY im System und ich stehe auch immer wieder vor der Aufgabenstellung, herauszufinden, in welchen QRY eine bestimmte Bibliothek oder Datei benutzt wird.
Ich hatte mir auf Anleitung von IBM vor vielen Jahren ein Programm RTVQRYF gebastelt, welches alle verwendete Dateien einer QRY in eine Datei ausgibt.
Habe dieses so in CL eingebunden und kann dann mit FINQRY 'BIBLIOTHEK' alle Qry dieser Bibiothek ausgeben. In Kombination mit einem weiteren CL, das alle Bibliotheken der As400 einliest, kann ich dann "auf Knopfdruck" eine Übersicht über alle im System vorhandenen QRY ausgeben.
Leider bin ich kein Programmierer und es ist schon viele Jahre her, das ich das Programm erstellt hab.
Wenn aber Interesse besteht, kann ich mal recherchieren, wie das genau funktioniert. Alle Quellen müsste ich noch haben.
Gruß
HS
-
Hallo Robert!
Ok, Auswahl 2 = LEFT OUTER JOIN.
 Zitat von RobertPic
Verknüpfungsart 3 (= mit Primärdatei ungleiche Sätze)
ist ein OUTER JOIN
Hm, bist du die da sicher? Ich hätte mir unter einem OUTER JOIN jetzt was anderes vorgestellt.
Viele Grüße
Jürgen
Similar Threads
-
By Kaufmann in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 29-11-06, 19:07
-
By heini in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 30-09-06, 11:10
-
By TARASIK in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 22-08-06, 10:52
-
By Azubiiiiii in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 03-08-06, 10:44
-
By Hubert Brethauer in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 05-05-06, 13:37
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks