-
Deine Funktion soll einen Dezimalwert zurückgeben, allerdings gibst du ein Recordset zurück !!
Mach einen "Select into" und gib eine Variable zurück.
-
Wie das ?
weder ein
... return SUMME as (select sum(nemge0) into SUMME where ...
noch ein
... return summe (select into summe sum(nemge0)
geht
also hab ich was falsch verstanden!
Bitte nochmal helfen
max
-
oh, sorry, dadrüber ist ja noch ein return
den hab ich jetzt auch auf summe geändert und bekomme ein
SUMME der Art *SQLUDT in *LIBL nicht gefunden.
Max
-
declare summe ...
set summe = (select ...);
return summe;
-
geht so nicht.
Die Funktion konnte ich nun wieder erstellen, aber das ergebniss ist das gleiche, nur '-'
mit und ohne cast der numm werte
-
so nun binn ich eine idee weiter,
in der Funktion beziehe ich mich ja auf eine Datei. Diese ist anscheinend fest verdrahtet mit der zu CREATE Zeit gefundenen LIB.
wenn ich im CREATE die Lib angebe, auf die ich auch später den select mache, bekomme ich ein ergebniss.
allerdings bekomme ich in n zeilen den (richtigen) Wert, statt nur genau ein Wert.
Un das mit den festen LIB's ist ein K.O Kriterium. kann ich das umgehen ?
Max
-
Das mit den vielen zeilen ist nun auch klar, ich müßte die where Bed. in dem select wiederholen.
Dann macht allerdings die Funktion so keinen Sinn.
Hmm, muß ich wohl weiter VIEW's machen
Könnte ich im SQLRPGLE Pgm sagen
/EXEC-SQL
+set :summe =PNESU31('xxx' 1, 2, 3, 4, 'xxx')
/end-exec
und dann mit Summe weiterarbeiten ?
das müste doch gehen!
nur die feste Lib stört.
Max
-
set option sqlpath=*libl <= Verwendet später *LIBL.
ein "select sum(...) from ..." kann nicht mehr als 1 Wert liefern wenn ohne Group-By gearbeitet wird.
Verwendest du eine Funktion in einem Select, wird diese natürlich pro Zeile aufgerufen. Die Parameter der Funktion sollten also aus den Zeilenfeldern stammen.
Dein RPG-Aufruf wäre auch korrekt.
-
set option sqlpath = *libl geht nicht
(ich wieß nicht wie und wo)
habe beim versuchen einen 'set path' angeboten bekommen, geht aber auch nicht,
hier nochmal das CREATE, aus neugier wieder um deinen SELECT INTO Vorschlag bereinigt. Funktion wurde erstellt
create function pnesu31 (iProd varchar(14),
iFM1 dec(11, 3),
iFM2 dec(11, 3),
iFM3 dec(11, 3),
iFM4 dec(11, 3),
iLort varchar(3))
returns dec(11, 3)
language sql modifies sql data begin declare summe dec(11, 3);
return (select
sum(nemge0) from mne__39 where nephas = '3' and nestat =
'1' and neprod = iProd and nemge1 = iFM1
and nemge2 = iFM2
and nemge3 = iFM3
and nemge4 = iFM4
and nelort = iLort);
set path=*libl; end
-
create function pnesu31 (
iProd varchar(14),
iFM1 dec(11, 3),
iFM2 dec(11, 3),
iFM3 dec(11, 3),
iFM4 dec(11, 3),
iLort varchar(3))
returns dec(11, 3)
language sql modifies sql data
begin
set option sqlpath=*libl;
declare summe dec(11, 3);
set summe = (select
sum(nemge0) from mne__39 where nephas = '3' and nestat =
'1' and neprod = iProd and nemge1 = iFM1
and nemge2 = iFM2
and nemge3 = iFM3
and nemge4 = iFM4
and nelort = iLort);
return summe;
end
-
Das hatte ich versucht,
und jetzt hab ich es wieder so.
Leider kommt dann
Schlüsselwort OPTION nicht erwartet. Gültige Token: PATH RESULT SCHE
(dann ist die zeile voll)
Max
Similar Threads
-
By Nils_V in forum IBM i Hauptforum
Antworten: 11
Letzter Beitrag: 18-07-16, 09:49
-
By Peder in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 06-12-06, 08:15
-
By jakarto in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 24-07-06, 13:41
-
By HACHIMAN in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 22-05-06, 09:48
-
By waro in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 13-05-05, 18:02
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