-
RPG aus SQL rufen
moin zusammen,
wir müssen in einer View für ein InfoPortal Daten zur Verfügung stellen, die wir erst errechnen müssen.
Das Portal will per
... select * from view where Feld = WERT
zugreifen
Ich dachte mir, im SQL kann ich ja eine Procedur aufrufen und diese könnte dann das RPG Pgm rufen.
Das schreibt Daten in eine WK-File die dann Bestandteil der View sind.
Alternativ könnte ich versuchen über die REGINF Pgmme den zugriff ab zu fangen und das Pgm zu rufen.
Damit habe ich bisher nicht 'in Produktion' gearbeitet.
Außerdem ist der Zugriff 'unbestimmt' (ODBC / JDBC / wie auch immer) und
wird vermutlich auch ein, zwei mal wechseln, bis es endgültig ist.
Kann mit jemand einen Link oder ein Beispiel benennen für die erste Lösung?
Wie bekomme ich den WERT in die Procedur, wie ist die Syntax für den RPG aufruf?
oder hat jemand eine bessere Idee?
Ein HTTPS Request soll es nicht werden!
Danke
Das Notwendige steht über dem technisch machbaren.
(klingt komisch, funktioniert aber!)
-
Du solltest das auf jeden Fall mit einer Kombination aus SQL-Prozedur und (wenn SQL da nicht ausreicht) mit einem zusätzliche ILERPG als Programm, oder besser Service-Modul erstellen.
Beispiele dazu findest du im SQL-Programmierhandbuch auch für ILERPG.
Nur durch SQL-Prozeduren hast du überhaupt Returnparameter, so dass dann ein SQL per
call MyProcedure(InputP1, InputP2, OutputP1, OutputP2)
möglich wird.
Im Select lassen sich allerdings nur Funktionen mit genau einem Returnwert erstellen.
Benötigts du mehr, ist dann eine Table-Function erforderlich, die du dann per Select einbinden kannst.
Allerdings sollten hier dann keine Where-Klauseln Verwendung finden.
Vorteil:
Es können Parameter übergeben werden und ILERPG kann ein Resultset aus einer DS mit DIM(n) Elementen zurückgeben. Die Anzahl wird im SQL-Return festgelegt.
-
Stored Procedures werden mit CALL aufgerufen und können somit nicht direkt in einem SQL-Statement hinterlegt werden.
Was Du brauchst ist eine SQL-Funktion, and die Du die Parameter übergibst und die Dir genau einen Wert zurückgibt. Innerhalb der Funktion rufst Du dann Dein RPG-Programm, das Du als Stored Procedure registriert hast auf.
Birgitta
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