Vous êtes sur la page 1sur 25

COBOL

De Wikipedia, la enciclopedia libre

Saltar a navegación, búsqueda

El lenguaje COBOL (acrónimo de COmmon Business -Oriented Language,


Lenguaje Común Orientado a Negocios) fue creado en el año 1960 con el
objetivo de crear un lenguaje de programación universal que pudiera ser usado
en cualquier ordenador, ya que en los años 1960 existían numerosos modelos
de ordenadores incompatibles entre sí, y que estuviera orientado
principalmente a los negocios, es decir, a la llamada informática de gestión.

Historia [editar]

En la creación de este lenguaje participó la comisión CODASYL, compuesta


por fabricantes de ordenadores, usuarios y el Departamento de Defensa de
Estados Unidos en mayo de 1959. La definición del lenguaje se completó en
poco más de seis meses, siendo aprobada por la comisión en enero de 1960.
El lenguaje COBOL fue diseñado inspirándose en el lenguaje FLOW-MATIC de
Grace Hopper y el IBM COMTRAN de Bob Bemer, ya que ambos formaron
parte de la comisión.

Gracias a la ayuda de los usuarios COBOL evolucionó rápidamente y fue


revisado de 1961 a 1965 para añadirle nuevas funcionalidades. En 1968 salió
la primera versión ANSI del lenguaje, siendo revisada posteriormente en 1974
(COBOL ANS-74), 1985 (COBOL ANS-85, ampliado en 1989 con funciones
matemáticas, finalizando el estándar actual más usado, conocido como
COBOL-ANSI), y en 2002 (COBOL ANS-2002). Actualmente se está
preparando otra revisión que se espera que esté finalizada para el año 2008.

Existe una versión conocida como COBOL ENTERPRISE, actualizada


regularmente y lanzada en 1991, usada generalmente en sistemas host.

Características [editar]

COBOL fue dotado de unas excelentes capacidades de autodocumentación,


una buena gestión de archivos y una excelente gestión de los tipos de datos
para la época, a través de la conocida sentencia PICTURE para la definición de
campos estructurados. Para evitar errores de redondeo en los cálculos que se
producen al convertir los números a binario y que son inaceptables en temas
comerciales, COBOL puede emplear y emplea por defecto números en base
diez. Para facilitar la creación de programas en COBOL, la sintaxis del mismo
fue creada de forma que fuese parecida al idioma inglés, evitando el uso de
símbolos que se impusieron en lenguajes de programación posteriores.

Pese a esto, a comienzos de los ochenta se fue quedando anticuado respecto


a los nuevos paradigmas de programación y a los lenguajes que los
implementaban. En la revisión de 1985 se solucionó, incorporando a COBOL
variables locales, recursividad, reserva de memoria dinámica y programación
estructurada.

En la revisión de 2002 se le añadió orientación a objetos, aunque desde la


revisión de 1974 se podía crear un entorno de trabajo similar a la orientación a
objetos, y un método de generación de pantallas gráficas estandarizado.

Antes de la inclusión de las nuevas características en el estándar oficial,


muchos fabricantes de compiladores las añadían de forma no estándar. En la
actualidad este proceso se está viendo con la integración de COBOL con
Internet. Existen varios compiladores que permiten emplear COBOL como
lenguaje de scripting y de servicio web. También existen compiladores que
permiten generar código COBOL para la plataforma .NET y EJB.

Primeros pasos

El deseo de desarrollar un lenguaje de programación que fuera aceptado por


cualquier marca de ordenador, reunió en Estados Unidos, en Mayo de 1959,
una comisión (denominada CODASYL: Conference On Data Systems
Languages) integrada por fabricantes de ordenadores, empresas privadas y
representantes del Gobierno. Dando lugar a la creación del lenguaje COBOL
(COmmon Business Oriented Language) orientado a los negocios, llamándose
ésta primera versión COBOL-60, por ser éste el año que vio la luz.

COBOL, estaba en constante evolución gracias a las sugerencias de los


usuarios y expertos dando lugar a las revisiones de 1.961, 1.963 y 1.965. La
primera versión standard nació en 1968, siendo revisada en 1.974, llamadas
COBOL ANSI o COBOL-74, muy extendidas todavía. En la actualidad es
COBOL-85 la última versión revisada del lenguaje COBOL, estando pendiente
la de 1.997.

¿ Porque se hablaba de fabricantes de ordenadores y no de S.O., como en la


actualidad ?
Si que es significativo, pero por aquellos años no existían Sistemas Operativos
abiertos, sino que cada fabricante tenía su propio S.O. y por lo tanto cada
Cobol debería valer para cada ordenador. Ciertamente no había mucha
diferencia entre ellos, personalmente aprendí con un Philips P-4500 con un
Cobol propio, en la escuela de Formación Profesional Ramon y Cajal de
Granada, allá por el 85, jamás pensé lo que influiría en mi el COBOL y las
facilidades que me ha dado para abrirme paso dentro de éste mundo de la
Informática. Luego vinieron los ordenadores del trabajo: NCR-IMOS con el
IMOS-COBOL, mas tarde NCR-ITX, con ITX-COBOL y por último NCR UNIX
SVR4 con RM/COBOL-85.

Hoy en día quedan muy pocos COBOL propios y son los grandes compiladores
los que copan el mercado, obviamente con sus respectivos compiladores y
runtimes para cada S.O.
Cobol es un lenguaje compilado, es decir, existe el código fuente escrito con
cualquier editor de textos y el código objeto (compilado) dispuesto para su
ejecución con su correspondiente runtime. Cuando se ve un programa escrito
en Cobol saltan a la vista varios aspectos:

Existen unos márgenes establecidos que facilitan su comprensión.


Esta estructurado en varias partes, cada una de ella con un objetivo dentro del
programa.
Nos recuerda mucho al lenguaje inglés, puesto que su gramática y su
vocabulario están tomados de dicho idioma.

En contraste con otros lenguajes de programación, COBOL no se concibió para


cálculos complejos matemáticos o científicos, de hecho solo dispone de
comandos para realizar los cálculos mas elementales, suma, resta,
multiplicación y división, sino que su empleo es apropiado para el proceso de
datos en aplicaciones comerciales, utilización de grandes cantidades de datos
y obtención de resultados ya sea por pantalla o impresos.

Con Cobol se pretendía un lenguaje universal, sin embargo, los numerosos


fabricantes existentes en la actualidad han ido incorporando retoques y
mejoras, aunque las diferencias esenciales entre ellos es mínima.

Con la llegada del Sistema Operativo Windows, son muchos los que intentan
proveer al Cobol de esa interface gráfica, Objective Cobol, Visual Object Cobol
de Microfocus, Fujitsu PowerCobol, Acucobol-GT, Vangui y Cobol-WOW de
Liant (RM), etc.. que están consiguiendo que éste lenguaje siga estando
presente en moda visual de ofrecer los programas. Sin embargo, son muchas
las empresas que siguen dependiendo del Cobol-85 tradicional para sus
proyectos debido principalmente a la estructura de su sistema informático, un
ejemplo lo encontramos en mi empresa, disponemos de un NCR-3430 con S.O.
UNIX SVR4, 9 PC´s con S.O. Windows-95, 7 terminales de texto NCR-2926.
Los PC´s y el UNIX están conectados vía Ethernet con emulación, pero en
cambio los terminales son de texto y lo están mediante RS-232, sin posibilidad
de mostrar ningún carácter gráfico, es por esto que mientras existan empresas
de éste tipo que necesiten terminales de texto, la opción visual deberá esperar.

Exceptuando los datos técnicos, sacados del gran libro que todos los
programadores compramos en los años 80 de Ciro de la Fuente, lo demás lo
he expresado siguiendo mi experiencia, si tenéis alguna objeción, por favor
comunicádmelo y se cambiará.
INTRODUCCION

Es muy probable que muchos lectores se sorprendan al encontrar un artículo


sobre Cobol. Es mas, algunos pensarán que es algo nuevo y revolucionario con
lo que una vez mas nos sorprende el apasionante mundo de la informática y la
tecnología. Evidentemente no es así. Cobol es algo mas, mucho más. Se trata
de un lenguaje de programación que ha sido capaz de mantenerse con
nosotros desde el inicio de la informática hasta nuestros días, y no tiene
ninguna intención de abandonarnos.
Para empezar a hablar de Cobol, hay que remontarse muchos años,
concretamente unos 40 años. En esa época cada ordenador era concebido y
creado con su propio sistema operativo y de programación. Nació por el deseo
de desarrollar un lenguaje de programación que fuera aceptado por cualquier
marca de ordenador, y fue en Mayo de 1.959 cuando en Estados Unidos se
reunió una comisión denominada CODASYL (Conference On Data System
Languages), integrada por fabricantes de ordenadores, empresas privadas y
representantes del Gobierno, donde se dieron las primeras ideas de COBOL
(Common Business Oriented Language). En un primer momento se llamó
COBOL-60 a ésta versión por ser ese el año en que vio la luz.

A partir de aquí, apoyado por las sugerencias de los usuarios y expertos, su


evolución no paró hasta que en 1.968 y posteriormente en 1.974, se dieron las
primeras versiones consideradas standard, que fueron conocidas como Cobol
Ansi.

Puestos en antecedentes veamos porque era y es tan grande la importancia


del Cobol como lenguaje de programación.

Si nos fijamos en lo que significa el nombre, "lenguaje común orientado a los


negocios", pronto podremos comprender que la verdadera misión de éste
lenguaje es utilizarlo para la gestión y administración de las empresas. Y eso
implica mucho, porque da igual a que actividad se dedique una empresa, pues
en ella siempre habrá un departamento de gestión, y serán necesarios unos
programas de gestión para hacerla funcionar.

Al principio, los mainframes eran los tipos de ordenador escogidos por las
grandes empresas, sobre todo las del sector financiero, con sus propios
sistemas operativos y sus propios compiladores de Cobol. Estos fueron
afianzando al Cobol como un lenguaje perfecto para conseguir sus propósitos
por su robustez, su fiabilidad y su perfecta adaptación a las necesidades de
gestión.

Cuando los sistemas operativos empezaron a independizarse de las máquinas,


fue cuando los fabricantes de compiladores Cobol comenzaron su expansión.

Así empresas como Liant, Acucorp, Merant, Fujitsu, Nigsun, IBM o Computer
Associates, unas más antiguas otras más modernas, nos permiten a los
programadores hoy en día seguir programando con éste lenguaje, y que nos
sintamos ilusionados con el futuro.

EL LENGUAJE

Cobol es un lenguaje compilado. Es decir, consta de un código fuente


perfectamente legible y adaptado a unas normas, que se puede realizar con
cualquier editor de textos y un código objeto (compilado) dispuesto para su
ejecución con su correspondiente runtime.

Cuando se ve un programa escrito en Cobol saltan a la vista varios aspectos:


Existen unos márgenes establecidos que facilitan su comprensión.
Está estructurado en cuatro partes, cada una de ella con un objetivo dentro del
programa.
La gramática y su vocabulario tienen su base en la lengua inglesa.
En contraste con otros lenguajes de programación, Cobol no fue concebido
para cálculos complejos matemáticos o científicos (de hecho solo dispone de
comandos para realizar los cálculos más elementales), aunque si posee un
elevado grado de precisión y velocidad del cálculo numérico, pudiendo manejar
hasta 30 posiciones decimales. Su empleo es más apropiado para el proceso
de datos en aplicaciones comerciales y la utilización de grandes cantidades de
datos. Y aunque no sea el único lenguaje orientado a éste propósito, si ha sido
el mas utilizado en toda la historia.

Cobol, es un lenguaje independiente de la plataforma en la que se ejecute, por


lo tanto es posible ejecutar el mismo programa sin modificar nada en cientos de
sistemas diferentes (Windows, Unix, MS-Dos, Linux, OS400, S36, S34, VMS,
Netware, Solaris, etc...). Es un lenguaje que puede comunicarse a la perfección
con cualquier base de datos existente en el mercado, así como generar
aplicaciones 100%100 Windows. Se puede adaptar a la tecnología cliente-
servidor, tecnología de enventos y puede estar presente en la web. En
definitiva, se trata de un lenguaje capaz de todo.

EL PRESENTE

Siempre hemos estado acostumbrados a asociar los programas en Cobol a los


terminales de texto, sin ninguna capacidad gráfica. Eran programas serios,
impersonales y aburridos, que daban una impresión muy pobre a los usuarios
que los utilizaban. Todo esto ha cambiado, y hoy nos sorprenderíamos al
descubrir que muchos de los programas que utilizamos en Windows están
realizados en Cobol, y nadie sería capaz de notar ni la más mínima diferencia,
simplemente porque no existe.

Muchas empresas e instituciones han migrado toda su programación a otros


lenguajes o sistemas de información. Han preferido pensar que Cobol es un
lenguaje "viejo y anticuado" para cambiar, sin analizar todas las posibilidades
que les podía ofrecer ese lenguaje que estaban utilizando desde hacía muchos
años y con el cual nunca habían tenido problemas. Por supuesto con los
consiguientes costos que eso conlleva. Las grandes bases de datos de
importantes empresas de todo el mundo siguen estando en archivos Cobol.
Miles de empresas siguen basando toda su programación en éste lenguaje, y
esto no es porque sí, sino por la seguridad, rapidez y tranquilidad que les
reporta tanto en el ámbito del lenguaje como en el del almacenamiento de
datos. Cobol es un especialista en manejo de archivos y en indexación de
datos, no importa el tamaño de los datos. Puede trabajar perfectamente con
archivos de mas de 2 Millones de registros, sin por ello perder rendimientos en
su procesamiento.

Los programas en Cobol no necesitan de grandes recursos para su perfecto


funcionamiento. Pueden trabajar en cualquier máquina por su gran portabilidad
y ofrecen una garantía de funcionamiento muy bueno. Es evidente que cuando
se habla de garantía, de eficacia y de seguridad, es porque la experiencia
contrastada de muchos años utilizando Cobol como lenguaje de programación
para aplicaciones en muchos sistemas operativos, ha dado siempre unos
resultados excelentes. Siguen existiendo programas que se ejecutan en
máquinas con procesadores 80286 sin ningún problema.

Una de las causas por la que se producía esa migración, era por la incapacidad
de Cobol para desarrollar aplicaciones 100%100 Windows. No porque el
lenguaje no sea apropiado, sino porque no existían en el mercado herramientas
que facilitaran a los programadores esa misión.

Hoy todo eso ha cambiado. Nos enfrentamos a un nuevo concepto en el


desarrollo de aplicaciones basadas en Cobol. La integración total de Cobol y
Windows es una realidad, no solo en programación, con unos interfaces
magníficos, similares a los que existen en el mercado para otros lenguajes,
sino en los resultados. Los programas Cobol para Windows, no solo son más
atractivos, sino que son capaces de sacar todo el rendimiento de este sistema
operativo y aprovechar todas sus características. Controles, eventos,
propiedades, Active X... son palabras cada día más usuales para los
programadores de Cobol, y además sin pasar por alto la tranquilidad que
conlleva el trabajar con el lenguaje más usado y extendido.

Resulta curioso, escuchar en muchas conversaciones que el Cobol, es un


lenguaje “muerto”. En realidad molesta. Cobol no depende de ninguna empresa
en particular. Es un lenguaje universal que muchas empresas comercializan,
¿cómo se puede explicar entonces que existan varias empresas dedicadas a
mantener éste lenguaje?.

Los programadores se encuentran con que no solo Cobol es capaz de


adaptarse a Windows y a todas las nuevas tecnologías, sino que además
disponen de más de una manera de hacerlo. Cada fabricante ha escogido su
camino. Cierto es que con esto la estandarización de Cobol se pierde, pero en
cambio los programadores ganan en posibilidad de elección. Ahora el código
con el que siempre hemos trabajado cambia poco de unos compiladores a
otros, pero en cambio las nuevas herramientas son diferentes y podemos elegir
entre ellas, cual es la que mejor se adapta a la visión personal de la
programación.

Para los programadores, el hecho de que los fabricantes de compiladores


Cobol se hayan ido adaptando a las necesidades actuales del mercado, abre
unas enormes esperanzas para acoger el futuro con entusiasmo y se aseguran
una competitividad en éste cada día mas duro mundo de la programación.

Pero las ventajas de seguir programando en Cobol no se limitan a interfaces


gráficas y total compenetración con sistemas operativos gráficos. Internet, la
plataforma que todos auguran como el futuro, tampoco es un impedimento. El
integrar las aplicaciones realizadas en Cobol con el mundo web es una realidad
hoy, sin conocimientos añadidos, y sin necesidad de utilizar otros lenguajes.
Los fabricantes facilitan las herramientas necesarias para conseguirlo en muy
poco tiempo y con el mínimo esfuerzo.

Si de algo se puede enorgullecer el lenguaje Cobol, ha sido del esfuerzo de los


compiladores por conseguir que los programas pudieran ser ejecutados en
cualquier plataforma. Así cualquier programa objeto Cobol, puede correr
exactamente igual en todos los sistemas operativos para los cuales su
fabricante tenga disponibilidad de run-time. En algunos casos, incluso la cifra
llega a las 600 plataformas diferentes, lo que da una visión amplísima de las
posibilidades de un programa desarrollado en Cobol para no aislarse a un
sistema y quedarse en el olvido a la hora de cambiar o migrar.

Esto da la posibilidad de aprovechar al máximo las capacidades de cada


sistema. Por ejemplo podemos programar en Windows o en MS-DOS con
mejores interfaces de usuario y mayor número de herramientas para facilitar al
programador esa labor, y luego ejecutar los objetos y mantener los archivos en
sistemas más robustos como Unix o Linux. Esta manera de trabajar reporta
muy buenos resultados. Existen empresas que se han dado cuenta de cómo,
con el paso de los años, los programas han cambiado a un buen ritmo sin
perder la base y la idea con que fueron concebidos, aumentando además en
capacidades, rapidez y rendimiento.

Algunas compañías han conseguido que incluso programando 100%100


Windows, las aplicaciones sean capaces de ejecutarse en Unix o cualquier otra
plataforma sin ningún problema, obviamente sin obtener los mismos resultados.
Es posible hacer un programa que contenga objetos como Editbox o
Combobox, que en Windows tienen un aspecto gráfico y en Unix se puedan
mostrar en pantalla sin capacidades gráficas, pero sin interceder en nuestro
programa y con unos resultados de funcionamiento idénticos.

Se podría decir que hoy no hay ninguna limitación para éste lenguaje. La
orientación a objetos, la programación orientada a bases de datos, la
programación en la web... son opciones disponibles para Cobol que hacen de
éste lenguaje una opción totalmente válida. Poder garantizar esto para un
lenguaje de 40 años de existencia, en un mundo en el que las novedades
duran escasamente algunos meses, es mas que suficiente para ofrecerle al
Cobol un lugar preferente en la opción de los lenguajes de programación.

Hay que olvidar la idea de que los programadores Cobol son personas que se
han quedado desfasadas, programadores que no están en nuestro tiempo. Hoy
en día muchos jóvenes disfrutan de éste lenguaje y aún sigue reportando las
mismas ilusiones y satisfacciones que antes.

EL FUTURO

Cobol-85, es la versión standard que se utiliza en la actualidad, pero se está en


proceso de modernización y adaptación a los nuevos conceptos. Se espera
una nueva revisión que proporcione a los programadores una productividad
mayor y total independencia de la plataforma física.

En la próxima revisión se esperan mas de 140 cambios significativos, que


afectarán a todos los aspectos del lenguaje, garantizando como siempre la
herencia de revisiones anteriores. Representará un significativo avance para
Cobol como lenguaje de programación.

La apuesta más grande de ésta nueva revisión, será sin duda la orientación a
objetos y se conseguirá vincular totalmente esta tecnología al diseño de los
futuros programas desarrollados en Cobol.

Esta nueva revisión significa algo mas que la simple introducción de mejoras.
Significa el afianzamiento y la seguridad para los programadores de
encontrarse con un lenguaje capaz de seguir adaptándose y seguir ofreciendo
mejoras.

Cobol, como lenguaje, se merece un respeto muy grande que ha sido olvidado
y en algunos casos despreciado por muchos. Sí, es cierto, que cada vez es
más difícil iniciar a programadores Cobol, entre otras cosas porque las mismas
instituciones que antes nos lo enseñaban con ilusión, hoy lo han echado en el
olvido. Pero para todos los programadores que siguen apostando por Cobol
como lenguaje y para el mantenimiento de los miles de millones de líneas de
código escritas en este lenguaje, es esperanzador el hecho que se siga
manteniendo como el lenguaje mas utilizado en la historia de la informática.
Desde aquí hay que animar a todos los programadores actuales y próximos
para que no olviden el Cobol como opción para conseguir sus metas. Que
pregunten, examinen, evalúen... se quedarán gratamente sorprendidos de las
posibilidades que éste lenguaje les puede brindar en la actualidad.

Mucha gente piensa que a sus 40 años COBOL ya está "superado". Aquí
mostramos 10 razones clave por las que pensamos que COBOL es
ESTUPENDO.

10. COBOL está refrendado por una larga experiencia.


¡COBOL está por todas partes! Se estima que actualmente hay mas de 200
miles de millones de líneas de código COBOL. COBOL está en la base del
software utilizado por la mayoría de las grandes empresas del mundo. El 80%
de los programadores de todo el mundo trabajan en COBOL.

9. COBOL es sólido.
Hay miles de productos de terceros que han sido desarrollados para ayudar al
programador COBOL en las áreas de comprobación, depuración, análisis de
aplicaciones, asistencia en la producción y reutilización de códigos.

8. COBOL puede abarcar un amplio abanico de necesidades de procesamiento


de datos.
COBOL se utiliza en gran diversidad de aplicaciones empresariales. Con él, se
pueden escribir programas que hacen todo, desde un sencillo informe por lotes
a una complicada gestión entre cliente/servidor. Las aplicaciones COBOL son
tan ricas en posibilidades y funcionan tan bien al realizar las gestiones mas
vitales para la empresa, que los usuarios se resisten a prescindir de ellas.
7. COBOL se adapta muy bien a las aplicaciones empresariales.
Las siglas COBOL corresponden a "Common Business Oriented Language"
(lenguaje común concebido en función de las necesidades de las empresas).
Fue diseñado por un comité en el que estaban representados los intereses del
gobierno y de la industria para que fuera un lenguaje empresarial estándar,
realizara cálculos correctamente, almacenara grandes cantidades de datos y
los recuperase con precisión y eficacia. Las posteriores mejoras al COBOL
están todas basadas en estos criterios de diseño fundamentales.

6. COBOL se documenta a sí mismo y es fácil de aprender.


A diferencia de otros lenguajes, COBOL se documenta a sí mismo. Hasta las
personas con pocos conocimientos técnicos han aprendido COBOL en pocas
semanas y lo han podido utilizar sin necesidad de entender la arquitectura
interna del entorno operativo. Los usuarios sin formación en programación
siempre pueden acudir al código fuente para entender la función para la que
está pensado un determinado programa.

5. COBOL es fácil de mantener.


Los programas COBOL son relativamente fáciles de desarrollar, utilizar y
mantener. COBOL es un lenguaje de alto nivel creado a semejanza del inglés
que, estructuralmente, recuerda a una novela, con sus apéndices, indicaciones
que remiten a otras partes, capítulos, notas a pie de página y párrafos. Su
sintaxis y semántica, parecidas a las del inglés, permiten que el mantenimiento
lo pueda realizar una persona distinta al programador original. Y lo que es mas
importante, cuando el programador original no está, su sustituto puede
continuar con el trabajo sin ningún problema gracias a su legibilidad.

4. COBOL se puede trasladar a otras plataformas.


COBOL se puede trasladar a mas plataformas que ningún otro lenguaje de
programación. Sus usuarios pueden transportar sus aplicaciones a muchas
plataformas de hardware diferentes sin necesidad de recompilar el código
fuente. Esta importante característica garantiza que el hardware no se quedará
obsoleto, puesto que la inversión hecha en el software mantiene su valor. Se
puede cambiar de plataforma sin cambiar una sola línea de código. Además,
esta movilidad permite que los desarrolladores que entregan programas en
plataformas diferentes mantengan un solo código fuente, lo que reduce
considerablemente los costes de mantenimiento.

3. COBOL se enseña en todo el mundo.


Durante los últimos 35 años se ha enseñado COBOL en escuelas secundarias,
universidades y escuelas de formación profesional de todo el mundo. Se estima
que hay alrededor de 3.000.000 de programadores COBOL empleados hoy en
día.
2. COBOL proporciona posibilidades modernas.
Los programas COBOL pueden proporcionar todas las características que el
usuario final desea, como el diseño y el funcionamiento Windows, la
funcionalidad de seleccionar la opción deseada haciendo clic sobre ella con el
ratón, la posibilidad de hacer consultas sobre datos y ejecutar informes
rápidamente, y la capacidad de distribuir programas en Internet.

¿Pero cual es la razón número 1 por la que COBOL es ESTUPENDO?

1. ¡COBOL tiene futuro!.

En el año 2.000 el American National Standars Institute (ANSI) pondrá en


marcha una versión actualizada de COBOL con mas opciones nuevas que
todas las versiones anteriores COBOL combinadas entre si. COBOL está
evolucionando constantemente para estar a la altura de los grandes adelantos
en tecnología, a la vez que sigue respondiendo a su papel de ser el lenguaje de
programación para aplicaciones empresariales mas acreditado de todo el
mundo.

COBOL / WINDOWS
Que duda cabe que Windows ha dado a los programadores una facilidad para crear
aplicaciones impresionante además de una presencia gráfica que para cualquier programador
Cobol de hace algunos años nos hace tener una pequeña envidia por ese entorno y por el
poco y lento efecto que tuvo para nuestro lenguaje.

Han tenido que pasar bastantes años para que hayan ido apareciendo herramientas o
compiladores que nos permitan obtener esos resultados "visuales" pero sin perder de vista
nuestro lenguaje. Esto que por un lado nos puede parecer ilógico creo que tiene su
explicación en la principal característica del lenguaje Cobol, y ésta no es otra que la
portabilidad, ya sabemos que cualquier programa escrito en Cobol se puede ejecutar con su
Runtime correspondiente en cualquier máquina y eso al referirnos a Windows obviamente se
iba a perder simplemente por el manejo de la pantalla, ya que no sería lógico no aprovechar
todas las ventajas que nos ofrecen los lenguajes llamados visuales para adaptarse al Cobol.
No se si ha quedado clara mi visión pero simplemente lo que he querido decir es que el
realizar un programa Cobol para Windows no nos va a permitir su implantación en otro
sistema.

Analizando un poco lo que está pasando actualmente con el lenguaje Java, me di cuenta que
es prácticamente la filosofía del Cobol (igual estoy equivocado), es decir que cualquier
programa realizado en un lenguaje concreto se pueda ejecutar en cualquier máquina sin
importar su sistema operativo, de hecho yo tengo aplicaciones realizadas en Unix y las he
pasado a MS-DOS y han funcionado a la primera, solo he tenido que cambiar las rutas de
acceso a los ficheros.

Bien, una vez aclarados éstos puntos en ésta página me gustaría comentar todas las
posibilidades que tenemos los programadores Cobol para adaptarnos al mundo Windows y
sus posibilidades. Hoy en dia podemos encontrar en el mercado muchos productos que nos
pueden proporcionar ésto, lo que deberemos tener claro es lo que realmente queremos, ya
que hay herramientas que convierten programas escritos en Cobol a otros lenguajes
visuales, herramientas de apoyo a los programas tradicionales o compiladores que
directamente generan programas Windows a partir de sentencias escritas en Cobol. Lo que si
que tendremos que tener claro es que al decidirnos por éstas herramientas nos tenemos que
olvidar de nuestros programas perfectamente estructurados y de la garantía de que todo el
programa fuente era lo que nosotros habiamos escrito.

El Cobol con interfaz gráfica: Acucorp, líder en Cobol para sistemas abiertos,
ha logrado combinar la tecnología de interfaces gráficas con la portabilidad de
los sistemas abiertos.

acucobol
Con Acucobol-GT, solamente es necesario compilar los programas una sola
vez, para después ser ejecutados en cualquier plataforma. Es posible
desarrollar y distribuir aplicaciones que hacen uso de interfaces gráficas de
usuario en mas de 600 plataformas, siendo el código objeto 100% compatible
con todas ellas.

Interfaz Gráfica Nativa:


Es posible programar todas las pantallas gráficas, incluyendo ventanas
flotantes y controles gráficos, mediante Cobol, con el uso de las extensiones a
las sentencias DISPLAY y ACCEPT. Las pantallas pueden ser definidas en su
totalidad mediante la Screen Section. Acucobol-GT permite que las
aplicaciones trabajen como si fueran nativas del entorno gráfico sobre el cual
operan, sin necesidad de recodificar o recompilar. El Runtime despliega y
maneja la aplicación tanto en modo gráfico como en modo texto y deja los
servicios del sistema disponibles a la aplicación en todo momento. Se encarga
de manejar los eventos del sistema, pasando a la aplicación únicamente
aquellos para los cuales está preparada.

Formato de Ficheros: Vision es el formato de archivos indexados propio de


Acucobool-GT. Le permite moverse entre diferentes plataformas sin necesidad
de conversión de datos. Posee un sofisticado sistema de control de compresión
de ficheros y registros. Además permite al usuario definir la secuencia de orden
para los índices de un fichero, permitiéndole utilizar caracteres especiales o
mezclar letras mayúsculas o minúsculas sin problemas. Además, tiene la
flexibilidad de trabajar simultaneamente, o bien, ser reemplazado por otros
formatos de ficheros y una gran variedad de bases de datos relacionales como
Oracle, Informix, Sybase, Microsoft SQL Server y la mayoría de los formatos de
ficheros compatibles con el estandar ODBC.

Administración de Transacciones: Acucobol-GT tiene la capacidad de trabajar


con transacciones para aquellas aplicaciones que así lo requieran. Una
transacción es un conjunto de operaciones relacionadas entre varios ficheros,
que son tratadas como una unidad indivisible. En caso de ocurrir algún
problema al ejecutar una transacción, los ficheros de datos pueden recuperarse
y mantener la integridad de sus datos.

El Entorno de Desarrollo Integrado de Acucobol-GT. ACUBENCH: Acubench es


un entorno de desarrollo integrado (IDE) para Acucobol-GT, hace que los
procesos de desarrollo de sus aplicaciones Cobol, sean mas fáciles y mas
productivas. Con Acubench, un programador puede desarrollar, depurar y
testear una aplicación en un sencillo entorno gráfico integrado, permitiendole al
acceso inmediato a todas las herramientas de desarrollo esenciales.
Los componentes de Acubech son:

Administrador de proyectos
Screen Painter
Editor de programas

Trabajan juntos compartiendo métodos y recursos comunes, proporcionando


rápidos y sencillos métodos para cambiar de un componente a otro. Esta
integración ahorra tiempo y dinero, haciendo que sea mas eficiente el uso de
recursos del sistema.

--------------------------------------------------------------------------------

El Administrador de Proyectos:
Organiza, desarrolla y mantiene los ficheros de sus proyectos. El administrador
de proyectos de Acubench es el centro de control organizativo de las
aplicaciones Acucobol-GT. Los desarrolladores pueden visualizar y acceder a
todos los ficheros del proyecto, pueden seleccionar y almacenar las opciones
de compilación y runtime para el proyecto completo o para programas
individuales.
El administrador de proyectos proporciona acceso a todas las herramientas y
funciones de Acubech, incluyendo el Screen Painter y el Editor de Código. Los
desarrolladores pueden también lanzar virtualmente cualquier programa
Windows desde el administrador de proyectos. Esto permite al usuario utilizar
Acubech como el sistema de desarrollo gráfico mas eficaz y de creciente
rendimineto.

--------------------------------------------------------------------------------

Screen Painter:
Herramienta visual para crear y diseñar pantallas gráficas interactivamente
(100% Windows).
Con el Screen Painter de Acubench, usted puede facilmente crear pantallas
(GUI) Windows para sus aplicaciones Cobol sin necesidad de escribir una linea
de código. Simplemente haciendo "click" y arrastrar "click and drag" los
controles estándar (GUI) de Windows (como labels, push butons, list boxes,
grid, bitmaps, etc.) a continuación personalizar las propiedades y estilos
pertenecientes a cada control y pantalla. Cuando la pantalla está terminada, el
Screen Painter genera automáticamente el código Cobol desde la pantalla GUI
diseñada, creando el código de una forma tan sencilla como hacer "click" en un
icono. El Screen Painter disminuye el tiempo que lleva escribir una aplicación
GUI, tanto para los diseñadores gráficos que disponen de experiencia para
"escribir" código Cobol presionando un botón, como por la ayuda a los nuevos
diseñadores para alcanzar un aspecto profesional en sus pantallas con el
mínimo esfuerzo.
El Editor de Código:
Potentes características y altamente personalizable.
El editor de código de Acubench tiene todas las características que un
desarrollador necesita para generar y manejar el código fuente Cobol. El area
de trabajo del editor de código incluye características estándar tales como
título, menu, estado, barra de herramientas y una especial barra de
herramientas de edición, que es familiar a los programadores. Tanto el área de
trabajo como las opciones de proyecto son facilmente personalizables.
Los programadores pueden definir aquellas opciones para reunir sus
necesidades individuales y preferencias, de este modo incrementar su
productividad. Mediante la barra de herramientas se accede a compilar,
depurar y ejecutar procesos contribuyendo al desarrollo rápido de una
aplicación.

NetExpress (Microfocus)

página(s) : 1/3
(3343 palabras totales en este texto)
(21232 Lecturas)

ed NetExpress es la evolución a 32 bits del MicroFocus Cobol para Ms-Dos,


Windows y OS/2, compilador que era de 16 bits. Pero en realidad NetExpress
es algo mas que una simple evolución, ya que dispone de:

Entorno de desarrollo integrado (IDE):


El avanzado entorno de desarrollo integrado (IDE) que proporciona Net
Express ofrece un completo conjunto de herramientas y asistentes para
desarrollar aplicaciones. Las eficaces funciones de gestión de proyectos
simplifican el ciclo de edición, compilación y depuración, mientras que el editor,
que ha sido adaptado a las necesidades del programador COBOL, facilita la
modificación del código. Las características de control de código fuente de
PVCS® permiten que los equipos de programación colaboren sin sobreescribir
los cambios realizados por el resto del equipo. Una vez se hayan realizado las
modificaciones adecuadas, es posible reconstruir la aplicación con sólo hacer
clic con el ratón. Net Express es compatible con TrackerLink para aquellos
programadores COBOL que deseen complementar su proceso de trabajo con
la gestión de incidencias.

Compilador COBOL de última generación:


Net Express incluye un compilador de última generación que potencia los
tradicionales puntos fuertes de COBOL, permitiendo:

Generar código nativo de gran rendimiento que puede optimizarse para obtener
óptimos resultados en plataformas de hardware específicas.
Trabajar con múltiples dialectos COBOL, lo que facilita el rehosting de
aplicaciones existentes a nuevas plataformas de producción.
Sacar partido a su escalabilidad, desde PCs independientes hasta sistemas
UNIX multiprocesador (Precisa Micro Focus Object COBOL Developer Suite
para UNIX o Server Express)
Disfrutar de un soporte al desarrollo y la depuración en Object COBOL y e-
COBOL.
Contar con el soporte de bibliotecas básicas de clases, y con una extensa
colección de clases, incluyendo la biblioteca completa de clases Win32 GUI.
Depuración avanzada mediante Animator®:

Control total del proceso de depuración. Podrá ir paso a paso , ejecutar una
parte determinada y reiniciar la ejecución en cualquier sentencia.
Depuración remota de aplicaciones COBOL que se estén ejecutando en otra
máquina Windows NT o UNIX (Se necesita Server Express).
Posibilidad de examinar y cambiar cualquier dato del programa mientras se
ejecuta.
Animación JIT (Just-in-Time). Si la aplicación falla durante la ejecución, Net
Express puede iniciarse automáticamente en el punto del código fuente en que
se produjo el error, lo que le permite determinar inmediatamente la causa del
mismo.
Depuración de aplicaciones multienhebradas. El programador posee un control
absoluto: puede bloquear, desbloquear o activar threads específicos, así como
insertar puntos de ruptura en los threads.

--------------------------------------------------------------------------------

HERRAMIENTAS PARA DESARROLLOS DE APLICACIONES WEB

Asistente de aplicaciones Internet:


El Asistente para aplicaciones Internet aumenta la productividad de los
desarrolladores, ya que reduce el tiempo necesario para crear aplicaciones de
servidor, y los correspondientes formularios HTML, a partir de programas
COBOL o de bases de datos relacionales ya existentes. Una vez creada la
aplicación, puede utilizarla tal cual, o bien modificarla mediante Form Designer.
Este asistente simplifica el acceso vía Internet a aplicaciones e-COBOL ya
existentes mediante:

El análisis de la Linkage Section del programa COBOL.


La generación automática de un formulario HTML, que contiene un campo de
entrada por cada dato de la Linkage Section seleccionado.
La selección automática de un elemento del grupo, su asignación a una tabla
HTML y la selección del correspondiente elemento de soporte.
La generación de un programa de servidor Web para capturar la información de
entrada y salida HTML e iniciar el programa e-COBOL existente para procesar
los datos.
Diseñador de formularios (Form Designer):
El diseñador de formularios le permite crear aplicaciones Web operativas en
cuestión de minutos; sólo tendrá que añadirles la lógica e-COBOL para llevar a
cabo el procesamiento del negocio de la aplicación. Con Form Designer, puede
crear interfaces de usuario para aplicaciones Web mediante la edición de
páginas y formularios HTML y, a continuación, generar el programa de servidor
Web adecuado utilizando el asistente de Internet Application Wizzard.

Edición de páginas y formularios HTML:


Form Designer incorpora soporte al estándar HTML 4.0 y a HTML dinámico. La
función de edición de formularios y páginas HTML de Form Designer
proporciona un entorno de trabajo abierto y productivo gracias a interesantes
características tales, como: compatibilidad con varios exploradores Web, editor
HTML con interfaz gráfico, flujo de texto, formato texto, tablas, funcionalidad de
arrastrar y pegar, varios niveles de Deshacer/Rehacer y vistas en el árbol.
También puede sacar partido de las plantillas de formularios y frames para
crear páginas HTML con un aspecto coherente. Si ya cuenta con formularios
HTML, creados con otras herramientas, puede importarlos o cortarlos y
pegarlos en Form Designer desde otro editor de HTML. Form Designer puede
asociar de forma automática o manual propiedades de e-COBOL con los
controles del formulario y generar programas CGI.

Incrustación de Active-X, applets Java o Java Bean en formularios:


Form Designer proporciona soporte para incorporar controles ActiveX a una
página HTML. Es posible importar los controles ActiveX a Form Designer de
forma que aparezca en la paleta de componentes ActiveX, donde pueden
seleccionarse y utilizarse de forma inmediata. Form Designer también le
permite añadir applets Java o componentes Java Beans a las páginas HTML.
Podrá configurar parámetros de los applets, así como crear scripts sobre sus
propiedades y métodos públicos utilizando el Script Assistant.

Objective Cobol

(1112 palabras totales en este texto)


(18252 Lecturas)

En la actualidad, es necesario disponer de un potente lenguaje de


programación que nos permita a la vez trabajar comodamente en un entorno
visual, tan extendido en estos tiempo.
Adaptarse a los nuevos lenguajes de programación, es fundamental para una
empresa que quiere seguir en la cumbre.

Objective COBOL es la vía perfecta para que los programadores de un


lenguaje como COBOL no se queden estancados y lleguen facilmente a usar
un lenguaje completamente innovador y nuevas herramientas de programación.

O.C. es un entorno visual de programación orientado a objetos, destinado al


desarrollo rápido (RAD) de aplicaciones de uso general para Windows 95, 98 y
NT. Con O.C., se puede crear aplicaciones muy eficaces para Windows con un
mínimo código manual.

Conserva las extensiones de los lenguajes COBOL mas usados. Una de las
novedades mas destacadas de esta nueva versión es la posibilidad de integrar
programas de COBOL ANSI en O.C., sin la necesidad de cambiar una línea de
código siempre y cuando éste se rija por el ANXI X3.23-1985, poder disponer
de tus aplicaciones en el entorno visual tan extendido en estos tiempos. Con el
control CRT se realiza una perfecta fusión entre un moderno entorno visual y la
programación lineal, tan caracteristica de la programación en COBOl
tradicional.

Los programas que ya se tenían hechos se pueden reutilizar, y además añadir


controles nuevos a dichos fuentes como Botones, Edit, Imágenes... de una
forma sencilla.

Puede usar O.C. para desarrollar cualquier tipo de aplicación, desde utilidades
de uso general, hasta sofisticados programas de acceso a datos. Las
herramientas y componentes de base de datos de O.C. permiten desarrollar
potentes aplicaciones de base de datos locales en tiempo record. Con
controles de base de datos O.C., puede visualizar los datos dinámicos mientras
diseña la aplicación, lo cual permite ver inmediatamente los resultados de
consultas de la base de datos y los cambios realizados en la interfaz de la
aplicación.

O.C. proporciona una biblioteca de componentes reutilizables y una serie de


herramientas de diseño RAD, entre ellas, plantillas de aplicación y de ficha y
expertos de programación. Con éstas herramientas y el compilador de código
nativo de 32 bits de O.C., puede crear y probar prototipos con gran agilidad,
convirtiéndolos en aplicaciones robustas para satisfacer las necesidades de su
empresa.

<
O.C. hace del entorno de desarrollo, un sitio agradable y fácil de usar, en él
puede integrar distintas ventanas y recorrer sus fuentes de la forma mas
cómoda posible con la ayuda del Code Explorer, sin tener que ir recorriendo
línea a línea, o con el potente Image Browser, poder crear un control, con una
imagen ya diseñada con tan solo pinchar y arrastrar, sin necesidad de elegir el
componente primero.

O.C. permite construir aplicaciones de gestión empresarial con herramientas de


base de datos: Oracle, Informix, Sybase, SQL Server ... tanto vía SQL-Links
como ODBC. De manera que los ficheros indexados completamente planos de
Cobol, ahora ya directamente pueden usarse como ficheros de una Base de
Datos Paradox, DBase.....

PRINCIPALES FUNCIONES
Entorno de desarrollo integrado. O.C. permite desarrollar, probar y mantener
aplicaciones dentro de un solo entorno integrado. Puede crear o modificar una
aplicación, incluyendo fichas de entrada, informes, menus, cuadros de diálogo,
definiciones de base de datos sin salir de O.C.
Diseño mediante el método arrastrar y soltar. O.C. ayuda a mantener la
productividad automatizando aquellas tareas de programación repetitivas pero
esenciales. Para diseñar aplicaciones, basta arrastrar unos componentes hasta
una ficha, creando la arquitectura de la aplicación rápida y fácilmente, con un
mínimo de código.
Herramientas bidireccionales. Conforme selecciona y modifica las
propiedades de los componentes y fichas, los resultados de los cambios
realizados aparecen automáticamente en el código fuente y viceversa. Es
posible modificar los archivos fuente directamente con cualquier editor de texto,
incluido el editor de código incorporado. Los cambios efectuados se reflejan de
forma inmediata en las herramientas visuales.
Compilador de código nativo. El compilador optimizador de código nativo de
32 bits de O.C. genera archivos de aplicación ejecutables (.EXE). Además del
rendimiento mejorado de los ejecutables compilados.
Conectividad de las bases de datos. También permite desarrollar aplicaciones
que accedan fácilmente a base de datos Paradox, DBase. Con SQL Links, las
aplicaciones pueden acceder también a servidores SQL, incluidos en Interbase,
Oracle.

Desconozco en la actualidad que sucede con este compilador y con sus


creadores.

Empezando

(1118 palabras totales en este texto)


(14621 Lecturas)

Al instalar nuestro compilador, éste se hará en un directorio propio pero tanto el


rumtime como el compilador lo harán en el directorio del sistema /usr/bin (en
otros Unix puede ser otro, pero siempre será uno donde se encuentren los
principales componentes del sistema y por supuesto forme parte del Path).

Una vez instalado, debemos de pensar en la distribución que le vamos a dar a


toda nuestra información, programas, archivos de datos, copys, pruebas y
disponer para ello de una estructura sencilla que nos permita localizar cualquier
dato rapidamente.

Un ejemplo, (mi caso práctico) es partiendo del directorio /home, crear varios
directorios, uno para los archivos de datos, otro para los programas fuente, otro
para los listados, otro para los objetos y otro para los copys.

/home/datos Todos los archivos de datos.


/home/fuente Todos los programas fuentes
/home/objeto Todos los programas una vez compilados.
/home/listados Todos los archivos de listado que generemos.
/home/copy Todos los archivos comunes que utilizemos en nuestro programas.

Todo ésto también nos ayudará a hacer las copias de seguridad mas
selectivas. Vuelvo a repetir que todo lo que aqui expongo es sólo una muestra,
pero que evidentemente cada cual puede optar por la opción que mas le
convenga.

Como bien sabemos cada vez que hacemos un nuevo login, hay una serie de
archivos que se ejecutan y con alguno de los cuales podemos definir nuestro
entorno de trabajo, para cada usuario que creemos en su directorio se creará
un .profile con las características para ese usuario en concreto, pero tenemos
en el directorio /etc un archivo llamado profile en el cual se definirán las
características comunes a todos los usuarios.

El comando PATH tiene una pequeña diferencia con el que estamos mas
acostumbrado a utilizar en MS-DOS, y es que no toma por defecto el directorio
en el que nos encontramos por defecto, ésto quiere decir que si tenemos
definido el PATH con varios directorios y queremos ejecutar una aplicación que
se encuentra en el directorio sobre el que estamos, nos dirá que no encuentra
el archivo, ésto se soluciona incluyendo en el PATH, el directorio actual, que
UNIX lo denomina ".", por lo tanto será conveniente añadir a nuestra linea de
PATH, dentro del archivo /etc/profile el directorio ".".
PATH=$PATH:directorio:directorio:.:

Ya sabemos que en el directorio de cada usuario que hayamos añadido a


nuestro sistema se nos crea un archivo .profile que se ejecutará cada vez que
éste usuario entre en el sistema. Pues bien podemos añadir a éste archivo todo
lo que creamos conveniente, por ejemplo podemos asignarle una tecla de
interrupción, por defecto es <Ctrl+C>, pero si lo que queremos es que ningún
usuario pueda salirse del programa que se está ejecutando o bien ponemos
otra que sea menos corriente o bien la quitamos. Una buena solución es que
cada usuario al dar su login y su password se le cargue inmediatamente su
aplicación, con lo que evitaremos que puedan tocar en el sistema, además
cuando salgan de la aplicación le podemos mostrar una pantalla en la que se
indica que para continuar pulsen alguna tecla y cuando la pulsen volverán al
programa evitando asi que nunca estén en otro sitio que no sea en su
aplicación.

Si vamos a utilizar el editor vi que viene con el Unix, éste lo podemos adaptar a
nuestras necesidades mediante la variable EXINIT (en mi caso UNIX SYSTEM
V), algunas de éstas opciones son las siguientes:

ai-noai ......- Inicia cada linea en la misma columna que la linea anterior.
aw-noaw ...- Escribe automáticamente los cambios en el buffer antes de
ejecutar ciertas ordenes en vi.
ic-noic ......- Las mayúsculas y las minúsculas son equivalentes en las
búsquedas.
nu-nonu ....- Numera cada linea.
smd-nosmd.- Nos indica en la parte inferior de la pantalla con un texto que
estamos en modo de insercción.
report=n ....- (n) equivale al número de lineas mínimo que hayamos modificado,
borrado o editado para que nos avise.

En mi caso la tengo definida asi: EXINIT="set ic nu smd report=0", con lo cual


me numera las lineas, no me tiene en cuenta las mayúsculas o minúsculas en
las busquedas, me indica cuando estoy insertando lineas y no me avisa
después de hacer ningún cambio en alguna linea.

Terminales

(3261 palabras totales en este texto)


(15134 Lecturas)

La definición de terminales es un tema muy importante y dependiendo de ello


obtendremos unos resultados mas positivos en la visualización de nuestros
programas. Podemos aprovechar el .profile de cada usuario para, utilizando la
variable TERM, poder asignarle el terminal que mejor se adapte a su terminal o
emulador, si no quereis tener problemas toda la serie de terminales "vt"
generalmente no suelen dar problemas y funcionan bastante bien. Por
supuesto que ésta definición de terminal que damos con la variable TERM,
debe existir y estar asignada en nuestro terminal o en nuestro emulador, de
nada sirve indicarle al sistema que tal usuario va a trabajar con vt220 y luego
que el usuario en su terminal tenga por ejemplo PC-ANSI.

Quiero dejar claro que en muchos casos al decir terminal, me estaré refiriendo
a cualquier dispositivo que podamos conectar al servidor y con el cual nos
podamos comunicar con él.

De los equipos disponibles podemos hablar de:

Terminales de texto, son los llamados "tontos" porque solo se comunican con el
servidor, trabajan en una sesión, solo admiten caracteres de texto, nada de
gráficos y solo se pueden conectar con el equipo mediante conexiones RS-232.
Suelen ser en blanco y negro y admiten varias emulaciones.
Platinas de comunicación, pueden conectarse mediante RS-232 o en red,
tienen el tamaño de un libro y en el van las placas de comunicación con varias
salidas, una para conectar monitores VGA, el teclado, una puerta paralelo y la
conexión con el equipo. Pueden mantener mas de una sesión, son en color y
requieren poco mantenimiento.
PC, poco hay que hablar de ellos, son máquinas totalmente independientes
que con un software adecuado, los llamados "emuladores" conseguimos eso,
emular la máquina a la que nos queremos conectar y el resultado es una
sesión de nuestro servidor en el PC, mediante éstos programas. Podemos
utilizar cualquier conexión, por defecto vienen con varias salidas serie RS-232,
pero si los queremos conectar en red, bastará con adquirir en el mercado
cualquier tarjeta de red, configurarla y listo.

Cuando pensamos en conectar algún equipo a nuestro servidor debemos de


pensar en que tipo de equipo de los que existen en el mercado nos conviene
mas, asi como la conexión que utilizaremos. Aunque hoy en dia lo mas barato,
seguro, rápido y rentable son las redes con cable UTP CAT-5 con conexiones
RJ-45, es posible que queramos hacerlo mediante conexiones serie RS-232.
Vamos a explicar a continuación cada una de ellas.

CONEXIONES RS-232.

En este tipo de conexiones utilizaremos un cable de 8 hilos, si es posible


apantallado para mas seguridad y deberá de ir desde las salidas serie del
servidor, que las obtendremos mediante tarjetas Specialix, Terminal server o
cualquier otra del mercado, hasta la puerta serie de nuestro terminal.

Características:
La velocidad de transmisión será de 9600 ó 19200 baudios dependiendo de la
distancia.
Para distancias superiores a los 200 metros (aprox.) necesitaremos un
amplificador de señal para que ésta no pierda fuerza y no provoque fallos en el
sistema.
Se utilizarán clavijas RS-232 de 25 ó 9 pines dependiendo de las salidas.
Esta conexión se está perdiendo, porque no nos permite utilizar los recursos
del terminal.

A continuación voy a describir una conexión RS-232 para clavijas de 25 pines.

Esta conexión tengo que decir que funciona perfectamente tanto en terminales
como en impresoras. Realmente son los pines 2 y 3 los importantes y van
cruzados por que uno emite y otro recibe, asi cuando el terminal emite el
servidor recibe y viceversa. Yo incluso he probado a conectar solo esos dos
cables y ha funcionado, pero la conexión que he descrito la cogí de unas
normas de conexión y siempre ha funcionado.
Como consideración, quiero añadir que si nos vemos obligados a utilizar
amplificadores de linea, éstos es necesario que estén lo mas cerca de cada
equipo posible, es decir que entre las puertas serie y el amplificador haya la
menor distancia posible, evitaremos muchos problemas.

CONEXIONES EN RED.

Para conectar nuestros equipos en red podemos utilizar cable coaxial con
conectores BNC o bien cable de 8 hilos CAT-5 con conectores RJ-45, que se le
conoce como par trenzado precisamente por eso, porque los hilos van unidos
de dos en dos y a su vez van "liados" con el resto de cables pero sin perder
esa unión. A estos tipos de red se les conoce como Ethernet o Fast Ethernet
dependiendo de la velocidad que puedan llegar a alcanzar. Hoy en dia la
mayoría de las tarjetas de red vienen con las dos conexiones y nosotros
utilizaremos la que mas nos convenga. La de tipo BNC está orientada a
conexiones de pocos equipos y las conexiones se realizan uniendo todos los
ordenadores con un mismo cable utilizando unos conectores en "T" para cada
ordenador y unos terminadores para cada punta del cable, éstas conexiones
son menos fiables pero cuando vamos a conectar 2 ó 3 equipos es la mas
barata y rápida. Las conexiones con RJ-45 se apoyan en un Hub o
concentrador, conectándose todos los equipos aqui y siendo éste quien se
ocupa de enviar las informaciones que le llegan a su destino.

En las imágenes de abajo explico los estándares de conexión entre tarjetas


Ethernet. Tanto de un ordenador a otro sin pasar por un Hub, como
conectándolos a través de Hub. Las imágenes están vistas teniendo los pines
metálicos hacia arriba.

Conectar dos ordenadores sin HUB Conectar ordenador a HUB o HUB a HUB

Características:
La velocidad de transmisión será de 10 MB/s para conexiones Ethernet y 100
MB/s para Fast Ethernet. El cable coaxial solo es válido para 10 MB/s en
cambio el Cat-5 está diseñado para conseguir velocidades superiores.
Con un cable CAT-5 par trenzado la distancia máxima entre equipos es de 100
metros. En cambio con el cable Coaxial podemos alcanzar los 185 metros. Si
hubiera mas distancia desde uno a otro se pueden utilizar mas controladores
como puente.
Las clavijas que se utilizan son RJ-45, similares a las del teléfono convencional
pero con 8 conectores. Estas conexiones son mucho mas resistentes que las
realizadas con conectores BNC.
Conectar los equipos en red, es la solución que se está imponiendo porque
podemos compartir los recursos de todos los equipos conectados, siempre que
nuestro sistema operativo nos lo permita.

Cuando conectamos nuestros equipos en red, es posible que no todos tengan


el mismo sistema operativo, para que la compatibilidad exista utilizamos los
protocolos de comunicacion que son como los traductores y hacen que
cualquier información enviada o recibida sea legible por cualquier equipo,
obviamente todos los equipos que unamos deben de tener instalado el mismo
protocolo.

El protocolo TCP-IP, que es el utilizado en Internet, es uno de los mejores y hoy


en dia viene con todos los sistemas operativos por lo que su implementación es
perfecta. Para ello cada equipo que se conecte debe de tener un "número de
identificación", dirección IP, y gracias a ésta dirección los paquetes de
información sabran su destino y su remitente. Estas direcciones IP están
compuestas por cuatro números de hasta 3 cifras separados por puntos y
deben de ser únicos, por ejemplo en una red podiamos asignarle la dirección IP
100.0.0.1 al servidor y luego aumentando en uno la última cifra iriamos
asignando direcciones a los distintos equipos de la red.

Una vez implantado el protocolo en cada uno de los equipos, podemos


empezar a compartir los recursos de la red, en pricipio podremos hacer Telnet o
llamadas al servidor para iniciar sesiones de trabajo en nuestro servidor Unix o
hacer FTP (File Transfer Protocol) para copiar archivos de nuestro servidor a
los equipos o viceversa.

EN LINEA.

Una vez conectados, el equipo y los terminales, podemos decir que estamos en
linea, ahora solo queda que ambos "hablen". Si la conexión la realizamos a
terminales o platinas de comunicación, éstos traen un setup que se suele
activar con algunas teclas, y con el cual podremos configurarlo para trabajar
adecuadamente, los parámetros mas importantes, serán velocidad de
transmisión, tipo de emulación, bits por palabra, bits de stop, paridad y algunas
consideraciones menos importantes referentes a sonido en teclas, activación
de bloque numérico, etc...
Esto claro está cuando nos conectemos via RS-232, si lo hacemos en red, los
parámtros de velocidad, paridad y bits se suprimen y es la propia red la que
nos indica su velocidad según sus especificaciones, según tarjetas, cables y
demás hardware instalado.

Cuando usamos como terminal un PC, ya hemos dicho antes que


necesitaremos un programa que nos emule el sistema al cual nos queremos
conectar. Estos programas llamados "emuladores" suelen tener las mismas
opciones que los setup de los terminales, pero implementan muchas otras
opciones, sobre todo orientadas a aprovechar los recursos que nos ofrecen los
PC´s. De hecho podemos controlar el color, poner botones configurables,
barras de herramientas, etc...
A la hora de elegir el programa, debemos de tener en cuenta cual es nuestro
sistema operativo, según utilicemos MS-DOS, Windows, Mac, etc.. deberemos
de escoger programas que corran sobre éstos sistemas operativos.

El S.O. sobre el cual podemos dar algunas orientaciones es sobre Windows,


por ser el mas extendido, bien, pues podemos encontrar en el mercado muchos
emuladores que consiguen dar un aspecto gráfico a nuestros programas de
texto y en los cuales podemos incluir botones, barras de herramientas, teclas
de función, etc... Estos programas suelen poder conectarse por RS-232 o vía
Telnet, siendo ésta última la mas recomendable.
En la sección de enlaces podeis ir a las páginas de 3 buenos emuladores, yo
he probado los tres y todos van muy bien.

Impresoras
(863 palabras totales en este texto)
(7894 Lecturas)

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.
Conclusión
conclucion
La utilización de Cobol en el mundo Unix, por supuesto que no se limita a lo aqui expuesto,
es mas, hoy en dia se tiende a la tecnología cliente-servidor, para todos los entornos de
trabajo, es decir mantener nuestra información, datos, en un servidor Unix seguro y estable
y aprovechar todos los recursos gráficos que nos ofrecen sistemas operativos como Windows
para darle a las aplicaciones otras posibilidades muy superiores a las que podemos ofrecer a
los usuarios con las aplicaciones tipo texto.

Me gustaría, claro está, cuando adquiera experiencia en ello, explicar aqui como se monta un
cliente-servidor y como podemos mantener nuestras aplicaciones en Cobol enlazando
además nuestros datos con todas las herramientas disponibles, hojas de cálculo,
procesadores, etc ...

No dudéis que el Cobol sigue existiendo con fuerza y que con el sBill Gates habla
sobre Cobol
habla
Bill Gates dijo al público en la Conferencia de Desarrolladores Profesionales reunida en
Orlando Florida el pasado 12 de Julio del 2000, por qué Microsoft escogió el COBOL de
Fujitsu para apoyar sus planes en el desarrollo de la tecnología Microsoft .NET. "Hay todavía
un nivel muy alto de uso de código COBOL [...] Y por esto nosotros pensamos en el COBOL
como herramienta lider en el mercado...”. Comentó Gates.

Fujitsu da los Detalles de Apoyo del COBOL para la plataforma Microsoft .NET
brindando a los programadores de COBOL acceso a ASP+, generando servicios e
interoperabilidad entre lenguajes en la Web.

San José,l 11 de julio de 2000--Fujitsu Limited y Fujitsu Software Corporación entregaron


detalles de su apoyo a la plataforma .NET de Microsoft.

El anuncio de hoy lo dió Fujitsu Software Corporación en la Conferencia de Diseñadores


Profesionales de Microsoft (PDC) 2000 en Orlando, Florida esta semana.

"Comprendiendo los beneficios de la tecnología Microsoft .NET para programadores COBOL


empezamos por apreciar el valor de la rutina común para varios lenguajes en la estructura
Microsoft .NET " dijo Basim Kadhim,l Arquitecto Principal del Grupo de desarrollo de COBOL,
para la Fujitsu Software Corporación. "La rutina es una arquitectura unificada que provee los
módulos de ensamble y que mantiene la interoperabilidad del lenguaje, su seguridad y
robustez. Como Microsoft orientó su estructura .NET a otros dispositivos, como los
dispositivos de CE de Windows, el COBOL de Fujitsu estará allí como un primer lenguaje de
primera clase."

La rutina común para varios lenguajes ofrece un sistema orientado a objetos y un lenguaje
intermedio llamado MSIL, que brinda a los vendedores de lenguajes un nuevo target para
trabajar con la estructura Microsoft .NET. Fujitsu está construyendo un nuevo compilador de
COBOL compatible con la tecnología Microsoft .NET.

John Montgomery, gerente de producto del grupo .NET de Microsoft S.A.,dijo, "COBOL es un
lenguaje clave en el desarrollo de aplicaciones empresariales. Cuando nosotros partimos en
la construcción de elementos de la plataforma de .NET, comprendimos que necesitaríamos
mantener la prestación de los lenguajes como el COBOL para aprovechar esta tecnología.
Estamos encantados de tener a COBOL de Fujitsu participando en la iniciativa .NET."

Fujitsu da los Detalles de Apoyo del COBOL para la plataforma Microsoft .NET.

Todos los lenguajes de programación de la familia Microsoft Visual Estudio , incluyendo C# -


compilador equiparable a JAVA-, recientemente anunciado, y otros lenguajes, apoyaron la
tecnología .NET. El COBOL de Fujitsu tendrá la mejor solución para garantizar la
interoperabilidad del lenguaje entre los diferentes proveedores de COBOL que hay en el
mercado," dijo Ron Langer, Director de Ventas y Comercialización, para la Fujitsu Software
Corporación.

La estructura .NET también es requisito previo para el apoyo del lenguaje + (ASP+), el
sucesor de Microsoft ASP. ASP+ usa una arquitectura compilada con importantes
prestaciones en entorno Web. Esta arquitectura abre la puerta para los lenguajes compilados
como el COBOL, que pueden ser usados directamente en la WEB. ..."Estamos muy
interesados en proporcionar estas herramientas a diseñadores de COBOL para construir las
aplicaciones comerciales end-to-end en una amplia variedad de plataformas, todas
desarrolladas en COBOL," dijo Langer.e puede realizar cualquier aplicación que se nos ocurra,
sin olvidar que Cobol fue concebido para la gestión.

Vous aimerez peut-être aussi