jueves, 1 de mayo de 2014

Mostrar colores en los textos de un mapa Cobol (1)

En ocasiones, cuando estamos elaborando una aplicación, nos surge la necesidad de mostrar los textos de nuestros mapas con unos colores determinados. La paleta existente en Cobol no es demasiado amplia, pero al menos nos sirve para ir un poco más allá de los clásicos tonos verdes.



En realidad, para definir los colores en un mapa Cobol tendremos dos posibilidades.

1º) Definirlos directamente en el código del Mapset.
2º) Definirlos en el programa Cobol que va a invocar a nuestro Mapset.

Para explicar más fácilmente cómo se hace esto, vamos a tomar como ejemplo el mapa de la imagen, en el que observamos que se muestran textos en colores verde, amarillo, rojo, rosa, azul y turquesa. A continuación, veremos cómo se obtendría este resultado.



Opción 1: Definir colores en el código del Mapset

Si decidimos usar esta opción, tendremos que añadir el comando COLOR junto al texto que deseemos que adquiera el color seleccionado.

Por ejemplo, si queremos que el campo "EQUIPO" se muestre en color amarillo, como en el ejemplo anterior, la sentencia del Mapset tendrá el siguiente aspecto, incluyendo COLOR=YELLOW al final de la misma.

EQUIPO   DFHMDF POS=(11,24),LENGTH=3,ATTRB(NORM,UNPROT,NUM,FSET),
               PICIN='999',PICOUT='999',COLOR=YELLOW


Del mismo modo, si queremos que el campo "NOMBRE" se muestre en color rojo, tendremos que incluir el comando COLOR=RED al final de la sentencia correspondiente.

NOMBRE   DFHMDF POS=(13,24),LENGTH=25,ATTRB=(ASKIP,NORM),COLOR=RED

Los otros colores del ejemplo se corresponderán con las sentencias que detallamos a continuación, que incluyen los comandos COLOR=PINK, COLOR=BLUE y COLOR=TURQUOISE.

PUNTOS   DFHMDF POS=(13,51),LENGTH=3,ATTRB=(ASKIP,NORM),COLOR=PINK

FAVOR    DFHMDF POS=(14,28),LENGTH=3,ATTRB=(ASKIP,NORM),COLOR=BLUE

CONTRA   DFHMDF POS=(15,28),LENGTH=3,ATTRB(ASKIP,NORM),
               COLOR=TURQUOISE


Y la cosa no tiene mucho más misterio. Añadiendo la cláusula COLOR en la sentencia DFHMDF correspondiente, obtendremos fácilmente el resultado requerido (obviamente, no es obligatorio que dicha cláusula vaya al final, aunque en los ejemplos mostrados lo hayamos hecho así).

El próximo día continuaremos hablando sobre este tema y aprovecharemos nuestro siguiente post para hablar de la segunda opción de la que vamos a disponer para establecer los colores de los campos creados en nuestros Mapas Cobol.

Pues nada, simplemente nos queda emplazaros a la segunda parte de este post para completar la visión global sobre el manejo de colores por pantalla.

Saludos.


No hay comentarios:

Publicar un comentario