Cobol en español
MANUALES
TEMATICOS
BASES DE DATOS
COBOL / WINDOWS
COBOL / UNIX
HISTORIA /DOCS
PROGRAMANDO-Dos
TRUCOS
AÑO 2.000
TEORIA POWCOB-3
PROG. POWCOB-3
TEORIA POWCOB-5
PROG. POWCOB-5
OCX-ESCOBOL
Programando en Windows (PowerCobol-3)
TEMARIO1.- Comienza la Aplicación
2.- Diseñando la Pantalla
3.- Eventos de la ventana
4.- La Procedure
5.- Progr. Controles (I)
6.- Progr. Controles (II)
7.- La Pantalla de Consulta
8.- Clasificando y FIN
>> agenda.exe e iconos <<

7.- La Pantalla de Consulta

página(s) : 2/2
(2549 palabras totales en este texto)
(20335 Lecturas)   Versión Imprimible



PRINT

Para evitar tener que confeccionar un listado y puesto que PowerCobol posee un control para imprimir los controles, podemos apoyarnos en él y aprovechar su potencia para imprimir la tabla y así conseguir un listado profesional sin escribir ni una sola línea de código. Para ello y antes de nada tenemos que tener en cuenta que la propiedad PRINT de nuestros controles, tiene que estar desactivada excepto para el control tabla que será el que se imprima. Además PowerCobol con éste control, me refiero a la tabla, tiene el privilegio de imprimirla completamente, aunque su contenido no quepa en la pantalla, con lo que ya veréis que bien queda y que fácil es conseguirlo.

Por supuesto podremos continuar imprimiendo utilizando nuestras definiciones de líneas descritas en la Working-Storage Section, pero para determinados casos podemos aprovecharnos de éste control. Sus propiedades son las siguientes:

Propiedades del control Print


Con éstas propiedades os garantizo que el listado queda muy  bien en modo apaisado y sobre un papel tipo A4. Este control carece de eventos.

DEMAS CONTROLES

Como podéis apreciar al resto de controles, son los habituales, LABEL y BUTTON, que nos ayudan a dar forma a la pantalla de consulta.

Antes de seguir os diré como se llaman cada uno de los campos que figuran a la derecha y que rellenaremos con los totales y subtotales. Además el fondo de dichos campos se ha puesto en colores que utilizaremos también para cada una de las barras del gráfico y así situar los datos mas rapidamente. El porque he utilizado LABEL en vez de EDIT es muy sencillo, para evitar que dichos campos se puedan modificar o tomar el foco. Al ponerlos como LABEL el compilador los considera como DISPLAYS normales y no podemos ni modificarlos ni editarlos ni nada similar.

Para poner el número de contactos de tipo Personal, el LABEL se llama DE1.
Para poner el número de contactos de tipo Profesional, el LABEL se llama DE2.
Para poner el número de contactos de tipo Familiar, el LABEL se llama DE3.
Para poner el número de contactos de tipo de Empresa, el LABEL se llama DE4.
Para poner el número de contactos de tipo Sanitario, el LABEL se llama DE5.
Para poner el número total de contactos, el LABEL se llama TOTAL.
Para poner el número de contactos Hombres, el LABEL se llama DEH.
Para poner el número de contactos Mujeres, el LABEL se llama DEM. 


Veamos los eventos a programar sobre dicho formulario. En éste capítulo veremos solo algunos y dejaremos el resto de eventos, así como la programación del resto de eventos de los demás controles para el siguiente capítulo.

Evento Programación Ayuda
SPECIAL-NAMES DECIMAL-POINT IS COMMA. Indicamos la coma como punto decimal.
FILE-CONTROL SELECT AGENDA ASSIGN TO "AGENDA.DAT"
ORGANIZATION INDEXED ACCESS DYNAMIC
RECORD KEY KEYAGE FILE STATUS STAAGE.

SELECT CLASI ASSIGN TO "CLASI.DAT".
Definición de nuestros archivos.

Para clasificar.
FILE FD  AGENDA  GLOBAL EXTERNAL
     LABEL RECORD STANDARD.
01  REGAGE.
     02  KEYAGE.
          03  AGECOD PIC 9999.
     02  AGENOM     PIC X(30).
     02  AGEDOM     PIC X(30).
     02  AGEPOS     PIC 99999.
     02  AGEPOB     PIC X(20).
     02  AGEPRO     PIC X(15).
     02  AGEGEN     PIC X.
     02  AGETIP     PIC 9.
     02  AGETEL     PIC X(20).
     02  AGEMOV     PIC X(20).
     02  AGEMAI     PIC X(30).
     02  AGEWEB     PIC X(40).

FD  CLASI GLOBAL  LABEL RECORD STANDARD.
01  REGCLA.
      02  CLACOD     PIC 9999.
      02  CLANOM    PIC X(30).
      02  CLADOM    PIC X(30).
      02  CLAPOS     PIC 99999.
      02  CLAPOB     PIC X(20).
      02  CLAPRO     PIC X(15).
      02  CLATIP      PIC X(12).
      02  CLATEL      PIC X(20).
      02  CLAMOV    PIC X(20).
      02  CLAMAI     PIC X(30).
Descripción de los ficheros a utilizar en nuestra aplicación. Al ponerle GLOBAL EXTERNAL conseguimos que los valores de los campos se pasen de una ventana a otra y por todos los controles de la ventana.







Esta definición corresponde al fichero que vamos a utilizar para la clasificación por las distintas columnas de la tabla.
WORKING 01  STAAGE      GLOBAL PIC XX.
01  MENSAJE IS  GLOBAL.
     02  FILLER  PIC X(7) VALUE "ERROR: ".
     02  NUMSTA  PIC 99BB.
     02  FILLER  PIC X(15) VALUE "POR EL MOTIVO:".
     02  NOMSTA  PIC X(15).
01  CCC          PIC 9999  GLOBAL.
01  TOPE        PIC 9999  GLOBAL..
01  AHIVA      PIC 9(4)   GLOBAL EXTERNAL.
Variable de estado.
Mensaje en caso de error al acceder al fichero.


Contador.
Tope de contador.
Variable.


El próximo capítulo abordará el evento OPENED, en el que se cargarán los datos en la tabla y se pondrán los totales por tipo, además de formar el gráfico y así terminaremos la pantalla de consulta.

Una vez concluido el diseño de la ventana, pinchamos sobre Project, Edit y a continuación pulsamos sobre el botón Add, para añadir esta ventana al proyecto y así poder compilar y ver como funciona. Una vez añadida pulsamos sobre el botón Ok y ya podemos ver en la pequeña ventana del proyecto que tenemos en la pantalla, como esta ventana de consulta está incluida.

(1/2) Anterior |    Inicio de Página   
Sitio desarrollado con PHP-Nuke. Todos los Derechos Reservados.
PHP-Nuke es un Software Libre realizado con licencia GNU/GPL.
Página creada en Junio de 1.998, con el proposito de difundir el lenguaje Cobol en nuestra lengua.
Andres Montes [98/11]