Curso de Power Cobol II

Embed Size (px)

Citation preview

  • 8/20/2019 Curso de Power Cobol II

    1/28

    Curso de Power Cobol

     

    CAPITULO 1. PRIMER CAMBIO.

    Nuestros programas Cobol, tienen todos un aspecto muy similar, lasdivisiones, los párrafos y sobre todo un desarrollo secuencial de lasacciones que debe de realizar. Ahora todo eso cambia un poco y el

    peso fuerte de la programación lo llevan los llamados eventos, que no son otra

    cosa que los procesos a realizar cuando se actúa cualquiera de los componentes uobetos que tengamos definidos en nuestra pantalla. !amos a empezar por dar unapeque"a e#plicación de todo lo que nos vamos a encontrar en adelante y con locual deberemos de empezar a familiarizarnos.

    • Proyecto$ %s la base para empezar a desarrollar nuestras aplicaciones y enellos estarán todas las pantallas, las imágenes e iconos.

    • Objeto$ &erá todo aquello que definamos gráficamente en nuestroprograma, serán obetos un 'ush()utton, un *abel, un Combobo#, una+abla, una magen, etc .... Cada obeto deberá de tener un nombre como side una variable se tratara. %n principio el programa asignará un nombre pordefecto pero nosotros podremos variarlo y darle el que mas nos apetezca,

    ese nombre será el que utilicemos para todo lo que haga referencia a eseobeto. *as pantallas que dise"emos serán los contenedores de obetos, esdecir donde definamos todos los obetos que deseemos en nuestraaplicación. 'ero a su vez tambi-n será un obeto con sus propiedades, susm-todos y sus eventos. %n cada aplicación puede haber mas de unapantalla, pero una será siempre la principal. 

    • Propiedades$ &erán las distintas opciones que puede tener un obeto ypueden ser comunes o distintas según el tipo de obeto. &erán propiedades,el color, la altura, la anchura, el ttulo, el tipo de letra, si está o nodisponible, si está o no visible, etc ... *as propiedades suelen tener unnombre pre(definido por el lenguae que lo haya designado. /uchas de laspropiedades tendrán un valor de tipo &(N0. %stas propiedadesnormalmente se podrán establecer tanto en tiempo de dise"o como entiempo de eecución, es decir, cuando se dise"a la pantalla y desde elcontrol del programa, esto es una gran ventaa como veremos masadelante. 

    • Métodos$ &on procedimientos que ya vienen programados por el lenguaey nosotros solo tendremos que llamarlos para que actúen. &on m-todos,a"adir campos a un Combobo#, enviar el foco a cualquier obeto, abrir unaventana, cerrarla, etc ... Como veremos cada uno de los obetos puedetener sus propios m-todos. 

    • Eventos$ &erán las acciones del usuario sobre el programa. Como el clic1sobre un 'ush()utton, pulsar 2eturn o +ab en un %dit, etc .... Al producirseel evento, se eecutará todo lo que le hayamos programado y actuará enconsecuencia. 

    +odo esto, lo que nos va a suponer, es que vamos a perder un poco el 3control3sobre nuestro programa, puesto que ya no lo vamos a ver como siempre en uneditor y de una manera secuencial, sino que cada evento y propiedades tendránque ser vistas por separado. 'ero os aseguro que eso no es un inconveniente,digamos que al principio es un poco chocante. %n los pró#imos captulos ir-

    Página 1

  • 8/20/2019 Curso de Power Cobol II

    2/28

    Curso de Power Cobol

    e#plicando el funcionamiento de 'o4erCobol en su versión 5, la compilación, laeecución, los obetos o controles, las propiedades y todo lo necesario para generarnuestras aplicaciones en -ste entorno de desarrollo.

    Esta seccin se act!a"i# por $"ti%a ve# e"&' de (eptie%bre de &.))).

    Ir a" principio de "a p*+inaCAPITULO &. LA PRIMERA ,E-TA-A.

    Al abrir el 6uitsu 'o4erCobol 7en adelante 'o4er8, nos saleautomaticamente una ventana denominada &9%%+ en blanco y lasventanas de control que tengamos por defecto, pueden ser la de &tatus,

    la de 6ont, la de Color y la de tem, &i alguna no se abre o bien otra queremoscerrarla, bastará con activarla en el menu +ool.

    &obre -sta primera ventana ya podemos empezar a poner nuestros controles u obetosy darles vida. 'ero antes de nada aprendamos mas acerca de la ventana, que enrealidad es otro obeto mas de nuestra aplicación.

    !eamos cuales son sus propiedades.

    • (eet na%e/ &erá el nombre que la identificará en nuestra aplicación. • Tit"e$ &erá lo que aparezca en ella cuando eecutemos el programa. 

    • Icon -a%e y C!rsor -a%e/ +endremos ocasión de escoger un tipo de iconopara mostrar en la barra de ttulo, puede ser uno de los que trae por defecto ocualquiera que nosotros hayamos creado o vinculado. : el cursor igualmente. 

    • 0indo2 3ra%e2 (ty"e$ Con ellas podremos variar la apariencia visual denuestra ventana. *o mas recomendable es que prob-is y os qued-is con la que

    mas os guste. 

    Con la ventana de &tatus, obtenemos información acerca de la posición relativa denuestra ventana con respecto a la pantalla y el tama"o de achura y altura que tiene. As mismo, con la ventana de color podemos modificar el color de fondo y de te#to quetendrá. %n cuanto a los eventos que tiene un obeto de tipo 3sheet3 o ventana, son lossiguientes$ 

    • (PECIAL4-AME/ Actuará igual que en un programa normal, es decir aqudefiniremos lo mismo que haramos en un programa normal en nuestraC0N6;

  • 8/20/2019 Curso de Power Cobol II

    3/28

    Curso de Power Cobol

    &%*%C+ &0C0& A&&;N +0 3&0C0&.=A+3 )+2!02;AN>A+0N N=%?%& ACC%&& =:NA/C2%C02= @%: @%:&0CA*+%2NA+% 2%C02= @%: @%:&0C6*% &+A+

  • 8/20/2019 Curso de Power Cobol II

    4/28

    Curso de Power Cobol

    %N!20N/%N+ =!&0N.=A+A =!&0N.'20C%=

  • 8/20/2019 Curso de Power Cobol II

    5/28

    Curso de Power Cobol

    Esta seccin se act!a"i# por $"ti%a ve# e" &'de (eptie%bre de &.))).

    Ir a" principio de "a p*+ina

    CAPITULO 9. OB:ETO( O CO-TROLE(.

    Objeto$ &erá todo aquello que definamos gráficamente en nuestro

    programa, serán obetos un 'ush()utton, un *abel, un Combobo#, una+abla, una magen, etc .... Cada obeto deberá de tener un nombre como

    si de una variable se tratara. %n principio el programa asignará un nombre por defectopero nosotros podremos variarlo y darle el que mas nos apetezca, ese nombre será elque utilicemos para todo lo que haga referencia a ese obeto. *as pantallas quedise"emos serán los contenedores de obetos, es decir donde definamos todos losobetos que deseemos en nuestra aplicación. 'ero a su vez tambi-n será un obeto consus propiedades, sus m-todos y sus eventos. %n cada aplicación puede haber mas deuna pantalla, pero una será siempre la principal.

    !eamos una lista de los obetos que nos presenta 'o4erCobol, en -sta versión 5 y unapeque"a e#plicación de para que sirven.

    Al final de la página e#plicar- para que sirven las diferentes opciones de estilo quetienen los obetos, para casi todos son las mismas. : cuando actúa cada evento

    OB:ETO 5E(CRIPCIO- E,E-TO(LABEL/ 

  • 8/20/2019 Curso de Power Cobol II

    6/28

    Curso de Power Cobol

    opciones de nuestros programas.

    RA5IO BUTTO-/ 

  • 8/20/2019 Curso de Power Cobol II

    7/28

    Curso de Power Cobol

    poner la fecha actual en diferentesformatos.

    ( C9AN;%

    META3ILE/ 'odemos colocar archivosde tipo .emf, .4mf, .clp. No he podidocomprobar su uso.

    ( C*C@( C9AN;%

    (IMPLE A-IMATIO-/ 'odemos

    hacer una animacion, indicando variosarchivos graficos tipo )/' e indicandoel intervalo entre cada uno.

    ( C*C@

    ( =)C*C@( &+A2+AN/%( %N=AN/%

    MCI/ Control utilizado para e#ponervideos A!, o poder hacer unreproductor de C=(Audio.

    RECTA-7LE/ 'ara dibuar unrectangulo en nuestras pantallas.'uede tener su sentido para darvistosidad o crearnos barras deherramientas.

    5RI,E LI(T/ Control para mostrarnos

    y utilizar las unidades que tengamosen nuestro disco.

    ( &%*C9AN;%

    5IRECTOR= LI(T/ 'ara mostrarnoslos directorios o carpetas de unadeterminada unidad.

    ( C9AN;%( &%*C9AN;%

    3ILE LI(T/ 'ara mostrar los archivosde un directorio seleccionado,podemos escoger entre sus atributos.

    ( =)C*C@( &%*C9AN;%

    BITMAP BUTTO-/

  • 8/20/2019 Curso de Power Cobol II

    8/28

  • 8/20/2019 Curso de Power Cobol II

    9/28

    Curso de Power Cobol

    • CLIC6/ %ste evento se produce al pinchar con el botón izquierdodel ratón sobre un obeto. 

    • 5BCLIC6/ %ste evento se produce al hacer doble(clic1 con elbotón izquierdo del ratón sobre un obeto. 

    • C8A-7E/ %ste evento se produce cuando cambia el contenido deun obeto. 

    • (ELC8A-7E/ %ste evento se produce cuando cambia la selecciónde un obeto de tipo lista, es decir cuando cambiamos en un*ist)o#, o en un Combobo#. 

    • E5IT/ &e produce cuando se entra en edición en un campo derecogida de datos, %dit, 'icture(%dit, +able, etc... 

    • RETUR-/ &e produce cuando pulsamos 2eturn sobre un obeto.9ay que tener en cuenta que en muchos de los obetos podemosdefinir que otra acción puede hacer que se produzca el evento2%+

  • 8/20/2019 Curso de Power Cobol II

    10/28

    Curso de Power Cobol

    PROPIE5A5 5E(CRIPCIO- ,ALORE('0E(AC+!A+% &olo se aplica al obeto timer y sirve para iniciarlo o pararlo.

    MO,E PO04O- TO PO04ACTI,ATE O3 RELO:.( '0E(0N( '0E(066

    '0E()AC@C0*02 'ara indicar el color de fondo de un obeto, aplicable a la mayorade ellos. 'odemos utilizar '0E(2%= 7roo8, '0E()*

  • 8/20/2019 Curso de Power Cobol II

    11/28

    Curso de Power Cobol

    MO,E PO04TE;T O3 ETIDUETA TO -OMBRE.

    Con estos eemplos simples, tendramos que al final la variable N0/)2% definida ennuestra E02@N;, como alfanum-rica tendra el valor dependiendo de la opciónseleccionada en el *ist)o# llamado *&+A. : tambi-n el obeto *abel llamado %tiqueta

    contendra ese mismo valor.%l pró#imo captulo estará dedicado a la utilización de los m-todos y luego empezar-con el desarrollo de un programa completo, igual que se hizo en la secciónprogramando, es decir, tendremos la misma agenda, pero ahora en formato gráfico deEindo4s.

    Esta seccin se act!a"i# por $"ti%a ve# e" &&de Enero de &.))1.

    Ir a" principio de "a p*+ina

    CAPITULO F. METO5O(.

    Método$ &on procedimientos que ya vienen programados por el lenguae

    y nosotros solo tendremos que llamarlos para que actúen. &on m-todos,a"adir campos a un Combobo#, enviar el foco a cualquier obeto, abrir

    una ventana, cerrarla, etc ... Como veremos cada uno de los obetos puede tener suspropios m-todos.

    'ara acceder a todos los m-todos se utilizará la sentencia CA**, quedando su formatode la siguente manera$

    CALL método O3 objeto U(I-7  parámetros.

    A continuación vamos a e#plicar algunos de los m-todos mas habituales. 'ero comosiempre os digo, en los eemplos prácticos es donde meor se comprende todo.

    METO5O 5E(CRIPCIO-A==&+2N;

    A==&+2N;DJK'ara a"adir elementos a obetos *ist)o# y Combo)o#.CALL A55(TRI-7 O3 LI(TA U(I-7 PRIMER ELEME-TO.

    A*A2/ Aplicable solo en los &heet y produce un sonido, podemos escoger entre variospredefinidos.'0E(/)0@, '0E(/)A&+%2&@, '0E(/)B

  • 8/20/2019 Curso de Power Cobol II

    12/28

    Curso de Power Cobol

    CALL 7ETCELLTE;T O3 TABLA U(I-7 ,ALOR 1 1.0'%N&9%%+ Aplicable solo a las &heet y con ella las abrimos. *as ventanas siempre

    dependen de una padre.CALL OPE-(8EET O3 PRI-CIPAL U(I-7 (E7U-5A.

    &%+C%**N

  • 8/20/2019 Curso de Power Cobol II

    13/28

    Curso de Power Cobol

    J B

  • 8/20/2019 Curso de Power Cobol II

    14/28

    Curso de Power Cobol

    o '0E(=/20@, si hemos pulsado el boton de 01. 

    o '0E(=/2CANC%*, si pulsamos Cancelar. 

    o '0E(=/2A)02+, si pulsamos Abortar. 

    o '0E(=/22%+2:, si pulsamos 2eintentar. 

    o '0E(=/2;N02%, si pulsamos ignorar. 

    o '0E(=/2:%&, si pulsamos &i. 

    o '0E(=/2N0, si

    pulsamos No. 

    %l estilo se debe de guardar en unavarible con el formato$ %&+*0 'C&L7O8 C0/'(J. : para introducir losvalores que deseemos lo haremos de lasiguente manera$

    A== '0E(=/:%&N0 '0E(=/C0NB

  • 8/20/2019 Curso de Power Cobol II

    15/28

    Curso de Power Cobol

    6 '20;2A/(&+A+

  • 8/20/2019 Curso de Power Cobol II

    16/28

    Curso de Power Cobol

    a hacer nada, pero 'o4er ya reconoce un proyecto completo. 'od-is hacer una prueba,le dáis 'roect ( )uild y luego 'roect ( 2un.A partir de ahora para eecutar bastará solo con dar a 2un, si ha habido algunamodificación se compilará automaticamente.+en-is que tener en cuenta que 'roect(Compile, actuará sobre la ventana activa,mientras que 'roect()uild, compilará todas las ventanas del proyecto.

    'roect(*in1 y 'roect(/a1e, se encargan de generar el eecutable para su eecución.'ara un proyecto peque"o podemos hacer siempre )uild, pero si es muy largo, paradepurar errores iremos compilando ventana a ventana.Buizás haya sido un poco lioso lo que he e#plicado o quizás algo demasiado simple queya todos conoc-is, pero creo que siempre es bueno refrescar las ideas y dar laoportunidad de ayudar al que empieza desde la nada.LA( IMA7E-E(.Cuando utilizamos imagenes en 'o4erCobol, podemos usarlas como imagenesindependientes, o bien como un recurso propio de la apliación, me e#plico$

  • 8/20/2019 Curso de Power Cobol II

    17/28

    Curso de Power Cobol

    para concluir volvemos a pulsar sobre ns

  • 8/20/2019 Curso de Power Cobol II

    18/28

    Curso de Power Cobol

    As es como deben de ir todos los *abels, solo cambiando el +e#t, que hará referencia

    a cada uno de nuestros campos.PICTURE E5IT%n los 'icture %dit, donde introduciremos los campos, su nombre será el mismo que elnombre del campo del registro pero con un guión enmedio.'or eemplo el 'icture %dit del Código se llamará A;%(C0=. !eamos otra imagen.

    Aqu fiaros que algo muy importante es 'C+>>L).Además deb-is de pulsar sobre el botón %vent y aseguraros que las casillas est-n as$

    Con -sta ventana le indicamos cuando se efectuará el evento 2eturn, es decir cuandoel campo se dará por aceptado. *a primera casilla indica que lo hará al pulsar %N+%27activada8. *a segunda que lo hará cuando el foco est- en otro control 7desactivada8.*a tercera indica que se producirá cuando se rellene todo el campo con su longitud7activada8.

    Página 18

  • 8/20/2019 Curso de Power Cobol II

    19/28

    Curso de Power Cobol

    Con esto conseguimos que los 'icture %dit, funcionen igual que los ACC%'+tradicionales.A continuación pongo los valores de todos los estilos de los 'icture %dit$

    Ca%po -o%bre Pict!re (trin+

    Código A;%(C0= >>>L)

    Nombre A;%(N0/ ?758

    =omicilio A;%(=0/ ?758

    'oblación A;%('0) ?7D8

    Código 'ostal A;%('0& L7J8)

    'rovincia A;%('20 ?7J8

    +el-fono A;%(+%* ?7D8

    +el-fono /óvil A;%(/0! ?7D8

    e(mail A;%(/A ?758

    'ágina Eeb A;%(E%) ?7O8

    OTRO('ara el ;-nero creamos dos 2adio )utton, al que identifica al hombre lo llamamosA;%(;%9 y el que identifica muer lo llamamos A;%(;%/.

  • 8/20/2019 Curso de Power Cobol II

    20/28

    Curso de Power Cobol

    borrar.bmp icoborrar

    consul.bmp icoconsul

    fin.bmp icofin

    grabar.bmp icograbar

    inicio.bmp icoinicio.bmp

    listar.bmp icolistar

    mail icomail

    mas.bmp icomas

    menos.bmp icomenos

    o1.bmp icoo1

    salir.bmp icosalir

    Ahora es momento para ir colocando los )itmap mage e ir asignando sus nombres.'rimero creamos los cuatro referentes a la busqueda de registros y los llamamos$NC0, /%N0&, /A& y 6N, asignándoles los recursos apropiados de icoinicio,icomenos, icomas e icofin. 'ara asignar el nombre del recurso hay que pinchar sobremage en la caa de estilo de cada uno de los )itmap )utton$ *o haremos igual contodos.

    A continuación colocamos el icono de borrar al que llamamos )022A2. *uego 01, alque llamamos 0@. =espu-s listar, al que llammos *&+A2. &eguido de e(mail al quellamamos %/A*. *uego ;rabar 7;2A)A28, consulta 7C0N&

  • 8/20/2019 Curso de Power Cobol II

    21/28

    Curso de Power Cobol

    te>to de Labe" -o%bre "abe"

    )orrar *()022A2

    01 *(CANC%*A2

    *istar *(*&+A2

    e(mail *(%/A*

    ;rabar *(;2A)A2

    Consulta *(C0N&

  • 8/20/2019 Curso de Power Cobol II

    22/28

    Curso de Power Cobol

    *os que tienen el triángulo en negro, son los controles sobre los que nos moveremos alpulsar la tecla +A). &e ponen con &et +ab y se quitar con 2eset +ab. =ead solo los quehacen referencia a los 'icture %dit.CO-CLU(IO-*legados aqu os hago una pregunta$ U!amos bien P. %s que no es fácil e#plicar en ladistancia y sobre papel y no quisiera que os perdierais o se quedara algo sin e#plicar

    con claridad. &i una vez leido todo lo aqu e#puesto, probáis a compilar y eecutar yalgo no funciona, me lo comunicais y lo modifico al instante.

    Esta seccin se act!a"i# por $"ti%a ve# e" 11de Mayo de &.))1.

    Ir a" principio de "a p*+ina

    CAPTITULO '. E,E-TO( 5E LA ,E-TA-A

    EMPE

  • 8/20/2019 Curso de Power Cobol II

    23/28

    Curso de Power Cobol

    6*%(C0N+20* &%*%C+ A;%N=A A&&;N +0 3A;%N=A.=A+302;AN>A+0N N=%?%= ACC%&& =:NA/C2%C02= @%: @%:A;% 6*% &+A+

  • 8/20/2019 Curso de Power Cobol II

    24/28

    Curso de Power Cobol

    '20C%=

  • 8/20/2019 Curso de Power Cobol II

    25/28

    Curso de Power Cobol

     

    CAPTITULO J. LA PROCE5URE

    PRO7RAMA-5O LA( RUTI-A(

    :a sab-is que cuando programamos con 'o4erCobol, en realidad estamosdesarrollando una programación orientada a eventos, es decir los procesos se eecutan

    cuando algún evento ha entrado en acción, por eemplo al hacer clic con el ratón sobrealgún 'ush )utton, al introducir un te#to en un 'icture %dit, etc ... 'ero tambi-n esposible que algunos de esos procesos se vayan a repetir en mas de una ocasión,entonces el hecho de copiarlos en cada evento no nos estara facilitando laprogramación.

    'ara ello utiliza 'o4er la 'rocedure de cada &heet para introducir los procesos que noson propiedad de algún evento en concreto. %n realidad son como peque"osprogramas aloados dentro del propio programa, ya que cada uno debe de tener uninicio con =%N+6CA+0N =!&0N y un fin con %N= '20;2A/. 'ero todas iránseguidas una debao de otra dentro de la '20C%=

  • 8/20/2019 Curso de Power Cobol II

    26/28

    Curso de Power Cobol

      =A+A =!&0N.  '20C%=

  • 8/20/2019 Curso de Power Cobol II

    27/28

    Curso de Power Cobol

    demos un nuevo contacto de alta o cuando borremos alguno, para que la tablasiempre sea el refleo del fichero. %sta acción es sumamente rápida en ningún casoralentizará el programa.

    %sta sera su programación.

    Pro+ra%acin  =%N+6CA+0N =!&0N.  '20;2A/(=. CA2;A2 & C0//0N.  %N!20N/%N+ =!&0N.  =A+A =!&0N.  '20C%=

  • 8/20/2019 Curso de Power Cobol II

    28/28

    Curso de Power Cobol

      6 '20;2A/(&+A+