-
sql funktion
hallo zusammen fange gerade an mich mit sql funktionen zu beschäftigen und habe folgendes problem.
habe folgende funktion erstellt und hat auch funktioniert aber wie rufe ich diese nun auf.
Create Function hjitest/CvtNumToDate
(DateNum Decimal(8, 0) )
Returns DATE
Language SQL
Deterministic
Contains SQL
Returns NULL on NULL Input
No External Action
Set Option DbgView = *Source,
DatFmt = *ISO
BEGIN
Declare CvtDate DATE ;
Declare InvalidDate Condition For '22007' ;
Declare Continue HANDLER for InvalidDate
set CvtDate = '0001-01-01';
Set CvtDate = Date(Substring(Digits(DateNum), 1, 4) Concat '-'
Concat
Substring(Digits(DateNum), 5, 2) Concat '-' Concat
Substring(Digits(DateNum), 7, 2 )) ;
Return CvtDate;
END
wenn ich nun diese abfrage (SELECT TRAFGS, CvtNumToDate(avdat1) FROM foravsp) bekomme ich folgende fehlermeldung(nach langer laufzeit)
Nachricht . . . : Abfrage kann nicht ausgeführt werden; siehe Nachrichten
unterer Ebene.
Ursache . . . . : Beim Öffnen der auszuführenden Abfrage oder beim Erstellen
der Ausgabe ist ein Fehler aufgetreten. Entweder wurde eine
Anfragenachricht, die aufgrund eines Fehlers ausgegeben wurde, mit einer
Abbruchanforderung beantwortet oder die Anforderung wurde ohne
Anfragenachricht sofort beendet. In den meisten Fällen ist der Fehler auf
fehlerhafte Daten zurückzuführen oder auf Daten, die nicht korrekt verwendet
werden.
Fehlerbeseitigung: Um die Fehlerursache zu bestimmen, F10 drücken oder mit
dem Befehl DSPJOBLOG (Jobprotokoll anzeigen) die Nachrichten aufrufen, die
unmittelbar vor dieser Nachricht protokolliert wurden. (Ist eine Sitzung
"Mit Abfragen arbeiten" aktiv, verbleiben die Diagnosedaten nicht in der
Jobwarteschlange, es sei denn, der Benutzer bricht die Sitzung ab, wenn zur
Anzeige zurückgekehrt wird, in der gerade gearbeitet wird.) Alle teilweise
erstellten Druckausgaben prüfen, wenn diese nicht aufbewahrt werden sollen.
Den Fehler korrigieren und anschließend die Anforderung wiederholen.
danke im vorraus
lg
steven_r
-
Dann würde ich das mal tun (Ins Joblog schauen).
Ggf. wird deine Funktion nicht gefunden (*LIBL), ggf. musst du die Funktion qualifizieren "hjitest/CvtNumToDate(avdat1)" oder das Feld avdat1 ist nicht Decimal(8, 0).
In letzterem Fall musst du das Feld dann casten:
"hjitest/CvtNumToDate(dec(avdat1, 8, 0))"
Similar Threads
-
By mwithake in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 04-08-09, 14:57
-
By FNeurieser in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 11-10-06, 14:53
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 01-06-06, 09:43
-
By GHoffmann in forum IBM i Hauptforum
Antworten: 0
Letzter Beitrag: 07-07-05, 09:18
-
By Stefan_R in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 23-01-02, 16:08
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