-
RPG Free mit SQL / Joins / mit QSYS2.USER_INFO
Hallo, mir wurde dieses Forum wärmstens ans Herz gelegt wenn es um Fragen rund um die as 400 geht. Ich bin noch relativ neu in der AS 400 Welt, SQL's programmiere ich aber schon "ewig".
Leider geht ein SQL in meinem Free RPG Programm nicht, Open funktioniert super, jedoch kein fetch. Fehlermeldungen findet Ihr in den Kommentaren direkt hinter dem SQL.
Ich habe den SQL einmal mit speziellen Feldern, und einmal mit * abgeschickt, beides mal unterschiedliche Fehlermeldungen.
Es geht hier hauptsächlich um die beiden Fehlermeldungen
a) Syntax von Datums-, Zeit- oder Zeitmarkenwert ungültig. SQLSTATE: 22007
b) Zeichenumsetzung zwischen CCSID 1208 und CCSID 65535. SQLSTATE: 57017
Wenn ihr den Code seht wisst ihr ev. schon was da schief geht. Es muss irgend eine Konvertierung im Fetch schiefgehen, da bin ich mir sicher, nur wie kann ich das beheben!?
Des weiteren Fehlt mir noch eine bessere Methode, Programmausgaben zu realisieren, beim dsply Befehl gibts nur 52 Zeichen und mann muss immer auf enter drücken. Aber das ist nicht mein Kernproblem.
Hinweis: im ACS läuft der SQL einwandfrei.
danke!
Code:
**free
ctl-opt option(*nodebugio) alwnull(*usrctl);
dcl-ds sysUserTable extname('QSYS2/USER_INFO') qualified;
END-DS;
dcl-s InsertErrSQLtext char(999);
dcl-s insertState char(6);
dcl-s testStr char(52);
dcl-s statSQL int(10);
// exec sql DECLARE CUILoop CURSOR FOR
// SELECT A.USER_NAME,
// A.INITPGM,A.INITPGMLIB
// FROM QSYS2.USER_INFO A
// left join USRSTPR1 B on (A.USER_NAME = B.AUTHNAM)
// where B.AUTHNAM is null Order by A.USER_NAME asc;
// exec sql OPEN CUILoop;
//Das ergebnis der Bildschirmausgabe:
// DSPLY Cursor CUILOOP eröffnet.
// DSPLY
// DSPLY SQLSTATE: 00000
// DSPLY Syntax von Datums-, Zeit- oder Zeitmarkenwert ungült
// DSPLY ig.
// DSPLY SQLSTATE: 22007
exec sql DECLARE CUILoop CURSOR FOR
SELECT *
FROM QSYS2.USER_INFO A
left join USRSTPR1 B on (A.USER_NAME = B.AUTHNAM)
where B.AUTHNAM is null Order by A.USER_NAME asc;
exec sql OPEN CUILoop;
// Das ergebnis der Bildschirmausgabe:
// DSPLY Cursor CUILOOP eröffnet.
// DSPLY
// DSPLY SQLSTATE: 00000
// DSPLY Zeichenumsetzung zwischen CCSID 1208 und CCSID 65535
// DSPLY ungültig.
// DSPLY SQLSTATE: 57017
// SQL DEBUG START
Exec SQL GET DIAGNOSTICS Condition 1 :InsertErrSQLtext = MESSAGE_TEXT;
Exec SQL Get Diagnostics Condition 1 :insertState = RETURNED_SQLSTATE;
statSQL = SQLCOD;
testStr = %SUBST(InsertErrSQLtext:1:52);
dsply testStr;
testStr = %SUBST(InsertErrSQLtext:53:105);
dsply testStr;
testStr = %trim('SQLSTATE: '+insertState);
dsply testStr;
// SQL DEBUG END
exec sql FETCH FROM CUILoop INTO :sysUserTable ;
// SQL DEBUG START
Exec SQL GET DIAGNOSTICS Condition 1 :InsertErrSQLtext = MESSAGE_TEXT;
Exec SQL Get Diagnostics Condition 1 :insertState = RETURNED_SQLSTATE;
statSQL = SQLCOD;
testStr = %SUBST(InsertErrSQLtext:1:52);
dsply testStr;
testStr = %SUBST(InsertErrSQLtext:53:105);
dsply testStr;
testStr = %trim('SQLSTATE: '+insertState);
dsply testStr;
// SQL DEBUG END
exec sql close CUILoop;
*INLR = *ON;
Similar Threads
-
By Bau in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 26-01-17, 12:50
-
By Hrs28 in forum IBM i Hauptforum
Antworten: 0
Letzter Beitrag: 30-03-15, 00:22
-
By KM in forum NEWSboard Programmierung
Antworten: 6
Letzter Beitrag: 07-02-14, 11:47
-
By DEVJO in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 05-03-03, 07:18
-
By KB in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 18-06-01, 07:35
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