Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Drucken aus Access unter Windows 10

Mitglied: Henere

Henere (Level 3) - Jetzt verbinden

16.06.2016 um 14:51 Uhr, 1293 Aufrufe, 12 Kommentare

Hallo zusammen,

ich habe gerade etwas Diskussionen mit dem Entwickler einer Access2013 DB.

Die Drucker werden als TCP-IP Drucker installiert. Es handelt sich um Brother, wie auch Kyocera Drucker.

Es geht darum diverse Formulare unterschiedlich zu drucken.
Als Beispiel soll Formular 1 auf Drucker 1 aus unterschiedlichen Fächern gedruckt werden. Teilweise Duplex. Formular 2 dann nur aus Fach 2 ... usw.
Unter Windows7 wurde das bis jetzt so gelöst, dass auf dem PC jeder Drucker mehrfach installiert wurde, mit unterschiedlichen Namen, wie z.B. "Drucker 1, Fach 1"; "Drucker 1, Duplex": "Drucker 1, Fach 2"; "Drucker 2, Duplex" usw. In der Konfiguration dieser Drucker wurden dann die entsprechenden Eigenschaften eingestellt. Das ergab dann über 8 verschieden installierte Drucker auf den PCs.

Nun soll das Ganze demnächst auf Windows 10 laufen.

Wir hatten bei Tests unter Windows 8.1 aber schon die Erfahrung gemacht, dass das mehrfache installieren von ein und dem gleichen Drucker mit der gleichen IP irgendwann damit endet, dass die Drucker gar nicht mehr drucken, Druckaufträge irgendwo im Nirvana verschwinden und andere Nettigkeiten. Ich befürchte unter Win10 wird dies nicht anders ablaufen.
Von daher war mein Vorschlag bzw. Idee , dass jeder physikalische Drucker nur jeweils einmal auf dem System installiert wird und aus der Access-DB die Drucker per VBA dementsprechend angesteuert werden.

Jetzt sagt aber der Entwickler nach einigen Tests, dass dies seiner Meinung nach nicht per VBA machbar wäre.

Von daher meine Frage an euch: Wie geht ihr mit sowas um ? Geht das mit VBA, oder muss zwingend mit den vielen installierten Druckern gearbeitet werden ? Oder gibt es vielleicht einen ganz anderen Weg um so etwas zu bewerkstelligen ? Es ist eine 2012er Domäne vorhanden, man könnte auch einen Server zum Printserver machen, und die "vielen" Drucker dann dort installieren und freigeben. Diese Möglichkeit hat aber unter W8.1 auch nicht sauber funktioniert, daher sind alle Clients (5 Stück) noch auf Win7 geblieben.

Danke und Grüße, Henere (der von VBA und Druckersteuerung nun mal ganz und gar keine Ahnung hat)
Mitglied: 129413
16.06.2016, aktualisiert um 15:04 Uhr
Das geht problemlos, zumindest bei Reports mit der PaperBin Property (Für jeden Drucker muss der entsprechende Traywert ausfindig gemacht und abgelegt werden) , bei Formularen müsste ich erst mal nachsehen.

Gruß skybird
Bitte warten ..
Mitglied: Henere
16.06.2016 um 17:07 Uhr
Hallo Skybird,

da ich "nur" für die Clients und das Netzwerk zuständig bin, aber die Anwendung selbst kaum kenne, weiß ich nicht ob es Reports oder Formulare sind. Den Tip mit dem PaperBin Property gebe ich gerne weiter. Hast Du noch einen Tipp für mich, wie das mit dem Duplex gesteuert werden kann ?

An alle anderen: Bin für weitere Meinungen offen.

Grüße, Henere
Bitte warten ..
Mitglied: j123321
16.06.2016 um 19:10 Uhr
Hi,

hier mal der aktuelle Versuch des Entwicklers:


01.
'...
02.

03.
Set rpt = Reports(pReportName)
04.

05.
    rpt.Printer = Application.Printers(pPrinterName)
06.
    
07.
    With rpt.Printer
08.
    
09.
        If pPaperBin > -1 Then .PaperBin = pPaperBin
10.
    
11.
        DoCmd.OpenReport pReportName, acViewNormal
12.
        DoCmd.Close acReport, pReportName, acSaveNo
13.
    
14.
    End With
15.

16.
Set rpt = Nothing
17.

18.
'...



01.
'pPaperBin:
02.

03.

04.

05.
'https://msdn.microsoft.com/en-us/library/office/ff822005.aspx
06.

07.
'7;acPRBNAuto
08.
'14;acPRBNCassette
09.
'5;acPRBNEnvelope
10.
'6;acPRBNEnvManual
11.
'15;acPRBNFormSource
12.
'11;acPRBNLargeCapacity
13.
'10;acPRBNLargeFmt
14.
'2;acPRBNLower
15.
'4;acPRBNManual
16.
'3;acPRBNMiddle
17.
'9;acPRBNSmallFmt
18.
'8;acPRBNTractor
19.
'1;acPRBNUpper



Kommt aber leider immer aus Fach 1

Viele Grüße,

Jens
Bitte warten ..
Mitglied: 129413
16.06.2016, aktualisiert um 20:35 Uhr
Die Windows-Eigenen Tray-Defintionen unterstützt leider nicht jeder Drucker(Treiber) bzw. diese wurden nicht korrekt nach MS Vorgaben im Treiber umgesetzt.

Welche Kassetten sich per Code in Windows möglicherweise setzen lassen können, kann man sich z.B. per Powershell für einen Drucker auflisten lassen:
01.
Add-Type -AssemblyName System.Printing
02.
# Druckername
03.
$printerName = "HP Laserjet 1320"
04.
# Konstanten
05.
$adminServer = [System.Printing.PrintSystemDesiredAccess]::AdministrateServer
06.
$adminPrinter = [System.Printing.PrintSystemDesiredAccess]::AdministratePrinter
07.
# Printserver-Zugriff erhalten
08.
$server = new-object System.Printing.LocalPrintServer $adminServer
09.
# Print-Queue des gewünschten Druckers filtern
10.
$queues = $server.GetPrintQueues() | ?{$_.Name -eq $printerName }
11.

12.
foreach($q in $queues){
13.
    # Administrativen ZUgriff auf den PrintQueue erhalten
14.
    $objPrinter = new-object System.Printing.PrintQueue -argumentList $server,$q.Name,$adminPrinter
15.
    $objPrinter.GetPrintCapabilities().InputBinCapability
16.
}
Wird dort nur ein Tray gelistet sieht es schlecht aus.

Über die Win32API ließe sich eventuell noch was drehen. Muss ich bei Zeiten mal nachsehen.

Gruß skybird
Bitte warten ..
Mitglied: Henere
17.06.2016, aktualisiert um 02:23 Uhr
Servus Skybird,

egal welchen (Brother)-Drucker ich bei $printername einsetze, ich erhalte immer das hier:

01.
PS C:\Users\Administrator> C:\Program Files\Scripts\Drucker.ps1
02.
AutoSelect
Gehe ich richtig in der Annahme, dass ich dort den Wert (Namen) einsetzen muss, den der Drucker in der Systemsteuerung => Hardware und Sound => Geräte und Drucker hat ?

Es ist auch egal, wenn ich in den Druckeigenschaften fest eine andere Papierkasette auswähle, es bleibt bei Autoselect stehen.
Liegt das jetzt an Brother, dass die bescheidene Treiber bauen ? Die sollen doch angeblich HP PCL verstehen, wenn ich das richtig rausgelesen habe.

Update: Bei einem Kyocera bekomme ich zumindest diese Auswahl:

01.
AutoSelect
02.
Cassette
03.
Manual
Danke und Grüße, Henere
Bitte warten ..
Mitglied: Henere
20.06.2016 um 17:35 Uhr
Servus zusammen,

das ist die Antwort von Brother.

01.
Wenn Sie in Ihrem Programm PCL und/oder PJL Anweisungen mitgeben können, dann sollte die Schachtsteuerung kein Problem sein.
02.
Folgende Sequenzen benötigen Sie dazu:
03.
 
04.
Einzugsschacht:
05.
1 = <ESC>&l1h1001H
06.
2 = <ESC>&l5h1001H
07.
3 = <ESC>&l8h1001H
08.
4 = <ESC>&l9h1001H
09.
5 = <ESC>&l10h1001H
10.
 
11.
Ausgabefach:
12.
1 = @PJL SET OUTBIN=OPTIONALOUTPUTBIN1
13.
2 = @PJL SET OUTBIN=OPTIONALOUTPUTBIN2
14.
3 = @PJL SET OUTBIN=OPTIONALOUTPUTBIN3
15.
4 = @PJL SET OUTBIN=OPTIONALOUTPUTBIN4
16.
 
17.
Näheres können wir zu VBA oder der Programmierung leider nicht sagen.
Kann dem Jens jemand sagen, wie er das in VBA packen kann ?

Danke und Grüße, Henere
Bitte warten ..
Mitglied: Henere
21.06.2016 um 01:26 Uhr
Thx highload,

do you know if this will work with more actual (recent) versions of WIndows and VBA ?

Kind regards, Henere
Bitte warten ..
Mitglied: 129813
21.06.2016 um 08:24 Uhr
This should still work. Simply test it yourself.
Bitte warten ..
Mitglied: Henere
21.06.2016 um 12:01 Uhr
Thx a lot. Jens will test it, and we will reply then.

Kind regards, Henere
Bitte warten ..
Mitglied: j123321
21.06.2016 um 16:34 Uhr
Hi,

sorry, aber kein Plan, wie ich das zum Laufen bekommen soll. Kann noch jemand helfen?

Viele Grüße

Jens
Bitte warten ..
Mitglied: Henere
29.06.2016 um 14:01 Uhr
Servus zusammen,

ist hier niemand dabei der dem Jens sagen kann, wie er die Steuercodes per VBA an den Drucker senden kann ?

Grüße, Henere
Bitte warten ..
Ähnliche Inhalte
Windows 10
Windows 10 Edge Druck Probelme
Frage von isforbWindows 105 Kommentare

Hallo wir haben div. Rechner wo es nicht Möglich ist aus dem neuem Browser von Windows 10 zu drucken ...

Windows 10
Windows 10 Pro + Direct Access
Frage von DragonKillWindows 104 Kommentare

Moin, kann man Direct Access auch mit Windows 10 Professional nutzen oder ist Enterprise zwingend erforderlich? Ich finde nur ...

Netzwerkgrundlagen

Ausfallsicheren Druck mit Windows Bordmitteln

Frage von AndroxinNetzwerkgrundlagen9 Kommentare

Moin, moin. Ich habe hier einen Prozess, an dessen Ende immer ein Stück Papier produziert werden muss. Es stehen ...

Microsoft Office

Mit Access modulo 10 Prüfziffer - Berechnung

gelöst Frage von bf-7a7u7Microsoft Office4 Kommentare

Hallo Zusammen, ich stehe aufm Schlauch und bitte um Hilfe. Mein Problem: ich möchte ein Formular entwerfen um Einzahlungsschein ...

Neue Wissensbeiträge
Windows 10
Windows 10 Mai 2019 Update (Version 1903) ist da
Information von kgborn vor 21 MinutenWindows 10

Nur ein kurzer Infosplitter: Microsoft hat die Nacht (21. Mai 2019) das Funktionsupdate auf Windows 10 Version 1903 freigegeben. ...

E-Mail

Newsletter: Unread News - IT News in Byte Länge

Tipp von franktaylor vor 12 StundenE-Mail8 Kommentare

Hallo, würde gerne auf einen Newsletter hinweisen, den ich heute per Zufall gefunden und mit euch gerne teilen möchte: ...

Outlook & Mail

Outlook 2016 stürzt ab, wenn man ein (at)- Zeichen im Text einer neuen E-Mail schreibt

Tipp von Enriqe vor 1 TagOutlook & Mail4 Kommentare

Bei uns in der Firma häuften sich die Fälle, bei denen sich Outlook kommentarlos verabschiedet, wenn man ein - ...

Google Android

Google sperrt Android-Updates und den Play Store für Huawei

Information von Deepsys vor 2 TagenGoogle Android9 Kommentare

Das finde ich schon ein starkes Stück, Trump der Welt Diktator. So kann man mit einem Dekret mal eben ...

Heiß diskutierte Inhalte
DNS
DNS fragt falsche ip zuerst ab
gelöst Frage von recoldDNS23 Kommentare

Hallo zusammen, wollte mal fragen, was mit meiner DNS falsch ist? der A eintrag 88.48.118.88 sollte auf den ts3 ...

Windows Server
Passwortänderung an RODC möglich?
Frage von DexthaWindows Server23 Kommentare

Hallo, ich habe einen RODC, auf welchen ich über ldaps (Web-Seite mit php7) Passwortänderungen durchführen möchte. Ist das grundsätzlich ...

Windows 10
Windows am MAC
gelöst Frage von LeeX01Windows 1019 Kommentare

Guten Abend zusammen, ich habe gerade ein Macbook Pro vor mir welches ich mit einem Windows 10 to go ...

Windows Server
RDP als Citrix Alternative
gelöst Frage von samreinWindows Server18 Kommentare

Hallo zusammen, ich bin neu hier und das ist mein erster Beitrag. Ich bin Einzeladmin und wir setzen bei ...