
Impresoras
La utilización de impresoras para nuestras aplicaciones es tan importante como la de los
terminales, para su utlización también necesitaremos realizar una conexión a nuestra
servidor.
Para realizar ésta conexión tendremos al
igual que en los terminales varias vias, a continuación las voy a detallar con unos
dibujos para que las entendais mejor.
Si la conexión es
RS-232, deberemos de tener en cuenta que nuestra impresora debe de tener éste interface y
si no es asi, nos veremos obligados a adquirirlo, su configuración es muy facil y solo
tendremos que indicarle la velocidad de transmisión, los bits y la paridad. Tambien
deberemos de tener en cuenta que tendremos que echar un cable desde el servidor hasta
donde se encuentre la impresora.
Si la
conexión es en red, podemos compartir la impresora del PC y utilizarla como impresora del
servidor. Para ello existen versiones de Unix que lo permiten sin ningún software
adicional, pero si nuestro Unix no lo permite, podemos hacerlo con un software
específico, como el que yo utilizo Tun Net. Es un programa que se queda residente en el PC y
que hace que laimpresora que tenemos en el puerto paralelo del PC sea vista como impresora
remota por el servidor. Con lo que podremos utilizar la impresora para ambos equipos.
Si teneis alguna duda de como puede funcionar ésto, no dudeis en contactar
conmigo.
Una vez
conectadas las impresoras tendremos dos opciones para mandarles nuestra información.
1) La mas
normal y lógica es añadiéndolas a nuestro Unix y definiendo los nombres que utilizan en
nuestro archivo de configuración de Cobol, en el caso de RM/Cobol (el que yo utilizo,
si lo sabeis para otros compiladores, me lo decís y lo pongo) se hace de la
siguiente forma:
DEFINE-DEVICE device=Nombre_de_impresora path="acción_de_impresión"
pipe=yes
El nombre_de_impresora, será el nombre
lógico que le demos en nuestro programa al arhivo de impresora.
La acción_de_impresión, será el comando que debemos de ejecutar para que imprima
lo que le hemos enviado.
Por ejemplo, si tenemos dos impresoras, una se llama PRINCIPAL y va a estar
asociada a la impresora por defecto del sistema (lp00), y la otra se llama SEGUNDA y va a
estar asociada a la impresora lp01 que tenemos definida en nuestro servidor, deberíamos
haber puesto:
DEFINE-DEVICE device=PRINCIPAL path="lp -s" pipe=yes
DEFINE-DEVICE device=SEGUNDA path="lp -dlp01 -s" pipe=yes
La acción lp y lp -d , es la que se utiliza en Unix SVR4, para utilizar con Linux es lpr .
Con lp enviamos la información a la impresora por defecto y con lp -d se
redirecciona la salida hacia la impresora especificada despues de -d .
De ésta forma conseguimos que todos los
envíos a impresoras pasen previamente por el sistema de Spool del servidor. Por cierto si
estais enviando un listado muy largo y quereis tener una copia de seguridad, podreis
hacerlo porque como sabeis Unix mantiene un archivo con el nombre del proceso de impesión
en un directorio específico para ello.
2) Otra manera que tenemos
de hacerlo es enviando directamente a la puerta serie la información, ésta no es muy
normal, es mas rápida porque no pasa por el spool, pero tambien puede dar lugar a mas
errores por la falta de control, pero en algunos casos (yo lo utilizo) es muy práctica,
su formato es similar al anterior, solo que en vez de especificar la acción, le decimos
directamente porque puerta serie va a salir:
DEFINE-DEVICE device=PRINCIPAL path="(stty 9600 -parity 0<&1; cat)> /dev/term/s10" pipe=yes
Veis que la diferencia es darle las opciones del comando stty directamente en la sentencia. Todo ésto podría variar algo
dependiendo de cada versión de Unix.
|
|