PDA

View Full Version : Excel aus AS400



Seiten : [1] 2 3

hs
20-06-07, 19:53
Gibt es ein Freewaretool, mit dem ich Excel aus AS400-CL erzeugen kann?

Dieses sollte die Möglichkeit haben, dass ich die Spaltenüberschriften als Excel-Template im IFS hinterlegen kann. D.h. ich habe eine leere Exceldatei, die nur die Spaltenüberschriften enthält. An diese sollen die AS400 - Daten angefügt werden.

Danke für eure Antworten
HS

Fuerchau
20-06-07, 20:25
Das einzige "Freeware"-Programm, dass mir bekannt ist, ist das OpenSource-Projekt POI der Java-Fraktion.

alfredo
21-06-07, 09:58
Ich habe im Forum/400 mal ein SAVF hochgeladen:
CVTDB2CSV
CVTDB2SLK
CTDB2XMLE
Da kann man wahlweise die Feldnamen oder COLHDG als Überschriften verwenden.
lg

hs
21-06-07, 10:19
Erstmal danke für die Antwort.

Wir haben ein solches Freewaretool bereits im Einsatz und erzeugen damit CSV, was prinzipiell auch ausreichen würde.

Damit können wir auch wahlweise Spalten oder Bezeichnungen ausgeben.

Über die Monate hat sich aber gezeigt, dass dieses nicht ausreicht.

Spaltenbeschreibung ist ja fest vorgegeben und leider (wie wohl in den meisten ERP-Systemen) nicht unbedingt sprechend.

Auch bei QRY-Ausgabefiles mit berechneten Feldern ist die Spaltenbezeichnung nicht zu gebrauchen.

Deshalb z.B. die Idee, für jedes Ausgabefile eine Excelvorlage in der AS400 zu hinterlegen und dort die Daten anzuhängen.

Gruß
HS

alfredo
21-06-07, 10:26
Ich verstehe.
Eine Möglichkeit wäre aber auch z.B.
c+ label on column qtemp/pvpinfog
c+ (pidir is 'DI',
c+ piber is 'BE',
c+ srtfca is 'FCO',
c+ srtgra is 'GR',
c+ pnr is 'PNR',
c+ name is 'Name',
c+ adr is 'Anschrift',
c+ plz is 'PLZ',
c+ ort is 'Wohnort',
c+ gebdat is 'Geb.-Dat.',
c+ konein is 'Konzern- Eintritt',
c+ befristung is 'vorauss. Austritt',
c+ befart is 'Grund',
c+ lstgru is 'Steuerklasse',

hs
21-06-07, 10:36
Ist das RPG? Klingt schwer nach spezieller Programmierung für jede Datei, die ich damit schicken möchte.

Vielleicht noch eine Hintergrundinfo:
Wir nutzen dieses Tool aus einem CL.
D.h. wir haben ein CL, dem geben wir als Parameter Datei, Bibliothek und Emailadresse mit und dann wird die Datei mit SNDDST als CSV an diese Adresse geschickt. Die Umwandlung in CSV besrogt ein Freewareprogramm, was ich mal irgendwo aus dem Netz geladen hatte.
Dieses CL ist damit universell für jede Datei einsetzbar.

Gruß
HS

alfredo
21-06-07, 10:44
Aber wenn ich es richtig verstanden habe, soll es ein Mapping je Datei geben.
Ich würde eine kleine Tabelle anlegen:
Tabelle,Feld,Colhdg
Dann würde ein kleines RPG-Programm reichen, das als Parameter den Dateinamen bekommt und ein dynamisches SQL-Statement zusammenbaut und ausführt.

Fuerchau
21-06-07, 12:01
Bei Query kann ich die Namen von berechneten Feldern selber vorgeben, diese werden auch genommen.

Bei QMQRY bzw. SQL kann ich mit "Berechnung as Name" auch Feldnamen vergeben.

Excel hat den Nachteil der Begrenzung auf 256 Spalten, 65535 Zeilen, was für kleinere Aufgaben ja ausreicht.

Nun kommt es jedoch darauf an, ob das Zielsystem eher CSV oder Excel benötigt.

Die Alternative bietet immer noch 5250-Hosttransfer (auch Batchfähig per rexec) in der man .tto's definiert mit Ausgabe nach CSV/TXT/XLS.
Gut, einen PC benötigt man auch noch dazu, kann aber durchaus ein Server sein.

hs
21-06-07, 12:50
Spaltennamen kann ich in QRY vergeben, aber keine Spaltenbeschriftung.

Wenn ich z.B. folgendes berechnetes Feld habe:

Umsatz = OQTY * PRIC

Dann ist der Spaltenname Umsatz
Und die Feldbezeichnung automatisch "OQTY*PRIC" -> und das versteht man halt dann nicht mehr.

Heute haben die User eine Excel-Vorlage mit den passenden Spaltenüberschriften und kopieren die per AS400 verschickten Daten dort hinein. Geht zwar, aber ist halt ein wenig umständlich und soll automatisiert werden.

Das mit dem REXEC klingt gut.

Allerdings ist mir auch im CA keine Möglichkeit bekannt, Daten an eine bestehende Exceldatei anzuhängen. Das geht nur mit Format Text / CSV.

Gruß
HS

Fuerchau
21-06-07, 13:07
Auch in Query kannst du rechts die Spaltenüberschrift definieren (3 Zeilen).

Versuch einfach mal, wie der Output des TTO-Transfers aussieht.
Das Anhängen ist ja nur erforderlich, da du die Überschriften vorgibst.