-
Spoolfiles in Excell
Hallo
ich möchte viele Spoolfiles in ein Excellsheet kopieren.
Ich brächte da noch ein paar denkanstöße.
Also wenn ich einen Spool per CPYSPLF in eine Physische Datei Kopiere bekomme ich einen File mit einer Variablen, die in meinem Fall ca 125 Zeichen Lang ist.
Hohle ich mir das gute stück dann per Navigator runter. Habe ich zwar einn Schönes Excellsheet, aber nicht so wie ich es brauche.
Beispiel der ersten Drei Zeilen:
000001 5722SS1 V5R4M0 060210 Mit Ausgabewarteschlange arbeiten ....
000002 Datei Ben. Ben.daten Status Seite Kopien Form.art Pty Dateinummer Job Nummer Datum Uhrzeit
000003 xyz Muster Daten RDY 1 1 *STD 5 2 XY1234 129123 07/08/08 18:53:38
in meinem Excellsheet kommt dann jede Zeile Logischerweise in ein Feld.
Hat die AS eine möglichkeit das Kopieren eienes Spools mit so durchzuführen, dass ich die Felder Job, Nummer usw. auch erhalte. Dann wäre das exportieren nach Excell auch nicht so schwer.
-
ich möchte kein Tool Kaufen. Sonder würde es gerne selbst lösen.
Ich könnte den entstandenen File auch per CL auslesen und die Daten als Variable per chgvar speichern, aber was mach ich dann damit? Ich glaube per cl kann ich keinen file erstellen und mit Variablen füllen. Mit SQL ginge das aber oder.
Die Spools sind im prinzip alle gleich.
-
Dazu kannst du ganz gut mit MS-Query die Daten zerlegen.
Am Besten kannst du einen SQL per STRSQL ausprobieren, diesen dann ggf. per CREATE VIEW als LF erstellen und diese dann
a) per Opsnav
b) per MS-Query
in Excel laden:
select
substr(feld, pos, len) as x1,
substr(feld, pos, len) as x2,
dec(substr(feld, pos, len), anz, nk) as x3,
...
from MyCpySplf
where substr(feld, pos, len) = 'xxx'
Als "feld" ist das Satzfeld zu nehmen, pos und len entnimmst du dem Spoolfile.
In der Where-Klausel definierst du nur die Zeilen mit relavanten Informationen.
-
Super danke.
Habe mir ein Qry gebastelt und dieses erstellt mir einen schicken File.
Das QRY ruf ich in einem CL auf und gut ist.
Per Navigator klappt das super. Die Felder werden richtig in EXCEL umgewandelt.
Per
CPYTOIMPF FROMFILE(QTEMP/SPOOL) +
TOSTMF('/HOME/SPOOL.XLS') +
MBROPT(*REPLACE) FROMCCSID(*FILE)
STMFCODPAG(*STMF) RCDDLM(*CRLF) +
DTAFMT(*FIXED) STRDLM(*NONE)
macht er es nicht richtig. Falsche Zeichensatz und nicht in Spalten einsortiert.
Hat da noch jemand einen Tip?
-
Ich nehme mal an, dass die QTEMP/SPOOL bereits einzelne Felder enthält und nicht mehr den kompletten Spoolsatz.
In diesem Fall benötigst du
STMFCODPAG(1252) <= ANSI-Zeichensatz
DTAFMT(*DLM) <= Feldtrenner
FLDDLM(';') <= CSV-Trenner
-
Hmmm,
das ergebniss sieht so aus:
ÓÅðô÷ð×ò@@@,ÓÉÅÂÙÂ@@@@,ÓÅðô÷ð@ @@@,@ÙÄè@@@,@@@@ñ@,@@@@ñ@@,\âãÄ@@@@@@@,@õ @@,@@@@@@@@ò@@@,ÓÅÃðöÁ@@@@@,ñòùñòó@, ÷aðøaðø@,ñøzõózóø
und mein CL so:
PGM
DLTF FILE(QTEMP/SPOOL)
MONMSG MSGID(CPF0000)
DLTF FILE(userlib/SPOOL)
MONMSG MSGID(CPF0000)
DLTF FILE(userlib/SPOOL_AUS)
MONMSG MSGID(CPF0000)
CRTPF FILE(userlib/SPOOL) RCDLEN(130)
CPYSPLF FILE(QPRTSPLQ) TOFILE(userlib/SPOOL) +
JOB(151353/user/QPADEV0099) SPLNBR(4)
RUNQRY QRY(userlib/SPOOL)
CPYF FROMFILE(userlib/SPOOL_AUS) +
TOFILE(QTEMP/SPOOL) MBROPT(*REPLACE) +
CRTFILE(*YES)
CPYTOIMPF FROMFILE(QTEMP/SPOOL) +
TOSTMF('/HOME/user/SPOOL.txt') +
MBROPT(*REPLACE) FROMCCSID(*FILE) +
STMFCODPAG(1252) RCDDLM(*CRLF) +
DTAFMT(*DLM) STRDLM(*NONE) FLDDLM(';')
-
Bist du sicher dass du die Datei neu erstellst ?
Wenn nicht, wird die vorhandene CCSID verwendet.
-
ja.
habe alle dateien, auch qtemp händisch gelöscht.
ich habe nochmal einen Test mit einer anderen Physischen datei gemacht und da war zumindest der Text zu lesen.
Ohhh, ich verstehe das auch nicht.
-
Uhi,
wenn ich mir das Objekt im IFS per WRKLNK anschaue ist es auch in Klarschrift.
-
Schau dir die Attribute der IFS-Datei an, insbesonders die CCSID.
Die Anzeige per WRKLNK setzt auch automatisch ASCII für die Anzeige korrekt um, so dass dies keine Aussage ist.
Ach ja, welche CCSID hat denn deine PF in der QTEMP ?
CPYTOIMPF benötigt da auch was anderes als 65535 sonst klappts nicht mit der Umsetzung.
Für CSV-Ausgabe nehme ich auch einfach SQL:
select trim(feld1) concat ';' concat trim(feld2) concat ';' ...
from myfile
Die so erstellte Datei kopiere ich dann eifache per CPYTOSTMF.
-
Guten Morgen
vielen lieben dank für die schnelle hilfe jedes mal!!!!
Also es liegt datsächlich an der CSSID wüdre ich sagen. Ich habe einen File den ich per DSPOBJD *outfile generiere, der hat eine CSSID 273. Wenn ich den in Qtemp kopiere und dann per CPYTOIMPF ins IFS klappt es, aber wenn ich einen File per CRTPF erstelle bekomme ich nur eine CSSID 65335 hin. Gebe ich eine andere bei der erstellung an sagt die AS iss nicht. Mache ich vorher einen CHGJOB auf CSSID 273 erstellt er ihn mir trotzdem mit 65335. Wie erstelle ich den einen File mit einer CSSID 273?
-
Per SQL finde ich auch interressant.
Ich habe mir ein kleines QRY angelegt , welches ich in meinem CL laufen lasse. Kann ich das ergebniss auch aus dem QRY in eine .CVS ausgeben?
Similar Threads
-
By System_Error_1 in forum NEWSboard Drucker
Antworten: 7
Letzter Beitrag: 22-09-09, 08:39
-
By Asti in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 26-10-06, 14:29
-
By SelfPity in forum NEWSboard Windows
Antworten: 16
Letzter Beitrag: 21-10-06, 17:45
-
By y-tom in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 24-05-06, 13:59
-
By cassandra in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 26-10-04, 15:54
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