[NEWSboard IBMi Forum]
Seite 1 von 3 1 2 ... Letzte
  1. #1
    Registriert seit
    Dec 2005
    Beiträge
    111

    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.


  2. #2
    Registriert seit
    Dec 2005
    Beiträge
    111
    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.

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    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.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  4. #4
    Registriert seit
    Dec 2005
    Beiträge
    111
    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?

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    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
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  6. #6
    Registriert seit
    Dec 2005
    Beiträge
    111
    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(';')

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Bist du sicher dass du die Datei neu erstellst ?
    Wenn nicht, wird die vorhandene CCSID verwendet.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  8. #8
    Registriert seit
    Dec 2005
    Beiträge
    111
    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.

  9. #9
    Registriert seit
    Dec 2005
    Beiträge
    111
    Uhi,

    wenn ich mir das Objekt im IFS per WRKLNK anschaue ist es auch in Klarschrift.

  10. #10
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    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.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  11. #11
    Registriert seit
    Dec 2005
    Beiträge
    111
    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?

  12. #12
    Registriert seit
    Dec 2005
    Beiträge
    111
    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

  1. Spoolfiles Auf PC stellen
    By System_Error_1 in forum NEWSboard Drucker
    Antworten: 7
    Letzter Beitrag: 22-09-09, 08:39
  2. Sichern von Spoolfiles mit RUNBACKUP
    By Asti in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 26-10-06, 14:29
  3. Archvierte Spoolfiles in Windows anzeigen
    By SelfPity in forum NEWSboard Windows
    Antworten: 16
    Letzter Beitrag: 21-10-06, 17:45
  4. CCSID eines Spoolfiles ermitteln
    By y-tom in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 24-05-06, 13:59
  5. Spoolfiles aus outq per FTP zum DMS-System
    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
  •