PDA

View Full Version : Prescribe im PrtF



Seiten : [1] 2

votch
20-07-04, 09:14
Guten Morgen,

ich habe folgendes Problem und wäre dankbar wenn mir jemand weiterhelfen könnte:

Ich möchte eine Spool-Datei auf ein vorgedrucktes Formular ausdrucken. Leider kann ich im PrtF nur um ganze Zeilen verschieben, aber im Ausdruck erscheint der Inhalt der Spool-Datei genau eine halbe Zeile zu tief. Eine Schablone mit ins PrtF einzubinden hilft auch nichts, da die Formulare vorher schon gestempelt sein müssen.

Desweiteren soll auch noch je nach Formular ein andere Kassette vom Drucker angesprochen werden.

Es handelt sich um einen Kyocera FS-1900. Im Handbuch des Druckers finde ich leider nur Prescribe-Funktionen, mit welchen ich den Drucker permanent umstellen kann.

Gibt es eine Möglichkeit diese Prescribe-Befehle in einem PrtF mitzugeben?

Vorab schon mal Danke.
votch

Fuerchau
20-07-04, 12:15
Die Prescribe-Befehle können als Klartext mit in den Spool ausgegeben werden.
Um das Formular zu verschieben, gibt man ein WSCST-Objekt an und verschiebt mittels TOPMARGIN den Anfang des Papiers um 1/2 Zeile nach unten.
Das müsste klappen, vorausgesetzt du nutzt Hosttransform.

Joe
20-07-04, 12:20
Hallo.
Wenn ich Dich richtig verstanden habe, möchtest Du die Prescribe-Funktion des Druckers auf bestimmte Druckzeilen
anwenden.
Definiere dazu ein Satzformat in der Pinterfile mit einer Ausgabezeile für den Steuerbefehl.
Diesen Befehl im Pgm. zusammenbauen und mit write ausgeben. z.B "!R! Font10; !R!; SCP;"
Die BEfehle sind im Handbuch beschrieben.
Der Kyocera-Drucker setzt diese Befehle zur Laufzeit um.

Viel Erfolg
Joe

votch
20-07-04, 12:50
Danke für die Antworten,

das werde ich heute Nachmittag per Durchgriff ausprobieren. Werde danach wieder hier posten ob es geklappt hat.

Gruß
votch

votch
21-07-04, 14:07
Hallo,

leider hat es nicht funktioniert.

Ich habe ein Satzformat angelegt und ausgegeben. In der Spooldatei erschienen die Funktionen auch.

In der 1. Zeile:
!R! CASS 2; EXIT;

In der letzten Zeile
!R! RES; EXIT;

Die Funktionen wurden nicht auf dem Formular angedruckt, deshalb gehe ich davon aus, das der Drucker etwas damit anfangen konnte.

Es erschienen bei der Ausgabe 2 Seiten in den Spool, es wurde aber nur eine gedruckt(was auch okay ist).

Beim Ausdruck hat es etwas länger gedauert, aber das Papier nahm der Drucker doch aus der 1. Schublade.

Ich sollte vielleicht noch dazu sagen, das ich keinen Zugriff auf den Drucker habe und dieser nur über das Intranet beim Kunden angesprochen werden kann über eine IP-Adresse.

Fuerchau
21-07-04, 14:36
Die Fachansteuerung erfolgt bei der AS/400 über die DRAWER-Einstellung.
1. Im Satzformat mittels DDS
2. In der Printfile (CRTPRTF/CHGPRTF)
3. Im OVRPRTF

Deshalb haben deine !R!-Befehle auch nichts bewirkt.

csn_muc
21-07-04, 18:23
Hallo!

-> Fuerchau: Das mit der DRAWER-Steuerung ist grundsätzlich richtig, der CASS-Befehl im Prescribe-Modus übersteuert aber
diese Einstellung.

-> Votch: Der Kyo hat folgende Papierfacheinstellungen:
CASS 0 = Manuelle Zufuhr
CASS 1 = Internes Papierfach
CASS 2, 3 etc. = Optionale Fächer
Wenn in CASS 0 kein Papier liegt, zieht er standardmässig aus CASS 1, ohne eine Meldung zu bringen.
Wenn Du eine exakte Positionierung brauchst, kannst Du das mit dem MZP-Befehl erreichen (Absolute Positionierung).

Viel Glück bei Deinen weiteren Versuchen!

Chris

juergenkarthaus
22-07-04, 13:02
Hallo,

zur Schachtansteuerung würde folgendes versuchen:

- Erstellen einer Tabelle für ein Datenstationsanpassungsobjekt
WSCST
- in dieser Tabelle beim Parameter DWRSLT die hexadezimalen
PCL Steuerzeichen für die Schachtanwahl des Kyo angeben
( zB bei einem als *HP4 definiertem Drucker PCL5 )
:DWRSLT
DRAWER=DRAWER2
DATA ='21522143415353323B455849543B'X.

- mittels CRTWSCST diese Tabelle kompilieren
- in der DEVD des Druckers die WSCST eintragen
- im OVRPRTF des aufrufenden CLs den Parameter DRAWER(n)
angeben.

Vielleicht nicht der eleganteste Weg, aber einen Versuch wert.


Viel Erfolg !

Jürgen

juergenkarthaus
22-07-04, 13:05
Es soll natürlich DWRSLT heißen, da hat mir der Editor einen Streich gespielt !

votch
28-07-04, 15:58
Hallo Forum,

vielen Dank für die ganzen Ratschläge. Folgendes hat sich bisher ergeben :

Am Drucker selbst gibt es einen FRPO-Parameter, welcher eingestellt werden muss, damit der Drucker überhaupt Steuerzeichen verarbeiten kann.

Da ich keinen physischen und keinen Netzwerkzugriff auf diesen Drucker habe konnte ich dies leider erst über den Kyocera-Support rausfinden.

Nachdem dieser Parameter umgestellt war, war es eigentlich ein leichtes den Drucker anzusteuern:

Für jede Steuerzeile ein Satzformat (komischerweise reichte es nicht ein Satzformat mit einem Feld in welches ich den Steuercode über ein Prg schrieb zu machen) mit dem Steuercode konstant hinterlegt. Dieses Satzformat kann dann im Programm vor bzw. nach den anderen Formaten ausgegeben werden. In der Spooldatei sieht es dann so aus, um Kassette 2 anzusprechen, den Text zu drucken und dann den Drucker wieder auf die Standardwerte zu stellen:

!R!
CASS 2;
EXIT;

... Inhalt Spooldatei

!R!
RES;
EXIT;

Die Positionierung (oberer Seitenrand) festzulegen, ist etwas komplizierter. Hierfür müssen mehrere Parameter eingestellt werden und einige Versuche durchgeführt werden.

Am Layout des Formulars ändert sich nichts. Obwohl 2 Seiten angezeigt werden, wird nur eine gedruckt.

Falls jemand das gleiche oder ein ähnliches Problem hat, hilft ihm dies vielleicht weiter.

Gruß votch