Druckerkassette (Papierzufuhr) auswählen

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Druckerkassette (Papierzufuhr) auswählen

Re: Druckerkassette (Papierzufuhr) auswählen

von Stephan » Fr, 01.06.2012 09:53

kann es sein, dass das ignorieren der Einstellung unter Format / Seite / Seite / Papierzufuhr ein Bug von Calc (AOO 3.4) ist?
Ja das kann natürlich sein. Es kann in diesem Falle auch sein das bereits eine Fehlermeldung dafür beim AOO-Projekt vorliegt.


Ich habe das nicht geprüft und bin über diese Dinge somit leider nicht im Detail informiert.




Gruß
Stephan

Re: Druckerkassette (Papierzufuhr) auswählen

von msxport » Fr, 01.06.2012 09:45

Hallo,

kann es sein, dass das ignorieren der Einstellung unter Format / Seite / Seite / Papierzufuhr ein Bug von Calc (AOO 3.4) ist? Ich habe die Einstellung für die Papierzufuhr in Writer umgestellt, und hier wird von der gewählten Kassette gedruckt.

MfG
Markus

Re: Druckerkassette (Papierzufuhr) auswählen

von Stephan » Do, 31.05.2012 21:51

Gibt es eine Möglichkeit die Einstellungen im Druckdialog per Makro zu ändern?
Naja, das ist hier nicht so ganz der Kern des Themas.

Erstens weiß ich aus dem Hut garnicht wie man Einstellungen "im Druckdialog" (also doch sichtbar zum Zeitpunkt der Anzeige des Dialogs?) per Makro anpasst, sondern man würde diese Einstellungen eher per Makro direkt setzen ohne den Dialog anzuzeigen.

Wichtiger ist aber das es hier doch garnicht um den eigentlichen OOo-Druckdialog geht denn der UNterdialog der mit KLick auf:
Einstellung im Druckdialog Eigenschaften
aufgerufen wird ist ein Dialog der aus dem Druckertreiber 'resultiert' und der inhaltlich, je nach konkretem Drucker bzw, Treiber, anders aussieht. Ich weiß nicht wie man in diesem Dialog per Makro Einstellungen verstellt.

Es bietet sich aber (zumindest funktioniert das unter Windows) ein anderer Weg an, nämlich denselben Drucker (bzw. dessen Treiber) zweimal zu installieren und beiden Installationen einen anderen DRucker-Namen zuzuweisen. Dann kann man für einen DRucker das Default-Papierfach anders festlegen als für den Anderen und alle sonstigen Einstellungen gleich und nutzt dann per Makro einmal den Einen und einmal den anderen DRucker - das sollte gehen.

das zweimalige Installieren des Druckers/Treibers geht eigentlich ganz normal wie bei einmaliger iNstallation, falls Du bisher die DRuckerinstallation jedoch per Herstellersoftware und nicht im Windows-DRuckerordner gemacht hast mußt Du Dich mal irgendwo im Internet genauer informieren wie man aus dem DRuckerordner heraus einen DRucker installiert.

Hinweise zum späteren Makro sollten sich in der Starbasic-FAQ finden.



Gruß
Stephan

Re: Druckerkassette (Papierzufuhr) auswählen

von msxport » Do, 31.05.2012 16:25

Hallo,

ich habe unter Format / Seite / Seite / Papierzufuhr manuell auf eine andere Kassette umgestellt und manuell den Druckdialog aufgerufen. Auch hier druckt er nur von der ersten Kassette. Nur bei Einstellung im Druckdialog Eigenschaften / Papier/Qualität / Papierquelle auf z.B. "Kassette 3" wird auch aus Kassette 3 gedruckt. Scheinbar werden die Einstellungen in OpenOffice unter Format / Seite / Seite / Papierzufuhr ignoriert.

Gibt es eine Möglichkeit die Einstellungen im Druckdialog per Makro zu ändern?

MfG
Markus

Re: Druckerkassette (Papierzufuhr) auswählen

von Stephan » Mi, 30.05.2012 08:11

überprüfe oib überhaupt ein manuelles Umstellen des Papierfachs, und anschließendes Drucken möglich ist. Falls ja erstelle zwei identische SEitenvorlagen, welche sich nur hinsichtlich der Papierfacheinstellung unterscheiden, und weise jeweils die komplette Seitenvorlage im Makro zu.

was überhaupt soll:

Code: Alles auswählen

'Ausdrucken
Dim printProp(0) as New com.sun.star.beans.PropertyValue
oDoc.Print(printProp())
bewirken?

Ich weiß momentan nicht ob das Probleme macht, sinnlos ist es auf jeden Fall, denn es wird ein Array mit einer 'leeren' PropertyValue übergeben. Keine PropertyValue würde man hingegen üblicherweise mit z.B.:

Code: Alles auswählen

'Ausdrucken
oDoc.Print(Array())
übergeben.


Gruß
Stephan

Re: Druckerkassette (Papierzufuhr) auswählen

von msxport » Mi, 30.05.2012 07:51

Ich drucke aus Calc.
Unter Format / Seite / Seite / Papierzufuhr steht unter anderem auch "Kassette 3" wie im Makro angegeben. Nach Durchlauf des Makros ist die Papierzufuhr ja auch von "[Aus Druckereinstellungen]" auf "Kassette 3" umgestellt. Das Papier wird jedoch immer aus der ersten Kassette gezogen.

MfG
Markus

Re: Druckerkassette (Papierzufuhr) auswählen

von komma4 » Di, 29.05.2012 18:02

Wahrscheinlich der Name des Papierfachs falsch...

Du druckst ein Writer-Dokument?
Was stehen unter Format>Seite...>Seite>Papierzufuhr für verfügbare Namen?

Druckerkassette (Papierzufuhr) auswählen

von msxport » Di, 29.05.2012 15:16

Hallo,

habe aus verschiedenen Forumseinträgen und mit Hilfe von Dannenhöfer folgendes Makro zusammengestellt:
(AOO 3.4 Calc)

Code: Alles auswählen

Sub Drucken()
Dim oDoc As Object
oDoc = ThisComponent

'Druckerschacht wechseln
Dim oStyleFamilies As Object
Dim oPageStyles As Object 
Dim oDefPage As Object
oStyleFamilies = oDoc.StyleFamilies
oPageStyles = oStyleFamilies.getByName("PageStyles")
oDefPage = oPageStyles.getByName("Standard")
oDefPage.PrinterPaperTray = "Kassette 3"

'Auf Rechnungsdrucker wechseln
Dim oMyPrinter As Object
oMyPrinter = oDoc.getprinter  
msgbox oMyPrinter(0).value	  

dim arg(0) as New com.sun.star.beans.PropertyValue
arg(0).name="Name"
arg(0).value="\\Server1\Kyocera FS-4000DN"   

oDoc.setPrinter(arg())
oMyPrinter = oDoc.getprinter  
msgbox oMyPrinter(0).value	  

'Ausdrucken
Dim printProp(0) as New com.sun.star.beans.PropertyValue
oDoc.Print(printProp())

End Sub
Das Makro soll das angegebene Papierfach (Druckerkassette) einstellen, den angegebenen Drucker auswählen und dann unter Einhaltung dieser Angaben drucken. Der Drucker wird richtig angewählt. Unter Format/Seite/Seite ist nach Durchlauf des Makros die Papierzufuhr auf "Kassette 3" eingestellt, jedoch wird immer aus der ersten und nicht aus der dritten Kassette gedruckt.
Was mache ich falsch?

MfG
Markus

Nach oben