Friday, January 16, 2004

OK, time to post something. Why? Well, because I like to hear myself type, that's why!

Actually, one of the things that I've been wanting to do is create a hierarchical printer structure between our Windows and Unix systems. Right now it's pretty flat--everyone and everything prints to the IP address of the printer (yeah, not even a DNS name!). Makes for nightmares in administraiton--I can't change the IP, I can't push out new drivers, and most importantly, I can't stop anyone from printing if there's something that needs to be high priority. We could be doing a check run and wind up with someone's shopping list printing out in the middle (on check paper).

So, the plan has been to push everything through the Windows server. Two problems there--first, I needed to use Samba to connect to the Windows print shares (not that there's any problem with Samba--it's just another piece of the puzzle), and secondly, AIX was really limited on how long the share name could be. This was the larger problem--I would wind up having to have two or more shares for the same printer, and the administration doesn't really get any easier that way.

A friend recommended that I try using LPR support in Windows ("Print Services for Unix"). By installing this, Unix systems can connect up to the printer object in Windows, shared or not. Problem 2 remains, though--Name limitation. I thought that if I could move documents through a heirarchical system of queues, I could resolve that. Turns out LPR support works great from Windows, as well. :)

I have a "top end" printer on our server that points directly to the IP of the printer. Unix prints to this printer. This one is not shared (so no confusion amongst users trying to install printers). There is a shared printer, with a descriptive name that fits our naming standard, installed as well. Instead of going to the IP of the printer, though, this goes to the LPR queue represented by the first "top end" printer. So, users print to the shared queue, and documents flow automatically into the LPR queue.

Now, for those "special" jobs like checks, I've got another top end LPR queue. Again, not shared--so it's just visible to the server and the Unix box. Special print jobs will be programatically sent to this queue. Before being sent, though, someone can pause the main top end queue. Jobs from either platform will simply pile up waiting to be printed, while jobs to the "special" queue will go right through.

Next step is to see if there's a way to programmatically pause a remote LPR queue from Unix, so that our ERP system could simply pause the Windows queue on its own. We'll see.

No comments: