[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    Zitat Zitat von Fuerchau Beitrag anzeigen
    Die 1. Lib der Libliste ist meist die "Defaultlib".
    Die Defaultlib lässt sich auch separat definieren.
    Ohne Libliste wird eine Lib mit Namen des Users gesucht.
    Beim SQL-Naming ist die Bibliotheksliste zumindest für Tabellen und View völlig belanglos. Unqualifiziert angegebene Tabellen/Phys.Dateien und Views werden in der Default-Library gesucht. Sofern diese nicht explizit gesetzt wurde z.B. mit dem SQL-Befehl SET SCHEMA oder in irgendeiner ODBC oder JDBC-Einstellung entspricht das DEFAULT-Schema dem angemeldeten Benutzer-Profil.

    Andere Objekte z.B. Stored Procedures, User Defined Functions oder Sequence Objekte werden bei Verwendung von SQL-Naming im SQL-Pfad gesucht. Im SQL-Pfad können mehrere Bibliotheken/Schemas angegeben werden, die wie bei der Bibliotheksliste sequentiell durchgesucht werden. Der SQL-Pfad kann über den SQL-Befehl SET PATH gesetzt werden. Der Sonderwert *LIBL ist zulässig. Damit kann auch bei SQL-Naming die Bibliotheksliste nach Datenbankenobjekten, die weder Tabellen/phys.Dateien noch Views sind duchsucht werden. Der Default-Wert beim SQL PATH, sofern nicht anderweitig gesetzt ist *LIBL.

    Weiterhin muss berücksichtigt werden, dass die Berechtigungen unter System- und SQL-Naming unterschiedlich behandelt werden.

    Hier sind zwei Artikel zum Unterschied zwischen SQL und System-Naming:
    SQL versus System Naming - Part I
    SQL versus System Naming - Part II

    Birgitta
    Birgitta Hauser

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

  2. #2
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    ... das mit SQLPATH, LIBL & Co. simd doch für SQL alles Fremdworte. Der Rest der Welt (und der ist größer) denkt in Schema.
    Wenn Du Dir alle Probleme vom Hals halten willst:
    - pack alles, was zu einer Datenbank gehört (Tables, Views, Functions,stored Procedures und alle davon abhängigen Objekte (inklusive Deiner wertvollen RPG-Hams) in eine Lib.
    - leg einen Benutzer an, der wie diese Lib heißt (aus Berechtigungsgründen ohne interaktive Anmeldung
    - mach diesen User zum Owner von alledem
    - mach alle connects unter diesem Benutzer
    - et voila: alles funzt, ohne irgendwelchen Krumschel
    - nebenbei hast Du damit auch Deine SAV/RST Abläufe alle einfachst im Griff: alles funzt!!!

    D*B,
    der sich gerne Probleme vom Hals hält, die man nicht haben muss!!!
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    @Birgitta
    Was anderes habe ich ja auch nicht behauptet.

    Das erklärt aber immer noch nicht, warum alle anderen ODBC/JDBC-Clients mit der View zurecht kommen und ShowCase eben nicht.
    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

  4. #4
    Registriert seit
    Mar 2002
    Beiträge
    5.365
    ... ich kenne zwar Showcase nicht, aber manche solcher Produkte haben eigene Treiber oder verwenden eine System DSN und benötigen spezifische Einstellungen.

    D*B
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  5. #5
    Registriert seit
    Jun 2013
    Beiträge
    21

    Gelöst

    Hallo Forum,

    vielen Dank nochmals für die Tipps und Vorschläge und Verweise auf die Fachliteratur.

    Ich hatte von help/systems nochmal den Tipp bekommen, die UDF wie folgt in meine Abfrage entsprechend des Musters zu integrieren:


    SELECT
    '**UDF**EXTPRICE(O1QTY,O1PRICE,O1DISC)**UDF**' AS COLUMN0000
    FROM ...


    Das hat leider auch nur Fehlermeldungen gebracht.


    Dieters Vorschag mit der View war schon richtig, damit lief es lokal gut und über den Squirrel-JDBC-Client.


    Ich habe mir dann doch nochmal mir den Joblog von QSQSRVR geschnappt, der letztendlich via ShowCase die UDF ausführt (da muß man schnell sein) - also der Tipp von mk war schon richtig (alter Klassiker):


    Die UDF der View konnte die File dort nicht auflösen, da die Biblothek nicht in der Job-Libl.


    Also habe ich in der UDF (RPG ILE) einfach eine qualifizierte file angegeben.

    Wichtig dabei ist die Großschreibung:

    extfile('LIB/FILE')

    sonst nützt das alles nichts.


    Der externe Squirrel Client addressiert die Libraries über die Connection Parameter - daß ich die mal gesetzt hatte, hatte ich schon vergessen. Daher konnte er die File in der UDF auflösen und es dort alles funktioniert.

    jdbc:as400:server/user;libraries=Lib1, lib2, lib3;

    Das hatte ich schon wieder verdrängt.

    Viele Grüße & Danke

    Alex

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.696
    Insofern wieder eine unsaubere Lösung, wenn die Datei nicht in der selben Lib steht und/oder in der Verbindung nicht wenigsten die Datenlib als "Defaultlib" angegeben wird.
    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

  7. #7
    Registriert seit
    Jun 2013
    Beiträge
    21

    Leider

    Hallo Herr Fuerchau,

    ja, das ist mir bewußt, daß die Lösung nicht wirklich "smart" ist.

    Daß ShowCase es nicht auflösen kann ist problematisch. Vielleicht kann man dies sogar durch Konfiguration erreichen - leider gibt es dazu keine richtige Doku.

    Da es sich nur um eine bescheidene Auswertung zu Nutzerberechtigungen handelt, die jährlich läuft, und nicht um das eigentliche Geschäft, bin ich nun den pragmatischen Weg gegangen.

Similar Threads

  1. Antworten: 11
    Letzter Beitrag: 18-07-16, 09:49
  2. UDF nicht verwendbar
    By Peder in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 06-12-06, 08:15
  3. udf ohne ergebniss
    By ILEMax in forum NEWSboard Programmierung
    Antworten: 25
    Letzter Beitrag: 18-09-06, 13:39
  4. SQL UDF Function ausführung mit Fehler
    By jakarto in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 24-07-06, 13:41
  5. SQL UDF Prob mit leeren Feldern
    By HACHIMAN in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 22-05-06, 09:48

Berechtigungen

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