Transcript
  • PowerBuilder 7.0Definicin. PowerBuilder es un entorno grfico de programacin que est compuesto de

    diferentes herramientas que permiten el desarrollo rpido de aplicaciones. Con estas

    herramientas se pueden desarrollar aplicaciones Cliente / Servidor a travs de ODBC (Open

    DataBase Connectivity) o Drivers Nativos para la Base de Datos.

    Una apliacin Cliente / Servidor pone en comunicacin una estacin de trabajo con un

    Servidor de Base de Datos Central. Este modelo consiste en utilizar una Base de Datos que

    reside en una mquina separada denominada Servidor. El Software de gestin de Base de

    Datos se ubica en las estaciones de trabajo remotas (Clientes). Las aplicaciones que se

    ejecutan en las estaciones cliente, acceden a los datos que se encuentran en el servidor.

    Crear una nueva Librera (Proyecto)

    1. Pulse sobre el icono New del PowerBar1

    2. En la ventana de dialogo New, seleccionar la ficha Start Wizards y dentro de esta

    seleccionar Application, luego pulsar el botn OK

    Servidor(Base de Datos)

    Estacion(Cliente

  • Manual de Power Builder

    3. Seguidamente se activar una ventana en donde se tendr que ingresar el nombre de la

    Librera y Aplicacin con que se desea crear.

    Luego pulsar el botn Finish.

    4. Al terminar se activar la una pantalla en donde se comenzar a trabajar y crear nuestro

    proyecto.

    Crear una nueva ventana (Formulario)

    1. Pulse sobre el icono New del PowerBar1.

    2. En la ventana de dilogo New, seleccionar la ficha Objects y dentro de esta seleccionar

    Window, luego pulsar el botn OK.

    3. Luego se activar la siguiente venta de diseo.

    Ing. Victor Davila [email protected] 2

    Nombre de la Aplicacin

    Nombre de la Librera

  • Manual de Power Builder

    4. Para grabar la ventana, pulse sobre el icono de Diskette , luego ingrese el nombre de

    la ventana con que desea grabar y seleccione OK.

    Ing. Victor Davila [email protected] 3

    Ventana de Propiedades

    Ventana creada.

    Ventana donde se crear el cdigo

  • Manual de Power Builder

    USO DE CONTROLES

    Los controles son objetos que se ubican dentro de una ventana. Loas controles muestran

    datos, aceptan datos o validan datos. Los controles responden a una accin del usuario como

    por ejemplo un clic de ratn.

    Los controles como cualquier otro objeto tiene sus propios atributos y eventos, alguno

    controles son objetos Estndar Windows, otros son particulares de PowerBuilder .

    Para activar e insertar un control, realizar un clic en la flecha .

    Cuadro de Texto Esttico. Se utiliza para mostrar ttulos y

    mensajes, este control muestra un texto que el usuario solo podr seleccionar mas no

    modificar.

    Propieades.

    Aligment. Especifica el alineamiento del texto en el control. Los valores que puede

    seleccionar son: Left!, Center! Y Right!.

    BackColor. Especifica un valor numrico correspondiente al color de fondo.

    Text. Especifica el texto que se desea mostrar en el control.

    Editar Lnea Simple. Es una caja de texto, que el usuario

    puede utilizar para ingresar una lnea de texto o en todo caso para visualizar el contenido

    de un campo de una tabla de datos.

    Propiedades.

    Name. Especifica el nombre que se le desea dar a este control.

    BackColor. Especifica un valor numrico correspondiente al color de fondo.

    Border. Especifica si el control tiene un borde. Los valores son: True (Tiene borde) o

    False (No tiene borde)

    BorderStyle. Especifica el estilo del borde del control, los valores son: StyleBox!

    (Cuadro), StyleLowerred! (Cuadro 3d), StyleRaised! (3d con Sombra) Y StyleShadowBox

    (Cuadro con sombra).

    DisplayOnly. Especifica si el texto del control es solo de lectura y no permite realizar

    cambios por parte del usuario. Los valores son: True (El usuario no podr realizar

    cambios) y False (El usuario podr realizar cambios).

    Enabled. Especifica si el control est habilitado (Activado).Los valores son: True (El

    control est habilitado) y False (El control est dehabilitado).

    Ing. Victor Davila [email protected] 4

  • Manual de Power Builder

    Limit. Especifica el mximo numero de caracteres (0 a 32,767) que se pueden ingresar en

    el control (0 es sin lmite)

    Text. Especifica el texto que contiene el control

    Password. Permite ocultar con una mascara los caracteres digitados.

    TextCase. Especifica el formato de ingreso de datos en el cuadro de texto. Los valores

    pueden ser: AnyCase! (Cualquier formato), Lower! (Letras minsculas) y Upper! (Letras

    maysculas)

    . Muestra una imagen de mapa de bits.

    Propieades.

    Name. Especifica el nombre que se le desea dar a este control.

    Border. Especifica si el control tiene un borde. Los valores son: True (Si tiene borde) o

    False (no tiene borde)

    PictureName. Especifica el nombre del archivo que contenga el grfico.

    Ejemplo:

    Desarrollar una aplicacin que permita el ingreso del nombre de usuario y su

    respectiva clave de acceso.

    1. Crear una nueva aplicacin dando un clic en el icono New del PowerBar1.

    2. En la ventana de dilogo New, seleccionar la ficha Objects y dentro de esta

    seleccionar Window, luego pulsar el botn OK.

    3. Ubicar en la ventana los siguientes controles y cambiar las propiedades respectivas.

    Tres Controles StaticText.

    Dos Controles SingleLineEdit

    Un Control Picture.

    Cambiar las propiedades siguientes.

    Control Propiedad Valor

    Window Title Seguridad de Sistema

    P_1 Name P_llavePictureName (buscar una imagen)

    St_1 Text Ingrese su Nombre y ContraseaFont 12, Bold

    St_2 Text &UsuarioSt_3 Text &ContraseaSle_1 Name Sle_Usuario

    Text

    Ing. Victor Davila [email protected] 5

  • Manual de Power Builder

    Sle_2 Name Sle_ClaveText Limit 5Password (Activado)

    Al final el diseo tendr que ser el siguiente.

    Para ejecutar la ventana ingresar a File de la barra de men y seleccione Run

    Preview, en la ventana de dialogo Run/Preview, seleccione el nombre de la

    ventana que desea ejecutar y seleccione el botn OK.

    Si desea salir de la ventana realice un clic sobre el icono

    USO DEL LENGUAJE

    Una Aplicacin PowerBuilder es una aplicacin dirigida por eventos. El usuario controla la

    aplicacin que se ejecuta provocando eventos. Por ejemplo: Cada accin que realiza el

    usuario como abrir una aplicacin provoca un evento. El lenguaje utilizado para escribir

    procedimientos se denomina PowerScript, que es un lenguaje simple y fcil de aprender.

    Uso de Comentarios. Si desea poner comentarios en el codigo de una aplicacin utilizar

    cualquiera de los dos siguientes smbolos.

    /* Indica el inicio de un comentario y */ indica el final de un comentario.

    // Indica comentario al final de una lnea.

    Ing. Victor Davila [email protected] 6

  • Manual de Power Builder

    Tipos de Datos. Los identificadores en PowerScript, identifican objetos tales como variables,

    etiquetas, funciones, ventanas, controles y mens. Un identificador debe comenzar con una

    letra y utilizar como mximo cuarenta caracteres, tambin debe tenerse en cuenta lo siguiente.

    No debe contener espacios en blanco.

    Puede incluir algunos caracteres no alfabticos como:

    Subrayado _

    Signo de Dlar $

    Signo de Nmero #

    Signo de tanto por ciento %

    Los identificadores no diferencian las maysculas ni minsculas, el identificador Lib_nombre

    es igual a lib_nombre.

    Tipos de Datos Estandar. Cierto tipo de datos son intrnsicos al lenguaje PowerScript, pero

    la mayora son tipos de datos que son reconocidos en otros lenguajes de programacin.

    La siguiente tabla muestra los tipos de datos estndar.

    Tipo de Dato. Descripcin.

    Blob (Binary Large Object) Datos sin formato, Por ejemplo una imagen o un prrafo.

    Boolean True o False

    Char o Character Un nico carcter.

    Date Fecha

    DateTime Combinacin de una fecha y una hora.

    Decimal Nmeros decimales con signo hasta una longitud de 18

    dgitos, el punto decimal no se cuenta como dgito.

    Double Nmeros en como flotante, tiene hasta 15 dgitos de

    precisin y su rango va desde 2.2253-308 a 1.7976-308

    Integer, Int Son enteros con signo de 16 bits.

    Long Son enteros con signo de 32 bits, el rango va desde

    2,147,483,648 a +2,147,483,647

    Real Nmeros en coma flotante con una precisin de hasta 6

    dgitos. Rango desde 1.1754-38 a 3.4028+38

    String Contiene desde 0 hasta 60000 caracteres ASCII

    Time Hora-

    Declaracin de Variables. Para declarar una variable se requiere solamente de dos partes: El

    tipo de dato y El nombre de la variable.

    Ing. Victor Davila [email protected] 7

  • Manual de Power Builder

    Inicializacin de Variables

    Literales. Se puede dar el valor inicial a la variable al declararla, por ejemplo:

    Int GranTotal=3, SubTotal=0

    String Metodo=A34

    Date Hoy=1998-11-15

    Cada uno de los valores utilizados en la expresin anterior para inicializar una

    variable literal.

    Matrices. Un Array es una coleccin de elementos indexados de tipos de datos simples.

    Un Array puede tener uno o mas dimensiones, es una serie de valores con un nico

    nombre. Se especifica su tamao al declararla. Por ejemplo.

    Int A[5]={1,2,3,4,5}

    A los valores contenidos en la matriz se accede por medio del ndice.

    Matrices Multi-dimensionales. Las matrices pueden tener mltiples dimensiones.

    . Es utilizado para ejecutar una accin cuando el usuario de

    un clic sobre el.

    Propieades.

    Text. Especifica el texto que se desea mostrar en este botn.

    Name. Especifica el nombre que se le desea dar a este control.

    Cancel. Especifica si el control es el botn Cancelar (El botn Cancelar dispara el evento

    Clicked, si el usuario pulsa la tecla ESC). Los valores son: True (El botn es el botn

    Cancelar) y False (El botn no es el botn cancelar)

    Ejemplo.

    Desarrollar una aplicacin que permita mostrar el nombre del usuario y su respectiva

    clave de acceso. La clave de acceso tendr una longitud de 5 caracteres, se debe mostrar

    asteriscos (*) cuando el usuario ingrese la clave de acceso.

    Abra una nueva ventana e inserte los siguientes controles.

    Tres Controles StaticText.

    Dos Controles SingleLineEdit

    Un Control Picture.

    Dos Botones de comando

    Ing. Victor Davila [email protected] 8

  • Manual de Power Builder

    Cambiar las propiedades siguientes.

    Control Propiedad Valor

    Window Title Seguridad de Sistema

    P_1 Name P_llavePictureName (buscar una imagen)

    St_1 Text Ingrese su Nombre y ContraseaFont 12, Bold

    St_2 Text &Usuario

    St_3 Text &Contrasea

    Sle_1 Name Sle_UsuarioText

    Sle_2 Name Sle_ClaveText Limit 5Password (Activado)

    Cb_1 Name cb_AceptarText Aceptar

    Cb_2 Name cb_CancelarText Cancelar

    Al final el diseo tendr que ser el siguiente.

    Codigo de la ventana

    Cb_Aceptar / ClickedMessageBox("Sistema de Seguridad","Gracias por su visita")Close(w_ventana_01)

    Cb_Cancelar / ClickedClose(w_ventana_01)

    Ing. Victor Davila [email protected] 9

  • Manual de Power Builder

    Ejemplo

    Crear una apliacin que calcule el los descuentos de ley de un trabajador y el sueldo neto.

    El diseo tendr que quedar de la siguiente manera.

    Codigo del formulario

    Cb_calcular / ClickedReal Haber,Cts,Essalud,Afp,Totd,NetoHaber=Real(sle_haber.Text)Essalud=Haber * 0.03Cts=haber * 0.06Afp=haber * 0.06Totd=Essalud + Cts + Afpsle_Afp.text=String(Afp)sle_Cts.text=String(Cts)sle_Essalud.text=String(Essalud)sle_Totd.Text=String(totd)sle_neto.Text=String(Neto)

    Cb_Otro / Clickedsle_haber.Text="0"sle_Afp.text="0"sle_Cts.text="0"sle_Essalud.text="0"sle_Totd.Text="0"sle_neto.Text="0"

    Ing. Victor Davila [email protected] 10

    Los Controles

    sle_Haber, sle_Cts, sle_Afp, sle_Totd y sle_Neto tendrn que estar desactivados.

  • Manual de Power Builder

    Controladores de flujo de programa

    Las siguientes sentencias influyen en el flujo de control de un procedimiento que se est

    ejecutando. Estos son las sentencias que pueden controlar el orden de ejecucin de las

    sentencias de un procedimiento.

    IF THEN ELSE.

    Una estructura de control utilizada en el Script, que ejecuta una accin si la condicin lgica

    es verdadera.

    Sintaxis 1

    If condicin Then

    Bloque de instrucciones

    Else

    Bloque de instrucciones

    Endif

    En est sintaxis, primero se evala la condicin lgica, y si el resultado de la

    condicin es verdadera, se ejecutarn las instrucciones que se encuentren entre If y

    Else, y si el resultado es falso, se ejecutarn las instrucciones que se encuentren entre

    Else y Endif.

    Sintaxis 2

    If condicin Then

    Bloque de instrucciones

    Endif

    En est sintaxis, primero se evala la condicin lgica, y si el resultado de la

    condicin es verdadera, se ejecutarn las instrucciones que se encuentren entre If y

    Endif.

    CHOOSE CASE.

    La estructura de control Cose Case, utiliza el valor de una expresin o de una variable para

    decidir entre una serie de opciones. El valor de la expresin determina que opcin seleccionar.

    Sintaxis:

    CHOOSE CASE Expresin.

    CASE opcin1

    Bloque de Instrucciones.

    CASE opcin2

    Bloque de Instrucciones.

    Ing. Victor Davila [email protected] 11

  • Manual de Power Builder

    CASE opcinn

    Bloque de Instrucciones.

    CASE ELSE

    Bloque de Instrucciones.

    END CHOSE.

    DO LOOP.

    Ejecuta un bloque de instrucciones hasta que se produzca una condicin de finalizacin.

    Sitaxis:

    1. Hacer Mientras la condicin sea verdadera.

    DO WHILE condicin

    Instrucciones.

    LOOP

    2. Hacer hasta que la condicin llegue a ser verdadera.

    DO UNTIL condicion

    Instrucciones.

    LOOP

    3. Repetir mientras la condicin sea verdadera.

    DO

    Instrucciones.

    LOOP WHILE condicin

    4. Repetir hasta que la condicin llegue a ser verdadera.

    DO

    Instrucciones.

    LOOP UNTIL condicion.

    FOR NEXT.

    La sentencia FOR NEXT ejecuta un bloque de sentencias en un determinado numero de

    veces, los argumentos que se especifican en la sentencia determina el numero de veces que se

    ejecuta el bloque

    Sintaxis:

    FOR nom_var=Inicial TO final STEP (Incremento)

    Bloque de Instrucciones

    NEXT.

    Ing. Victor Davila [email protected] 12

  • Manual de Power Builder

    Permite crear un grupo de opciones en donde solo se podr

    seleccionar una opcin del grupo.

    Propiedades

    Checked. Retorna un valor lgico el cual especifica si el control se encuentra

    seleccionado o no. Si el valor devuelto es:

    Trae: significa que est seleccionado.

    False: significa que no est seleccionado.

    Enabled. Especifica un valor lgico, el cual indica si el control est activado o

    desactivado.

    Trae: Control Activado

    False: Control Desactivado

    Ejemplo

    Desarrolle una aplicacin que permita calcular el haber bsico de un trabajador de acuerdo

    a la categora seleccionada y calcular los descuentos respectivos.

    Inserte los siguientes controles.

    Control Propiedad Valor

    sle_1 Name sle_empleadoText en blanco

    sle_2 Name sle_haberText en blanco

    sle_3 Name sle_ctsText en blanco

    sle_4 Name sle_afpText en blanco

    sle_5 Name sle_essaludText en blanco

    sle_3 Name sle_totaldText en blanco

    sle_3 Name sle_netoText en blanco

    rb_1 Name rb_generenteCaption Gerente 2500

    rb_2 Name rb_administradoeCaption Administrador 2000

    rb_3 Name rb_secretariaCaption Secretaria 1500

    Cb_1 Name cb_aceptarCaption Aceptar

    Cb_1 Name cb_otroCaption Otro

    Cb_1 Name cb_cerrarCaption Cerrar

    Ing. Victor Davila [email protected] 13

  • Manual de Power Builder

    El diseo del formulario tendr que quedar de la siguiente manera:

    Cdigo de la aplicacin

    Cb_aceptar / Clicked

    Real haber,cts,afp,essalud,totd,netoIf rb_gerente.checked=true then

    haber=2500end ifIf rb_administrador.checked=true then

    haber=2000end ifIf rb_secretaria.checked=true then

    haber=1500end ifcts=haber * 0.03afp=haber * 0.06essalud=haber * 0.06totd=cts+afp+essaludneto=haber - totdsle_haber.text=string(haber)sle_afp.text=string(afp)sle_cts.text=string(cts)sle_essalud.text=string(essalud)sle_totald.text=string(totd)sle_neto.text=string(neto)

    cb_otro / Clicked

    sle_empleado.text=""sle_haber.text="0"sle_cts.text="0"sle_afp.text="0"sle_essalud.text="0"sle_totald.text="0"sle_neto.text="0"

    Grabe la ventana con w_opciones y luego ejecute .

    Ing. Victor Davila [email protected] 14

    Controles desactivados

  • Manual de Power Builder

    (Casilla de verificacin). Permite crear un grupo de opciones las

    cuales podrn ser activadas o desactivadas.

    Propiedades

    Checked. Retorna un valor lgico el cual especifica si el control se encuentra

    seleccionado o no. Si el valor devuelto es:

    Trae: significa que est seleccionado.

    False: significa que no est seleccionado.

    Enabled. Especifica un valor lgico, el cual indica si el control est activado o

    desactivado.

    Trae: Control Activado

    False: Control Desactivado

    Ejemplo

    Desarrolle una aplicacin que permita calcular el haber bsico de un trabajador de acuerdo

    a la categora seleccionada y calcular los descuentos respectivos (solo de los que se

    especifique).

    Nota : Para dar los nombres de los controles fjese el cdigo de la aplicacin y de acuerdo

    a eso ponga los nombres respectivos.

    Los nombres de los controles son los mismos que el ejemplo anterior y de los que se agregaron son:Control Propiedad Valor

    cbx_1 name cbx_ctscaption CTS 3%

    cbx_1 name cbx_afpcaption AFP 6%

    cbx_1 name cbx_essalud caption ESSALUD 3%

    El diseo del formulario tendr que quedar de la siguiente manera

    Ing. Victor Davila [email protected] 15

  • Manual de Power Builder

    Cdigo del formulario

    cb_aceptar / clicked

    Real haber,cts,afp,essalud,totd,netoIf rb_gerente.checked=true then haber=2500If rb_administrador.checked=true then haber=2000If rb_secretaria.checked=true then haber=1500if cbx_cts.checked=true then

    cts=haber * 0.03else

    cts=0 end ifif cbx_afp.checked=true then

    afp=haber * 0.03else

    afp=0 end ifif cbx_essalud.checked=true then

    essalud=haber * 0.03else

    essalud=0 end iftotd=cts+afp+essaludneto=haber - totdsle_haber.text=string(haber)sle_afp.text=string(afp)sle_cts.text=string(cts)sle_essalud.text=string(essalud)sle_totald.text=string(totd)sle_neto.text=string(neto)

    Cb_otro / Clicked

    sle_empleado.text=""sle_haber.text="0"sle_cts.text="0"sle_afp.text="0"sle_essalud.text="0"sle_totald.text="0"sle_neto.text="0"cbx_cts.checked=falsecbx_afp.checked=falsecbx_essalud.checked=false

    Cumple la misma funcin que el control SingleLineEdit, con la

    diferencia de que a este control se le puede definir mascaras de entrada y salida de datos.

    Propiedades.

    DisplaOnly. Especifica si el contenido del control podr ser modificado por el usuario.

    Mask. Permite especificar la mascara que se desea usar para el control.

    Numeros : #

    String : @

    Date :

    Character Meaning Example d Day number with no leading zero 9dd Day number with leading zero if appropriate 09ddd Day name abbreviation Mondddd Day name Mondaym Month number with no leading zero 6

    Ing. Victor Davila [email protected] 16

  • Manual de Power Builder

    mm Month number with leading zero if appropriate 06mmm Month name abbreviation Junmmmm Month name Juneyy Two-digit year 97yyyy Four-digit year 1997

    Time :

    Character Meaning

    h Hour with no leading zero (for example, 1)hh Hour with leading zero if appropriate (for example, 01)m Minute with no leading zero (must follow h or hh)mm Minute with leading zero if appropriate (must follow h

    or hh)s Second with no leading zero (must follow m or mm)ss Second with leading zero (must follow m or mm)ffffff Microseconds with no leading zeros. You can enter one

    to six f's; each f represents a fraction of a second (must follow s or ss)

    AM/PM Two-character, upper-case abbreviation (AM or PM as appropriate)

    am/pm Two-character, lower-case abbreviation (am or pm as appropriate)

    A/P One-character, upper-case abbreviation (A or P as appropriate)

    a/p One-character, lower-case abbreviation (a or p as appropriate)

    MaskDataType. Especifica el tipo de dato para el control, los valores pueden ser:

    DateMask!, DateTimeMask!, DecimalMask!, NumericMask!, StringMask!, TimeMask!

    Min. Especifica el valor mnimo que se podr ingresar en el control.

    Max. Especifica el valor mximo que se podr ingresar en el control.

    Spin. Especifica si se desea mostrar un scroll de tipo spinner en el control.

    Ejemplo

    Realice una aplicacin en donde se ingrese los datos de los alumnos mas las notas

    respectivas del curso. Al momento de ingresar las notas, solo deber de aceptar nmeros.

    Adems deber calcular el promedio y la condicin.

    El diseo deber de quedar de la siguiente manera.

    Ing. Victor Davila [email protected] 17

  • Manual de Power Builder

    Cdigo del Formulario.

    Cb_calcular / clicker

    Real Nota1,Nota2,PromedioNota1=real(em_nota1.text)Nota2=real(em_nota2.text)promedio=(nota1+nota2)/2if promedio>=11 then

    sle_condicion.text="Aprobado"else

    sle_condicion.text="Desaprobado"end if em_promedio.text=string(promedio)

    cb_otro / Clickedsle_alumno.text=""sle_curso.text=""em_nota1.text="0"em_nota2.text="0"em_promedio.text="0"

    Grabe la ventana con w_editmask

    Ejecute la ventana, ingrese los datos respectivos y pulse calcular.

    Ing. Victor Davila [email protected] 18

    Controles EditMaskControl em_nota1 y em_nota2

    Propiedad (ficha mask) Mask = ##

    MaskDataType: numerickask!Spin = ActivadoMin = 0Max = 20Incremente = 1

  • Manual de Power Builder

    y Se utilizan con la finalidad de

    insertar un cuadro de lista o una lista desplegable, en donde el usuario podr seleccionar

    uno o mas elementos de la lista.

    Funciones

    Additem. Permite aadir un nuevo elemento dentro de un cuadro de lista o una lista

    desplegable.

    DeleteItem. Permite eliminar el elemento indicado de un cuadro de lista o una lista

    desplegable

    Reset. Borra todo los elementos de una lista o una lista desplegable.

    SelectedIndex. Retorna el nmero del elemento seleccionado de una lista.

    SelectedItem. Retorna el texto del elemento seleccionado.

    SelectItem. Retorna el elemento del nmero de elemento indicado.

    Text. Retorna el texto del elemento seleccionado.

    Ejemplo : Desarrolle una aplicacin en donde se agreguen nuevos elementos a una lista.

    El diseo del formulario tendr que quedar de la siguiente manera.

    Cdigo del formulario.

    cb_agregar / Clicked.lb_elementos.additem(sle_nuevo.text)sle_nuevo.text=""

    cb_eliminar / clickedlb_elementos.DeleteItem(lb_elementos.SelectedIndex())

    cb_borrar / clickedlb_elementos.reset()

    Ing. Victor Davila [email protected] 19

    Control Propiedad ValorSle_1 Name sle_nuevo

    Text en blancoLb_1 Name

  • Manual de Power Builder

    Ejemplo

    Desarrolle una aplicacin en donde se registren nuevos productos, se ingresen la cantidad

    y el precio, se calcule el subtotal y el total a pagar y esos se agreguen a unas listas.

    El diseo del formulario tendr que quedar de la siguiente manera.

    Control Propiedad valor

    sle_1 name sle_nuevopddlb_1 name ddlb_productossle_2 name sle_productosem_1 name em_cantidadem_2 name em_preciolb_1 name lb_productoslb_2 name lb_cantidadeslb_3 name lb_precioslb_4 name lb_subtotalessle_3 name sle_totalcsle_4 name sle_totalpsle_5 name sle_totalssle_6 name sle_totalpagar

    LA PROPIEDAD SORTED DE LOS LISTBOX, TENDRN QUE ESTAR

    DESACTIVADOS, PARA QUE LOS ELEMENTOS NO SE ORDENEN AL

    MOMENTO DE AGREFGAR

    Codigo del formulario

    cb_agregar / clicked

    ddlb_productos.additem(sle_nuevop.text)sle_nuevop.text=""

    Ing. Victor Davila [email protected] 20

    Nota : Los textos de color oscuro tendrn que estar desactivados

  • Manual de Power Builder

    cb_aceptar / clickedsle_productos.text=ddlb_productos.text

    cb_agregar2 / clicked

    Real Cantidad,Precio,SubTotal,TotalCantidad=Real(em_cantidad.text)Precio=Real(em_precio.text)SubTotal=Cantidad * PrecioTotal=Real(sle_totalpagar.Text)Total=Total + SubTotallb_productos.AddItem(sle_productos.Text)lb_cantidades.AddItem(em_cantidad.Text)lb_precios.AddItem(em_precio.Text)lb_subtotales.AddItem(String(SubTotal))sle_totalpagar.Text=String(Total)sle_totalc.text=String(real(sle_totalc.text)+Cantidad)sle_totalp.text=String(real(sle_totalp.text)+Precio)sle_totals.text=String(real(sle_totals.text)+SubTotal)

    cb_eliminar / Clicked

    Integer IndiceReal Cantidad,Precio,SubTotal,TotalIndice=lb_productos.SelectedIndex()Cantidad=Real(lb_cantidades.text(Indice))Precio=Real(lb_precios.text(Indice))SubTotal=Real(lb_subtotales.text(Indice))sle_totalc.text=String(real(sle_totalc.text) - Cantidad)sle_totalp.text=String(real(sle_totalp.text) - Precio)sle_totals.text=String(real(sle_totals.text) - SubTotal)sle_totalpagar.Text=sle_totals.textlb_productos.DeleteItem(Indice)lb_cantidades.DeleteItem(Indice)lb_precios.DeleteItem(Indice)lb_subtotales.DeleteItem(Indice)

    cb_limpiar / Clicked

    lb_productos.Reset()lb_cantidades.Reset()lb_precios.Reset()lb_subtotales.Reset()ddlb_productos.Reset()sle_productos.Text=""em_cantidad.Text="0"em_precio.Text="0"sle_totalc.Text="0"sle_totalp.Text="0"sle_totals.Text="0"sle_totalpagar.Text="0"

    Ing. Victor Davila [email protected] 21

  • Manual de Power Builder

    Como trabajo prctico desarrolle la siguiente aplicacin.

    Agregar. Permite agregar nuevos empleados a la listaAceptar. Muestra el empleado seleccionado de la lista en Empleado Seleccionado.Otro. Limpia todo los controles.Nota: Cada vez que se seleccione una categora deber de calcular el haber bsico, los descuentos y el sueldo neto.Cada vez que se active uno de los check (Descuentos), deber de volver a calcular todo.

    Este otro ejemplo es similar al anterior, con la diferencia de que tendr que ir agregando

    en las listas e ir sumando los totales en la parte inferior.

    Ing. Victor Davila [email protected] 22

  • Manual de Power Builder

    FUNCIONES DENTRO DE POWERBUILDER

    PowerBuilder posee una gran variedad de funciones que permiten al programador desarrollar

    sus aplicaciones de una manera fcil.

    1. Funciones de Cadena

    Asc. Obtiene el cdigo ASCCII correspondiente al primer carcter de una cadena.

    Ejemplo : Asc ("A")

    Char. Retorna el carcter correspondiente al cdigo ASCII.

    Ejemplo : Char (42)

    Fill. Retorna una cadena con una longitud determinada del carcter especificado.

    Ejemplo : Fill ("*",20)

    Left. Retorna un nmero especificado de caracteres comenzando por la izquierda.

    Ejemplo : Left ("Henry Salcedo",4)

    LeftTrim. Retorna la misma cadena de caracteres sin los espacios en blanco del lado

    izquierdo de la cadena

    Ejemplo : LeftTrim (" Henry Salcedo")

    Len. Retorna la longitud de la cadena.

    Ejemplo :

    Longs_nombre

    s_nombre=Len(sle_Nombres.text)

    Lower. Retorna una copia de una cadena convertida a minsculas.

    Ejemplo : Lower("HENRY SALCEDO")

    Mid. Retorna una cadena que contiene un nmero especificado de caracteres,

    comenzando de una posicin indicada.

    Ejemplo : Mid("HENRY SALCEDO",5,5)

    Pos. Retorna la posicin donde se encuentra una cadena dentro de otra cadena

    Ejemplo : Pos("HENRY SALCEDO","SA")

    Reverse. Cambia el orden de los caracteres de una cadena.

    Ejemplo : Reverse ("HENRY SALCEDO")

    Right. Retorna un nmero especificado de caracteres, comenzando del lado

    derecho..

    Ejemplo : Right ("HENRY SALCEDO",3)

    RightTrim. Retorna la misma cadena de caracteres sin los espacios en blanco del

    lado derecho de la cadena

    Ing. Victor Davila [email protected] 23

  • Manual de Power Builder

    Ejemplo : RightTrim ("Henry Salcedo ")

    Space. Retorna una cadena de longitud determinada, conteniendo espacios en

    blanco.

    Ejemplo : Name = Space (10)

    Trim. Retorna la misma cadena de caracteres sin los espacios en blanco del lado

    izquierdo y derecho de la cadena

    Ejemplo : Trim (" Henry Salcedo ")

    Upper. Retorna la misma cadena de caracteres convertidas a letras maysculas.

    Ejemplo : Upper (" Henry Salcedo")

    2. Funciones de Fecha

    Day. Retorna el da del mes de una fecha indicada.

    Ejemplo : Day (1994-01-31)

    DayName. Retorna el nombre del da de la semana

    Ejemplo :

    string dayn

    Date fecha

    fecha=Date(em_1.text)

    dayn=dayName(Fecha)

    DayNumber. Retorna un nmero que representa el da de la semana.

    Ejemplo :

    Integer dayn

    Date fecha

    fecha=Date(em_1.text)

    dayn=dayNumber(Fecha)

    DaysAfter. Retorna el nmero de das de una fecha despus de la actual.

    Ejemplo :

    Integer dayn

    Date fecha

    fecha=Date(em_1.text)

    dayn=daysAfter(2001-02-19,Fecha)

    Hour. Retorna un entero que corresponde al nmero de horas de una fecha dada.

    Ejemplo :

    Integer Hora

    Ing. Victor Davila [email protected] 24

  • Manual de Power Builder

    Hora=Hour(Now())

    MessageBox("Hora",Hora)

    Minute. Retorna un entero que corresponde a los minutos de una hora dada.

    Ejemplo :

    Integer Hora

    Hora=Minute(Now())

    Now. Retorna la hora del sistema.

    Ejemplo :

    Time Hora

    Hora=Now()

    Second. Retorna el numero de segundos de una hora dada.

    Ejemplo :

    integer Hora

    Hora=Second(Now())

    Today. Retorna la fecha actual del sistema

    Ejemplo :

    Date Fecha

    Fecha=Today()

    Year. Retorna el ao de una fecha dada

    Ejemplo :

    Integer Ao

    Ao=Year(Today())

    3. FUNCIONES NUMERICAS

    Abs. Obtiene el valor absoluto de un numero

    Ejemplo:

    i = 4

    num = Abs(i)

    num = Abs (4)

    num = Abs (+4)

    num = Abs (-4)

    Abs (-4.2)

    Esta sentencia retorna 4.2.

    Ing. Victor Davila [email protected] 25

  • Manual de Power Builder

    Ceiling. Obtiene el menor nmero entero que es menor o igual al nmero

    especificado.

    Ejemplo:

    Dec = 4.8

    Num = Ceiling (dec)

    Decimal num

    Num = ceiling (-4.2)

    Num = ceiling (-4.8)

    Esta sentencia retorna -4.

    Cos. Obtiene el coseno del ngulo debe estar en readianes.

    Ejemplo: Cos (0)

    Cos(1)

    Esta sentencia retorna -1.

    Cos(pi(1))

    Esta sentencia retorna -1.

    Int. Obtiene el menor nmero entero que es menor o igual al nmero especificado.

    Ejemplo: Int(3.2)

    Int(3.8)

    Int(-3.2)

    Int(-3.8)

    La siguiente sentencia retorna -4.0.

    Max. Retorna el mayor de dos nmeros.

    Ejemplo: Max (4,7)

    Max (-4,-7)

    Esta expresin retorna -4.

    Min. Retorna el menor de dos nmeros.

    Ejemplo: Min (4,7)

    Min (-4,-7)

    Esta expresin retorna -7.

    Mod. Obtiene el modulo de dos nmeros (el resultado obtenido de la divisin del

    primer expresin con el segundo).

    Ing. Victor Davila [email protected] 26

  • Manual de Power Builder

    Ejemplo:

    Integer Residuo

    Residuo=Mod(20,6)

    Pi. Obtiene el valor de Pi

    Ejemplo: Pi( ) => 3.14159265358979323

    Round. Obtiene un nmero redondeado a un nmero decimal elegido

    Ejemplo:

    Round (9.625,2) => 9.63

    Round (9.6,3) => 9.600

    Sign. Obtiene un nmero (-1, 0, o 1) indicando el signo de una expresin

    Ejemplo:

    Sign (0) => Retorna 0 por que 0 no tiene signo

    Sign (9) => Retorna 1

    Sign (-9) => Retorna -1

    Sqrt. Obtiene la raz cuadrada de un nmero dado.

    Ejemplo:

    Sqrt (4) => Retorna 2

    Sign (3) => Retorna 1.7320

    Truncate. Obtiene un nmero truncado a una determinada expresin decimal.

    Ejemplo:

    Truncate (9.22,1) => Retorna 9.2

    Truncate (9.9,0) => Retorna 9

    4. Funciones de Conversin

    Dec. Convierte el contenido de una cadena a un nmero decimal.

    Ejemplo :

    Real Numero

    Numero=Dec("14.25")

    Double. Convierte el contenido de una cadena a un nmero doble

    Ejemplo :

    Real Numero

    Numero=Double("14.25")

    Integer. Convierte el contenido de una cadena a un nmero entero

    Ejemplo :

    Ing. Victor Davila [email protected] 27

  • Manual de Power Builder

    Integer Numero

    Numero=Integer("14")

    Real. Convierte el contenido de una cadena a un nmero real

    Ejemplo :

    Real Numero

    Numero=real("14.25")

    String. Convierte un nmero a un cadena de caracteres.

    Ejemplo :

    String Cadena

    Cadena=String(14.25)

    Date. Convierte una cadena a una fecha

    Ejemplo :

    Date Fecha

    Fecha=Date(10-05-2001)

    Ejemplo de una aplicacin

    Desarrolle una aplicacin que permita el ingreso de los datos personales de los alumnos.

    Se debe de ingresar los nombres, apellido paterno, apellido materno, direccin,

    especialidad, semestre, turno, sexo y fecha de registro.

    El cdigo deber de ser autogenerado de la siguiente manera: Tomar el primer carcter

    del apellido paterno mas un nmero consecutivo que tendr que ir generndose.

    El diseo del formulario deber de ser de la siguiente manera.

    Ing. Victor Davila [email protected] 28

  • Manual de Power Builder

    Grabe la ventana con el nombre de : w_funciones

    CDIGO DEL FORMULARIO.

    Window / open

    Limpiar_Controles();em_fecha.text=String(today())

    cb_aceptar / Clicked

    Integer NregsString CodigoNregs=Lb_Alumnos.TotalItems()+1Codigo=Left(sle_apepat.text,1)+Left(sle_apemat.text,1)+Trim(string(Nregs))Codigo=Right("000"+trim(Codigo),3)Lb_Alumnos.AddItem(Sle_Apepat.text + " " + sle_apemat.text + ", " + sle_nombres.text)lb_codigos.AddItem(Codigo)sle_codigo.Text=Cdigo

    cb_nuevo / Clicked

    Realcelo ud.

    Ejecute su ventana, ingrese los datos respectivos

    Ing. Victor Davila [email protected] 29

    Control Edit MaskTipo Fecha

    Propiedad Item de:CmbSexo: Masculino

    FemeninoEspecialidad:

    Computacin e InformticaSecretariado EjecutivoEnfermera Tcnica

    Semestre : del 1 al 6Turno:

    MaanaTardeNoche

  • Manual de Power Builder

    Pulse el botn Aceptar para generar el cdigo y agregar a la lista los datos.

    El cdigo ha sido generado con la primera letra del apellido paterno + la primera

    letra del apellido materno + un nmero correlativo.

    Ing. Victor Davila [email protected] 30

  • Manual de Power Builder

    FUNCIONES DEFINIDAS POR EL USUARIO

    El lenguaje PowerScript tiene una gran variedad de funciones. Pero si en el proceso de

    desarrollo se necesita codificar u proceso que se repita mas de una vez entonces es necesario

    crear una funcin definida por el usuario.

    Una funcin definida por el usuario es una coleccin de sentencias que realizan algn

    proceso. Para construirla se realiza en el Function Painter, una vez construida se graba la

    funcin para su posterior uso.

    Tipos de Funcin.

    Funciones Globales. Las cuales no estn asociadas a ningn objeto de la aplicacin y son

    accesibles desde cualquier punto de la aplicacin.

    Funciones de nivel objeto. Estas funciones estn definidas por un tipo particular de ventana,

    men o objeto de usuario

    Nota : Las nombres de las funciones pueden tener hasta una longitud de 40 caracteres

    Crear una funcin que permita limpiar los controles del ejemplo anterior.

    Abra la ventana anterior (w_funciones)

    Abra el la ventana de script de la ventana

    Abra la lista de controles de la ventana de cdigos y seleccione (Functions)

    Seguidamente se activar la siguiente ventana en donde se tendr que ingresar el nombre

    de la funcin que se desea crear y especificar si se desea que la funcin retorne un valor.

    Ing. Victor Davila [email protected] 31

    Nombre de la funcin a crear

    Indica si la funcin retornar valores

    Alcance de la funcin

    Ventana en donde se escribir el cdigo de la funcin

  • Manual de Power Builder

    Luego de crear la funcin escriba el cdigo siguiente.

    sle_nombres.Text=""sle_apepat.Text=""sle_apemat.Text=""sle_direccion.Text=""ddlb_sexo.SelectItem(0) ddlb_especialidad.SelectItem(0) ddlb_semestre.SelectItem(0) ddlb_turno.SelectItem(0)

    Grabe la funcin grabando la ventana y cierre la ventana de la funcin.

    Agregue la siguiente lnea de cdigo a los siguientes eventos de controles.

    Window / openLimpiar_Controles();em_fecha.text=String(today())

    Cb_Aceptar / ClickedInteger NregsString CodigoNregs=Lb_Alumnos.TotalItems()+1Codigo=Left(sle_apepat.text,1)+Left(sle_apemat.text,1)+Trim(string(Nregs))Codigo=Right("000"+trim(Codigo),3)Lb_Alumnos.AddItem(Sle_Apepat.text + " " + sle_apemat.text + ", " + sle_nombres.text)lb_codigos.AddItem(Codigo)sle_codigo.Text=CodigoLimpiar_Controles();

    Cb_nuevo / ClickedLimpiar_Controles();

    Ejecute la ventana llene los datos respectivos y pulse el botn Cancelar, deber de limpiar

    los controles.

    Como trabajo prctico cree una funcin que permita

    Desactivar los controles: (f_desactivar)

    sle_codigo, em_fecha, sle_nombres, sle_apepat, sle_apemat, sle_direccion, ddlb_sexo,

    ddlb_especialidad, ddlb_semestre, ddlb_turno y cb_aceptar

    Activar los controles: (f_activar)

    sle_codigo, em_fecha, sle_nombres, sle_apepat, sle_apemat, sle_direccion, ddlb_sexo,

    ddlb_especialidad, ddlb_semestre, ddlb_turno y cb_aceptar

    Los controles tendrn que estar activados al momento de ejecutar la ventana, y cuando se

    pulse el botn nuevo tendrn que activarse con los controles en blanco.

    Cuando se pulse aceptar los controles tendrn que desactivarse nuevamente.

    Ing. Victor Davila [email protected] 32

  • Manual de Power Builder

    Otro Ejemplo

    Realice una aplicacin que permita calcular el sueldo neto de un trabajador y ademas los

    descuentos respectivos.

    Los descuentos y el sueldo neto se tendrn que ir calculando cada vez que se cambie la

    categora o algn descuento (para calcular los descuentos y sueldo neto crear una funcin)

    El diseo del formulario es el siguiente:

    Para dar nombre a los controles como prctica tendr que fijarse el cdigo de la aplicacin

    y de acuerdo a eso poner los nombres respectivos.

    Cdigo de la aplicacin.

    Crear una funcin con el nombre de Calcular

    Para crear la funcin, seleccione la opcin Insert de la barra de men, y dentro de esta

    seleccione Function.

    Ing. Victor Davila [email protected] 33

    Nombre de la funcinAqu se escribe el

    cdigo de la funcin Nombre de la funcinSeleccione (None)

  • Manual de Power Builder

    El cdigo de la funcin es el siguiente:REAL haber,cts,afp,essalud,totald,netohaber=REAL(sle_haber.Text)IF cbx_cts.CHECKED=TRUE then cts=haber*0.03ELSE

    cts=0end ifif cbx_afp.checked=true then

    afp=haber*0.06else

    afp=0end ifif cbx_essalud.checked=true then

    essalud=haber*0.06else

    essalud=0end iftotald=cts+afp+essaludneto=haber - totaldem_cts.Text=String(cts)em_afp.Text=String(afp)em_essalud.Text=String(essalud)em_totald.Text=String(totald)em_neto.Text=String(neto)return

    Cb_agregar / Clickedddlb_empleados.Additem(sle_nuevoe.Text)sle_nuevoe.Text=""

    cb_aceptar / Clickedsle_empleado.Text=ddlb_empleados.Text

    rb_gerente / Clickedsle_haber.text="2500" Calcular();

    rb_administrador / Clickedsle_haber.text="2000" Calcular();

    rb_secretaria / Clickedsle_haber.text="1000" Calcular();

    cb_otro / clickedsle_empleado.Text=""sle_haber.Text="0"em_cts.Text="0"em_afp.Text="0"em_essalud.Text="0"em_totald.Text="0"em_neto.Text="0"cbx_cts.checked=Falsecbx_afp.checked=Falsecbx_essalud.checked=False

    cbx_cts cbx_afp cbx_essalud / Clicked (en los tres poner el mismo cdigo)Calcular();

    Ejecute la aplicacin e ingrese los datos para poder calcular.

    Ing. Victor Davila [email protected] 34

  • Manual de Power Builder

    Este control contiene una serie de pginas donde cada pgina podr

    contener a su vez controles

    Propiedades.

    Aligment. Especifica la alineacin del texto en la etiqueta de cada pgina: Los valores son

    : Left!, Center!, Right!.

    BackColor. Especifica un valor numrico correspondiente al color del fondo.

    Enabled. Activa o Desactiva el control.

    Perpendicular Text. Especifica si el titulo de cada pgina se alinear en forma vertical.

    SelectedTab. Especifica cual de las paginas se encuentra seleccionada.

    Para insertar mas pginas dentro de este control, ubique el puntero del mouse en la parte

    superior de este control, realice un click con el botn contrario y seleccione la opcin

    InsertTabPage.

    Para eliminar una pgina, realice un click contrario sobre la pgina que desee eliminar y

    seleccione la opcin Delete. (no se olvide que tendr que realizar click contrario dentro de

    la pgina)

    Ing. Victor Davila [email protected] 35

  • Manual de Power Builder

    Ejemplo:

    Desarrollar una aplicacin que permita ingresar los datos de los trabajadores. Usar un

    control Tab con dos pginas.

    En la primera pgina se debe ingresar los datos generales del trabajador.

    En la segunda pgina se debe seleccionar la condicin del trabajador (Contratado o

    Nombrado). Si es Contratado, su haber bsico ser 1500 y si es nombrado 2000.

    Si es Nombrado realizar los descuentos de ley, de lo contrario es descuento ser 0.

    Nota: Para cambiar el nombre de la pgina dentro de un tab, realice un clic contrario

    dentro de la pgina que quiere cambiar el nombre, luego en la ventana de propiedades

    seleccione la propiedad name y ponga el nombre que desee.

    El diseo del formulario tendr que quedar de esta manera: (grabe con

    w_tabpage).

    Diseo de la primera pgina

    Diseo de la segunda pgina

    Ing. Victor Davila [email protected] 36

    Control Propiedad Valor

    Tab_1 Name Tab_Trabajador

    tabpage_1 Name Tabpg_datos

    Caption Datos del Trabajador

    tabpage_2 Name Tabpg_sueldo

    Caption Sueldo del trabajador

    Dentro de Tabpg_datos va:

    Sle_1 Name sle_codigo

    Sle_2 Name sle_nombres

    Sle_3 Name sle_apellidos

    Sle_4 Name sle_direccion

    Sle_5 Name sle_dni

    em_1 Name em_fecha

    cb_1 Name cb_aceptar

    Caption Aceptar

    Dentro de tab_pg_sueldo va:

    rb_1 Name rb_contratado

    Caption Contratado

    rb_2 Name rb_nombrado

    Caption Nombrado

    Sle_6 Name sle_haber

    Sle_7 Name sle_afp

    Sle_8 Name sle_cts

    Sle_9 Name sle_essalud

    Sle_10 Name sle_totald

    Sle_11 Name sle_neto

    cb_2 Name cb_otro

    Caption Otro

    cb_1 Name cb_cerrar

    Caption Cerrar

  • Manual de Power Builder

    Crear una funcin con el nombre : Calcular

    Cdigo de la funcin.Real haber,afp,cts,essalud,neto,totdhaber=real(tab_trabajador.tabpg_sueldo.sle_haber.text)cts=haber*0.03afp=haber*0.06essalud=haber*0.06totd=cts+afp+essaludneto=haber - totdtab_trabajador.tabpg_sueldo.sle_afp.text=string(afp)tab_trabajador.tabpg_sueldo.sle_cts.text=string(cts)tab_trabajador.tabpg_sueldo.sle_essalud.text=string(essalud)tab_trabajador.tabpg_sueldo.sle_totald.text=string(totd)tab_trabajador.tabpg_sueldo.sle_neto.text=string(neto)

    Cdigo del formulario

    w_tabpage / OpenTab_Trabajador.Tabpg_sueldo.Enabled=FalseTab_Trabajador.tabpg_datos.Sle_codigo.Setfocus()

    cb_aceptar / Clickedtab_trabajador.tabpg_datos.enabled=Falsetab_trabajador.tabpg_sueldo.enabled=truetab_trabajador.SelectedTab=2

    rb_contratado / Clickedztab_trabajador.tabpg_sueldo.sle_haber.text="1500"Calcular();

    rb_nombrado / Clickedtab_trabajador.tabpg_sueldo.sle_haber.text="2000"Calcular();

    Ejecute el formulario, ingrese los datos del trabajador, luego pulse el botn Aceptar para pasar a la siguiente pgina y seleccione la condicin del trabajador

    Ing. Victor Davila [email protected] 37

  • Manual de Power Builder

    Ing. Victor Davila [email protected] 38

  • Manual de Power Builder

    DISEO DE MENUS

    MENUS. Para aadir un men, primero es preciso crearlo y despus asociarlo a la ventana en

    que va a aparecer. Esta asociacin se realiza desde el Window Painter.

    Ejemplo

    Disear un men con las siguientes caractersticas.

    Alumnos

    Registro de nuevos alumnos Alt + RMatricula de alumnos Alt + MConsulta por seccin Alt + C

    Cursos

    Registro de nuevos cursosActualizacin Alt + A

    Profesores Registro de nuevos profesores Alt + P

    Actualizacin de datosSalir

    Salir de la Aplicacin

    Solucin

    Seleccione el icono New del PowerBar1.

    Dentro de la ventana New seleccionar la ficha Objects y dentro esta seleccionar el objeto

    Menu

    Seguidamente se activar la siguiente ventana.

    Ing. Victor Davila [email protected] 39

    WYSIWYG Menu View (Presentacin preliminar del men) Tree Menu View

    (Estructura del men)

    Propiedades

    Ventana de Cdigo

  • Manual de Power Builder

    Seleccione untitled0 del TREE VIEW, realice un click con el botn contrario y

    seleccione la opcin Insert Sibmenu Item

    Luego ingrese el ttulo para la primera opcin (en este caso escriba &Alumnos)

    Seleccione la opcin &Alumnos y realice un click con el botn contrario, en la ventana

    que se despliega seleccione la opcin Insert Submenu Item .

    Escriba el ttulo para el nuevo submen (Escriba: &Registro de nuevos alumnos).

    Para activar el acceso con Alt + R a la opcin Registro de nuevos alumnos , en la

    ventana de propiedades busque la opcin Shortcut Key y dentro de esta seleccione la

    letra R, y active el check de Shortcut Alt

    Ing. Victor Davila [email protected] 40

  • Manual de Power Builder

    Para crear el siguiente elemento de Alumnos. Seleccione &Alumnos del Tree View,

    realice un click con el botn contrario, en la ventana que se despliega seleccione la opcin

    Insert Submenu Item.

    Escriba el ttulo para el nuevo item. (&Matricula de alumnos).

    Para activar el acceso con Alt + M a la opcin Matricula de alumnos , en la ventana de

    propiedades busque la opcin Shortcut Key y dentro de esta seleccione la letra M, y

    active el check de Shortcut Alt

    Para crear la opcin Consulta por seccin, siga el mismo procedimiento que utiliz para

    crear : Matricula de alumnos.

    Para crear la opcin &Cursos, seleccione untitled0 de la ventana de TREE VIEW.

    Realice un click con el botn contrario y seleccione la opcin Insert Submenu Item.

    Escriba el ttulo para la nueva opcin (en este caso : &Cursos)

    Ing. Victor Davila [email protected] 41

  • Manual de Power Builder

    Para crear los sub menus de Cursos, siga los mismos procedimientos realizados para los

    sub mens anteriores.

    Al final el diseo del men tendr que quedar de la siguiente manera.

    Grabe el men con el nombre : m_principal.

    ENLAZAR UN MEN A UNA VENTANA

    Abra una nueva ventana (Window).

    En la ventana de propiedades seleccione la opcin MenuName, Realice un click sobre el

    botn .

    En la ventana que se activa seleccione el men que desea asociar a la ventana (En este

    caso seleccione m_principal).

    Grabe la ventana con el nombre w_principal y cierre, ejecute la ventana.

    ESCRIBIR EL CODIGO DE UN MENU

    Abra el men que se ha creado anteriormente (m_principal).

    Seleccione la opcin dentro del men al cual desea asociar el cdigo.

    Realice un click con el botn secundario y seleccione la opcin Script.

    Ing. Victor Davila [email protected] 42

  • Manual de Power Builder

    En la venta de cdigo escriba la ventana o accin que desee que realice el men. (en este

    caso escriba Open (Nombre_Ventana)

    El cdigo de la opcin cerrar es: Close(w_principal)

    De la misma manera escriba los cdigos de las dems opciones de men.

    Grabe el men y cierre. Ejecute la ventana w_principal.

    CREAR UNA BARRA DE HERRAMIENTAS

    Para crear una barra de herramientas, es necesario que la ventana en donde se va a insertar la

    barra de herramientas sea del tipo MDI (Multiple Document Interface)

    Para nuestro ejemplo utilizaremos el men que se ha creado anteriormente.

    Abra el objeto men que se ha creado anteriormente (m_principal)

    Seleccione el elemento de men al cual desea asociar un icono de la barra de herramientas

    (en este caso seleccione Registro de nuevos alumnos).

    En la ventan de propiedades seleccione active la ficha Toolbar, y en la opcin

    ToolbarItemText (Texto del elemento de la barra de herramientas), escriba el texto que se

    Ing. Victor Davila [email protected] 43

  • Manual de Power Builder

    desea mostrar al momento de ubicar el mouse sobre dicho icono ( en este caso escriba :

    Registro de nuevos alumnos)

    En la opcin ToolbarItemName, seleccione el icono que desea mostrar en la barra de

    barra de herramientas.

    En la opcin ToolbarItemDownName (es opcional), seleccione el icono que desea

    mostrar cuando se pulsa sobre este en la barra de herramientas.

    El diseo tendr que quedar de la siguiente manera.

    Nota: No es necesario crear el cdigo para la barra de herramientas, esto se debe a que

    se los iconos de la barra de herramientas, se encentran enlazados a las opciones de

    men.

    Para crear los otros iconos de la barra de herramientas, siga los mismos procedimientos

    anteriores.

    Para cambiar el tipo de ventana a mdi, realice lo siguiente:

    Abra la ventana que desea modificar.

    Ing. Victor Davila [email protected] 44

    Barra de Herramientas que se ha creado

  • Manual de Power Builder

    En la ventana de propiedades, busque la opcin Window Type, y seleccione la

    opcin Mdi!

    Ejecute la ventana para ver el resultado.

    Si desea que todas la ventanas que se abran desde la barra de men, se activen dentro de

    la ventana principal, tendr que cambiar la propiedad WindowType, de las otras

    ventanas a Child!.

    Este es un ejemplo de una ventana tipo child!.

    La ventana que se activa, solo podr moverse dentro de la ventana principal.

    Ing. Victor Davila [email protected] 45

  • Manual de Power Builder

    CREAR UNA NUEVA BASE DE DATOS UTILIZANDO EL DISEADOR DE BASE

    DE DATOS DEL POWER BUILDER 7.0

    1. Una vez, que se encuentre dentro del power builder, seleccionar el icono de DataBase

    2. Dentro de la ventana de base de datos, seleccionar la carpeta de Uitilities y expandir.

    3. Seleccionar la opcin Create ASA Database y realizar doble clic, se activar la siguiente

    pantalla.

    4. Seleccione el botn Browse, busque la carpeta en donde desea grabar su base de datos,

    indique el nombre de la misma, y realice un clic sobre el botn Guardar.

    Ing. Victor Davila [email protected] 46

  • Manual de Power Builder

    5. Dentro de la ventana Create Adaptive Server Anywhere DataBase, Seleccione el botn

    Ok

    6. Una, vez que se haya creado, se observar que dentro de la base de datos ODBC, se

    agrego la nueva conexin que se ha creado.

    7. Si se desea cambiar el nombre de la conexin, realice doble clic sobre la conexin.

    8. En la ventana que se activa, seleccione Profile Name, e ingrese el nuevo nombre de la

    conexin. Ejemplo (Conexin_Alumnos) y seleccione el botn Ok

    Ing. Victor Davila [email protected] 47

    La conexin, se mostrar con el nuevo nombre creado.Luego expanda la nueva conexin.

  • Manual de Power Builder

    9. Si se desea crear tablas de datos, dentro de la conexin creada, seleccione la carpeta

    Tables y realizar un clic con el botn derecho.

    10. En la ventana de diseo de tablas, ingresar el nombre del campo, tipo de dato y ancho del

    mismo

    11. Para grabar la nueva tabla de datos, seleccione el icono de guarda, en la ventana que se

    activa, ingrese el nombre de la tabla y seleccione el botn Ok.

    12. Expanda la carpeta Tables y ver que la nueva tabla se ha agregado a la lista de tablas.

    13. Para crear un ndice (Llave Principal) dentro de la tabla creada, seleccione la tabla, realice

    un clic con el botn derecho, seleccione New, y luego Primary Key.

    Ing. Victor Davila [email protected] 48

  • Manual de Power Builder

    14. En la ventana de Primary Key (Conexin_Alumnos), Active el check del campo, del cual

    desea crear el ndice principal y luego grabe la tabla de datos.

    15. Dentro de la ventana Object Layout, se mostrar la tabla de datos, con su clave creada, tal

    como se muestra a continuacin.

    Ing. Victor Davila [email protected] 49

  • Manual de Power Builder

    Cree la tabla Datos_Alumnos, de la misma manera, el diseo es el siguiente:

    La llave principal ser Codigo_Alumno.

    Al terminar de crear se deber de mostrar las dos tablas creadas, cada una con sus

    respectivas llaves creadas, tal como se muestra a continuacin

    Claves Forneas (Foreign Key)

    Las Clave fornea es una combinacin de una o mas columnas de una tabla que sirven para

    identificar a una o mas columnas de otra tabla, una clave fornea, relaciona informacin de

    Ing. Victor Davila [email protected] 50

    6

  • Manual de Power Builder

    dos tablas. Una tabla puede contener varias claves forneas, ya que su informacin puede

    estar relacionada con mas de una tabla.

    Crear una clave fornea para la tabla Datos_Alumnos.

    1. Seleccione la tabla Datos_Alumnos, dentro de la carpeta Tables, dar un clic con el botn

    derecho, en el men que se activa, seleccionar New, seguido de Foreign Key.

    2. En la ficha general de Foreign Key, ingresar el nombre de la clave (Foreign Key, puede

    ser el mismo nombre del campo) y seleccionar el campo Forneo

    (Codigo_Especialidad) y el la ficha Primary Key, seleccionar la tabla (Table), de donde

    viene el campo forneo (Especialidades) y activar el campo principal

    (Codigo_Especialidad)

    3. Despus de haber creado la clave fornea, grabar la tabla.

    4. En la venta de Layout, se mostrar las dos tablas con su respectiva llave, tal como se

    muestra a continuacin.

    Ing. Victor Davila [email protected] 51

  • Manual de Power Builder

    CREAR UNA CONSULTA DE DATOS

    Crear una consulta que muestre los datos de la tabla Especialidades.

    1. Seleccione el icono New del PowerBar1

    2. Dentro de la ventana New, seleccionar la ficha Database, opcin Query y pulsar el botn

    Ok.

    3. Seleccionar la tabla de donde se desea crear la consulta de datos (Especialidades) y pulsar

    el botn Open.

    4. Seleccionar los campos que se incluirn en la Consulta.

    Ing. Victor Davila [email protected] 52

    Campos Seleccionados en la consulta

    Tabla seleccionada para la consulta

  • Manual de Power Builder

    5. Para realizar una presentacin preliminar, realice un clic sobre el icono , para salir de

    la vista, seleccione el siguiente icono .

    6. Grabe la consulta, seleccionando el siguiente icono .

    Consulta con Parmetros o Argumentos. Son consultas que retornan datos de acuerdo a un

    parmetro o argumento ingresado.

    Crear una consulta que muestre los datos de tabla especialidades, de acuerdo al cdigo de especialidad ingresado.

    1. Repetir los 5 procedimientos anteriores.

    2. Estando dentro de la venta de diseo de consultas, seleccione Design

    de la barra de men, seguido de la opcin Retrieval Arguments...

    3. En la ventana que se activa (Especyfi Retrieval Arguments...), ingresar el nombre de la

    variable (Cod_Esp) a crear, especifique el tipo de dato para el mismo (String), luego

    seleccione el botn OK

    4. Seleccione la columna (Column) que se relacione con el Argumento.

    (Codigo_Especialdad), luego el operador (=) y el valor (Value) , en este caso como valor

    ira el argumento que se ha creado, para lo cual realice un clic con el botn derecho sobre

    este casillero, seleccione la opcin Arguments.., en la ventana que se activa seleccionar el

    Ing. Victor Davila [email protected] 53

  • Manual de Power Builder

    argumento creado (en este caso Cod_Esp), luego pulse el botn Paste. Deber de quedar

    de la siguiente manera,

    5. Al realizar una presentacin preliminar , se activar una ventana en donde tendr que

    ingresar el valor para el argumento que se ha creado. Ingresar el valor y pulsar el botn

    OK

    6. Para salir de la consulta, seleccione el siguiente icono .

    7. Grabe la consulta, seleccionando el siguiente icono .

    Ing. Victor Davila [email protected] 54

    Tal como se muestra en el ejemplo, se mostrarn los datos, de acuerdo a valor ingresado (Argumento)

  • Manual de Power Builder

    Crear una consulta relacionando dos tablas de datos. Cuando una tabla de datos contiene

    campos de otras tablas (Llaves forneas), como es el caso de la tabla Datos_Alumnos, es

    recomendable relacionarla con la tabla principal (Especialidades) tal como se vio en clases

    anteriores.

    Si se desea crear una consulta de la tabla Datos_Alumnos, y que muestre el nombre de la

    especialidad en el campo Codigo_Especialidad, las dos tablas tendrn que estar relacionadas.

    1. Seleccione el icono New del PowerBar1

    2. Dentro de la ventana New, seleccionar la ficha Database, opcin Query y pulsar el botn

    Ok.

    3. Seleccionar las tablas de donde se desea crear la consulta de datos (Dastos_Alumnos y

    Especialidades) y pulsar el botn Open.

    4. Seleccionar todo los campos de la tabla Datos_Alumnos a excepcin del campo

    Codigo_Especialidad, y de la tabla Especialidades, seleccionar el campo

    Nombre_Especialidad.

    Ing. Victor Davila [email protected] 55

  • Manual de Power Builder

    5. Al realizar una presentacin preliminar , se mostrara que cada alumno aparece con el

    nombre de la especialidad a donde pertenece, y no el codigo_especialidad que se

    encuentra en la tabla Datos_Alumnos, esto se debe a la relacin que existe entre las dos

    tablas.

    6. Para salir de la consulta, seleccione el siguiente icono .

    7. Grabe la consulta, seleccionando el siguiente icono .

    Ing. Victor Davila [email protected] 56

    Indica que estas dos tablas estn relacionadas por los campos que indican las lneas

    Datos Datos Datos Datos

  • Manual de Power Builder

    Practica Calificada.Agregar a su base de datos las siguientes Tablas.

    Ing. Victor Davila [email protected] 57

    Relacione las tablas de tal forma que queden como se

    muestra a continuacin

    Indice Normal (Index)

  • Manual de Power Builder

    1. Crear una consulta de datos, que muestre los siguientes datos.

    Codigo del alumno, Nombres, Apellidos, Nombre de la especialidad, Seccin, Semestre,

    Turno y Ao Acadmico, de acuerdo al cdigo del alumno ingresado.

    Ejemplo: Si se ingresa el cdigo del alumno 0001, solo mostrar los datos del alumno

    ingresado.

    2. Crear una consulta de datos, que muestre los siguientes datos.

    Codigo del alumno, Nombres, Apellidos, Nombre de la especialidad, Seccin, Semestre,

    Turno y Ao Acadmico, de acuerdo al nombre de especialidad ingresado.

    Ejemplo: Si se ingresa el nombre de la especialidad Computacin e Informtica, solo

    mostrar los alumnos de esa especialidad.

    Ing. Victor Davila [email protected] 58

    Datos Alumnos Datos Alumnos Datos Alumnos DatosAlumnos

    Datos Alumnos Datos Alumnos Datos Alumnos

    Datos Alumnos Datos Alumnos Datos Alumnos

    Crear una consulta relacionando dos tablas de datos. Cuando una tabla de datos contiene campos de otras tablas (Llaves forneas), como es el caso de la tabla Datos_Alumnos, es recomendable relacionarla con la tabla principal (Especialidades) tal como se vio en clases anteriores.Si se desea crear una consulta de la tabla Datos_Alumnos, y que muestre el nombre de la especialidad en el campo Codigo_Especialidad, las dos tablas tendrn que estar relacionadas.Codigo del alumno, Nombres, Apellidos, Nombre de la especialidad, Seccin, Semestre, Turno y Ao Acadmico, de acuerdo al cdigo del alumno ingresado.Codigo del alumno, Nombres, Apellidos, Nombre de la especialidad, Seccin, Semestre, Turno y Ao Acadmico, de acuerdo al nombre de especialidad ingresado.