PDA

Vollständige Version anzeigen : PCL-Befehle an Drucker übergeben


Nockenwelle
07.02.2001, 22:25
Halli und Hallo,

ich muss für meine Berichte einen recht komplexen Drucker(7 Ausgabefächer, 4 Papierzufuhreinheiten, Klammereinheit etc.) den Bericht flexibel an die verschiedenen Fächer verteilen.
Die PCL-Befehle sind mir in der Doku des Druckers beschrieben. Soweit kein Problem.
Ich weiss nur nicht wie ich die innerhalb von Access ansprechen kann, damit dass Ding weiss was es jetzt tun soll.

Cu


P.S.: Ja, Günther-ich hab' schon mal hier in 'ner andern Richtung gefragt, mecker jetzt bitte nicht mit mir:-). Die Jungs von HP haben hier auch bestimmt bald auf der Matte zu stehen(ob die mein Prob lösen ist eine andere Sache). Angeschrieben hab' ich die ja schon. (Man hat sich für mein Schreiben bedankt-mehr nicht)Langsam hab' ich die Faxen dicke.
Ich hab's dir versprochen:wenn ich das so hinkriege wie es brauche, bist du der erste, der es erfährt.

Cu

Günther Kramer
08.02.2001, 07:13
Hallo Axel,

ich habe mal gesucht, ob ich etwas finde, aber Fehlanzeige. Früher, bei der guten alten DOS-Programmierung wußte ich, wie man den Steuercode an den Drucker senden muß. Aber bei Access und Windows kann ich dir leider auch nicht helfen.

Was ist, wenn du den Druckauftrag manuell sendest, klammert der Drucker dann?


<font size="1" face="Century Gothic">Moderatorenanmerkung: Überarbeitung, die durch den Wechsel der Forensoftware zum 01.01.2003 verursacht wurde.

Es wurden in diesem Beitrag Link(s) korrigiert.
jinx – 07.11.2003</font>

Nockenwelle
08.02.2001, 13:06
Hallo Günther,

klar kann ich den Manuell ansteuern. Aber selbst wenn ich alles Standardmäßig an den Hefter rausgeben lasse, geht das nicht mit Access. Man kann dem Hefter noch weitere Optionen geben, die man nicht vorbelegen kann(eine Klammer oder 2).
Das gleiche ist mit der Sortiereinheit. Ich kann die verschiedenen Möglichkeiten zwar Manuell einstellen, aber wie mache ich folgendes:
Ich schreibe an ca 70 Behörden. Das Anschreiben soll jeweils geheftet werden. Die Berichte, die dahinter stehen sind aber dafür zu dick. Bzw. ich kann dem Ding ja sagen, wenn der Druck mehr als 20 Seiten umfasst, soll das nicht an den Hefter, sondern in eins der Mailboxfächer gehen.
Wenn ich dann im Gesamtausdruck mehr als 250 Seiten an eine Box geschickt habe, soll er die Nächste wählen bis der Drucker voll ist(ca. 2000 Blatt).
Den Kram jeweils umzustellen, will ich vermeiden, da ich hier die verschiedensten Konstellationen habe, die auf die Berichte und Schreiben abgestimmt sein müssen.
Daher suche ich eine Möglichkeit dass Programmieren zu können. Im Handbuch ist die Syntax des PCL-Befehls beschrieben, aber wie übergebe ich das mit VBA?

Cu

Nockenwelle
30.07.2001, 23:13
So ne richtige möglichkeit habe ich noch net gesehen. Der Elmar hatte mir damals was geschickt, aber mehr dunkles ins dunkle gebracht.

Deshalb: on Top

A.S.
31.07.2001, 06:27
Hallo Axel,

na dann Prost :D

Da hast Du ein schönes Projekt vor, denn wenn Dir HP keinen Windows-Druckertreiber liefern kann, bei dem Du über API-Calls die Ansteuerung der unterschiedlichen Schächte und ggf. der Klammereinheit ansprechen kannst, darfst Du den gesamten PCL-Quelltext für die Berichte selbst erstellen.

Eine andere Lösungsmöglichkeit währe Beispielsweise, der Ausdruck der Berichte in Druckdateien, welche anschließend nochmals maschinell aufbereitet werden und anhand eindeutig zu identifizierender Bereichsteile die PCL-Befehle zur Schachtsteuerung selbst in den PCL-Quelltext einzubauen.

In jedem Fall heißt es: Sich intensiv mit PCL befassen.

Da muß ich Dir aber sagen, haben wir uns damals schon wesentlich lieber mit PostScript rumgeschlagen, das war wenigstens eine verbale Seitenbeschreibungssprache :)

Gruß

Arno

A.S.
31.07.2001, 09:35
PS Mein Lob übrigens, dafür das Du den Beitrag extra aus den Tiefen des Forums hervorgekramt hast :)

Gruß

Arno

Wile E G
31.07.2001, 09:48
ist nur so ne Idee...
wenn Günther meint, er wisse noch wie das in den guten alten DOS Zeiten war, ist es dann nicht möglich von access aus bestimmte Stapelverarbeitungsprogramme (die du natürlich vorher serstellen musst) aufzurufen? so von wegen:
fachwechsel.bat
magazin.bat

Gruß Wile E.G.

A.S.
31.07.2001, 09:51
Hallo Wile,

das dürfte IMHO nichts bringen, da die Druckertreiber von Windows immer eine Druckerinitialisierung vorweg schicken. Mit dieser ist bei solchen Druckern in der Regel ein Wechsel auf den Default-Schacht verbunden.

Gruß

Arno

Wile E G
31.07.2001, 09:58
Danke Arno!
...und wieder was gelernt...
(es gab mal eine Zeit, da wusste man noch ganz genau, was das OS so machte, inzwischen weiß man nur noch, was es nicht macht...)

Gruß Wile E.G.

Nockenwelle
31.07.2001, 10:44
Hi,

vielen Dank für die schnelle Antwort.

Postscript kann das Teil selbstverständlich auch(Ich aber net).

Ich hab' das damals als gar nicht soooo schwierig angesehen. Es ist nur so, dass dieses Teil von Drucker sehr komplex ist, und ich bei vielen Ausdrucken halt mal das Papier von Fach 1, Fach 2 .... ziehen möchte. Die Ausgabe hat dann je Druckvolumen in einem anderen Modi zu laufen(der Drucker kennt 3 oder 4). Teilweise ist klammern oder Duplex angesagt, je nachdem. Der Drucker kann das, nur wie sag ich es ihm??????????

Ich hab' schon viel im Internet danach geforscht, aber nix gefunden.

Da hast Du ein schönes Projekt vor, denn wenn Dir HP keinen Windows-Druckertreiber liefern kann, bei dem Du über API-Calls die Ansteuerung der unterschiedlichen Schächte und ggf. der Klammereinheit ansprechen kannst, darfst Du den gesamten PCL-Quelltext für die Berichte selbst erstellen.


Ich hoffe das geht über die API. Der HP-'Service' schrieb mir nach meiner dritten Nachfrage allerdings: Dafür gibt es doch die PCL-Befehle. Jetzt weiß ich zwar immer noch nicht mehr, aber für die scheint das Thema erledigt zu sein. Ich hatte vor ca. 15 Jahren mal so Klamotten über ein Druckmakro steuern dürfen(Rechnungen etc. aus einem SAP R/2 System). Horror in Tüten war das. Vor allem der Rechner auf dem das lief, hatte bei IBM wahrscheinlich die Seriennummer 6 oder 9.
Die HD war 10 MB groß, Disketten hat das Teil lieber verspeisst denn gelesen. Ich hab' die kiste mal aufgemacht, es waren noch nicht mal Simm - Module eingebaut, sondern eine Speichersteckkarte mit aufgelöteten Speicherbausteinen. Naja, womit man Praktikanten so quälen kann halt...

Cu

A.S.
31.07.2001, 15:09
Hallo Axel,

nun, ich für meinen Teil würde mich lieber durch einige Megabyte PostScript wuseln, denn durch einige Megabyte PCL. Ganz ehrlich.

Ich verwalte auf unserem HR-SAP-System "nur" etwa 50 Drucker. Allesamt HP mit ungefähr 15 verschiedenen Typen. Ich sage Dir: Es ist ein grauß, die ganzen Druckerdefinitionen so aufeinander abzustimmen das unter PCL auch überall alles gleich 'rauskommt!

Um die Postscript-Aufbereitungen zu ändern, haben wir die Sachen damals in Postscript-Druckdateien drucken lassen und uns dann das Coding angesehen (Nagel mich jetzt aber nicht auf einzelne Postscript-Befehle fest, das ist 10 Jahre her ;) ). An den Stellen, wo unser Text stand, den wir gegen unsere Daten austauschen mußten haben wir dann unsere Sachen per Coding hineingeschrieben.

Teste doch einfach mal aus, wo die Unterschiede liegen, wenn Du zum Beispiel aus WinWord heraus eine Datei mit einer Seite auf Schacht1 und mit einer Seite auf Schacht2 druckst, welches Coding zugesetzt werden muß um die Klammerung zu aktivieren etc. Das mußt Du dann - nach Ausdruck des jeweils zu druckenden Reports in Druckdateien - per Coding in Deine Druckdateien umsetzen.

Es ist natürlich klar, das der Benutzer dann einige Zeit (je nach Größe der Druckdateien) länger auf den Ausdruck warten muß, als wenn die Daten ohne weitere Aufbereitung an den Drucker gehen.

Gruß

Arno

Nockenwelle
01.08.2001, 09:33
Hallo noch mal,

ich glaub', ich hab' was gefungen. http://s p o t l i g h t.de/static-archive/1999/wnt/wnt-945352641-28074.shtml
(Freizeichen bitte entfernen). Ich weiß nur immer noch nichts damit anzufangen. ESC-Sequenzen könnte man auch einsetzen, nur wie??

Naja, vielleicht kann mir das einer hier sagen.
Cu

A.S.
01.08.2001, 09:57
Hallo Axel,

ich glaube das Beste wird sein, wenn Du Dich an den Autoren des Problems auf Spotlight wendest. Eventuell hat er dieses Problem bereits gelöst und kann Dir da schneller weiterhelfen als wir ;)

Gruß

Arno

Nockenwelle
01.08.2001, 20:16
Schon dabei Arno ;)