[NEWSboard IBMi Forum]
Seite 1 von 2 1 2 Letzte
  1. #1
    Registriert seit
    Jul 2003
    Beiträge
    331

    Cool CPYTOIMPF Überschriften

    Beim CPYTOIMPF (AS-Datei in CSV konvertieren) kann man ja bekanntermassen durch
    ADDCOLNAM den jeweiligen DDS-Feldnamen als 1. CSV-Zeile automatisc mit ausgeben lassen.

    Wie kann man auch den COLHDG-Text der DDS-Bestimmungen mit übergeben ?

  2. #2
    Registriert seit
    Jan 2001
    Beiträge
    833
    Hallo,

    da würde mir ein ALTER TABLE einfallen.

    Oder direkt unseren Command CVTOSDB verwenden. Damit können die Exceldateien direkt
    und ohne Umweg auf der i erstellt werden. Außerdem können über Makros die bei dem Öffnen
    der Exceldatei automatisch gestartet werden jegliche Formatierungen durchgeführt werden.
    Vielleicht ist es eine Alternative für dich.

    Gruß
    Michael

  3. #3
    Registriert seit
    Jul 2003
    Beiträge
    331
    wie kann ich mit der SQL-Anweisung ALTER TABEL erreichen, dass in der CSV-Datei
    2 Überschriftsreihen ausgegeben werden:
    a) 1.Reihe textl.Beschreibung (aus DDS -> COLHDG)
    b) 2. Reihe Feldname (das geht ja schon über ADDCOLNAM)


    Euer Tool CVTOSDB ist vermutlich kostenpflichtig ?

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.238
    Tools sind meistens kostenpflichtig.
    Mit Standards wirst du keine 2 Titelzeilen bekommen, da dies nicht dem CSV-Format entspricht.
    Ggf. kannst du eine View mit langen Namen erstellen und von dort aus exportieren:
    create view as
    select f1 as "Artikel", f2 as "Bezeichnung", ... from Myfile

    Wenn du die Daten in Excel haben willst ist es besser und einfacher, dies per "Externe Daten" direkt in Excel zu machen. Dann kannst du z.B. ab Zeile 2 importieren und in Zeile 1 die Überschriften selber setzen.
    Die Abfrage kannst du direkt beim Öffnen aktualisieren lassen.
    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

  5. #5
    Registriert seit
    Dec 2004
    Beiträge
    203
    Hallo.
    Hmmmm .... könnte man nicht auch im select ein concat mit CRLF und der fehlenden Beschreibung einsetzen ... oder MUSS das eine in Zeile 1 und das andere in Zeile 2 sein ? WEnn es denn überhaupt geht ...

    Gruß,
    Ralf

  6. #6
    Registriert seit
    Jan 2001
    Beiträge
    833
    Zitat Zitat von loeweadolf Beitrag anzeigen
    wie kann ich mit der SQL-Anweisung ALTER TABEL erreichen, dass in der CSV-Datei
    2 Überschriftsreihen ausgegeben werden:
    a) 1.Reihe textl.Beschreibung (aus DDS -> COLHDG)
    b) 2. Reihe Feldname (das geht ja schon über ADDCOLNAM)


    Euer Tool CVTOSDB ist vermutlich kostenpflichtig ?
    Ja so ist es. Dafür kann das Tool auch mehr.
    Z.B Formatierung von Excelzeilen/Spalten
    Konvertierung nach xls,xlsx,xlsm,XML,JSON etc.
    und automatische Verarbeitung von Queries, SQL etc.

    Du kannst das Tool kostenfrei testen.

    Gruß
    Michael

  7. #7
    Registriert seit
    Feb 2001
    Beiträge
    20.238
    In SQL geht viel.
    Du kannst (das mache ich auch gerne per QMQRY) einen

    select "Name1;Name2;Überschrift1;..." from qsysibm/sysdummy1
    Union all
    select trim(F1) concat ';' concat trim(F2) concat ';' concat char(N1) concat ';'
    from myfile
    where ...

    in eine PF (CRTPF ohne DDS mit Satzlänge) ausgeben und diese dann per CPYTOSTMF exportieren.
    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
    Jan 2007
    Beiträge
    905
    Ich hab mit einem CL und RPG-Programm diese Problematik gelöst. Erstens mache ich einen DSPFFD, damit bekomme ich die Ueberschriften (COLHDG). Das RPG Programm macht mir einen oder drei entsprechende Strings mit den Separators, schreib sie in eine Workdatei, kopier diese in die Exportdatei mit CPYTOIMPF und die Orginaldatei mit einem CPYTOIMPF mit einem add danach. Fertig, funktioniert 100 pro. Als Goodie schreib ich gleich noch einen Titel mit.

    Vermutlich kannst du den gleichen Ablauf auch mit SQL verwenden.
    kf

  9. #9
    Registriert seit
    Jul 2003
    Beiträge
    331
    Ich bin überrascht, wieviele gute Möglichkeiten sich auftun. Vielen Dank dafür.
    Wahrscheinlich werde ich die die Idee von CAMOUFLAGE als Basis verwenden.

  10. #10
    Registriert seit
    Oct 2013
    Beiträge
    171
    Es gibt noch viel mehr Möglichkeiten; die arten aber (zumindest einmalig) in Arbeit aus und verschenken kann die fertige Lösung auch (fast) keiner.
    Z.B. bei uns erzeugen wir csv-files gleich direkt im IFS, und haben dazu Funktionen wie csvColChar(), csvColNum(), csvColDate() usw. gebastelt - so sind auch "perverse" csv-files möglich (mit "Vorlaufsätzen", einem letzten Satz, der sagt, wie viele Sätze es waren, usw.).
    Grundprinzip: ein csvCreate erstellt die Datei und setzt Defaultwerte (Trennzeichen, usw.), die csvColxxx-Funktionen schreiben die Daten durch Trennzeichen getrennt nebeneinander in einen Ausgabepuffer und ein csvLine() schreibt den Puffer in die IFS-Datei.
    Einmal Arbeit gewesen, aber nun ist es die Erstellung jedweden csv-files ein Kinderspiel.

  11. #11
    Registriert seit
    Feb 2001
    Beiträge
    20.238
    Ich muss halt nur ein Programm schreiben dass das alles dann aufruft.
    Per SQL und CPYTOSTMF schreibe ich keine Programme und bin dann schneller fertig.
    Solange es um Standard-CSV geht ist das die einfachste Methode.
    Bei komplexeren "Schnittstellen" muss man natürlich einiges programmieren.
    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

  12. #12
    Registriert seit
    Jan 2001
    Beiträge
    833
    Hallo,

    habe jetzt vom Kollegen zum CPYTOIMPF folgendes gehört.

    IBM hat bei dem Command die Funktionalität des ADDCOLNAM wieder entfernt
    obwohl man den Parameter noch angeben kann.

    Hat jemand weitere Infos dazu ?

Similar Threads

  1. CPYTOIMPF / CSSID
    By sonicreducer in forum NEWSboard Programmierung
    Antworten: 2
    Letzter Beitrag: 29-04-15, 07:34
  2. CPYTOIMPF
    By KingofKning in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 16-03-15, 16:07
  3. CPYTOIMPF
    By AK1 in forum NEWSboard Programmierung
    Antworten: 3
    Letzter Beitrag: 27-08-14, 14:23
  4. CPYTOIMPF
    By alex in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 03-06-03, 08:22
  5. Cpytoimpf
    By horst in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 19-07-01, 13:02

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •