Manual Power Builder

download Manual Power Builder

of 84

Transcript of Manual Power Builder

Distribuido por : www.ctv.es/USERS/richardson

Realizado por : Juan Paulo Soto C. y Ral Yaez Khler. Ultima modificacin: 02/16/1999 17:51:00

2/84

TEMARIO :

Introduccin Ambiente de Desarrollo Aplicacin Mantencin Propiedades Eventos Ventanas Controles Propiedades Controles Eventos Controles PowerScript Ambito Utilizacin Operadores Matemticos Flujos de Control Utilizacin de Herramientas Listado de Funciones Sentencias SQL-Incrustado Listado de Sentencias(If, For, Do, etc.) Compilacin Buscador

Funciones Estructuras Definir Estructuras Trabajar con Estructuras Menues

3/84/

Libreras

Base de Datos Tablas Definicin de Campos Atributos Adicionales Propiedades Tabla Modificar Tabla Eliminar Tabla Claves Indices Actualizar Datos Tabla Estilos de Edicin Reglas de Validacin Objeto de Transaccin

Datawindows Origen de Datos Barra de Utiles Presentacin Elementos Grupos Otros Proyecto

Utilizacin Datawindows Manejo de Datawindow Control Funciones para el Manejo Aadir Eliminar Buscar Filtrar Registros Actualizar Base de Datos Modificar Presentacin Describe Modify Imprimir Datawindow Control Eventos

4/84

SQL Incrustado No Cursores Select Insert Update Delete Cursores Declarar el Cursor Abrir el Cursor Trabajar con el Cursor Cerrar el Cursor

5/84/

IntroduccinPowerBuilder es una herramienta de desarrollo de aplicaciones para el ambiente Windows, como tal utiliza las caractersticas de este ambiente. Primero debemos entender que el ambiente Windows permite esta bajo en concepto "Lo que Ud. ve es lo que puede realizar", bajo este contexto la presentacin cobra mucha importancia. La etapa de diseo es aquella en la cual el programador, escribe el cdigo fuente del programa ejecutable.

Programacin Orientada al ObjetoEste concepto es sencillo de entender si lo aclaramos con un ejemplo, una silla es un objeto; los elementos que la caracterizan son los atributos (color, altura, etc.). Todos estos atributos (caractersticas del objeto) pueden tomar valores dentro de un dominio definido por la caracterstica en si (color no puede tomar el valor 1,2 metros, la altura no puede ser amarillo, etc.) Ahora veamos su relacin con los objetos en la programacin, un objeto en programacin es un elemento que posee caractersticas, pero ms an posee mtodos (funciones) que han sido definidas para interactuar en operaciones comunes con dicho objeto. Ej. buscar un tem en una lista. Una instancia particular de un objeto se convierte en una variable, para todos los fines de la programacin, sus atributos se convierten en campos de esta.

Tipos de ObjetosExisten dos tipos de objetos: a)VISUALES: Son aquellos que pueden ser vistos por el usuario en el monitor de su computador. Ej. Botones, ventanas, etc. b)NO VISUALES: Son aquellos que aunque no pueden ser vistos por el usuario, poseen todas las caractersticas de estos. Ej. Errores, Objetos de Transaccin (SQL) En una aplicacin Power los objetos No visuales son muy necesarios para que los objetos Visuales interactuen con otros elementos ajenos al Sistema computacional en si.

Atributos, Eventos, Mtodos (Funciones)Como ya se menciono previamente un objeto esta constituido por Atributos; estos lo caracterizan. Existen atributos que pueden modificarse y otros no. Tambin existen atributos que son modificables tanto durante el diseo de la aplicacin en si, como durante la ejecucin, y otras que solo pueden ser modificadas durante el diseo.

6/84

Los mtodos, son funciones destinadas a manipular elementos que son definidos en conjunto con el objeto, esto implica que un objeto solo puede manipular elementos que estn contenidos en el( efecto "caja negra")ej. en un objeto lista, la funcin buscar solo lo hace en los tems del objeto lista. Este principio se denomina Encapsulamiento , y permite una autonoma de cada objeto con su entorno. Eventos, cada accin que se puede realizar sobre el objeto es un Evento; ej. Hacer un click sobre un objeto botn, presionar una tecla al escribir en un objeto caja de texto, etc. Cada una de estas acciones es independiente una de otras, pero no necesariamente son excluyentes. Ej. al presionar el botn se realizan los Eventos Cerrar de la ventana, y el evento Destruir tambin de la ventana; el primero se realiza al sacar la ventana de la pantalla y el segundo se realiza cuando se saca la ventana de la memoria principal. Tambin es necesario indicar el principio de la Herencia, como en el ser humano un hijo hereda algunos rasgos de sus progenitores, en la programacin orientada al objeto, un objeto puede heredar los valores dados a un atributo, junto con todas las caractersticas dadas al objeto origen (cdigo, otros objetos contenidos dentro de este, etc.); pero con la libertad de deshacerse de estos o aadir nuevos sin alterar al objeto original.

7/84/

Ambiente de DesarrolloEl ambiente de desarrollo de Powerbuilder permite trabajar con todos los elementos que son necesarios para la realizacin de un proyecto. Para ejecutar PowerBuilder vaya al botn Inicio de Windows, la opcin Programas el tem Powersoft 5.0 y dentro de este el elemento Powerbuilder 5.0 for Intel.

CaractersticasEl ambiente de diseo de aplicaciones de Power esta contenido en un MDI (Mltiples Ventanas Contenidas), lo que permite que pueda contener en forma ordenada todas las tareas que uno puede realizar en forma continua en las reas de Desarrollo.

Areas de DesarrolloPower posee muchas reas de trabajo para el desarrollo de los elementos que conforman una aplicacin, cada una genera un elemento que debe ser guardado en un archivo de librera (*.pbl) donde ser almacenado para su utilizacin. Se podr tener abierta mltiples reas de desarrollo, pudiendo cambiarse de una a otra a travs del men Windows, donde aparece con una marca el rea donde esta actualmente y el elemento en el que se esta trabajando.

Adems, uno podr tener varios elementos de la misma rea abierto, para efectos de trabajo con ellos cada uno de estos es independiente. Es importante hacer notar, que algunas opciones del men se vern alteradas al estar en una u otra rea de desarrollo. Las reas de trabajo son enumeradas en la opcin PowerPanel del Men Archivo, y tambin se presentan en una Caja de Herramientas (como la que se ve a continuacin).

8/84

Las Areas de Trabajo son las siguientes:Area Descripcin Permite definir las caractersticas comunes que tendr la aplicacin, como son fuente de letra para las etiquetas, controles, etc. Tambin permite definir las Libreras que conforman la aplicacin, y las acciones que se deben realizar al iniciar/terminar la aplicacin, como son la ventana de inicio, etc. La aplicacin se torna en la cabeza de la aplicacin. Project Permite crear un archivo ejecutable, y especificar los componentes que irn con esta aplicacin. Window Permite trabajar con las ventanas que conformaran la aplicacin. Las ventanas se convierten en contenedores de los objetos visuales, es decir, estn puestos encima de esta; para que el usuario pueda manipularlos. User Object Permite definir nuevos tipos de objetos; a partir de los ya existentes o bien crendolos con una programacin C++. El primer tipo es el ms utilizado, ya que se puede formular cdigo estndar, y de esa manera disminuir el nmero de lneas de cdigo. Estos objetos aqu definidos pueden ser utilizados en cualquier ventana de la aplicacin. Menu Permite declarar los menes. Esto significa que pueden existir diversos listados de menes que sean utilizados por una aplicacin. Junto con esto es posible definir las acciones a realizar cuando se selecciona cualquier tem del men hecho. Structure Permite definir las estructuras de datos que sern utilizadas por la aplicacin. Se entiende por estructura de datos, un elemento que contiene subelementos en el, y que son dependientes de este. Se puede reflejar mucho mejor esto en la idea de registro. Function Permite definir las funciones que sern utilizadas por la aplicacin, y podrn ser accedidas desde cualquier parte de la aplicacin. Ests funciones podrn o no retornar un valor, y pueden o no tener parmetros. Datawindow Permite definir los datawindows, estas son consultas que estn unidas a una presentacin definida por uno. Donde se puede definir reglas de validacin para cada campo, y estilos de presentacin, Ud. puede definir argumentos, uniones, ordenamiento criterios de seleccin y agrupamiento. Query Es utilizado para definir y guardar una consulta Select en forma grfica, esto permite que pueda ser utilizada por objetos datawindows. Pipeline Un objeto Tubera es usada para administras el traspaso de datos durante la ejecucin de una aplicacin. Normalmente se hace esto para hacer traspasos masivos de datos desde una Base de Datos a otra. Configure ODBC Permite definir un profile (definicin) de conexin, el que utilizara el controlador seleccionado; el que deber estar presente en la mquina. DB Profile Permite seleccionar un profile, previamente definido, con el que se conectara a la Base de Datos correspondiente. Para cada tipo de Base de Datos los parmetros con los que se sirve para conectarse podran variar, infrmese. Database Permite trabajar con la Base de Datos conectada actualmente al seleccionar un profile del rea DB Profile. Aqu es posible Crear/Modificar Tablas, Claves Primarias/Forneas, Manipular datos. Library Use est rea de trabajo para crear y mantener las libreras, y los objetos que contienen estas. Estos objetos pueden ser la Aplicacin, Ventanas, Menes, etc. Use el botn Aplication Properties , o bien la misma opcin del men al presionar el botn derecho del mouse; para modificar la descripcin dada a cada objeto. Tambien es posible copiar, mover objetos de una librera a otra, o bien eliminarlos expresamente. Permite ejecutar la aplicacin desde su comienzo, si estuviera trabajando en un Area de Trabajo, se le pedira que guarde los cambios antes de iniciar la ejecucin de la aplicacin. Permite ejecutar una ventana solamente, no es una previsualizacin de est; realmente se ejecutan el cdigo contenido en cada objeto. Es importante que la Base de Datos con la que uno este trabajando este conectada va el objeto no visual de transaccin para que no se produzcan errores. Termina la ejecucin del Ambiente Powerbuilder.

Run Run window

Exit

9/84/

Todos estos botones estn presentes en la primera barra de herramientas, la que recibe el nombre de PowerPanel ("Barra de Herramientas Areas de Trabajo").

Cada Area de trabajo tiene su propia Barra de Herramientas, la que se llama PainterBar ("Barra de Herramientas del Area de Trabajo"), la que se presenta como una segunda barra de herramientas.

10/84

Aplicacin

11/84/

Para Powerbuilder una aplicacin es un objeto, debe ser nico dentro de todas las libreras que conformaran la aplicacin en si. Para trabajar con la aplicacin presione el botn .

MantencinNueva Aplicacin: Para iniciar una nueva aplicacin seleccione la opcin New desde el tem File de la barra de men, o bien presionando el botn desde la segunda barra de herramientas. Aparecer una ventana donde Ud. deber seleccionar el lugar donde se depositara el archivo (*.PBL) y junto con esto el nombre de dicho archivo, estilo ventana "Guardar". Luego deber ingresar el nombre de la aplicacin en una ventana como la que sigue.

En la caja de texto Comment, podr ingresar algn comentario explicativo. Luego presione el botn Ok.

Su aplicacin aparecer as

Abrir una Existente Para abrir una aplicacin existente seleccione la opcin Open desde el tem File de la barra de men, o bien presione el botn desde la segunda barra de herramientas. Busque el archivo (*.pbl) que contenga el objeto aplicacin.

Guardar Cambios

12/84

Para guardar los cambios al modificar seleccione la opcin Save desde el tem File de la barra de men, o bien presione el botn desde la segunda barra de herramientas.

PropiedadesPresione el botn o vaya al men Entry opcin Properties.

Los atributos de la aplicacin tienen relacin con caractersticas globales de la aplicacin como son fuente predeterminadas de las letras para las cajas de texto, etiquetas, etc. Tambin se puede definir el icono que tendr la aplicacin cuando se haga el archivo ejecutable de est.

TpicoGeneral .. Font Icon Variable Libraries

DescripcinPermite obtener informacin del objeto aplication. Permite definir caractersticas de presentacin visual de elementos. Permite definir el icono de la aplicacin. Permite conocer las variables globales por defecto y su tipo. Permite declarar las libreras que conforman la aplicacin.

EventosLos eventos ms utilizados para un objeto aplication son:

EventoOpen Close

DescripcinLas acciones cuando inicie la ejecucin de la aplicacin. Las acciones cuando termine la ejecucin de la aplicacin.

Ventanas

13/84/

Las Ventanas son como contenedores, es posible poner en ellos una diversidad de objetos. Estos objetos se denominan en forma genrica Controles. Para trabajar en el diseo de una ventana presione el botn , de la barra de Areas de Trabajo. Inmediatamente aparecer una ventana donde podr seleccionar una de las ya existentes y presionar Ok para seguir trabajando en ella, o puede presionar el botn New para comenzar a disear una nueva ventana.En la parte superior aparece el nombre del objeto ventana. El rectngulo que esta inmerso en la ventana corresponde al objeto ventana en diseo.

Nueva VentanaDespus de presionar el botn New aparecer una ventana vaca. Ud. puede redimensionar desde los bordes de la misma. Al cerrar la ventana de Diseo, se le preguntara por el nombre que le dar a la nueva ventana.

Propiedades ventanaLas propiedades de la ventana estn organizados en forma de tpicos. Aqu no se mencionaran todos los tpicos, ya que algunos se repiten para todos los Controles (ver Controles)

TpicoGeneral

DescripcinCasilla Title, indica el texto de titulo de la ventana. La casilla Menu Name, indica el nombre del objeto Menu para la ventana. Window Type, indica el tipo de ventana: Child, ventana que permanece inserta dentro de una ventana MDI. Main, ventana normal, con posibilidad de men. MDI Frame, ventana que posee rea interna para contener otras ventanas. MDI Frame with , igual que la anterior, pero con barra de estado inferior. Response, necesita cerrar esta ventana para continuar ejecucin. Permite indicar la posicin de la ventana dentro de la pantalla, como ser presentada. Utilice el esquema inferior para mover la ventana. Identifica al Icono que aparecer en la parte izquierda de la cabecera de la ventana. Permite definir si la ventana tendr barras de desplazamiento, y la unidad a utilizarse por ellas. Permite definir si se utilizara la caja de herramienta definida para el menu, su presentacin y posicin.

Position Icon Scroll ToolBar

14/84

Controles

15/84/

Son los objetos visuales que pueden ser puestos en la ventana. En la barra de herramientas secundaria, el botn que esta en el segundo grupo, muestra el listado de todos los objetos elementales que es posible de utilizar. Adicionalmente se pueden disear objetos con caractersticas adicionales para ser utilizadas tambin. Los controles bsicos son:

ControlCommanButton PictureButton CheckBox RadioButton StaticText Picture SingleLineEdit EditMask DropDownListBox ListBox Datawindow

Icon DescripcinBoton, puede visualizar un texto en el. Presenta la capacidad visual de sobresalir y achatarse al presionar el mouse sobre el. Botn con n. Tiene todas las caractersticas del control anterior, pero adicionalmente permite mostrar una n dentro del mismo botn. Permite hacer una seleccin (marcarlo) entre varias alternativas. En el primero cada alternativa es independiente. En el segundo solo una alternativa, del conjunto, puede seleccionarse Caja de texto, como etiqueta. Solo para mostrar informacin, no hay posibilidad que pueda escribirse directamente en el. Caja de dibujo, permite visualizar una n. Esta puede ser definida en tiempo de diseo, o puede ser modificada en tiempo de ejecucin. Caja de edicin de texto, es posible que el usuario en tiempo de ejecucin escriba un texto dentro de la misma caja. Caja de texto, a la que se le puede restringir el conjunto de caracteres a ingresar. Permite un formato de presentacin. Caja de lista desplegable. Muestra un solo tem, el seleccionado, de la lista que se despliega al presiona el botn adjunto. Caja de lista. Muestra todos los tems a la vez, pudiendo seleccionarse inclusive, ms de uno. Datawindow Control, el que se vincula con un objeto Datawindow diseado.

Para aadir un control a la ventana, seleccione el control, del listado. Presione el mouse sobre el lugar en la ventana donde desea aadirlo. Para seleccionar un control de la ventana, presione el mouse sobre el, o mantenga presionado la tecla Control para seleccionar mltiples objetos. Puede moverlo, manteniendo presionado el mouse al mover este.

16/84

Propiedades Controles

17/84/

Las propiedades de los controles pueden ser modificados, tanto en tiempo de diseo, como en tiempo de ejecucin; va cdigo. Para ver las propiedades de un control, presione el mouse dos veces. Las propiedades de todo control estn ordenadas por tpicos, estos pueden variar levemente entre controles. Los ms comunes son:

TpicoGeneral

DescripcinName, indica el nombre del objeto. La casilla Text, indica el texto a ser mostrado. Tag, permite guardar cualquier dato. Visible, indica si el objeto puede verse. Enabled, indica si objeto esta activamente disponible. Para los Botones: Default indica que si se presiona el Enter en cualquier parte de la ventana, se activa dicho botn. Cancel indica que si se presiona la tecla Escape, se activa dicho botn. Para las cajas de Edicin, Etiqueta y Lista Desplegable: Alignment, indica la alineacin del texto. Case el tipo de presentacin. Border indica el tipo de borde. Limit, el nmero de caracteres a dejar ingresar. Para la Lista Desplegable: Allow Edit, indica que se puede escribir un tem adems de seleccionarlo. Sort, indica que el listado ser ordenado alfabticamente. Para la Lista: Multi Select, indica posibilidad de seleccin mltiple. Permite definir el tipo de letra, tamao y caractersticas de presentacin del texto visible. Text Color, indica el color del Texto. Background, indica el color de fondo. Indica las coordenadas X e Y, tambin se indica el largo (Width) y el alto del objeto (Height) Indica el tipo de Icono, que ser utilizado por el cursor cuando este pase por encima del objeto en tiempo de ejecucin. Para los objetos lista, permite ingresar el texto de cada tem. Para la mascara, permite definir la mascara de entrada de datos. Seleccione Type para ver en Masks, los posibles caracteres a utilizar. Cualquier otro carcter se considera un litera.

Font Position Icon Items Mask

Eventos ControlesLos eventos ms comunes, los que no necesariamente estn presentes en todo control son:

EventoClicked GetFocus LoseFocus DoubleClicked SelectionChanged RButtonDown Modified

DescripcinCuando el usuario presione el mouse sobre el rea que conforma el objeto visual. Cuando el objeto obtiene la atencin, se mouse el cursor sobre el. Cuando el objeto pierde la atencin. Cuando el usuario presiona dos veces el mouse sobre el rea que conforma el objeto visual. Cuando se cambio de tem seleccionado. Cuando se presiona el botn derecho del mouse sobre el rea que conforma el objeto visual. Cuando el control pierde la atencin, se presiona Enter o Tab, o el texto es modificado.

18/84

PowerScriptTodo lenguaje de programacin contiene sentencias propias que le permiten manipular la informacin, permite separar cursos de accin dependiendo de ciertos valores, o bien

19/84/

sencillamente presentarla al usuario. Todo esto debe ser realizado por el programa en forma autnoma y aveces sin participacin externa, por ende se debe ser previsor al momento de disear y programar una aplicacin. El siguiente capitulo presenta las sentencias que son requeridas para la manipulacin de la informacin por parte del programa en si.

Tipos de datosLos tipos de datos que estn definidos para PowerBuilder son los siguientes, se denominan "Tipos de Datos Estndar".Tipo de Dato

Blob Boolean Char Date DateTime

Descripcin Objeto binario largo. Usado para almacenar una gran cantidad de datos, pero cuyo largo no esta claro.(ej. Imgenes, archivos de texto, documentos) Contiene solo Verdadero o Falso. (TRUE o FALSE) Almacena un nico carcter ASCII. Incluye una fecha, en formato americano (yy[yy],mm, dd) Ao (1000- 3000), mes (01- 12) y das. (01- 31) Contiene la Fecha y la Hora en un nico tipo de dato, usado solo para lectura o escritura de valores DateTime definidos en una Base de Datos. Para convertir un valor DataTime en un tipo de dato que pueda ser usado en PowerBuilder (date, time), use: Date(DateTime), para convertir un valor DateTime en un valor Date. Time(DateTime), para convertir un valor DateTime en un valor Time. DateTime(Date, Time), para convertir un Date y un Time en un valor DateTime Soporta nmeros decimales con sobre 18 dgitos. Ej. 123456,000001 Nmeros con punto flotante, con 15 dgitos de precisin y un rango desde 2.2E308 a 1.7E+308. Un entero de 16 bits, con rango de -32768 a +32767. Un entero largo de 32 bits, con rango de -2,147,483,648 a +2,147,483,647. Un numero con punto flotante, con 6 dgitos de precisin y un rango desde 1.17 E -38 a 3.4 E +38. Cualquier carcter ASCII con un largo variable. (0 a 60,000) Hora en formato 24 horas, incluye la hora (00-23), minutos (00- 59) segundos (00- 59) y fraccin de segundos (sobre 6 dgitos). Con un rango desde 00:00:00 a 23:59:59.999999

Dec Double Int Long Real String Time

Definicin de Variables/ConstanteUna variable se define anteponindole el tipo de dato que sera permitido para esa variable. Ej. Se desea declarar una variable de tipo entera y de nombre 'monto_cuota' integer monto_cuota string nombre

Ud. puede declarar varias variables del mismo tipo, separando cada una de estas con una coma (,) Ej.

20/84

integer monto_cuota, total_cuota= 0 Nota: Como Ud. podr notar a la variable se le asigno un valor inicial. Esto se puede realizar con cualquier variable, teniendo cuidado de asignar un valor que corresponda con el tipo de dato. Para declarar una variable como una constante, el valor asignado inicialmente no podr ser modificado durante el programa, se antepone la palabra clave CONSTANT. Ej. constant real LR_PI = 3.14159265

AmbitoExisten 4 tipos de mbito, alcance dentro de los mdulos del programa, en donde podr ser utilizada una variable. Estos cuatro mbitos sern mencionados a continuacin. Los tres primeros son definidos fuera de cualquier modulo ejecutable, y se declaran en el Area de trabajo de las Ventanas, en el men Declare.

Todos estos tienen la misma ventana de ingreso de variables, solo cambiando el mbito (rango) de uso de la variable dentro del programa.

GlobalEs aquella variable/constante que podr ser utilizada en toda la aplicacin, es decir; podr hacerse referencia a ella desde cualquier modulo del programa.

21/84/

Para declarar una variable global. Estando en cualquier modulo de cdigo, seleccione el men 'Declare' opcin 'Declare Global'; aparecer la ventana de declaracin de variables, donde Ud. podr definir la(s) variable(s) como se explico anteriormente. Tambin Ud. puede declarar un 'cursor' (vea el tpico SQL Incrustado) que podr ser referenciado desde cualquier parte de la aplicacin. Para ello solo presione el dibujo que dice 'Cursor' y siga las mismas indicaciones que se dan en la Seccin 'Cursores' del tpico 'SQL Incrustado'.

Globales solo al Objeto (Instance)Las variables que sean declaradas como Globales solo al Objeto, podrn ser utilizadas en cualquier cdigo fuente, pero solo del objeto donde se declaro (ventana, men, objetos del usuario), es decir, donde se defina la(s) variable(s). Tambin podrn ser utilizadas por todos los objetos que estn inmersos en el (ej. botn en una ventana) Para declarar una variable global al Objeto. Estando en cualquier modulo de cdigo o en la definicin de la ventana, seleccione el men 'Declare' opcin 'Declare Instance. Aparecer la ventana de declaracin de variables, ventana donde Ud. podr definir la(s) variable(s) como se explico anteriormente. Tambin Ud. puede declarar un 'cursor' (vea el tpico SQL Incrustado) que podr ser referenciado desde cualquier parte de la ventana especifica. Presione el dibujo que dice 'Cursor' y siga las mismas indicaciones que se dan en la Seccin 'Cursores' del tpico 'SQL Incrustado'.

Recordantes (Shared)Las variables declaradas de este tipo igual que las del tipo anterior (Instance) solo pueden ser reconocidas dentro del objeto especifico donde se declaro (ventana, men, objeto del usuario) , pero estas ltimas tienen la particularidad de conservar el valor almacenado en esta al momento de cerrar y abrir nuevamente el objeto en cuestin. Para declarar una variable global al Objeto de tipo Shared. Estando en cualquier modulo de cdigo o en la definicin de la ventana, seleccione el men 'Declare' opcin 'Declare Shared. Aparecer la ventana de declaracin de variables, ventana donde Ud. podr definir la(s) variable(s) como se explico anteriormente. Tambin Ud. puede declarar un 'cursor' (vea el tpico SQL Incrustado) que podr ser referenciado desde cualquier parte de la ventana especifica. Presione el dibujo que dice 'Cursor' y siga las mismas indicaciones que se dan en la Seccin 'Cursores' del tpico 'SQL Incrustado'.

Locales (al Modulo)

22/84

Estas variables son declaradas en el mismo cdigo del modulo en cuestin, y solo tienen vida en este, no pueden ser compartida por otros mdulos del mismo objeto inclusive.

UtilizacinUna variable puede ser utilizada para asignarle un valor, comprobar su valor, asignarle su valor a otra variable Ej. Asignarle un valor. monto_cuota=13 nombre= 'Ricardo' Comprobar su valor If monto_cuota=13 Then ... If nombre 'Ricardo' Then ... Asignarle su valor a otra variable total_cuota= monto_cuota Una variable tambin puede aparecer tanto en la parte 'asignante ' (quien recibe el valor) como en la 'asignadora' (quien genera el valor a asignar) Ej. monto_cuota=monto_cuota+12 Operadores Matemticos, relacinales y lgicos Los operadores matemticos son los siguientes: Suma Resta Multiplicacin Divisin

+ * /

Adems existen los agrupadores de expresiones matemticas:

23/84/

'(', indica comienzo de la Agrupacin. ')', Indica fin de la agrupacin Ej. monto_cuota = (23 * monto_cuota)* 13 Los operadores relacinales son los siguientes: O inclusivo y inclusivo Negacin Igualdad Desigualdad Menor Menor o igual Mayor Mayor o igual Ej. If monto_cuota=12 AND NOT objeto.enabled Then ... Adicionalmente existen 2 valores constantes. Verdadero True Falso False OR AND NOT = < >=

Flujos de ControlLos flujos de control permiten que las acciones ha ser realizadas puedan ser bifurcadas a otra dependiendo de alguna expresin condicional. Existen 2 tipos de flujos de control Condicional Iterativo Condicional Se refiere a que el flujo de control es bifurcado desde una sentencia, o conjunto de estas, a otra, o conjunto de estas. Existen 2 clase de Flujos de control condicionales IF..THEN..ELSE La sentencia 'If' permite bifurcar la ejecucin del cdigo entre 2 caminos posibles dependiendo de la veracidad o no de una expresin condicional El tamao, en lneas de cdigo, de los segmentos, 'verdadero' o 'falso' no tienen un limite.

Ej. If monto_cuota=13 Then nombre= 'Ramiro'

24/84

Else nombre= 'Francisco' End If Tambin es posible anidar varios 'If..Then..Else' consecutivamente. Ej. If monto_cuota=13 Then nombre= 'Ramiro' ElseIf monto_cuota=15 Then nombre= 'Roberto' Else nombre= 'Francisco' End If

CHOOSE Permite bifurcar la ejecucin del cdigo entre mltiples caminos posibles; dependiendo de la veracidad o no de una expresin condicional, principalmente una variable. El tamao, en lneas de cdigo, de los segmentos 1..'n' no tienen un limite. Ej. Choose case monto_cuota Case Is< 13: nombre='Ramiro' Case 16 To 48:nombre= 'Roberto' Else nombre='Francisco' End Choose Cada Case puede tener los siguientes valores: Un valor Una lista de valores separados por coma. (ej. 2, 4, 6, 8) Una clusula TO, desde hasta. (ej. 1 TO 30) Una clusula IS seguida por un operador relacional y un valor a comparar. (ej. IS>5) Cualquier combinacin de lo anterior, implcitamente indica un OR. (ej.1, 3, 5, 7, 9, 27 TO 33, IS >42)

25/84/

IterativoSe refiere a la repeticin de una(s) sentencia(s) que son definidas dentro de un bloque clarificado por una sentencia iterativa. Existen 2 clases de Flujos de control Iterativos. FOR..NEXT..STEP La sentencia for permite repetir una(s) sentencia(s) un nmero definido anterior al comienzo de la ejecucin de estas sentencias. El tamao, en lneas de cdigo, del segmento 1, no tienen un limite. Ej. for i= 1 to 23 j= i + ( j * 1.2 ) next La variable i se denomina "contador", el valor final de iteraciones no debe ser superior al rango definido para el tipo de dato del contador. Si el valor de i es superior al valor final de iteracin, las sentencias no se ejecutan. Ej. For n = 5 to 25 step 5 a = a+10 Next En este ejemplo la sentencia se ejecutara cuando n>=5 y n 15 // A sea mayor que 15. Beep(A) A = (A + 1) * B LOOP integer A = 1, B = 1 //Emite un pito por los parlantes mientras la variable DO WHILE A 3 THEN CONTINUE MessageBox("Hola", "B es = " + String(B) ) LOOP

Utilizacin de HerramientasPowerbuilder posee un conjunto de herramientas destinadas a facilitar la creacin de cdigo fuente para un programa. Todas esta herramientas pueden ser utilizadas en cualquier modulo, donde se pueda escribir sentencias ejecutables. Las Herramientas son: Listado de Funciones Sentencias SQL-Incrustado Listado de Sentencias(If, For, Do, etc.) Compilacin Buscador

Adems existen palabras reservadas destinadas a hacer referencia a objetos pertinentes, estas son:

28/84

DescripcinThis Parent Indica el objeto en el cual se esta codificando. Ej. this. Text = "hola" Indica el objeto que contiene uno particular donde se esta codificando Close( parent )

Listado de Funciones Para accionar el listado de funciones presione el botn , a continuacin aparecer una ventana donde Ud. podr seleccionar la funcin especifica. Existen 3 agrupaciones (Funciones de PowerBuilder, Funciones de la Aplicacin creadas por el Usuario y Funciones externas de DLLs conectados a la Aplicacin). Las funciones estn ordenadas en forma ascendente, si desea buscar una funcin, escriba las primeras letras de esta, estando el foco en el listado de funciones.

Cuando seleccione la funcin, presione Ok y esta se pegara en la ventana de edicin del Script en la ubicacin del cursor actualmente.

Sentencias SQL-Incrustado Para accionar las Sentencias SQl-Incrustado presione el botn , a continuacin aparecer una ventana donde podr seleccionar el tipo de Sentencia SQL y cual especficamente( haciendo doble clic sobre la misma), o seleccionndola y presionando el botn Ok. Esta sentencia se pegara en el Script del modulo en el lugar donde este el cursor.

Listado de Sentencias(If, For, Do, etc.)

29/84/

Para accionar el Listado de sentencias presione el botn , aparecer una ventana donde Ud. podr seleccionar la sentencia especifica, solo una a la vez.

La sentencia se pegara en el Script del modulo, en el lugar donde este el cursor.

Compilacin La compilacin es el proceso durante el cual el modulo es revisado para encontrar errores sintaxis o lxicos. Para accionar este proceso presione el botn , en la parte inferior de la ventana del Script aparecer un listado de los errores encontrados, si los hubiera.

Buscador El buscador permite obtener la informacin de los objetos que conforman la aplicacin, informacin como; las funciones del usuario, las ventanas, datawindows existentes y todo objeto (atributos, funciones, etc.) que este presente en las ventanas.

Para accionarlo presione el botn , aparecer una ventana como la anterior que tiene todos los tpicos por los cuales buscar un objeto.

30/84

Estn organizados en forma jerarquizada y con subtpicos. A la mano izquierda estn los objetos del grupo especificado, y a la derecha los tpicos por los cuales buscar. Seleccione un objeto, el tpico y el elemento especifico; luego presione el botn Paste y la sentencia especificada se pegara en donde este el cursor dentro de la ventana del Script

Otras HerramientasComentarios Los comentarios, si es una lnea se antepone a la mano izquierda dos slash (//); eso significa que todo lo que este a la mano izquierda de estos dos signos ser considerado como comentario. Para poner comentarios; seleccione las lneas y presione el botn Para quitar los comentarios; seleccione las lneas y presione el botn

.

Herramientas de EdicinPodr hacer uso de las opciones de edicin utilizando lo botones "Copiar" ( , "Cortar" ( , "Pegar" ( ); las que estn presentes tambin en el men Edit, o bien utilizando las teclas de accin directas.

Listados en Mdulos Todo modulo ejecutable tiene una barra, ms o menos, parecida a la siguiente.

En la Barra del titulo de la ventana aparece "Script", que quiere decir "Cdigo". Al lado esta el nombre del modulo "Vaca", si fuese un objeto esta precedido por el nombre del Evento "Open" y luego el tipo de dato que puede ser devuelto por el modulo ejecutable. Debajo de la Barra de Titulo, aparecen un conjunto de listas desplegables, si se selecciona un elemento que este contenida en una de ellas; este elemento (nombre) se pega en el cdigo, donde este el cursor.

Si fuese un objeto, donde se esta escribiendo cdigo, la primera lista es para seleccionar el evento donde se escribir.

31/84/

El listado "Paste Argument", permite pegar el nombre de un argumento del modulo en cuestin. El listado "Paste Object", permite pegar el nombre de los dems objetos contenidos en la ventana o men, donde este el modulo en cuestin. El listado "Paste Global", muestra todas las variables/constantes declaradas como Global, y permite pegar cualquiera de ellas. El listado "Paste Instance", muestra todas las variables/constantes declaradas como Instance, y permite pegar cualquiera de ellas.

32/84

FuncionesLas funciones en Powerbuilder pueden o no devolver un valor, este valor se conoce como "Valor de Retorno" de la funcin. Las funciones se declaran como elementos

33/84/

independientes y reconocibles en una librera, y puede ser utilizados desde cualquier parte de la aplicacin. Para trabajar con las funciones seleccione el icono de la barra de herramientas PowerBar. Aparecer la ventana de seleccin de funcin; seleccione la funcin ya creada para seguir trabajando en ella, y luego presione el botn Ok, o bien presione el botn New si desea crear una nueva funcin.

Declaracin de FuncionesAl aparecer la ventana de seleccin de funcin, presione el botn New, aparecer una ventana como la que sigue:

Name, indica el nombre de la nueva funcin. Returns, indica el Valor de retorno, si la funcin no devolviera un valor de retorno, seleccione none. Arguments, indica los argumentos (parmetros) de la funcin

Parmetros Una funcin puede o no tener parmetros, un parmetro es un valor o variable que es pasado a la funcin para que la utilice en ella. Al definir una funcin se declaran los parmetros que podr tener. El mismo nmero de parmetros y el mismo tipo de dato para cada uno de ellos debe ser puesto al utilizar la funcin.

Declarar los Parmetros Escriba el nombre del parmetro (nombre por el cual se har referencia en el interior de la funcin) en la columna Name.

34/84

Seleccione o escriba el nombre del tipo de dato, en la casilla de la columna Type. Seleccione el tipo de paso, en la casilla de la columna Pass By. Notara que cada parmetro tiene una posicin definida en la columna Positor, esta misma posicin debe estar al hacer la llamada a la funcin.

Pasada de Parmetros Al declarar cada parmetro se debe indica como se pasara el parmetro a la funcin, existen 3 tipos de pasada; las que son:

TipoValue

DescripcinEl valor del parmetro pasado se copia al parmetro declarado, es decir, todo cambio que se haga al parmetro dentro de la funcin no alterara el valor del parmetro pasado. El parmetro declarado esta relacionado con el parmetro pasado, es decir, todo cambio que se haga al parmetro dentro de la funcin, al terminar esta, quedara registrado en el parmetro pasado. Indica que el parmetro es de solo lectura (constante), no se podr utilizar dentro del funcin como una variable.

Reference

ReadOnly

Si la funcin requiere ms parmetros presione el botn Add, este nuevo parmetro se anexara al final de los ya existentes. Si desea colocar un nuevo parmetro entre otros, presione el botn Insert. Para eliminar un parmetro haga un clic sobre el y presione el botn Delete.

Valor de retorno Elija el tipo de dato que ser retornado al utilizar la funcin. Los tipos de datos pueden ser los definidos en el listado o bien escriba un tipo de dato que Ud. haya definido en la aplicacin. Si el valor de retorno fuese asignado a una variable al llamarse a la funcin, tenga presente que dicha variable debe ser del mismo tipo del seleccionado en el campo Return.

Cdigo FuncinDentro del cdigo los parmetros son meras variables, y podrn ser utilizadas como tales (si no existen restricciones en su definicin).

35/84/

Se termina la ejecucin de la funcin con la declaracin Return. Si se devolviera un valor esta deber ir despus de return entre parentesis. Se podrn utilizar las funciones primitivas, declaracin de variables locales, flujos de control, etc. Si desea modificar algo de la declaracin de la funcin presione el botn .

36/84

EstructurasLas estructuras de datos es una manera de organizar la informacin que esta contenida en un elemento para que sea ms fcil su administracin. Estas se pueden comparar con registros de datos donde, cada elemento particular de este es un campo. Los campos son

37/84/

elementos diferenciables uno de otro; como si fueran simples variables, pero; estando unidos por la definicin de la estructura. Ej. Estructura: PersonaCampos nombre edad sexo Tipo String integer char

En las estructuras de datos no es posible definir reglas de validacin tcitas, o restricciones de entradas. Como por ejemplo "Sexo='M' o Sexo='F'", estas deben ser definidas en el cdigo fuente. Los tipos de datos para cada campo pueden ser primitivos de Powerbuilder, objetos de Power o bien objetos definidos por el usuario. Para trabajar con las estructuras presione el boton , al hacerlo; aparecer la conocida ventana de seleccin. Ud. podr elegir una estructura ya definida previamente, para continuar trabajando con ella, o bien podr crear una nueva estructura presionando el botn 'New'.

Definir EstructuraDespus de presionar el botn 'New' aparecer la ventana de 'definicin de Estructuras'.

Defina los campos que conformaran la estructura. En este caso el orden no es primordial.

Escriba el nombre del campo, en la columna Variable Name, el que deber ser nico en toda la estructura. Seleccione o escriba el tipo de dato, en la columna Type. Al salir de esta ventana se le pedir que escriba el nombre de esta estructura, si es nueva; este nombre debe ser nico para toda la aplicacin.

38/84

Si necesita aadir un campo entre otros ya existentes, presione el botn y contine con la definicin del campo. Si requiere borrar un campo, presione el botn ; teniendo cuidado que el cursor con la fecha este ubicado en la casilla que corresponda al campo que desea borrar.

Trabajar con EstructurasLas estructuras que uno haya definido en el Area de trabajo de las Estructuras, pueden ser utilizadas en toda la aplicacin; como si se tratara de un tipo de datos. Para poder hacer uso de la estructura, es imprescindible que primero se declare una variable, y el tipo de esta variable sea la estructura definida. Tambin podr utilizarse como tipo de dato de parmetro de una funcin, o bien de otra estructura. Ej. persona yo yo.nombre= "Ricardo" yo.apellido="Pavez" yo.edad= 27 if yo.edad