Automatisch een bestelbon printen als erop bevestigen is geklikt.
Probleem:
Ik loop tegen een probleem aan. Misschien bestaat er al een oplossing? Ik zat zelf te denken aan een meta tag die dan binnen een bepaalde tijd een bestand uitvoert waar de print code in verwerkt is. Ik wil printen naar een meta III bonnenprinter onder een Windows 10 Pro, Wamp server. Echter er komt aldoor het schermpje van Windows om de printer te selecteren en dat moet weg. Hopelijk heeft iemand een idee.
Bedoeling:
Het gaat erom dat er een bestelling wordt opgenomen aan de tafel, zodra er op bevestigen is gedrukt moet er bij de bar een bonnetje geprint worden waar dan de bestelling (drinken en eten) op staat. Alles werkt al twee jaar van mijn zelf geschreven kassa programma, echter willen ze nu deze extra optie erbij. Tot heden had ik het zo dat je op de knop printen moest drukken en dan kon je de juiste printer kiezen en dan werd er geprint. Maar die tussenstap van printer kiezen wil ik dus kwijt en de bon gelijk laten printen zonder dat je nog een printer moet kiezen.
Situatie:
Het gaat om een mini camping met restaurant, dus ze hebben twee typen printers aangesloten, een voor de camping (A4 formaat) en een voor restaurant bezoekers (Bonnenprinter) en alles loopt via hetzelfde kassaprogramma, aangezien camping gasten ook het restaurant bezoeken en aan het eind van hun verblijf de rekening betalen van de camping en het restaurant.
De vraag:
Hoe omzeil ik de Windows melding om printer te selecteren vanuit php.
een bevriende horeca ondernemer vertelde aan mij dat hij werkt met de service van HP, zijn kassa programma maakt een pdf en emailt deze naar iets van deprintervancafe123@hpprintservice punt com en dat is een emailadres dat je gratis kan aanmaken bij HP mits een een recente HP printer hebt. HP zorgt voor de rest, stuurt de printer aan. Ik dacht ook dat concurrenten printer makers ook al zo'n service hebben.
Als eerste bedankt voor de reacties en het meedenken.
Ik heb nu een aantal handleidingen weten te vinden met alle commando's die ik naar de metaspace t3 kan sturen. Dat wordt nog wel een puzzeltje heb ik gezien.
Daarnaast heb ik drivers gevonden om de printer rechtstreeks aan te sturen vanaf tablet, android en/of IOS, smarttelefoon etc. Net de vraag gesteld aan de eigenaren van de printer of er een netwerk poort op zit. Dit model printer heeft of een seriële extra ingang of een netwerkpoort naast de USB aansluiting. Misschien zelfs het geluk dat ik hem via draadloos (WiFi) netwerk aan kan sturen vanuit een tablet of smarttelefoon.
Ga hier verder mee aan de slag en zie of ik dan zonder al te veel omwegen direct kan printen zonder dat Windows er tussen door komt om een printer te kiezen en dan pas te kunnen printen.
Nogmaals bedankt voor de vele tips en het meedenken, met de gegeven info van jullie allen kom ik denk ik nu wel een stap dichter bij wat ik wil gaan doen.
De (netwerk)printers die ik gebruik voor een dergelijke toepassing, kan ik rechtstreeks benadere via poort 9100 en daar gaat dan gewoon een pdf heen.
CUPS zit daar nog wel tussen, maar ook zonder zou dat moeten kunnen.
Voor de labelprinter heb ik het taaltje van die printer uitgezocht. En daar stuur ik dan een lap ASCII naar toe met de juiste codes voor opmaak en posities en uiteraard de tekst.
Ik denk dat het een stuk ingewikkelder wordt als je de clients het printen laat doen. Want dan moet de client (tablet) de printer kunnen benaderen en weten wat voor merk printer het is ivm de drivers.
PHP kan wel vanaf de server met netwerk-apparatuur praten. (curl etc?)
Via usb wordt het lastiger.
Of je moet via de command line dingen aantrappen.
Na flink wat uurtjes puzzelen en de printer codes bestudeerd te hebben , waar voor de metaspace totaal niet uit te komen is...ben ik toch maar voor een "good-old-fashion" methode gegaan.
Opgelost met de volgende stappen:
Naast de tabel waar bestellingen in weg geschreven worden een tweede tabel toegevoegd met printbestelling.
Op het hoofd scherm staat bovenin een knop Alles is geprint die groen is als er niets in de tabel printbestelling staat.
Is er een bestelling opgenomen dan komt deze zowel in de tabel bestellingen als in de tabel printbestelling.
De knop Alles is geprint verandert van groen naar rood met de tekst Print Bestelling
Klik je op de knop dan komt er een scherm die met body onload=javascript:window.print(); return false;
Gelijk het Windows printer scherm laat zien om de juiste printer te kiezen.
Zodra deze is afgedrukt dan wordt de tabel printbestelling geleegd en verandert de knop op het hoofd scherm weer van rood naar groen.
Deze methode werkt nu voor mij, misschien dat er nog tips en goede ideeën zijn dan hoor ik het graag!
In ieder geval een ieder hartelijk bedankt voor het meedenken hier op dit forum.
Voor een klant heb ik een systeem geschreven op basis van fPDF dat PDF bestanden genereert, die worden middels FTP lokaal gehaald en daar m.b.v. een gratis programmaatje (PDFtoPrinter.exe) naar de printer gestuurd. Beetje omslachtig, maar werkt feilloos.