-
hallo.
hier mal ein kleiner auszuf aus meinem quelltext:
PrintObjectTransformedInputStream in = null;
try {
PrintParameterList printParms = new PrintParameterList();
printParms.setParameter(PrintObject.ATTR_WORKSTATI ON_CUST_OBJECT, PLAIN_TEXT);
printParms.setParameter(PrintObject.ATTR_MFGTYPE, "*WSCST");
// get the text (via a transformed input stream) from the spooled file
in = splf.getTransformedInputStream(printParms);
byte buffer = new byte[8 * 1024];
int count = 0;
do {
out.write(buffer, 0, count);
count = in.read(buffer, 0, buffer.length);
} while (count != -1);
} finally {
try {
in.close();
} catch (IOException e) {
}
wenn ich mir die spoolfile in eine datenbankdatei schreibe und dann per sql auslese geht es ja. aber ich wollte von dieser methode halt weg kommen, da es länger dauert das erst reinzuschreiben. java wird dort für einige sekunden blockiert wenn ich die spool in die datenbank schreibe.
-
Hi!
Bau mal Dein Programm etwas um auf:
1. printParms.setParameter(PrintObject.ATTR_MFGTYPE, "*WSCST"); raus damit
2. CharConverter nachbauen s. o.
3. Steuerzeichen auswerten. Den ByteStream byte für
byte durchgehen und z.B. 0x15 usw. auswerten.
Mit der Methode funktioniert es auf jedenfall.
 Zitat von apparat
hallo.
hier mal ein kleiner auszuf aus meinem quelltext:
PrintObjectTransformedInputStream in = null;
try {
PrintParameterList printParms = new PrintParameterList();
printParms.setParameter(PrintObject.ATTR_WORKSTATI ON_CUST_OBJECT, PLAIN_TEXT);
printParms.setParameter(PrintObject.ATTR_MFGTYPE, "*WSCST");
// get the text (via a transformed input stream) from the spooled file
in = splf.getTransformedInputStream(printParms);
byte  buffer = new byte[8 * 1024];
int count = 0;
do {
out.write(buffer, 0, count);
count = in.read(buffer, 0, buffer.length);
} while (count != -1);
} finally {
try {
in.close();
} catch (IOException e) {
}
Ciao
Nili
-
äh hast du vielleicht ein beispiel gleich? also ne kleinen manipulation an meinem quelltext?
das wär nämlich ganz gut da ich nicht genau weiß was du jetzt meinst
-
Hi!
Sollte funktionieren. Auf Konsole sollte der Spool erscheinen.
Code:
try {
PrintParameterList printParms = new PrintParameterList();
printParms.setParameter(PrintObject.ATTR_WORKSTATION_CUST_OBJECT,
"/QSYS.LIB/QWPDEFAULT.WSCST");
in = splf.getTransformedInputStream(printParms);
CharConverter cnv = new CharConverter(i5.getCcsid());
byte[] buffer = new byte[1024];
in.read(buffer, 0, buffer.length);
in.close();
byte[] line = new byte[255];
int len = 0;
for (int i = 0; i < buffer.length; i++) {
switch (buffer[i]) {
case 0x15:
System.out.println(cnv.byteArrayToString(line, 0, len));
line = new byte[255];
len = 0;
break;
case 0x00:
line[len] = 0x40;
len++;
break;
default:
line[len] = buffer[i];
len++;
}
}
} catch (Exception e) {
e.printStackTrace();
}
Ciao
Nili
-
hallo. vielen dank für den code. werd ihn mal bei mir einbauen und prüfen ob es denn auch funktioniert. melde mich dann.
-
es funktioniert soweit erstmal nur bekomme ich nun andere komische zeichen:
hier mal ein vergleich was rauskommt und was rauskommen sollte:
in java:
?ä?1400 F* bezogen auf das Tagesdatum wird der nächst-mögliche Liefertag ** 04.05.01
?ä?1500 F* (Arbeitstag) ermittelt, in dem das Datum um eine vorgegebene ** 04.05.01
?ä?1600 F* Anzahl (PARDAY) von Arbeitstagen erhöht wird. Wochenende ** 04.05.01
auf as400:
1400 F* bezogen auf das Tagesdatum wird der nächst-mögliche Liefertag **
1500 F* (Arbeitstag) ermittelt, in dem das Datum um eine vorgegebene **
1600 F* Anzahl (PARDAY) von Arbeitstagen erhöht wird. Wochenende **
es geht dabei nur um die "?ä?" zeichen....
-
Hi!
Dat meinte ich mit Steuerzeichen.
Dahinter verbirgt sich CR, LF, NL usw.
Die musst Du noch auswerten oder im switch-Zweig abfangen
und nicht mit andrucken.
Ciao
Nili
Similar Threads
-
By TARASIK in forum IBM i Hauptforum
Antworten: 21
Letzter Beitrag: 30-03-11, 13:48
-
By chrisssiie in forum NEWSboard Programmierung
Antworten: 19
Letzter Beitrag: 09-01-07, 10:53
-
By Muchi in forum NEWSboard Java
Antworten: 2
Letzter Beitrag: 07-11-06, 11:00
-
By woki in forum NEWSboard Java
Antworten: 3
Letzter Beitrag: 06-06-06, 15:57
-
By Deficiency in forum NEWSboard Java
Antworten: 15
Letzter Beitrag: 02-12-05, 09:18
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