Power Builder 7.0. Nivel básico
Transcript of Power Builder 7.0. Nivel básico
-
8/14/2019 Power Builder 7.0. Nivel bsico
1/59
-
8/14/2019 Power Builder 7.0. Nivel bsico
2/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
PowerBuilder 7.0
Definicin. 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 (OpenDataBase 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
seleccionarApplication, luego pulsar el botn OK
Prof: Henry Salcedo [email protected]
2
Servidor(Base de Datos)
Estacion(Cliente
-
8/14/2019 Power Builder 7.0. Nivel bsico
3/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Prof: Henry Salcedo [email protected]
3
Nombre de la A licacin
Nombre de la Librera
-
8/14/2019 Power Builder 7.0. Nivel bsico
4/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Prof: Henry Salcedo [email protected]
4
Ventana dePropiedades
Ventana creada.
Ventana donde se crear el cdigo
-
8/14/2019 Power Builder 7.0. Nivel bsico
5/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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).
Prof: Henry Salcedo [email protected]
5
-
8/14/2019 Power Builder 7.0. Nivel bsico
6/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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
seleccionarWindow, 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 &Contrasea
Sle_1 Name Sle_UsuarioText
Prof: Henry Salcedo [email protected]
6
-
8/14/2019 Power Builder 7.0. Nivel bsico
7/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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 RunPreview, 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.
Prof: Henry Salcedo [email protected]
7
-
8/14/2019 Power Builder 7.0. Nivel bsico
8/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Prof: Henry Salcedo [email protected]
8
-
8/14/2019 Power Builder 7.0. Nivel bsico
9/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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
Prof: Henry Salcedo [email protected]
9
-
8/14/2019 Power Builder 7.0. Nivel bsico
10/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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_Usuario
Text
Sle_2 Name Sle_ClaveText Limit 5Password (Activado)
Cb_1 Name cb_Aceptar Text Aceptar
Cb_2 Name cb_Cancelar
Text 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)
Prof: Henry Salcedo [email protected]
10
-
8/14/2019 Power Builder 7.0. Nivel bsico
11/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
Ejemplo
Crear una apliacin que calcule el los descuentos de ley de un trabajador y el sueldoneto.
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"
Prof: Henry Salcedo [email protected]
11
Los Controles
sle_Haber, sle_Cts,sle_Afp, sle_Totd ysle_Neto tendrn queestar desactivados.
-
8/14/2019 Power Builder 7.0. Nivel bsico
12/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Prof: Henry Salcedo [email protected]
12
-
8/14/2019 Power Builder 7.0. Nivel bsico
13/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Prof: Henry Salcedo [email protected]
13
-
8/14/2019 Power Builder 7.0. Nivel bsico
14/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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 encuentraseleccionado 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_haber Text 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_neto
Text en blancorb_1 Name rb_generente
Caption Gerente 2500rb_2 Name rb_administradoe
Caption Administrador 2000rb_3 Name rb_secretaria
Caption Secretaria 1500Cb_1 Name cb_aceptar
Caption Aceptar Cb_1 Name cb_otro
Caption Otro
Cb_1 Name cb_cerrar Caption Cerrar
Prof: Henry Salcedo [email protected]
14
-
8/14/2019 Power Builder 7.0. Nivel bsico
15/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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 .
Prof: Henry Salcedo [email protected]
15
Controles desactivados
-
8/14/2019 Power Builder 7.0. Nivel bsico
16/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
(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 encuentraseleccionado 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_essaludcaption ESSALUD 3%
El diseo del formulario tendr que quedar de la siguiente manera
Prof: Henry Salcedo [email protected]
16
-
8/14/2019 Power Builder 7.0. Nivel bsico
17/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
Cdigo del formulario
cb_aceptar / clicked
Real haber,cts,afp,essalud,totd,netoIf rb_gerente.checked=true then haber=2500
If rb_administrador.checked=true then haber=2000If rb_secretaria.checked=true then haber=1500if cbx_cts.checked=true then
cts=haber * 0.03else
cts=0end ifif cbx_afp.checked=true then
afp=haber * 0.03else
afp=0
end ifif cbx_essalud.checked=true then
essalud=haber * 0.03else
essalud=0end 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 Exampled Day number with no leading zero 9dd Day number with leading zero if appropriate 09ddd Day name abbreviation Mon
dddd Day name Mondaym Month number with no leading zero 6
Prof: Henry Salcedo [email protected]
17
-
8/14/2019 Power Builder 7.0. Nivel bsico
18/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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 (mustfollow s or ss)
AM/PM Two-character, upper-case abbreviation (AM or PM asappropriate)
am/pm Two-character, lower-case abbreviation (am or pm asappropriate)
A/P One-character, upper-case abbreviation (A or P asappropriate)
a/p One-character, lower-case abbreviation (a or p asappropriate)
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.
Prof: Henry Salcedo [email protected]
18
-
8/14/2019 Power Builder 7.0. Nivel bsico
19/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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 ifem_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.
Prof: Henry Salcedo [email protected]
19
Controles EditMaskControl em_nota1 y em_nota2Propiedad (ficha mask)
Mask = ##MaskDataType: numerickask!Spin = ActivadoMin = 0Max = 20Incremente = 1
-
8/14/2019 Power Builder 7.0. Nivel bsico
20/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
FuncionesAdditem. 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()
Prof: Henry Salcedo [email protected]
20
Control Propiedad ValorSle_1 Name sle_nuevo
Text en blanco
Lb 1 Name
-
8/14/2019 Power Builder 7.0. Nivel bsico
21/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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_precios
lb_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=""
Prof: Henry Salcedo [email protected]
21
Nota : Los textos de color oscurotendrn que estar desactivados
-
8/14/2019 Power Builder 7.0. Nivel bsico
22/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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"
Prof: Henry Salcedo [email protected]
22
-
8/14/2019 Power Builder 7.0. Nivel bsico
23/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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, losdescuentos 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.
Prof: Henry Salcedo [email protected]
23
-
8/14/2019 Power Builder 7.0. Nivel bsico
24/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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 ladoizquierdo de la cadena
Ejemplo : LeftTrim (" Henry Salcedo")
Len. Retorna la longitud de la cadena.Ejemplo :
Longs_nombres_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 ladoderecho..
Ejemplo : Right ("HENRY SALCEDO",3)
RightTrim. Retorna la misma cadena de caracteres sin los espacios en blanco dellado derecho de la cadena
Prof: Henry Salcedo [email protected]
24
-
8/14/2019 Power Builder 7.0. Nivel bsico
25/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
Ejemplo : RightTrim ("Henry Salcedo ")
Space. Retorna una cadena de longitud determinada, conteniendo espacios enblanco.
Ejemplo : Name = Space (10)
Trim. Retorna la misma cadena de caracteres sin los espacios en blanco del ladoizquierdo 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 semanaEjemplo :
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
Prof: Henry Salcedo [email protected]
25
-
8/14/2019 Power Builder 7.0. Nivel bsico
26/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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 sistemaEjemplo :
Date Fecha
Fecha=Today()
Year. Retorna el ao de una fecha dadaEjemplo :
Integer Ao
Ao=Year(Today())
3. FUNCIONES NUMERICAS
Abs. Obtiene el valor absoluto de un numeroEjemplo:
i = 4
num = Abs(i)
num = Abs (4)
num = Abs (+4)
num = Abs (-4)
Abs (-4.2)
Esta sentencia retorna 4.2.
Prof: Henry Salcedo [email protected]
26
-
8/14/2019 Power Builder 7.0. Nivel bsico
27/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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).
Prof: Henry Salcedo [email protected]
27
-
8/14/2019 Power Builder 7.0. Nivel bsico
28/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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. Convierteel contenido de una cadena a un nmero decimal.
Ejemplo :
Real Numero
Numero=Dec("14.25")
Double. Convierteel contenido de una cadena a un nmero doble
Ejemplo :
Real Numero
Numero=Double("14.25")
Integer. Convierteel contenido de una cadena a un nmero entero
Ejemplo :
Prof: Henry Salcedo [email protected]
28
-
8/14/2019 Power Builder 7.0. Nivel bsico
29/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
Integer Numero
Numero=Integer("14")
Real. Convierteel contenido de una cadena a un nmero real
Ejemplo :
Real Numero
Numero=real("14.25")
String. Convierteun nmero a un cadena de caracteres.
Ejemplo :
String Cadena
Cadena=String(14.25)
Date. Convierteuna 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.
Prof: Henry Salcedo [email protected]
29
-
8/14/2019 Power Builder 7.0. Nivel bsico
30/59
-
8/14/2019 Power Builder 7.0. Nivel bsico
31/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Prof: Henry Salcedo [email protected]
31
-
8/14/2019 Power Builder 7.0. Nivel bsico
32/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Prof: Henry Salcedo [email protected]
32
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
-
8/14/2019 Power Builder 7.0. Nivel bsico
33/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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 Codigo
Nregs=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.
Prof: Henry Salcedo [email protected]
33
-
8/14/2019 Power Builder 7.0. Nivel bsico
34/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Prof: Henry Salcedo [email protected]
34
Nombre de la funcinAqu se escribe el
Nombre de la funcinSeleccione (None)
-
8/14/2019 Power Builder 7.0. Nivel bsico
35/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.03
ELSEcts=0
end 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=False
cbx_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.
Prof: Henry Salcedo [email protected]
35
-
8/14/2019 Power Builder 7.0. Nivel bsico
36/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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)
Prof: Henry Salcedo [email protected]
36
-
8/14/2019 Power Builder 7.0. Nivel bsico
37/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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
Prof: Henry Salcedo [email protected]
37
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
-
8/14/2019 Power Builder 7.0. Nivel bsico
38/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
Crear una funcin con el nombre : CalcularCdigo 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 Aceptarpara pasar a la siguiente pgina y seleccione la condicin del trabajador
Prof: Henry Salcedo [email protected]
38
-
8/14/2019 Power Builder 7.0. Nivel bsico
39/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
Prof: Henry Salcedo [email protected]
39
-
8/14/2019 Power Builder 7.0. Nivel bsico
40/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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
ProfesoresRegistro de nuevos profesores Alt + PActualizacin de datos
SalirSalir 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.
Prof: Henry Salcedo [email protected]
40
WYSIWYG Menu View
(Presentacin preliminar del men)Tree Menu View
(Estructura del men)
Propiedades
Ventana de Cdigo
-
8/14/2019 Power Builder 7.0. Nivel bsico
41/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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
Prof: Henry Salcedo [email protected]
41
-
8/14/2019 Power Builder 7.0. Nivel bsico
42/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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)
Prof: Henry Salcedo [email protected]
42
-
8/14/2019 Power Builder 7.0. Nivel bsico
43/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Prof: Henry Salcedo [email protected]
43
-
8/14/2019 Power Builder 7.0. Nivel bsico
44/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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
Prof: Henry Salcedo [email protected]
44
-
8/14/2019 Power Builder 7.0. Nivel bsico
45/59
-
8/14/2019 Power Builder 7.0. Nivel bsico
46/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Prof: Henry Salcedo [email protected]
46
-
8/14/2019 Power Builder 7.0. Nivel bsico
47/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Prof: Henry Salcedo [email protected]
47
-
8/14/2019 Power Builder 7.0. Nivel bsico
48/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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
Prof: Henry Salcedo [email protected]
48
La conexin, se mostrar con elnuevo nombre creado.Luego expanda la nuevaconexin.
-
8/14/2019 Power Builder 7.0. Nivel bsico
49/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Prof: Henry Salcedo [email protected]
49
-
8/14/2019 Power Builder 7.0. Nivel bsico
50/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Prof: Henry Salcedo [email protected]
50
-
8/14/2019 Power Builder 7.0. Nivel bsico
51/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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
Prof: Henry Salcedo [email protected]
51
6
-
8/14/2019 Power Builder 7.0. Nivel bsico
52/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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, seleccionarNew, 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.
Prof: Henry Salcedo [email protected]
52
-
8/14/2019 Power Builder 7.0. Nivel bsico
53/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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 ypulsar 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.
Prof: Henry Salcedo [email protected]
53
Campos Seleccionados enla consulta
Tabla seleccionadapara la consulta
-
8/14/2019 Power Builder 7.0. Nivel bsico
54/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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 cdigode 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
Prof: Henry Salcedo [email protected]
54
-
8/14/2019 Power Builder 7.0. Nivel bsico
55/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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 .
Prof: Henry Salcedo [email protected]
55
Tal como se muestra en el ejemplo,se mostrarn los datos, de acuerdo avalor ingresado (Argumento)
-
8/14/2019 Power Builder 7.0. Nivel bsico
56/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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 ypulsar 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.
Prof: Henry Salcedo [email protected]
56
-
8/14/2019 Power Builder 7.0. Nivel bsico
57/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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 .
Prof: Henry Salcedo [email protected]
57
Indica que estas dos tablasestn relacionadas por loscampos que indican las lneas
Datos Datos Datos Datos
-
8/14/2019 Power Builder 7.0. Nivel bsico
58/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
Practica Calificada.Agregar a su base de datos las siguientes Tablas.
Prof: Henry Salcedo [email protected]
58
Relacione las tablas de tal forma que queden como se
muestra a continuacin
IndiceNormal
-
8/14/2019 Power Builder 7.0. Nivel bsico
59/59
Instituto de Educacin Superior Web-Site: www.warinet.com.peLa Pontificia
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.
Datos Alumnos Datos Alumnos Datos Alumnos DatosAlumnos
Datos Alumnos Datos Alumnos Datos Alumnos
Datos Alumnos Datos Alumnos Datos Alumnos