-
FETCH n ROws in einzelne Felder einer DS
Hallo,
komme mit meinen Kenntnissen gerade nicht weiter!
Habe eine extern definierte Datenstruktur die im Cobol-Pgm per DDS eingebunden wird.
Nun soll, je nach definiertem/geöffneten Cursor, unterschiedliche Felder dieser DFS beim Fetch gefüllt werden. Das klappt auch soweit.
Wenn ich aber z.B. 8 Zeilen auf einmal fetchen will ist das Referenzieren einzelner Felder nicht mehr möglich.
DIE DS:
01 LT00-SATZ.
02 ARRAY OCCURS 8 INDEXED BY DI-IDX.
COPY DDS-ALL-FORMATS OF LT00PF.
05 LT00PF-RECORD PIC X(390).
05 LT00R REDEFINES LT00PF-RECORD.
06 FELD1 pic X(30).
Von Ort
06 FELD2 PIC X(30).
Nach Ort
Der Cursor: DECLARE C_SUMMEN1 SCROLL CURSOR FOR
SELECT FELD1, FELD2,
SUM(FELD3),
SUM(FELD4)
FROM SQLRESULT
GROUP BY
FELD1, FELD2
der Fetch: EXEC SQL
FETCH C_SUMMEN1 FOR 8 ROWS
INTO
:FELD1 , :FELD2
END-EXEC
Der Precompiler meldet das die Felder nicht definiert bzw. nicht verwendbar sind.
Was mache ich falsch??
-
Beim Fetch mehrerer Zeilen ist nur die Angabe einer Struktur erlaubt:
FETCH C_SUMMEN1 FOR 8 ROWS
INTO
:ARRAY
-
FETCH n ROws in einzelne Felder einer DS
Danke für die prompte Antwort.
Schade das das nicht geht
Da hätte ich noch lange tüfteln können.
-
was in jedem Fall geht:
select Feld1, Feld2, Feld3
into :myAry
select '', Feld2, ''
into :myAry
passen in das selbe Array of structure
damit müsste das doch gehen, wenn ich die Frage richtig verstehe.
mfg
Dieter Bender
Zitat von pedro-zapata
Danke für die prompte Antwort.
Schade das das nicht geht
Da hätte ich noch lange tüfteln können.
-
FETCH n ROws in einzelne Felder einer DS
Das geht, aber mein Ziel war es Bildschirmweise (20 Zeilen) im Block zu füllen.
-
geht doch auch mit:
declare cursor c1 as
select Feld1, Feld2, Feld3
...
declare cursor c2 as
select '', Feld2, ''
...
fetch c1 for 20 rows
into :myAry
und ebenso
fetch c2 for 20 rows into :myAry
auch die entsprechenden Summen würden da passen
mfg
Dieter Bender
Zitat von BenderD
was in jedem Fall geht:
select Feld1, Feld2, Feld3
into :myAry
select '', Feld2, ''
into :myAry
passen in das selbe Array of structure
damit müsste das doch gehen, wenn ich die Frage richtig verstehe.
mfg
Dieter Bender
-
Ich glaube, dass liegt hier in der COPY-Anweisung.
Beim Fetch in ein Array MUSS folgende Definitione forliegen:
05 MyArray occurs 20.
10 Field1 pic ...
10 Field2 pic ...
Der COPY fügt eine Stufe dazwischen.
Ausserdem weiß ich nicht, ob der SQL-Pre-Compiler überhaupt mit dieser Form des COPY zurechtkommt.
Similar Threads
-
By AndreasH in forum IBM i Hauptforum
Antworten: 13
Letzter Beitrag: 08-05-15, 13:09
-
By Squall in forum NEWSboard Programmierung
Antworten: 9
Letzter Beitrag: 24-10-06, 08:44
-
By linguin in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 04-08-06, 10:38
-
By CAL in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 23-06-06, 09:03
-
By Xanas in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 13-06-06, 14:38
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