Академический Документы
Профессиональный Документы
Культура Документы
Huancayo 2006
SEPARATA N01
Escuela Profesional: Ing. Informtica Asignatura: Lenguaje de Programacin Comercial Turno: Noche Ciclo: Octavo Docente: ELVIS GUILLERMO HUARCAYA QUISPE Fecha: 08-08-2006 INSTALACIN DE POWER BUILDER 9.0-10.0
Requerimiento de Hardware y Software Para la instalacin de Power Builder 9.0 10.0 se requiere los Siguientes requisitos: Sistemas Operativos Microsoft Windows 98 Microsoft Windows NT 4.0. Windows Xp , Windows 2003 Memoria 16 Mb de RAM (Recomendado : 32 Mb de RAM Espacio en disco duro: 16 Mb Instalacin Compacta 600 Mb Instalacin Tpica PC superior. Pentium I (Recomendado Pentium IV) Tarjeta Grfica VGA o superior (Recomendado SGVA de 256 colores) Instalacin de Power builder Para instalar se debe de insertar el CD en la unidad de lectora. PoWer Builder 9.0 -10.0 forma parte del conjunto de producto que incluye las siguientes aplicaciones: InfoMarker 9.0 -10.0 Power Builder 9.0-10.0 Power Dynamo 3.6 PowerDisegner Doc. 9.0-10.0 PowerDisegner Trial 9.0-10.0 Iniciando la instalacin de Power Builder 9.0
Para continuar con la instalacin realice Clic en el Botn Next. Hasta el Final de la instalacin. CONCEPTO: Power Builder es una herramienta de desarrollo de aplicaciones orientada a objetos que permite construir poderosas aplicaciones cliente/servidor para el ambiente Windows y Unix, e interactuar con varias bases de datos. Power Builder es del grupo de productos sybase que juntos proporcionan las herramientas para desarrollar aplicaciones cliente/servidor, distribuido, y aplicaciones de Internet. ENTORNO DE DESARROLLO DE POWERBUILDER El entorno del Power Bilder que usted visualiza depende de la versin que esta utilizando. A continuacin se explica el entorno de la versin 9.0. -10.0 Cuando usted ingresa al Power Builder 9.0 10.0 se visualiza siempre la misma ventana, sin ninguna aplicacin activa:
Para visualizar una aplicacin debe hacer clic en el botn Open o en el men File/Open y seleccionar un espacio de trabajo (WorkSpace) creado previamente.
VENTANA PRINCIPAL DE POWER BILDER La ventana principal de Power Builder esta compuesta de tres partes: Barra de Ttulo Que contiene el nombre de la aplicacin con la que esta trabajando y los botones para controlar la ventana. Barra de Men (Estandar) Contiene las opciones que permiten administrar el Power Builder Barra de Herramientas Llamada tambin ToolBar1 y contiene los botones que permiten acceder de manera rpida a las opciones mas utilizadas de Power Builder. barra de ttulos
barra estndar barra herramientas
Nota: Las opciones del Men Principal y la Barra de Herramientas que se visualizan dependen del objeto que esta visualizando. Esto quiere decir que las opciones y las barras de herramientas aumentan cuando activamos o abrimos algn objeto de la aplicacin.
MEN FILE
New
Inherit Permite crear objetos ventanas, men u objetos de usuario a partir de objetos ya existentes. Por ejemplo, si va a crear una ventana similar a una que ya existe entonces puede elegir esta opcin para crearla. Open Abre un objeto de una aplicacin como una ventana, un Men, etc. Run/Preview Muestra una vista previa de una Ventana o DataWindow, es decir cmo la visualizar el usuario cuando la ejecute. Open WorkSpace Permite abrir un rea de trabajo existente Printer Setup Muestra la ventana para configurar la impresora Recent Objects Muestra y permite abrir los objetos recientemente utilizados de la aplicacin como ventanas, men, datawindows, etc. Recent WorkSpaces Muestra y permite abrir los ltimos espacios trabajo utilizadas. Recent Connections Muestra y permite abrir las conexiones recientemente usadas. Exit Permite salir de PowerBuilder Nota: En forma predeterminada Power Builder guarda los 8 ltimos objetos recientemente utilizados (Recent)
MEN TOOLS
ToolBars
Keyboard Shortcuts Permite asignar o quitar las teclas de acceso directo a cada unas de las opciones del men.
Por ejemplo, si desea crear un nuevo objeto (New) con las teclas Ctrl + N, seleccione la opcin New y en la caja Press Keys for shortcut pulse las teclas Ctrl + N. Para quitar la tecla de acceso rpido, seleccinela y clic en Remove. System Options Permite configurar el Power Builder, como por ejemplo: Indicar la ruta del programa que ejecuta Power Builder, indicar la cantidad de objetos recientes que debe considerar, el tipo y tamao de letra predeterminado para los ttulos de los controles (Font), etc.
To Do List Almacena los pasos para las tareas de desarrollo de la aplicacin activa. Browser
Library Painter Permite administrar los objetos de las aplicaciones (*.PBL) que tiene creadas como por ejemplo, eliminarlas, ver sus propiedades, etc.
DataBase Profile Muestra la ventana para administrar los perfiles de base de datos
Accede a la Opcin File/New Accede a la Opcin File/Inherit Accede a la Opcin File/Open Accede a la Opcin File/Run/Preview Accede a la Opcin Window/System Tree Accede a la Opcion Window/Output Accede a la Opcion Window/To Do List Accede a la Opcin Window/Browser Accede a la Opcin Window/Clip Accede a la Opcin Window/Library Painter Accede a la Opcion Window/DataBase Profile Accede a la Opcin Tools/EAServer Profile Accede a la Opcion Window/DataBase Painter Accede a la Opcin Window/File Editor Accede a la Opcin Run/Incremental Build WorkSpace Accede a la Opcin Run/Full Build WorkSpace Accede a la Opcin Deploy WorkSpace Accede la Opcin File/Debug Accede a la Opcin Run/Select and Debug Accede a la Opcin File/Run Accede a la Opcin Run/Select Target Accede a la Opcin File/Exit
Juan Jose castaeda Power Builder 9.0 Jos del carmen Canchucaja Power Builder 9.0 Joel Carrasco Aplique Power Builder 8.0
SEPARATA N02
Escuela Profesional: Ing. Informtica Turno: Noche Docente: ELVIS GUILLERMO HUARCAYA QUISPE Asignatura: Lenguaje de Programacin Comercial Ciclo: Octavo Fecha: 15-08-2006
En la ventana de dilogo New WorkSpace, ingrese el nombre del rea de trabajo, y asimismo debe ubicarse en la carpeta creada para este fin. Luego active la hoja Target, seleccione el icono Aplication, y haga clic en OK.
Application: Para una nueva aplicacin. Template Application: Para crear una nueva aplicacin que viene con objetos preconstruidos, til para quienes ya conocen Power Builder. Existing Application: Para incorporar una aplicacin que existe ya sea que est construida en una versin anterior de Power Builder o no. EAServer Component: Para crear una aplicacin que use componentes de Power Builder usando el Servidor EASserver COM/MTS: Para crear una aplicacin que use componentes Microsoft. Automation Server: Para crear una aplicacin que use una aplicacin de Windows como servidor.
10
Finalmente clic en el botn Finish ABRIR UNA APLICACIN Para abrir una aplicacin en la versin 9.0-10.0, no es necesario cerrar los objetos de su aplicacin actual. Para abrir una aplicacin en la versin 9.0 depende si tiene o no una aplicacin abierta: SI NO TIENE NINGUNA APLICACIN ABIERTA Si no tiene ninguna aplicacin abierta, puede hacer clic en el botn Open (Abrir) o en el Men File/Open WorkSpace. Se visualiza la siguiente ventana donde debe elegir el nombre del WorkSpace (*.PBW) que desea abrir.
A continuacin clic en OK SI TIENE UNA APLICACIN ABIERTA Si tiene una aplicacin abierta y desea abrir una aplicacin existente debe ir al Men File/Open WorkSpace.
11
Si la aplicacin que desea abrir ha sido utilizada recientemente, puede tambin ir al Men File/Recent WorkSpaces la cual muestra las ltimas aplicaciones recientemente utilizadas para poder abrirlas. CREAR UNA VENTANA Para crear una ventana haga clic en el botn New o en el Men File/New y seleccione la hoja Object, se visualiza la siguiente ventana:
De la ventana anterior elija Window, luego haga clic en el botn OK se visualiza la siguiente ventana:
La pantalla que visualiza tiene tres pantallas: Ventana de Trabajo (Layout) Aqu se disean los programas, dibujando los controles y escribiendo las instrucciones. Ventana de Propiedades (Properties)
12
Cuando se trabaja con una ventana se visualiza las siguientes barras de herramientas o PainterBars:
Graba la Ventana Copiar Deshacer Ventana de Cdigo Orden de los Controles Cerrar la Ventana Marca como Comentario Busca un Texto Compila un Programa Pega una Instruccin SQL Pega Variables Globales
Cortar Pegar Controles de Power Builder Ventana de Propiedades Vista Previa de la Ventana Selecciona Todo Quita el Comentario Busca y Reemplaza Pega una Funcion Pega una Sentencias Selectiva o Repetitiva
Nota: La mayora de estos botones se utilizan cuando estamos escribiendo las instrucciones, ayudndonos en esta tarea, como por ejemplo: asignar y quitar comentarios, escribir sentencias como If Then, For Next, etc, compilar los programas, es decir verificar si las instrucciones escritas estn correctamente, etc. El orden de los controles permite indicar el orden en el que se selecciona los controles cada vez que se pulsa la tecla Tab. Se recomienda que se enumeren de 10 en 10.
13
Orden de Tabulacin
Lista de Controles OTROS BOTONES PRINCIPALES DE LOS PAINTER BAR Enva hacia delante Alinea un grupo de Controles Color para el fondo Enva hacia atrs Color para el texto Asigna un Estilo de Borde
La siguiente es la barra de estilo y permite asignar de manera rpida las propiedades mas usadas a los controles.
Esta barra permite asignar el Ttulo del control, el tipo de letra, tamao de letra, negrita, cursiva, subrayado, alineacin a la izquierda, centro y derecha. Las acciones de los botones anteriores tambin se pueden activar usando el Men Principal que contiene nuevas opciones cuando trabaja con ventanas (Windows), entre las que destacan: ELEMENTOS DE LA PROGRAMACION OPERADORES ARITMETICOS Son aquellos que nos permiten ordenarle a la computadora que realice las operaciones matemticas bsicas como suma, resta, multiplicacin, etc. Operador Operacin Ejemplo + Suma 5+3=8 Resta 5-3=2 * Multiplicacin 6 * 2 = 12 / Divisin 7/2 = 3.5 ^ Potencia 3^2 = 9 ORDEN DE PRIORIDAD Es el orden en el cual la computadora ejecuta los operadores: 1. 1. ^ Potencia 2. 2. * y / Multiplicacin y divisin 3. 3. + y - Suma y resta Muy Importante: 1. Si desea alterar el orden de prioridad, debe usar los parntesis los cuales permiten ejecutar primero una operacin:
14
15
Los otros tipos de variables se declaran en la ventana de declaracin de variables. Para ingresar a esta ventana, haga clic en la lista de controles y elija DECLARE luego haga clic en la flecha abajo del tipo de declaracin.
16
VARIABLES GLOBALES Son aquellas cuyo valor es reconocido en cualquier parte de la aplicacin.
VARIABLE SHARED: Son aquellas cuyo valor es reconocido en cualquier objeto que esta dentro del objeto donde se declara como por ejemplo en una ventana o men. Teniendo como caracterstica principal que su valor lo conserva cuando el objeto donde esta declarado se cierra y se abre.
VARIABLE INSTANCIA: Son aquellas cuyo valor es reconocido en cualquier objeto que esta dentro del objeto donde se declara como por ejemplo en una ventana o men. Tiene como caracterstica principal que su valor NO lo conserva cuando el objeto donde esta declarado se cierra y se abre.
COMENTARIOS: Los comentarios son textos que se pueden utilizar para ir explicando cmo vamos desarrollando nuestro programa y cmo funciona. Power Builder no considera estos textos como instrucciones para la computadora. Para escribir comentarios dentro de un programa se puede utilizar: Doble Slash // Se utiliza cuando el comentario consiste slo en una lnea y se puede escribir antes de la instruccin o al final de ella. Ejemplo: // Declara H de tipo Bolean con el valor TRUE Boolean H = True Boolean H = True // Declara H de tipo Boolean con el valor TRUE Slash y Asterisco /* */
Referencias Bibliogrficas Lecturas Recomendadas Web a visitar Juan Jose castaeda Power Builder 9.0 Jos del carmen Canchucaja Power Builder 9.0 Joel Carrasco Aplique Power Builder 8.0
17
18
SEPARATA N03
Escuela Profesional: Ing. Informtica Turno: Noche Docente: ELVIS GUILLERMO HUARCAYA QUISPE Asignatura: Lenguaje de Programacin Comercial Ciclo: Octavo Fecha: 22-08-2006
Desing/Option/Prefixes 1 y 2, que permite indicar el prefijo que va a tener cada control cuando se dibuje en la Ventana.
Desing/Show Invisibles: Permite o no que los controles que tienen en la propiedad visible el valor False se puedan visualizar en la ventana.
19
VER LA VISTA PREVIA DE UNA VENTANA Despus de dibujar los controlasen una ventana, usted puede visualizar una vista previa de cmo se observara cuando se ejecute la aplicacin, como por ejemplo su Posicin y tamao. Para ver la vista previa se puede hacer cualquiera de las siguientes acciones: Pulsar las teclas ctrl. + Shift + P Del Men Design elegir Preview Hacer clic en el botn Preview MUY IMPORTANTE Durante la vista previa, Power Builder no reconoce ningn evento, es decir no ejecuta ninguna instruccin. ESCRIBIR LAS INSTRUCCIONES Para escribir o modificar las instrucciones de un control, se debe realizar cualquiera de las siguientes acciones: Hacer doble clic en el control. Hacer clic derecho en el control y elegir la opcin Scrip Seleccionar el control y hacer clic en el botn Script. Botn Script cuando el control no tiene instrucciones. Botn Script cuando el control ya tiene instrucciones. Se visualiza la ventana de Cdigo.
En dicha ventana se aprecia lo siguiente: Nombre del Control Lista de Controles Nombre del Evento Lista de Eventos INSTRUCCIONES BASICAS Open: Abrir o mostrar una ventana: Open(Nombre de la Ventana) Close: Cerrar u ocultar una ventana: Close(Nombre de la Ventana) Halt: Finalizar un Programa: Halt SetFocus: Ubicar el cursor en un control: Nombre del Control.SetFocus() Para limpiar el contenido de un control: Nombre del Control.Text =
20
En la ventana Save Window, debe ingresar el Nombre de la Ventana, Ingresar algn comentario sobre la ventana, asimismo debe seleccionar la librera respectiva. En esta ventana tambin se muestran las ventanas existentes. MUY IMPORTANTE Se recomienda que las ventanas se graben con el prefijo w_, por ejemplo: w_compras, w_informe, w_principal, etc. Para poder identificarlas al visualizar todos los objetos de la aplicacin. Los nombres de las ventanas no pueden tener espacios en blanco, de lo contrario se visualiza un mensaje de error. LOS OBJETOS EN POWER BUILDER 0.9 -10.0 Una aplicacin Power Builder se construye en base a un grupo determinado de objetos del conjunto de objetos principales Power Builder: Application (Objeto aplicacin) Window (Objeto ventana) DataWindows (Objeto DataWindow) Men (Objeto Men) Global Function (Objeto funcin) Query (Objeto Consulta) Structure (Objeto Estructura) User Object (Objeto Definido por el usuario) Project (Objeto proyecto) EVENTOS DE UNA APLICACIN. Los eventos son todos aquellos sucesos que le ocurren a la aplicacin y a los que se puede asignar un script para que se realicen alguna accin cada vez que ocurra el suceso.
EVENTOS PREDEFINIDOS EN POWER BUILDER. EVENTO DESCRIPCIN Close Ocurre cada vez que se termina la ejecucin de una aplicacin. ConnectionBegin Obsoleto (usado para conexiones distribuidas con Power Builder) ConnectionEnd Obsoleto (usado para conexiones distribuidas con Power Builder) Idle Cuando la funcin Idle ha sido llamada en un script de una aplicacin y el nmero de segundos que han transcurrido sin que el teclado o el ratn hayan sido usados. Open Ocurre cada vez que se ejecuta una aplicacin.
21
PROPIEDADES DE VENTANA (WINDOWS) Las propiedades de la ventana estn organizadas en forma de FICHAS, aqu la descripcin de sus principales caractersticas:
FICHA General DESCRIPCION La casilla TITLE, indica el texto de ttulo de la ventana. La casilla men Name, indica el nombre del objeto men para la ventana. Window Type, indica el tipo de ventana: Child!, ventana que permanece inserta dentro de una ventana MDI Main!, ventana normal (principal) con posibilidad de men. Mdi!, ventana que posee rea interna para contener otras ventanas. MdiHelp!, igual que la anterior, y sirve como ayuda. Popup!, ventana de contexto o emergente. Response!, necesita cerrar esta ventana para continuar la ejecucin. Permite definir si la ventana tendr barras de desplazamiento, y la unidad a utilizarse por ellas. Permite definir si se utilizar la caja de herramientas definida para el men su presentacin y posicin. Permite indicar la posicin y tamao de la ventana dentro de la pantalla, como ser presentada.
CONTROLES En el painterBar de Window existe el botn que permite elegir a dichos controles y es ste; Muestra el listado de todos los controles que es posible de utilizar . Adicionalmente se pueden disear objetos con caractersticas adicionales para ser utilizadas tambin. Para aadir un control a la ventana, seleccione el control, del listado. Haga click sobre el lugar en la ventana donde desea aadirlo. Para seleccionar un control de la ventana, de click en l, o mantenga presionada la tecla control para seleccionar varios objetos. Puede moverlos arrastrando el mouse.
Los controles son los siguientes : Control Icono CommandButton
PictureButton
CheckBox
Pre Descripcin fijo cb_ Para implementar botones, con los que se inician procesos o por el contrario para terminarlos, cancelarlos o cerrar ventanas. pb_ Botn con imgenes. Tiene casi todas las caractersticas del control anterior, pero adicionalmente permite mostrar una figura dentro de l. cbx Permite hacer una seleccin (marcarlo) entre _ varias alternativas. Cada alternativa es independiente.
22
StaticText
StaticHyperLink Picture
PictureHyperLink
GroupBox
SingleLineEdit
EditMask
MultiLineEdit
sle_ Caja de edicin de texto, es posible que el usuario en tiempo de ejecucin escriba un texto y se vean slo asteriscos, se usa para el ingreso de claves de acceso (passwords). em_ Caja de texto, a la que se le puede restringir el conjunto de caracteres a ingresar. Permite un formato de presentacin. mle Se usa para ingresar varias lneas en una entrada _ de datos. rte _ hsb _ vsb _ htb _ vtb _ hsb Se usa para mostrar texto enriquecido, es decir texto coloreado, en negritas, itlicas, subrayado, etc. Barra de desplazamiento horizontal. Barra de desplazamiento vertical. Barra de pistas horizontal. Barra de pistas vertical. Barra de progreso horizontal.
RichTextEdit
23
Caja de lista desplegable. Muestra un solo tem, el seleccionado, de la lista que se despliega al presionar el botn adjunto. ddpl Similar al anterior pero soporta figuras por cada b_ elemento que muestra. plb Es una caja de lista con elementos grficos y de _ texto. lb_ Caja de lista. Muestra todos los tems a la vez, pudiendo seleccionarse inclusive, ms de uno. lv_ tv_ Se usa para crear una vista de objetos.
ListView TreeViev
Se usa para crear una vista de tipo rbol, con una raz comn y varios nodos y elementos colgados de dichos nodos. tab Es un separador de pginas que son contenedoras _ de objetos visuales de Power Builder. dw_ Datawindow Control, el que se vincula con un objeto Datawindow diseado. g_ Se usa para crear grficos estadsticos. ole_ Se usa para incorporar objetos de windows de otras aplicaciones distintas al Power Builder. uo_ Se usa para incorporar objetos de usuario creados previamente por alguien usando objetos visuales y objetos no visuales de Power Builder preconstruido.
USerObjetc
DESARROLLO DE APLICACIONES Aplicacin 01 Desarrolle un aplicacin de bienvenida en Power Builder 9.0-10.0 que contenga tres CommanButtom Salir, Cancelar. Aplicacin 02: Desarrolla una aplicacin que permita Mostrar el nombre del usuario y su respectiva clave de acceso. La clave de acceso tendr una longitud de cinco caracteres, se debe mostrar como asterisco, cuando el usuario ingrese algn valor en la caja de texto respectivo y debe asir de la aplicacin cuando se hace tres intentos
24
PROPIEDADES DISEO : Control Propiedades St_1 Text St_2 Text Sle_1 name Sle_2 name Limit Password Cb_1 name Text Default Enabled Cb_2 name Text ESCRIBIR EL CDIGO DE APLICACIN: Aplicacin Aplicacion02 open
Valor Usuario Contrasea Sle_usuario Sle_contrasea 5 buena(chek) Cb_aceptar &Aceptar buena(Chek) Desactivar Cb_salir &Salir
Windows Sle_usuario
other
Sle_contrasea
other
Cb_aceptar
clickled
Cb_salir
clickled
25
PROPIEDADES DE DISEO:
Cdigo Cb_aceptar
Cliked
Aplicacin 04 Realice una aplicacin que permite ingresar el nombre de una persona y en ao que naci. La computadora debe calcular y mostrar la edad de la persona, una observacin que indique si es mayor o menor de edad. Si es mayor de edad debe mostrar hace cuantos aos es mayor de edad y si es menor de edad, se debe indicar cuntos aos le faltan para ser mayor de edad.
26
Cb_aceptar
Cliked
Cb_salir
Cliked
Juan Jose castaeda Power Builder 9.0 Jos del carmen Canchucaja Power Builder 9.0 Joel Carrasco Aplique Power Builder 8.0
27
SEPARATA N04
Escuela Profesional: Ing. Informtica Turno: Noche Docente: ELVIS GUILLERMO HUARCAYA QUISPE Asignatura: Lenguaje de Programacin Comercial Ciclo: Octavo Fecha: 29-08-2006
LISTBOX - DROPDOWLISTBOX
SEMANA04
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. Aplicacin 05 Desarrolle un aplicacin que permita elaborar una pro forma de ventas de articulo, se debe de ingresar los datos del cliente en un control Drop DownListBox el distrito donde vive el cliente.
PROPIEDADES DE DISEO
28
Cb_Nuevo
Cliked
Cb_Salir
Cliked
CONTROL TAB
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. Aplicacin 06 Desarrolle una aplicacin para ingresar los dato de un empleado y mostrar el comentario y la lista en un control tab
29
pb_Aceptar
Cliked
pb_Limpiar
Cliked
pb_Salir
Cliked
APLICACIN 07 Los empleados de una fabrica trabajan en dos turnos: Diurno y Nocturno, se desea calcular el jornal diario de acuerdo a los siguientes puntos:La tarifa de las horas diurnas es: S/. 3.00 La tarifa de las horas nocturnas es: S/. 4.00 En caso de ser domingo la tarifa aumentar en un S/. 1.00 en el turno diurno y de 1.50 en el turno nocturno. Se debe leer el turno, las horas trabajadas y el da de la semana. A continuacin se aprecia el diseo de la ventana en modo ejecucin.
30
PROPIEDADES DE DISEO
DECLARAR VARIABLES Y ALMACENAR Si desea escribir varias instrucciones en una sola lnea, debe separarlas por un punto y coma (;) La siguiente instruccin almacena en la variable C el valor 80. Integer A, B, C A = 40; B = 2; C = A * B ALMACENAR VALORES EN VARIABLES La sintaxis mas sencilla para almacenar un valor en una variable es: Nombre_de_la_variable = Valor Ejemplo: Almacena en la variable A el valor 37: A = 37 Si los valores que desea almacenar en una variable han sido ingresados en un control por ejemplo en el Single Line Edit No 1 (Sle_1). Debe seguir la siguiente sintaxis: Nombre_de_la_variable = Tipo_de_Variable(Nombre_del_Control.Text) El tipo de variable depende como se ha definido la variable donde desea almacenar el dato ingresado. El nombre del control es aquel donde se ha ingresado el dato. Por ejemplo: Almacenar en la variable A el nmero de alumnos ingresados en Sle_1 Integer A A = Integer(Sle_1.Text) Almacenar en la variable C el precio de un articulo ingresado en Sle_1 Decimal C C = Dec(Sle_1.Text) Almacenar en la variable F la fecha de nacimiento ingresado en Sle_1 Date F F = Date(Sle_1.Text) Para datos tipo texto, no es necesario indicar el Tipo: String N N = Sle_1.Text MOSTRAR EL CONTENIDO DE VARIABLES Si desea mostrar el contenido de una variable en un control como por ejemplo en un Single Line Edit (Sle) o en un Static Text (St), debe convertirlos a tipo String. Ejemplos: Se tiene en la variable A el nmero de alumnos, mostrar este contenido en el control Static Text No 1: St_1.Text = String(A) Se tiene en la variable C el precio de un articulo, mostrar este contenido en el control Static Text No 1 St_1.Text = String(C) Se tiene en la variable F la fecha de nacimiento de una persona, mostrar este contenido en el control Static Text No 1St_1.Text = String(F)
31
32
33
SEPARATA N05
Escuela Profesional: Ing. Informtica Turno: Noche Docente: ELVIS GUILLERMO HUARCAYA QUISPE
RADIO BUTTON
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: True: 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. True: Control Activado False: Control Desactivado CHECKBOX 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: True: 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. True: Control Activado False: Control Desactivado EDIT MASK 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 :yyyy/mm/dd 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. EVENTOS DE LOS CONTROLES CloseQuery
34
Propiedades de un control Las propiedades de un control varia de acuerdo a la caracterstica del control.
35
Referencias Bibliogrficas
Juan Jose castaeda Power Builder 9.0 Jos del carmen Canchucaja Power Builder 9.0 Joel Carrasco Aplique Power Builder 8.0
36
SEPARATA N06
Escuela Profesional: Ing. Informtica Turno: Noche Docente: ELVIS GUILLERMO HUARCAYA QUISPE Asignatura: Lenguaje de Programacin Comercial Ciclo: Octavo Fecha: 12-09-2006
CONTROL VTRACKBAR, HTRACKBAR APLICACIN 09 Realice una aplicacin para mostrar el valores enteros, de acuerdo a la necesidad del estudiante:
37
Propiedades de los objetos Objeto Propiedad Window St_1 St_2 St_3 St_4 St_5 Title Text Border BorderStyle Text Border BorderStyle Text Border BorderStyle Text Border BorderStyle Name Text Border BorderStyle Name Text Border BorderStyle Name Text Border
Valor Precio de un producto Nombre del Producto Marcar StyleShadowBox! Valor de Compra Marcar StyleShadowBox! Utilidad % Marcar StyleShadowBox! Descuento al Cliente Marcar StyleShadowBox! st_igv Igv(18%) Marcar StyleShadowBox! st_pc Precio de Compra Marcar StyleShadowBox! st_uti Utilidad Marcar
St_6
St_7
38
St_9
St_10
Em_1
Em_2
Em_3
Em_4
Cb_1 Cb_2 Cb_3 Codigo de los Objetos Objeto: cb_nuevo em_np.text = "" em_vc.text = "" em_uti.text = "" em_dc.text = "" st_igv.text = "" st_pc.text = "" st_uti.text = "" st_ps.text = "" st_des.text = "" st_pd.text = "" em_np.setfocus()
Evento: Clicked
39
40
SEPARATA N07
Escuela Profesional: Ing. Informtica Turno: Noche Docente: ELVIS GUILLERMO HUARCAYA QUISPE Asignatura: Lenguaje de Programacin Comercial Ciclo: Octavo Fecha: 19-09-2006
CONTROL -TREE VIEW Este control permite mostrar informacin en forma de rbol jerrquico cada elemento que se muestra con este control consiste en un texto especial y opcionalmente un grfico. Principales propiedades: Edit Label: Permite indicar si el texto de cada elemento que se muestra, se puede modificar durante la ejecucin del programa. Has Button Permite mostrar el signo de + o en cada elemento para poder expandirlo o contraerlo su contenido. Has Line Permite que los sub elementos se muestran unidas con lneas. Delete Items. Permite indicar si el usuario puede borrar los elementos durante la ejecucin del programa. Single Expand Permite que el contenido de un elemento seleccionado se visualice con solo hacer un clic. Sort Type. Permite indicar la forma como se deben ordenar los elementos dentro del control Indent Permite la sangra entre cada nivel de informacin mostrada. Check Boxs. Permite indicar si cada elemento de control debe ir acompaado de una casilla de verificacin
41
42
Codigo de tv_1 long n treeviewitem tvi tv_1.getitem(newhandle, tvi) sle_1.text =string(newhandle) sle_2.text =string(tvi.label) lv_1.deleteItems() choose case newhandle case 3
selectionchangend
43
Juan Jose castaeda Power Builder 9.0 Jos del Carmen Canchucaja Power Builder 9.0 Joel Carrasco Aplique Power Builder 8.0
44
SEPARATA N08
Escuela Profesional: Ing. Informtica Turno: Noche Docente: ELVIS GUILLERMO HUARCAYA QUISPE Asignatura: Lenguaje de Programacin Comercial Ciclo: Octavo Fecha: 26-09-2006
CONTROL -LIST VIEW Para Mostrar en este control puede ser texto o grafico: Sus propiedades: Fixed locatios Indica si el usuario puede arrastrar un elemento que se muestra en este control a un nueva posici. Trabaja junto con la propiedad de AutoDrag Edit labels Indica si el usuario puede modificar el texto de los elementos cuando se ejecuta el programa. Auto arranque Indica si el control cambia en forma automtica a un estado de arrastre cuando se hace clic Aplicacin 12, desarrolle la aplicacin ahora con listview Como se muestra en el grafico:
45
46
47
48
49
Predeterminado: Es el nmero de botn que desea seleccionar en forma predeterminada cuando se muestre el mensaje. La funcin MessageBox retorna el nmero 1, 2 o 3 que indica el botn seleccionado por el usuario. Ejemplo: En el botn finalizar, puede escribir las siguientes instrucciones. Integer N N = MessageBox(Confirme,Esta seguro de salir, Question!, YesNo!) If N = 1 Then Halt
Las siguientes instrucciones son similares a las anteriores, se diferencian porque aqu se muestra seleccionado el segundo botn. Integer N N = MessageBox(Confirme,Esta seguro de salir, Question!, YesNo!,2) If N = 1 Then Halt
Las siguientes instrucciones muestran el Icono de Error Crtico y los botones de Reintentar y Cancelar. Integer N N = MessageBox(Verifique,No se puede leer su disco, StopSign!, RetryCancel!)
Referencias Bibliogrficas
Juan Jose castaeda Power Builder 9.0 Jos del Carmen Canchucaja Power Builder 9.0 Joel Carrasco Aplique Power Builder 8.0
50
SEPARATA N09-10
Escuela Profesional: Ing. Informtica Turno: Noche Docente: ELVIS GUILLERMO HUARCAYA QUISPE Asignatura: Lenguaje de Programacin Comercial Ciclo: Octavo Fecha: 03-10-2006
SEMANA 09-10 INTRODUCCIN AL DISEO DE MENUS Un men en Power Builder permite seleccionar opciones o acciones de una lista. Una barra de mens es una alternativa para usar estas opciones como si fuesen botones. DISEO DE MENUS Para la aplicacin de un men primero debemos definir las opciones que se debe emplear. Ejemplo realice un men de la siguientes caractersticas:
51
Para crear la primera opcin. Del men dar un clic derecho del mouse en: Para insertar elegir del men contextual sub menu item Para insertar sub menu de la mima manera insert submenu item
52
Guardar el men con las modificaciones correspondientes y con el nombre adecuado. CREAR LA VENTANA PRINCIPAL Se debe de crear un a ventana y cambiar en propiedades WINDOW TYPE a Mdihelp para. Como se muestra en al figura. El cdigo de aplicacin open(w_menu)
CREACIN DE MENU POPUP Para creacin del men se debe de utilizar la funcin Menu Popup SINTAXIS: Menuname.PopMenu(xlocation, ylocation)
53
El cdigo fuente se realiza en el evento RbuttonDown en el Windows correspondiente. Al ejecutar la aplicacin y dar clic derecho debe de mostrar.
para escribir el cdigo de cada opcin de men. Se realiza en el Script realizando clic derecho en cada opcin y clic n la opcin Script
UTILIZAR EJECUTABLES Permite ejecutar archivos ejecutables: Sintaxis. Run (String {windowsstates}) Ejemplo
54
55
56
57
SEPARATA N11
Escuela Profesional: Ing. Informtica Turno: Noche Docente: ELVIS GUILLERMO HUARCAYA QUISPE Asignatura: Lenguaje de Programacin Comercial Ciclo: Octavo Fecha: 17-10-2006
CONCEPTO DE BASE DE DATOS Introduccin: En una empresa, las entidades estn representadas por los operarios, los empleados, los clientes, los proveedores, las facturas. En este tipo de organizacin y otras se ha de trabajar con una gran cantidad de datos, lo cual hace surgir la necesidad de almacenarlos de manera que nos resulten de fcil acceso en cada momento y, por consiguiente, tiles a nuestras actividades. Si por ejemplo cada da debemos gestionar varias decenas de clientes y facturas, utilizaremos un sistema para memorizar los datos como, por ejemplo, un fichero, ms bien antes que recurrir nicamente a la memoria. Las fichas aparecen reagrupadas en archivos, cada uno de los cuales contiene en general las fichas de un slo tipo, las de los proveedores o las de los productos. Este sistema recibe el nombre de base de datos, que no es ninguna otra cosa ms que una coleccin de informaciones tales como el catlogo de los ficheros de una biblioteca, un listado telefnico o una enciclopedia. Este trmino de bases de datos fue escuchado por primera vez en 1963, en un simposio celebrado en california USA. La idea de base de datos surge como una necesidad de mantener datos relacionados. Para entender mejor entendimiento el concepto de Base de datos empezaremos con las definiciones siguientes: Dato: Conjunto de caracteres con algn significado, pueden ser numricos, alfabticos, o alfanumricos. - Informacin: Es un conjunto ordenado de datos los cuales son manejados segn la necesidad del usuario, para que un conjunto de datos pueda ser procesado eficientemente y pueda dar lugar a informacin, primero se debe guardar lgicamente en archivo 1. Definiciones de BD Todas las definiciones coinciden en que es un conjunto de datos almacenados Un conjunto de informacin relacionada que se encuentra agrupada estructurada. Un sistema formado por un conjunto de datos almacenados en discos que permiten el acceso directo a ellos y un conjunto de programas que manipulen ese conjunto de datos (punto de vista informtico) Coleccin de datos interrelacionados almacenados en conjunto sin redundancias perjudiciales o innecesarias; su finalidad es servir a una o ms aplicaciones de la mejor forma posible; los datos se almacenan de modo que resulten independientes de los programas que los usan; se emplean mtodos bien determinados para incluir nuevos datos y para modificar o extraer los datos almacenados". Martin, 1975. Coleccin integrada y generalizada de datos, estructurada atendiendo a las relaciones naturales de modo que suministre todos los caminos de acceso necesarios a cada unidad de datos con objeto de poder atender todas las necesidades de los diferentes usuarios". Deen, 1985. Coleccin de datos integrados, con redundancia controlada y con una estructura que refleje las interrelaciones y restricciones existentes en el mundo real; los datos, que han de ser compartidos por diferentes usuarios y aplicaciones, deben mantenerse independientes de stas, y su definicin y descripcin, nicas para cada tipo de datos, han de estar almacenadas junto con los mismos. Los procedimientos de actualizacin y -
58
2. Para qu sirve una Base de Datos? Una base de datos permite la realizacin de consultas, informes filtrado de informacin, entre otros. Formatos personalizados Clculos estadsticos Bsquedas de datos Clasificacin Resumen y Reportes impresos Pginas web 2.1. Caractersticas El objetivo de disminuir la redundancia de un conjunto de datos determina dos caractersticas fundamentales que poseer cualquier sistema de Bases de Datos: a) Integrada Una base de datos puede considerarse como una unificacin de varios archivos de datos independientes, donde se elimina parcial o totalmente cualquier redundancia entre los mismos. Ejm: Una BD especfica puede contener registros de ALUMNO, que incluyen el nombre, direccin, telfono, fecha de nacimiento, etc. y, existir registros de INSCRIPCION que representan inscripciones de alumnos en cursos de capacitacin. En el caso de llevar acabo el proceso de administracin de los cursos se necesita conocer la direccin de cada estudiante inscrito, para lo cual, no hay necesidad de incluir este dato (redundante) en los registro de INSCRIPCION, siempre se podra obtener recurriendo a los registros de ALUMNO correspondiente. b) Compartida Las partes individuales de la Base de Datos pueden compartirse entre varios usuarios distintos, en el sentido que cada uno de ellos puede tener acceso a la misma parte de la Base de Datos y utilizarla con propsitos diferentes. Tal comportamiento es en verdad consecuencia del hecho de que la Base de Datos es integrada. En el caso del ejemplo anterior se tiene que los datos de los registros de ALUMNO es compartido por usuarios del departamento de direccin acadmica y asistente social. Lo cual implica que, diferentes usuarios percibirn de modos muy distintos una base de datos. 2.2. Ventajas de las Bases de Datos Referidas a: Los datos
Los resultados
Los usuarios
Independencia de estos respecto de los tratamientos y viceversa Mejor disponibilidad de los mismos Mayor eficiencia en la recogida, codificacin y entrada Mayor coherencia Mayor valor informativo Mejor y ms normalizada documentacin de la informacin Acceso ms rpido y sencillo de los usuarios finales Ms facilidades para compartir los datos por el conjunto de los usuarios Mayor flexibilidad para atender a demandas cambiantes.
59
Independencia de los datos respecto a los tratamientos y viceversa: esto supone que un cambio en los tratamientos no imponga un nuevo diseo lgico y/o fsico de la base de datos. Por otro lado, cambios en la incorporacin, desaparicin de datos, cambios en la estructura fsica o caminos de acceso no deben obligar a alterar los programas. As se evita la reprogramacin de las aplicaciones. Mejor disponibilidad de los datos para el conjunto de los usuarios: en una base de datos ningn usuario es propietario de los datos, pues stos se comparten entre las aplicaciones, existiendo una mayor disponibilidad y transparencia. Coherencia de los resultados: debido a que la informacin de la base de datos se recoge y se almacena una sola vez, en todos los tratamientos se utilizan los mismos datos, por lo que los resultados de estos son coherentes y comparables. As, se evitan las divergencias en los resultados. Mayor valor informativo: esto se refiere al concepto de sinergia, en donde el valor informativo del conjunto de datos es superior a la suma del valor informativo de los elementos individuales. Mejor y ms normalizada documentacin: la mayora de los SGBD proporcionan herramientas para reflejar el contenido semntico de los datos, es decir, incluyen una descripcin de los datos dentro del sistema. Mayor eficiencia en la captura, validacin e ingreso de datos al sistema: al no existir redundancias, los datos se capturan y validan una sola vez aumentando el rendimiento del proceso previo al almacenamiento Reduccin del espacio de almacenamiento: por un lado, la disminucin de redundancias y las tcnicas de compactacin hacen que disminuya el espacio en disco. Sin embargo, los diccionarios, referencias, punteros, listas invertidas tambin ocupan espacio.
2.3.
Desventajas de las bases de datos Las desventajas de una base de datos relativas a: La implantacin Los usuarios
Costosa en equipos (lgico y fsico) Ausencia de estndares Larga y difcil puesta en marcha Rentabilidad a mediano plazo Personal especializado Desfase entre teora y prctica
Anlisis del cuadro anterior Instalacin costosa: equipos: nuevas instalaciones o ampliaciones, sistemas operativos, compiladores, SGBD comerciales, computadores ms poderosos, etc. Personal especializado: es clave la administracin de la base de datos, se requiere de conocimientos especficos. Desfase entre teora y prctica: muchos ejecutivos asumen que ciertas funcionalidades son ya un hecho, cuando en realidad son estudios tericos Existe tambin una resistencia al cambio, sobre todo que este involucra a toda la organizacin. En el xito de esto el papel mediador de los profesionales de informtica es fundamental, sobre todo en organizaciones grandes donde una base de datos se puede ver como la centralizacin del poder en manos de unos pocos, generalmente los encargados de su administracin. 2.4.
Componentes de la BD La base de datos El Sistema de Gestin de Bases de Datos (SGBD, DBMS) o motor, tal como Oracle, Sybase, SQL Server, Ms-Acces, etc. Programas de aplicacin (Visual Basic, Visual Fox Pro, Power Builder 9.0, etc.) Un conjunto de usuarios (finales, DBA, programadores de aplicaciones, etc.)
60
Mquinas o PCs Programas utilitarios (generadores de informes, de interfaces, herramientas de desarrollo, de administracin, etc.)
2.5.
Sistemas de Gestin de Base de Datos (SGBD) DBMS: Data Base Management System (Sistema De Manejo De Base De Datos). - Un DBMS consiste de una base de datos y un conjunto de aplicaciones (programas) para tener acceso a ellos. Comunmente, la base de datos contiene informacin interrelacionada y referente a una misma entidad o empresa. - Son un tipo de software muy especfico, dedicado a servir de interfaz entre las bases de datos y las aplicaciones que la utilizan El objetivo primordial de una DBMS es crear un ambiente en el que sea posible almacenar y recuperar informacin en forma eficiente y conveniente. Sistemas de Bases de Datos Lo constituye el SGBD, junto con la base de datos y los usuarios El objetivo principal de un sistema de base de datos es proporcionar a los usuarios finales una visin abstracta de los datos, esto se logra escondiendo ciertos detalles de como se almacenan y mantienen los datos
2.6.
Referencias Bibliogrficas
Juan Jose castaeda Power Builder 9.0 Juan Jose castaeda Full Data Base Jos del Carmen Canchucaja Power Builder 9.0 Joel Carrasco Aplique Power Builder 8.0 SQL 2000 La bilia de Sql 200
61
SEPARATA N12
Escuela Profesional: Ing. Informtica Turno: Noche Docente: ELVIS GUILLERMO HUARCAYA QUISPE Asignatura: Lenguaje de Programacin Comercial Ciclo: Octavo Fecha: 24-10-2006
BASE DE DATOS Y SENTENCIAS SQL CURSORES Para entender mejor entendimiento el concepto de Base de datos empezaremos con las definiciones siguientes: - Dato: Conjunto de caracteres con algn significado, pueden ser numricos, alfabticos, o alfanumricos. - Informacin: Es un conjunto ordenado de datos los cuales son manejados segn la necesidad del usuario, para que un conjunto de datos pueda ser procesado eficientemente y pueda dar lugar a informacin, primero se debe guardar lgicamente en archivo Definiciones de BD Todas las definiciones coinciden en que es un conjunto de datos almacenados Un conjunto de informacin relacionada que se encuentra agrupada estructurada. Un sistema formado por un conjunto de datos almacenados en discos que permiten el acceso directo a ellos y un conjunto de programas que manipulen ese conjunto de datos (punto de vista informtico) Coleccin de datos interrelacionados almacenados en conjunto sin redundancias perjudiciales o innecesarias; su finalidad es servir a una o ms aplicaciones de la mejor forma posible; los datos se almacenan de modo que resulten independientes de los programas que los usan; se emplean mtodos bien determinados para incluir nuevos datos y para modificar o extraer los datos almacenados". Martin, 1975. Coleccin integrada y generalizada de datos, estructurada atendiendo a las relaciones naturales de modo que suministre todos los caminos de acceso necesarios a cada unidad de datos con objeto de poder atender todas las necesidades de los diferentes usuarios". Deen, 1985. Coleccin de datos integrados, con redundancia controlada y con una estructura que refleje las interrelaciones y restricciones existentes en el mundo real; los datos, que han de ser compartidos por diferentes usuarios y aplicaciones, deben mantenerse independientes de stas, y su definicin y descripcin, nicas para cada tipo de datos, han de estar almacenadas junto con los mismos. Los procedimientos de actualizacin y recuperacin, comunes y bien determinados, habrn de ser capaces de conservar la integridad, seguridad y confidencialidad del conjunto de los datos". A.de Miguel, 1993. Una base de datos consiste en alguna coleccin de datos persistentes e independientes usados por una organizacin determinada." (Date, 1995) Para qu sirve una Base de Datos? Una base de datos permite la realizacin de consultas, informes filtrado de informacin, entre otros. Formatos personalizados Clculos estadsticos Bsquedas de datos Clasificacin Resumen y Reportes impresos Pginas web Caractersticas El objetivo de disminuir la redundancia de un conjunto de datos determina dos caractersticas fundamentales que poseer cualquier sistema de Bases de Datos: c) Integrada
62
DISEO CONCEPTUAL Esquema conceptual en un modelo de datos de alto nivel (por ejemplo: modelo E/R) DISEO LGICO (TRANSFORMACIN DEL MODELO DE DATOS)
Independiente de S.G.B.D.
DISEO FSICO
Esquema interno (para el mismo S.G.B.D.) Fig. Enfoque orientado a los datos para el diseo de la BD
a) Recoleccin y anlisis de requerimientos Los diseadores entrevistan a los futuros usuarios de la base de datos para recoger y documentar sus necesidades de informacin. b) Diseo conceptual Parte de la especificacin de todos los requerimientos, el siguiente paso es crear un esquema conceptual para la base de datos mediante un modelo de datos conceptual de alto nivel. El esquema conceptual contiene una descripcin detallada de los
63
64
sentencias de sql y cursores Clusula Select La clusula select dentro de Power Builder tiene dos formas generales de poder ser usada: 1. Aquella que retorna solo un registro (donde SQLca.SQLCode = 0) 2. Aquella donde se retorna ms de un registro (donde SQLca.SQLCode = 100), a este tipo de select se le considera con el uso de CURSORES Select para un registro para los casos en que se est seguro de que la consulta al modelo de datos no retornar ms de un registro, la sintaxis del script en el PowerScript de PowerBuilder para la consulta ser casi igual a un SQL estandar excepto que cada campo que se retorne se debe descargar en una variable del programa declarada previamente (no se permiten descargas a controles de ventana), dentro de la seccin INTO. A cada variable de descarga se le debe anteponer dos puntos (:). SELECT PARA MS DE UN REGISTRO (CURSORES) en SQL embebido (= incrustado) se producir un error si se tratade recuperar ms de una fila; aun as habr ocaciones que se quiera recuperar muchas filas que cumplan ciertos criterios, para este caso se debe usar un cursor. Un cursor es una tabla temporal que SQL establece en todas las filas que cumplen ciertos criterios, as que se puede acceder a esas filas de una en una. Uso de cursores El mandato declare: antes de usar un cursor, primero hay declararlo con el mandato DECLARE Ejemplo: declare cursor_name La clasula select: una ves declarado lo que sigue es la clasula select que se apoye en el select incluida la sentencia que determina cul transaction se usa. Ejemplo: cursor for select_statement using transaction; El mandato open: ahora lo que falta es solo abrir su posterior uso Ejemplo: open cursor_name; El mandato Fetch: despus de abierto el cursor hay que traer (= fetch) cada fila. Fetch es quien permite procesar cada fila, para ahora s por cada fila descargar los campos que haya recuperado la instruccin select. Al igual que el select para un solo registro se debe descargar cada campo en una variable de progama anteponindole a este dos puntos (:). Ejemplo: fetch cursor name Into host_variable_list; El mandato clase: el ltimo paso de uso de un cursor es cerrarlo. El cierre de un cursor libera la memoria usada por las tablas temporales y permite reabrir el cursor bajo nuevos criterios de seleccin
65
En el Windows w_acceso
66
Para ello debemos de ejecutar primero un curso ESTRUCTURA DE UN CURSOR declare login cursor for select distinct usuario from empleado; open login; fetch login into :user; EJEMPLO PARA LLENAR LOS DATOS DE LA TABLA EN EL DDLB string user declare login cursor for select distinct usuario from empleado; open login; fetch login into :user; Do while sqlca.sqlcode <>100 ddlb_usuario.additem(user) fetch login into :user; loop close login; Cb_ aceptar String usuarioingresado, contraseaingresada,contraseaBD,tipousuario usuarioingresado = UPPER(ddlb_usuario.text) contraseaingresada= UPPER(sle_contra.Text) SELECT password INTO :contraseaBD FROM Empleado WHERE usuario =:usuarioingresado; IF contraseaingresada= UPPER(contraseaBD) THEN SELECT usuario INTO :tipusuario FROM Empleado WHERE usuario =:usuarioingresado; If UPPER(tipusuario) =ADMINISTRADOR() open(w_principal) close(parent) Else open(w_principal) close(parent) mnu_principal.m_mantenimiento.visible=false mnu_principal.m_proceso.visible=false
67
Cb_Grabar
Evento Clicked
date ven ven= date(Em_1.Text) Insert Into articulos Values (:Sle_1.Text,:Sle_2.Text,:Ddlb_1.Text,:Sle_3.Text,:Sle_4.Text,:ven); /*if sqlca.sqlcode=0 then MessageBox ("se grabara","el dato") end if */ if SQLCA.SQLCODE = -1 Then MessageBox ("Imposible Grabar","Hay un error en los Datos") Else //Recupera los registros del Dw_1 para ver el nuevo Artculo. Dw_1.Retrieve() //Limpia los controles para ingresar otro Artculo Sle_1.Text="" Sle_2.Text="" Ddlb_1.Text="" Sle_3.Text="" Sle_4.Text="" Em_1.Text="" Sle_1.SetFocus() //dw_1.update() End If Eliminar Integer R R=MessageBox ("Confirme","Desea eliminar este artculo",Question!,Yesno!) If R=1 Then Delete From Articulos Where Codigo=:Sle_1.Text; Commit; Dw_1.Retrieve()
68
Controles de ventana y sus prefijos Control Command Button Picture Button Check box Radio Button Static Text Picture Group Box Line Oval Rectangle Round Rectangle Single Line Edit Edit Mask Multi Line Edit Rich Text Edit Hscroll bar Vscroll bar DropDown List Box DropDown Picture List Box List Box List View Tree View Tab Data Window Graph OLE User Object Window Prefijo Cb_ Pb_ Cbx_ Rb_ St_ P_ Gb_ Ln_ Oval_ R_ Rr_ Sle_ Em_ Mle Rte_ Hsb_ Vsb_ Ddlb_ Ddplb_ Lb_ Lv_ Tv_ Tab_ Dw_ Gr_ Ole_ Uo_ W_
69
SEPARATA N13
Escuela Profesional: Ing. Informtica Turno: Noche Docente: ELVIS GUILLERMO HUARCAYA QUISPE Asignatura: Lenguaje de Programacin Comercial Ciclo: Octavo Fecha: 31-10-2006
DISEO DE BASE DE DATOS EN POWER BUILDER CREACIN DE BASE DE DATOS Existe dos formas para crear una base de datos 1 forma : dar un clic en 2 forma es ingresar desde File , new, database
A continuacin debe hacer clic en OBD ODBC. Clic en Utilities Para visualizar el siguiente Grafico:
70
Busca la unidad o la carpeta donde desea guardar la base de datos, Ingrese el nombre de la base de datos en Nombre de archivo
71
MENU Y CONEXIN CON BASE DE DATOS Un men es un objeto visual de Power Builder, un men permite al usuario seleccionar opciones o acciones de una lista . una barra de mens es una alternativa para usar estas opciones como si fuesen botones. Los partes de un Men son los Siguientes: Ver grfico
72
P R O P I E D A D E S
CODIGO
Para el uso de un Windows y un men se debe de crear primero una base de datos Ejemplo: Para el ejemplo correspondiente se debe tener en cuenta en crea un tabla desde el Data Painters Ejemplo Se crea un tabla tabUsuarios con los siguientes campos
A continuacin debe ingresar los datos en dicha tabla de acuerdo a los usuarios.
73
En el Windows w_acceso
El cdigo fuente para Aceptar con instrucciones SQL // Variables a usar String ls_Usuario, ls_Clave, ls_Clave_BD // Capturar a variables los datos // ingresados por el usuario ls_Usuario = UPPER(em_Usuario.Text) ls_Clave = UPPER(sle_Clave.Text) // Buscar la Clave almacenada en la tabla y la // guardamos en la variable local ls_Clave_BD SELECT Usr_Clave INTO :ls_Clave_BD FROM TabUsuarios WHERE Usr_Login = :ls_Usuario;
74
CONEXIN DE BASE DE DATOS POWER BUILDER MICROSOFT ACCES, SQL Para la conexin de una base de datos se debe de realizar los siguientes pasos. Clic en el icono
75
Clic en Add
Seleccione Microsoft Acces Driver (*. mdb) Click en Finalizar Visualizara la siguiente ventana. Escriba en nombre del Data Sourcr Name
76
Ahora para realizar la visualizacin de la base de dato Haga clic DERECHO EN ODB ODBC en POWER BUILDER, se visualizara la ventana m
Se visualizara la ventana:
77
CONEXIN ODBC SQL Si tiene una base de batos en Slq tambin lo puedes administrar desde Power Builder Para ello se debe tener las siguientes consideraciones o pasos: En DSN(ODBC) de Sistema (Para que todos los usuarios lo puedan ver) Luego dar clic en Agregar(add)
78
NOTA: Para crear el ODBC de SQL debes de tener funcionando tu servidor de SQL Para visualizar el siguiente ventana Dar un doble clic en SQL Server Luego das clic en el botn Finalizar
79
autentificacin de Window NT
Para el ejemplo hemos seleccionado la opcin con la: Autentificacin de SQL Server y el Id de Inicio de sesin : sa y la contrasea que lo hemos asignado y con lo que hemos conectado a SQL. Para luego visual la siguiente ventana: Despus se mostrara la siguiente ventana:
activar con un check y buscar Biblioteca
80
Despus hacer clic en siguiente se mostrara la ventan siguiente con las caractersticas de la conexin creada y haga clic en el botn aceptar
81
Y realizar los pasos que se tiene en Power Builder para conectar una base de datos. Referencias Bibliogrficas Juan Jose castaeda Power Builder 9.0 Juan Jose castaeda Full Data Base Jos del Carmen Canchucaja Power Builder 9.0 Joel Carrasco Aplique Power Builder 8.0 SQL 2000 La bilia de Sql 200
Lecturas Recomendadas Web a visitar http://www.powerbuilder.org/modules.php?name=Content&pa=showpage&pid=10 http://sybooks.sybase.com/onlinebooks/group-pb/pbg1000e/ http://www.powerbuilder.org/modules.php?name=News&new_topic=10 http://www.librosdigitales.net http://www.monografias.com Tutorial de oracle 9i http://www.solotutoriales.com/visitar.asp?id=5414
82
SEPARATA N14
Escuela Profesional: Ing. Informtica Turno: Noche Docente: ELVIS GUILLERMO HUARCAYA QUISPE Asignatura: Lenguaje de Programacin Comercial Ciclo: Octavo Fecha: 07-11-2006
CONEXIN POWER BUILDER CON SQL y CONEXIN DE UN DATAWINDOWS A UN BASE DE DATOS CONEXIN POWER BUILDER CON SQL Existe otra forma de conectar tambin en Power Builder, para ello se debe de seguir los siguientes pasos: 1.-
Click
2.-
Nombre del profile Nombre del servidor Usuario de servidor de bd Password Nombre de Bd
83
Click
84
FUNCIONES PRINCIPALES DE DATAWINDOWS SetTransObject Hace que un control DataWindow use un objeto de transaccin especificado por el programador. El objeto de transaccin proporciona la informacin nesecesaria para comunicarse con la Base de Datos. Retorna -1 si ha ocurrido un error. Sintaxis Dwn. Settransobject(Transaccin)
Argument Dwn Transaccin Description El nombre del Control data window, con el cual se desea usar un objeto de transaccin. Nombre del Objeto de transaccin, por defecto es SQLCA.
RDBMS
Generalmente se establece el objeto de transaccin en el evento Open de la ventana que contiene el control DataWindow. En resumen el SettransObject(SQLCA) asocia el objeto transacin con el control DataWindow. Ejemplo: DwnSoftware.settransobject(SQLCA) InsertRow Sintaxis Dwn.InsertRow(fila)
Argument Dwn Fila Descripcin El nombre del control DataWindow en el cual se desea insertar una fila. Un entero Largo (long) que identifica la fila antes de la cual desea insertar una fila nueva. Si el valor es cero insertar al final de la tabla.
Ejemplo: DwnSoftware.InsertRow(0) Retrieve() Recupera todas las filas de una tabla de la BDD en un control DataWindow, Si incluyen argumentos, estos son usados por los argumentos de recuperacion de la sentencia SQL SELECT del objeto DataWindow. Retorna el nmero de filas recuperadas, -1 si ocurre un error. Sintaxis Dwn.Retrieve({Arg1, Arg2,}) Argument Descripcin Arg1, Arg2 Argumentos de recuperacion, de la tabla de BDD Ejemplo: DwnSoftware.Retrieve(C001) SetRowFocusIndicator Especifica el indicador visual que identifica la fila actual en un control DataWindow. Sintaxis Dwn.SetRowFocusIndicator (Indicador) Indicador El indicador visual para la fila actual, los valores validos son
Off! FocusRect! Sin indicador. Un rectngulo de puntos alrededor de la fila.
85
SelectRow Selecciona la fila especificada en el control de un DataWindows. Sintaxis Dwn.SelectRow (Fila, Boolean) Ejemplo: DwnSoftware.SelectRow(0,False) // desactiva la fila anterior DwnSoftware.SelectRow(15,true) // resalta toda la fila 15 SetItem Establece el valor en una fila y columna especificada, un valor dentro del datawindow, retorna 1 si ocurre un error. Sintaxis DwnSoftware.Setitem (Fila, columna/campo, valor) Ejemplo: Dwn.SetItem(5, "sueldo",670) En la fila 5, en el campo sueldo se asigna 670. Tambin en vez del nombre de campo, puede ser el nmero de campo de acuerdo como ha sido seleccionado en el objeto DataWindow. GetItemString Obtiene datos de tipo cadena de un buffer especificado de un control DataWindow. SintaxisDwn.GetitemString (Fila, Columna) Ejemplo String cad Cad=DwnSoftware.GetItemString(3, "sfw_Nombre") Extrae el dato que se encuentra en el campo sfw_nombre, en la fila 3, dependiendo del tipo de dato que se va extraer tenemos:
Dwn.GetitemNumber (Fila, columna) Dwn.GetitemDecimal (Fila, columna) Dwn.GetitemDate (Fila, columna) Dwn.GetitemTime (Fila, columna) Dwn.GetitemDateTime (Fila, columna) Cuando el campo es de manera general numrico, puede ser real o entero. Cuando el dato a extraer es exclusivamente decimal o real. Si el campo es de tipo fecha. Si el campo es de tipo hora. Cuando el campo es de tipo fecha y hora.
Ejemlo: Capturar en variables, sueldo del empleado, su edad y fecha de nacimiento del empleado, cuya posicin se encuentre en la fila nmero 3. Int edad Dec Sbas Date Fenac Edad= DwnEmpleado.GetItemNumber(3,"emp_Edad") Sbas= DwnEmpleado.GetItemDecimal(3, "emp_Sbas") Fenac=DwnEmpleado.GetItemDate(3,"emp_Fenac") Nombre del campos en la tabla Gettext Obtiene el valor de un control de edicin en la fila y columna actuales, antes que este sea aceptado.
Sintaxis dwn.Gettext ()
Por ejemplo si este radio button se encuentra dentro del DataWindow, y al seleccionar una de estas opciones se desea saber su valor seleccionado basta emplear: String Tmoneda Tmoneda = DwnSalario.Gettext()
86
87
UNA VEZ CREADO EL DATAWINDOWS Se creara un un windows con el control datawindow(dw_1) Como se muestra en la figura:
Para luego realizar la conexin de Windows con el data Windows: de la siguiente manera
88
EJEMLO DE UN WINDOWS DE DESPLAZAMIENTO: Para desarrollar consultas y actualizaciones ese debe tener: Una base de datos
89
Tablas Datawindows Se utiliza las siguientes funcione para el desarrollo de la aplicacin: ScrollNextRow Esta funcin permite avanzar el siguiente registro en un datawindows ScrollPriorRow Esta funcin permite ir al registro anterior en un datawindows RowCount Funcin que permite obtener la cantidad de registros que contiene un datawindows ScrollToRow() Esta funcin permite ir a cualquier registro de un Datawindows GetRow Devuelve el nmero de registro actual, es decir el numero de registro que se esta visualizando. Ejemplo: El siguiente Windows visualiza los registros.
Cdigo fuente de la aplicacin Cb_inicio evento clicked dw_1.ScrollToRow(1) cb_inicio.enabled=false cb_anterior.enabled=false cb_siguiente.enabled=true cb_ultimo.enabled=true Cb_anterior evento clicked int nrow nrow=dw_1.getRow() if nrow>1 then cb_inicio.enabled=true cb_anterior.enabled=true cb_siguiente.enabled=true cb_ultimo.enabled=true dw_1.ScrollPriorRow() else cb_inicio.enabled=false cb_anterior.enabled=false end if Cb_siguiente evento clicked int nrow, nrorow nrorow=dw_1.RowCount() nrow=dw_1.GetRow()
90
91
evento: Clicked
evento: Clicked
92
SEPARATA N 15
ASIGNATURA : Lenguaje de Programacin Comercial EAP : Ingeniera Informtica Turno: Noche Ciclo :Octavo Seccin : Octavo Fecha: 14-11-2006 Docente: Ing. ELVIS GUILLERMO, HUARCAYA QUISPE DATAWINDOWS (Actualizacin y Eliminacin de Registros) Utilizando db BDCOMUNIDAD Para realizar estas operaciones utiliza la s funciones: Find Esta funcin permite buscar un registro en un Datawindows Nonbre del control datawindows. FIND (condicin, inicio, final) Dw_1.find(C,1.dw_1.RowCount); Ejemplo: Realizar una aplicacin para buscar a los propietarios por nombre y modificar su Direccin:
Cb_1 grabar Cb_2 ignorar Cb_3 actualizar Cb_4 eliminar CDIGO EN LA APLICACIN // Profile Comunidad SQLCA.DBMS = "ODBC" SQLCA.AutoCommit = False SQLCA.DBParm = "ConnectString='DSN=Comunidad;UID=;PWD='" connect; if sqlca.sqlcode=0 then open(w_dataeliminado) end if CDIGO EN EL DATAWINDOWS Dw_1.SettransObject(SQLCA) Dw_1.Retrieve() Dw_2.SettransObject(SQLCA) Dw_2.Retrieve() Dw_1.Enabled = False Dw_2.Enabled = False Cb_1.Enabled = False Cb_2.Enabled = False CDIGO EN SLE EVENTO MODIFIED
93
94
95
96
Clickcled(Piso)
Dw_1.SetSort("codigo") End If Dw_1.Sort() Cb_8 Clickcled(Piso y Antigedad) If Cbx_1.Checked=True Then Dw_1.SetSort("Piso D, antiguedad D") Else Dw_1.SetSort("Piso, antiguedad") End If Dw_1.Sort() Imprimir Cb_9 Clickcled(Inprimir) printsetup() dw_1.print() Aplicacin busqueda por fechas RESUMEN DE CONTROLES: Funciones del Control DataWindow Funciones de Desplazamiento 1. ScrollNextRow() 2. ScrollPriorRow() 3. ScrollToRow ( long row ) 4. ScrollNextPage() 5. ScrollPriorPage() Funciones de Mantenimiento 6. SetTransObject ( transaction transaction ) 7. Retrieve ( {, any argument, any argument . . . } ) 8. InsertRow ( long row ) 9. DeleteRow ( long row ) 10. Update ( { boolean accept {, boolean resetflag } } ) 11. DeletedCount() 12. ModifiedCount () Otras Funciones 13. SetFocus() 14. GetRow() 15. GetColumn() 16. GetColumnName() 17. GetItemDate ( long row, integer column {, DWBuffer dwbuffer, boolean originalvalue } ) 18. GetItemDate ( long row, string column {, DWBuffer dwbuffer, boolean originalvalue } ) 19. GetItemDateTime ( long row, integer column {, DWBuffer dwbuffer, boolean originalvalue }) 20. GetItemDateTime ( long row, string column {, DWBuffer dwbuffer, boolean originalvalue } ) 21. GetItemDecimal ( long row, integer column {, DWBuffer dwbuffer, boolean originalvalue } ) 22. GetItemDecimal ( long row, string column {, DWBuffer dwbuffer, boolean originalvalue } )
97
Declare variable global integer cont = 0 //Variables globales para la ventana docente y buscar docente string usuario, unico, codbuscado = '1' //Variables globales para la ventana alumno y buscar alumno string codalumno = '1' integer buscalumno = 0 Instance variables; string vidalumno, vnombre, vapepat, vapemat, vdireccion, vfecnac, vtelefono string vnompadre, vapepatpadre, vapematpadre, vnommadre, vapepatmadre string vapematmadre, vnomapoderado, vapepatapoderado, vapematapoderado string valor, cmd integer acnuevo = 0, acmodificar = 0
98
99
100
101
102
103
104
105
106
107
Incluso se puede especificar el orden de los registros: ascendente mediante la clasula (ASC -se toma este valor por defecto) descendente (DESC) SELECT CodigoPostal, Nombre, CodigoPostal DESC , Nombre ASC; Telefono FROM Clientes ORDER BY
2.3 Consultas con Predicado El predicado se incluye entre la clasula y el primer nombre del campo a recuperar, los posibles predicados son: Predicado Descripcin Devuelve todos los campos de la tabla ALL Devuelve un determinado nmero de registros de la tabla TOP Omite los registros cuyos campos seleccionados coincidan DISTINCT totalmente Omite los registros duplicados basandose en la totalidad del registro DISTINCROW y no slo en los campos seleccionados. ALL: Si no se incluye ninguno de los predicados se asume ALL. El Motor de base de datos selecciona todos los registros que cumplen las condiciones de la instruccin SQL. No se conveniente abusar de este predicado ya que obligamos al motor de la base de datos a analizar la estructura de la tabla para averiguar los campos que contiene, es mucho ms rpido indicar el listado de campos deseados. SELECT ALL SELECT * FROM Empleados; FROM Empleados;
TOP: Devuelve un cierto nmero de registros que entran entre al principio o al final de un rango especificado por una clusula ORDER BY. Supongamos que queremos recuperar los nombres de los 25 primeros estudiantes del curso 1994: SELECT TOP 25 ORDER BY Nota DESC; Nombre, Apellido FROM Estudiantes
Si no se incluye la clusula ORDER BY, la consulta devolver un conjunto arbitrario de 25 registros de la tabla Estudiantes .El predicado TOP no elige entre valores iguales. En el ejemplo anterior, si la nota media nmero 25 y la 26 son iguales, la consulta devolver 26 registros. Se puede utilizar la palabra reservada PERCENT para devolver un cierto porcentaje de registros que caen al principio o al final de un rango especificado por la clusula ORDER BY. Supongamos que en lugar de los 25 primeros estudiantes deseamos el 10 por ciento del curso: SELECT TOP 10 ORDER BY Nota DESC; PERCENT Nombre, Apellido FROM Estudiantes
El valor que va a continuacin de TOP debe ser un Integer sin signo.TOP no afecta a la posible actualizacin de la consulta. DISTINCT: Omite los registros que contienen datos duplicados en los campos seleccionados. Para que los valores de cada campo listado en la instruccin SELECT se incluyan en la consulta deben ser nicos.
108
OPERADORES LGICOS EN SQL 3. Criterios de Seleccin Antes de comenzar el desarrollo de este captulo hay que recalcar tres detalles de vital importancia. El primero de ellos es que cada vez que se desee establecer una condicin referida a un campo de texto la condicin de bsqueda debe ir encerrada entre comillas simples; la segunda es que no se posible establecer condiciones de bsqueda en los campos memo y; la tercera y ltima hace referencia a las fechas. Las fechas se deben escribir siempre en formato mm-dd-aa en donde mm representa el mes, dd el da y aa el ao, hay que prestar atencin a los separadores -no sirve la separacin habitual de la barra (/), hay que utilizar el guin (-) y adems la fecha debe ir encerrada entre almohadillas (#). Por ejemplo si deseamos referirnos al da 3 de Septiembre de 1995 deberemos hacerlo de la siguiente forma; #09-03-95# #9-3-95#. 3.1 Operadores Lgicos Los operadores lgicos soportados por SQL son: AND, OR, XOR, Eqv, Imp, Is y Not. A excepcin de los dos ltimos todos poseen la siguiente sintaxis: <expresin1> operador <expresin2> En donde expresin1 y expresin2 son las condiciones a evaluar, el resultado de la operacin vara en funcin del operador lgico. La tabla adjunta muestra los diferentes posibles resultados: <expresin1> Operador <expresin2> Resultado Verdad Falso Falso AND Verdad Verdad Verdad AND Falso Verdad Falso AND Falso Falso Falso AND
109
110
111
4.2 AVG Calcula la media aritmtica de un conjunto de valores contenidos en un campo especificado de una consulta. Su sintaxis es la siguiente Avg(expr) En donde expr representa el campo que contiene los datos numricos para los que se desea calcular la media o una expresin que realiza un clculo utilizando los datos de dicho campo. La media calculada por Avg es la media aritmtica (la suma de los valores dividido por el nmero de valores). La funcin Avg no incluye ningn campo Null en el clculo. SELECT Avg(Gastos) AS Promedio FROM Pedidos WHERE Gastos > 100; 4.3 Count Calcula el nmero de registros devueltos por una consulta. Su sintaxis es la siguiente Count(expr) En donde expr contiene el nombre del campo que desea contar. Los operandos de expr pueden incluir el nombre de un campo de una tabla, una constante o una funcin (la cual puede ser intrnseca o definida por el usuario pero no otras de las funciones agregadas de SQL). Puede contar cualquier tipo de datos incluso texto. Aunque expr puede realizar un clculo sobre un campo, Count simplemente cuenta el nmero de registros sin tener en cuenta qu valores se almacenan en los registros. La funcin Count no cuenta los registros que tienen campos null a menos que expr sea el carcter comodn asterisco (*). Si utiliza un asterisco, Count calcula el nmero total de registros, incluyendo aquellos que contienen campos null. Count(*) es considerablemente ms rpida que Count(Campo). No se debe poner el asterisco entre dobles comillas ('*'). SELECT Count(*) AS Total FROM Pedidos;
112
113
SEPARATA N16
Escuela Profesional: Ing. Informtica Turno: Noche Docente: ELVIS GUILLERMO HUARCAYA QUISPE Asignatura: Lenguaje de Programacin Comercial Ciclo: Octavo Fecha: 21-11-2006
CREACIN DE TABLAS Y RELACIN DE LAS TABLAS, SQL EN POWER BUILDER Para crear un tabla en Power Builder. Se tiene que buscar la carpeta de Tables
Ingrese los campos de la tabla, tipo de datos tamao, la cantidad de decimal si es que es un tipo de datos numrico, si es de valor nulo yes o no, default nos muestra opciones que van ser: current date, current time, last user etc.
114
Tab ususario
115
Se muestra:
es donde se escribe la sentencia para visualizar la consulta realice click en el siguiente icono y se mostrara:
Ejercicios: Ejer01 La siguiente sentencia muestra todo los campos y los registros de la tabla inmuebles select * from inmuebles; Ejer02 Escribir la sentencia para consultar solamente los campos codigo, modulo select codigo, modulo from inmuebles; Ejer03 Escribir una consulta sacando un porcenta de descuento. select codigo_periodo, 0.10*importe from facturas; Realizar todas las consultas Que se presenta para el caso
116
117
118
SEPARATA N 17
ASIGNATURA : Lenguaje de Programacin Comercial EAP : Ingeniera Informtica Turno: NOCHES Ciclo: OCTAVO Seccin : Octavo Fecha: 28-11-2006 Docente: Ing. ELVIS GUILLERMO, HUARCAYA QUISPE DATAWINDOWS Y SQL FUNCIONES DEFINAS 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.
119
cuando queremos adicionar un ingreso de parmetro realice un clic derecho sobre Fuction Name y busca la opcin add parameter SENTENCIA DE ASIGNACIN Como en todo lenguaje de programacin visual existe sentencias de asignacin Variable = valor de la variable En otras palabras Asignar algn valor a algo. Frecuentemente lo que esta en la izquierda es una variable T=100 En la parte derecha podra haber un literal, una variable, una llamada de funcin, una expresin. As como por ejemplo T=3 // valor literal K1 = k2 // valor de variable Mivalor = contar(p) // llamada a una funcin Sumar = s + t // valor de expresin Un literal puede ser exactamente nmeros, cadenas, fechas, valores de tiempo, etc. Todos los tipos de datos vistos anteriormente. UNA EXPRESIN puede incluir uno de los siguientes operadores : Aritmticos : Suma (+) , resta ( - ), multiplicacin ( * ), divisin ( / ) , potenciacin (^) Lgico . not, and y or Relacional: igual (= ), mayor que (>), menor que (<), diferente a ( <>), mayor que o igual a (>=), menor que o igual a (<=) Concatenacin (unin) de cadenas(texto): ( + ) DATAWINDOWS(Ejemplos)
120
Para la siguiente aplicacin demostrativa se creo tres datawindows De comunidades con el campo de cdigo De inmuebles con el campo nif De propietarios con todo los campos, por que se debe de actualizar:
121
Datawindows Propietarios
wind
Cuando editamos el campo de codigo_comunidad con dddw se tiene que realizar desde la ventana de propiedades en la pestaa Edit, en la opcin Style Type: seleccionando las opciones que desea escoger:
122
En la opcin DataWindows Escoger el datawindows creado con el nombre de comunidad, En Display Column escoger el campo que se esta reemplazando, y en Data Column el campo que se muestra en el dddw
Open
DATAWINDOWS (SQL)
Se realizara la siguiente aplicacin el siguiente: Windows guarda los valores que se ingresa en eel
123
Cdigo en al aplicacin // Profile Ventas SQLCA.DBMS = "ODBC" SQLCA.AutoCommit = False SQLCA.DBParm = "Connectstring='DSN=ventas'" connect; if sqlca.sqlcode=0 then open(w_aplica20) end if declaracin de las variables a utilizar
CDIGO EN WINDOWS EVENTO OPEN Declare PrimerCur Cursor For Select cat_id,cat_nomb From categorias; Open PrimerCur; Fetch PrimerCur Into :p,:s; Do Until sqlca.sqlcode=100 ddlb_categoria.additem(p) Fetch PrimerCur Into :p,:s;
Loop Close PrimerCur; CB_nuevo sle_codigo.text="" sle_descripcion.text="" sle_npedido.text="" sle_pcosto.text="" sle_punitario.text="" sle_stock.text="" sle_unidad.text=""
EVENTO CLICKED
124
Podemos ingresar los datos desde los controles del Windows: para la tabla Artculos
Cdigo de la aplicacin
para la aplicacin se debe tener en consideracin: Crear un datawindows con el nombre de d_articulos, de tipo Grid Desarrollar un Windows con los controles correspondientes cigualq ue el grafico:
125
date ven ven= date(Em_1.Text) Insert Into articulos Values (:Sle_1.Text,:Sle_2.Text,:Ddlb_1.Text,:Sle_3.Text,:Sle_4.Text,:ven); /*if sqlca.sqlcode=0 then MessageBox ("se grabara","el dato") end if */ if SQLCA.SQLCODE = -1 Then MessageBox ("Imposible Grabar","Hay un error en los Datos") Else //Recupera los registros del Dw_1 para ver el nuevo Artculo. Dw_1.Retrieve() //Limpia los controles para ingresar otro Artculo Sle_1.Text="" Sle_2.Text="" Ddlb_1.Text="" Sle_3.Text="" Sle_4.Text="" Em_1.Text="" Sle_1.SetFocus() //dw_1.update() End If Cb_Nuevo Dw_1.Retrieve() //Limpia los controles para ingresar otro Artculo Sle_1.Text="" Sle_2.Text="" Ddlb_1.Text="" Sle_3.Text="" Sle_4.Text="" Em_1.Text="" Sle_1.SetFocus() Evento Clicked
ACTUALIZACIN
DE
126
En la funtion Name colocar el nombre de la funcin Se tiene que crear una funcin solo para limpiar a los controles quiere decir que no devuelve valor para ello debe ser de tipo none FUNCION ACTIVAR FUNCIN DESACTIVA //Activa el Botn Grabar y Cancelar Cb_1.Enabled = True Cb_2.Enabled = True //Desactiva el resto de botones Cb_3.Enabled = False Cb_4.Enabled = False Cb_5.Enabled = False Cb_6.Enabled = False FUNCION LIMPIA Sle_1.Text="" Sle_2.Text="" Ddlb_1.Text="" Sle_3.Text="" Sle_4.Text="" Em_1.Text="" //Desactiva el Botn Grabar y Cancelar Cb_1.Enabled = False Cb_2.Enabled = False //Activa el resto de botones Cb_3.Enabled = True Cb_6.Enabled = True Dw_1.Enabled = True Se tiene que declarar como variable global
Variable Global
string p,s
Variable Instancia
String CodArticulo Boolean Actualizacion,Nuevo
WINDOWS
dw_1.settransobject(sqlca) dw_1.retrieve()
EVENTO OPEN
CB _ GRABAR
Integer Sto Decimal Cos Date Ven
EVENTO CLIKED
127
CB _ CANCELAR
//Borra un Mensaje St_Mensaje.Text="" Desactivar() //Limpia los controles Limpia() Cb_3.SetFocus() Sle_Buscar.Text=""
EVENTO CLIKED
CB _ NUEVO_ARTICULO
//Muestra un Mensaje St_Mensaje.Text="Nuevo" Actualizacion=False Nuevo=True Activar() //Limpia los controles para ingresar otro Artculo Limpia() Sle_1.SetFocus() CB_ ACTUALIZAR
EVENTO CLIKED
EVENTO CLIKED
//Muestra un Mensaje St_Mensaje.Text="Actualizando" Actualizacion=True Nuevo=False //Almacena el Cdigo del Artculo que est actualizando CodArticulo = Sle_1.Text Activar() Sle_1.SetFocus() CB_ ELIMINAR
EVENTO CLIKED
128
String Nom,Cod,Tip //, Ven Decimal Cos Integer N,Sto Date Ven N=Len(Sle_Buscar.Text) Select codigo,nombre,tipo,costo,stock,vencimiento into :Cod,:Nom,:Tip,:Cos,:Sto,:Ven from articulos where Left(Nombre,:N) = :Sle_Buscar.Text; If Sqlca.SqlCode=100 THEN MessageBox("Verifique","El nombre no existe") //Limpia los controles para ingresar otro Artculo Limpia() Cb_4.Enabled=False Cb_5.Enabled=False //Borra el Mensaje St_Mensaje.Text="" ELSE Sle_1.Text=Cod Sle_2.Text=Nom Ddlb_1.Text=Tip Sle_3.Text=String(Cos,"###,##0.00") Sle_4.Text=String(Sto) Em_1.Text=String(Ven) //Em_1.Text=Ven Cb_4.Enabled=True Cb_5.Enabled=True //Muestra el Mensaje St_Mensaje.Text="Consultando" END IF Referencias Bibliogrficas Juan Jose castaeda Power Builder 9.0 Juan Jose castaeda Full Data Base Jos del Carmen Canchucaja Power Builder 9.0 Joel Carrasco Aplique Power Builder 8.0 SQL 2000 La bilia de Sql 200
Lecturas
129
130
para crear clases visuales se debe de seleccionar Satandard Visual a continuacin les se mostrara la siguiente ventana
uno puede escoger las opciones que cree crear el tipo de clases que puede ser: check box , commandBox commanpicture o datawindow etec. Para el ejemplo se escogera datawindows. Para ello crearemos un datawindows padre para que puede heredar algunas funciones: Y se mostrara el siguiente grafico.
que se le incrementara la propiedades correspondientes para despus guardar con el nombre de midw_general y a continuacin se debe incrementar una funcin llamada Asignar_DataObj para ello hacemos clic en : insert y luego en Fuctions y nos muestra la siguiente ventana
131
grabamos la modificaciones PARA CREAR CLASES HEREDADAS , se debe de realizar los siguientes pasos. Clic en File Clic en Inherid
los
guardanos
esta
clase
con
el
nombre
de
132
funcin F_Editar
funcin F_Eliminar
funcin f_Grabar
133
funcin F_Deshacer
luego de terminado las funciones ahora cree un nuevo Windows y seleccione el control Create User object control y se mostrara la siguiente ventana y seleccione midw_mantenimiento
134
ahora incrementaremos los botones de Nuevo; Editar , Eliminar , Grabar, Salir y quedara como la grafica:
Open
//Dw_1.Asignar_DataObj("Dw_1") Dw_1.Retrieve()
135
136
SEPARATA N 18
ASIGNATURA : Lenguaje de Programacin Comercial EAP : Ingeniera Informtica Seccin : Octavo Turno: NOCHES Ciclo: OCTAVO NAII08 Fecha: 10/07/06 Docente: Ing. ELVIS GUILLERMO, HUARCAYA QUISPE CREAR EJECUTABLES DE UNA APLICACIN Para crear un ejecutable se bebe de tener varias consideraciones: 1. La aplicacin a crear el ejecutable debe estar compilado y ejecutado sin ningn error 2. Debe tener una correcta conexin de Base de datos. Pasos para crear un ejecutable: 1. Clic en File 2. Clic en new 3. click Project , luego seleccionar Application Wizard o Aplication: depues realizar clic en Ok
4. Clic en Next
137
138
9. Seleccione la primera opcin si es que se va realizar para que se puede actualizar automticamente
139
14. A continuacin realice clic en Deploy 15. y el ejecutable se creara en el tree view
140
Donde inmenu es el ejecutable de dicha aplicacin. PROCEDIENTOS ALMACENADOS EN POWER BUILDER Se puede utilizar procedimientos almacenados para la creacin de un datawindows, con los procedimientos creados en power builder o importados desde sql: Ejemplo para la busca de un alumno por codigo: Para ello se debe de realizar una conexin desde el driver nativo de Sql.
Se genera un codigo como como la figura anterior tenemos que pegar: Tenemos el un jemplo de cmo se crea el procemiento almacenado en SQL.
141
Pasos para ejecutar en power builder en una paliacin procedimientos almacenados. Coneccin en la aplicacin inicial
// Profile colegio SQLCA.DBMS = "MSS Microsoft SQL Server" SQLCA.Database = "colegio" SQLCA.ServerName = "(local)" SQLCA.LogId = "sa" SQLCA.AutoCommit = False SQLCA.DBParm = "" connect; if sqlca.sqlcode = 1 then messagebox("Aviso", "No se pudo Abrir Coneccin") else // messagebox("Importante", "Coneccin Conforme") open(wpasword) end if
Lb_1
Sle_1
Cb_1
Windows con el diseo de la aplicacin Evento open del Windows (W_busAlumno) //Se crea un objeto transaction sqlca // Profile colegio SQLCA.DBMS = "MSS Microsoft SQL Server" SQLCA.Database = "colegio" SQLCA.ServerName = "(local)" SQLCA.LogId = "sa" SQLCA.AutoCommit = False SQLCA.DBParm = "" connect; CONNECT USING SQLCA;
142
Referencias Bibliogrficas
Juan Jose castaeda Power Builder 9.0 Juan Jose castaeda Full Data Base Jos del Carmen Canchucaja Power Builder 9.0 Joel Carrasco Aplique Power Builder 8.0 SQL 2000 La bilia de Sql 200
143
(3,2)
(5,3)
Un ejemplo claro, para aprender el uso de ARRAYS TIPO DE DATOS STRUCTURE (ESTRUCTURA) Structure es un tipo de variable definido por el programador. Una variable simple de estructura puede mantener mltiples valores, algo parecido a un arreglo (array). Use al pintor de la Estructura para definir las estructuras globales (los grupos de variables) para el uso en su aplicacin. Usted no puede usar al pintor de la Estructura para definir una estructura local. Pasos para crear un TIPO DE DATO STRUCTURA
144
145
Lo que la imagen de arriba muestra significa que estoy declarando el tipo estructura s_alumno a la variable alumnos. Pero ah no queda todo solo falta signar datos a este tipod e variables. Es sencillo.
y listo terminamos con el tipo de datos Structure. Continuamos con ... ambito de las variables Cada vez que se declara una variable, no solo especifica su nombre y tipo de datos sino tambien su AMBITO. El ambito de la variable determina dos caractersticas
146
EXISTE LAS VARIABLES GLOBALES, INSTANCIA SHARED Ambito de la variable Local Instancia Visibilidad Slo el script en el que se declara Instance Variables Para todos los scripts dentro de una instancia simple del objeto en que es declarado y opcionalmente a la entera aplicacin. Los siguientes tipos de objetos pueden tener variables de instancia: Ventana, aplicacin, objeto de usuario y men. Shared Variables Para todos los scripts dentro de las instancia de los objetos en el que es declarado . Los siguientes tipos de objetos pueden tener variables de instancia: Ventana, aplicacin, objeto de usuario y men. Global Variables Para todos los scripts en una aplicacin Global y External Declaracin de functions funciones fuera del mbito de Power Builder como lo son las FUNCIONES API DE WINDOWS declaracion Script Tiempo de vida Hasta que el script termine Hasta que la instancia del objeto se cierre.
Compartida
147
y 3 controles listbox
Para comenzar a trabajar con los arreglos se debe asignar primero los valores en memoria y luego asignamos los valores segn el tipo seleccionado a un control ListBox como en el ejemplo anterior. Notas: Para concretizar el ejemplo anterior utilizamos un control commandbutton donde codificamos
Ms Ejemplos: Integer numeros[3]= {1000,2000,3999} Para asignar los valores a los arrays creados seguimos los siguientes pasos: String apellidos[4]={Vsquez, Pando, Ticona, Arocutipa} Date fechanac[2]={1977-07-26,1981-10-28} Int edades[]={21,23,25,27,29,9} LLAMADAS DE FUNCION Como veremos en el capitulo proximo sobre funciones, stas son mdulos de programas que se definen una vez y es llamado desde muchas partes en la aplicacin. Es mejor llamar a una funcin que realizar muchas copias del mismo cdigo. Llamada de una funcin Variable de retorno= nombre funcin (parmetros) Ejemplo: Integer r R= asc(@) Referencias Juan Jose castaeda Power Builder 9.0 Bibliogrficas Juan Jose castaeda Full Data Base Jos del Carmen Canchucaja Power Builder 9.0 Joel Carrasco Aplique Power Builder 8.0 SQL 2000 La bilia de Sql 200 Lecturas Recomendadas Web a visitar http://sybooks.sybase.com/onlinebooks/group-pb/pbg1000e/ http://www.powerbuilder.org/modules.php?name=News&new_topic=10 http://www.librosdigitales.net http://www.solotutoriales.com/visitar.asp?id=5414 http://www.inei.gob.pe/biblioineipub/bancopub/inf/lib5022/indice.HTM
148
149