PDA

View Full Version : ESC Steuerzeichen an einen IP-Drucker senden



DD
10-02-01, 11:28
wie stelle ich es an, ein ESC-Steuerzeichen an einen IP-Drucker zu senden? Hintergrund: Mit Hilfe einer Befehlssequenz sollen an dem Drucker hinterlegte Hintergrundformulare mit ausgegeben werden. OS/400 derzeit noch V3R7!

[Dieser Beitrag wurde von DD am 10. Februar 2001 editiert.]

[Dieser Beitrag wurde von DD am 12. Februar 2001 editiert.]

[Dieser Beitrag wurde von DD am 12. Februar 2001 editiert.]

K_Tippi
13-02-01, 08:24
Schau dir mal die DDS Schlüsselworte CVTDTA und TRNSPY. Damit kannst du HEX Werte in einer Spoll einbetten, ohne dass die AS/400 "ihre Finger" im spiel hat. Ich habe das vor ein paar Jahren auch schon mal gemacht.

Bruno Jakob
13-02-01, 08:52
Hallo DD,

was ist das für ein Drucker? Wie rufst du so ein Formular aus einer Windows-Anwendung auf? Versteht der Drucker irgendeine Steuersprache, die man über den Drucktext verwenden kann?

mfg
Bruno

DD
13-02-01, 09:06
Hallo Bruno,

es handelt sich hierbei um Lexmark- bzw. HP-Drucker, die entweder via Printserver oder mit eigener Netzwerkkarte im Ethernet hängen. Auf den Druckern sind entweder im Flash oder auf den Festplatten Formulare, Logo´s ect. hinterlegt. Diese lassen z.B. per Office ansprechen und ausdrucken. Gleiches möchte ich nun von der AS/400 erreichen.
Gruss Dieter

WoRi
14-02-01, 13:05
Hi DD,

ich vermute, Du hast das gleiche Problem wie ich vor kurzem. Du gibst eine ESC-Folge in eine Spoolfile aus, und die kommt am Drucker verstümmelt an.
Grund: Die AS/400 setzt von EBCDIC in ASCII um.
Lösung: Um zu verhindern, daß die ESC-Folge, die Du ja sicherlich schon als ASCII definiert hast, in Blanks umgewandelt oder irgendwie undefinierbar umgeschlüsselt wird, muß vor der ESC-Folge das transparency command x'03' und die Anzahl der nachfolgenden Bytes angegeben werden, die nicht umgewandelt werden sollen.
Beispiel: zu sendende ESC-Folge x'1B123456' (das sind also 4 Bytes) ausgeben als x'03041B123456'.
Wichtig: Im OVRPRTF oder CHGPRTF muß DEVTYPE(*SCS) und RPLUNPRT(*NO) angegeben werden. Dadurch bleiben alle Zeichen in der Spoolfile erhalten, die kleiner als x'40' sind.

Wolfgang

Bruno Jakob
14-02-01, 14:10
Die Konstellation mit Lexmark und HP kenne ich nicht. Wie werden die Formulare aus Office aktiviert?

DD
14-02-01, 16:31
Danke Wolfgang,
werde das gleich mal testen und wieder Bescheid geben.
Gruss Dieter