Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

25
Instituto Tecnologico De Tapachula Nombre de la materia: Desarrollo de Aplicaciones en Ambiente Distribuido. Tema: Conexi n y Operaciones Basicas de una Aplicacion desarrollada en Gambas con un Gestor de Base de Datos MySQL . Tuto hecho por: Rodolfo (+...SAT...+)

Transcript of Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

Page 1: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

Instituto Tecnologico De Tapachula

Nombre de la materia:

Desarrollo de Aplicaciones en Ambiente Distribuido.

Tema:

Conexión y Operaciones Basicas de una Aplicacion

desarrollada en Gambas con un Gestor de Base de Datos

“MySQL”.

Tuto hecho por:

Rodolfo (+...SAT...+)

Page 2: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

Saludos a todos, en esta ocasión este Tutorial tratará de un tema que tiene que

ver con Base de Datos (B.D.). Se demostrará la conexión de Gambas (también

conocido como el Visual Basic de UBUNTU), con MySQL así mismo se

realizaran algunas operaciones básicas (Insertar, Buscar, Modificar y Eliminar)

sobre los registros contenidos en la B.D.

Cabe mencionar que esta pequeña aplicación es un ejemplo sencillo, para

desarrollarla más eficientemente, es necesario establecer controles de errores

y otros detalles que se profundizan en el ámbito de la programación, esto para

desarrollar una aplicación más robusta, pero este post fue desarrollado con la

finalidad de servir como una pequeña introducción en este ámbito. Esperando

sea de su agrado se da comienzo a lo que de verdad importa.

Para comenzar, se realizará la B.D. la cual será manipulada con el formulario

que se creará en Gambas.

Creación de la base de datos en MySQL

1.- Se pasa a abrir un Terminal y se pasa a acceder a MySQL con la siguiente

instrucción:

“ mysql –u root –p ” (sin comillas)

NOTA: después de teclear un Enter, se pasa a escribir la contraseña

correspondiente a MySQL.

Page 3: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

2.- Se pasa a crear la B.D. la cual llevará el nombre de “registros”, para ello se

escribe:

“ create database registros; ”

3.- Una vez creada la B.D. se accede a la misma, por lo cual se escribe:

“ use registros; “

4.- Se pasa a crear una tabla en la que se almacenarán los datos, la tabla se

llamará “alumno”, por lo que se escribe:

“ create table alumno (num_control varchar (15) not null primary key, nombre

varchar (20), apellido_p varchar (20), apellido_m varchar (20), carrera varchar

(50), semester varchar (20))engine=innodb; “

5.- Una vez creada la tabla, se insertará un registro, por lo cual se pasa a

escribir lo siguiente:

“ insert into alumno values („07510423‟, „Jose‟, „Lopez‟, „Cruz‟, „Licenciatura en

informatica‟, „Noveno Semestre‟); “

Page 4: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

6.- Se realiza una visualización de los registros de la tabla alumno, por lo que

se escribe:

“ select * from alumno; “

Page 5: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

Creación de la aplicación en gambas

1.- Se pasa a abrir gambas, y se muestra la siguiente ventana en la que se

selecciona la opción de Nuevo proyecto.

Page 6: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

2.- En la siguiente ventana se muestran los tipos de aplicaciones que se

pueden crear, así mismo las opciones o por decirlo así, ciertas librerías o

componentes que se pueden seleccionar, dependiendo el tipo de aplicación

que se desee crear. En este ejemplo, se seleccionará:

Sección de Tipo: Aplicación Gráfica.

Sección de Opciones: Acceso a bases de datos.

Se pasa a dar clic en la opción de Siguiente.

Page 7: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

3.- Después aparecerá una nueva ventana en la que se selecciona la ruta

donde se desea guardar el proyecto, en este ejemplo, se guardará en el

Escritorio. Después se pasa a dar clic en Siguiente.

Page 8: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

4.- Ahora se procede a escribir el nombre del proyecto, así mismo el título que

se le desee asignar, en este caso se le asigna el nombre de prueba. Y para

terminar se da clic en el botón OK.

5.- Al dar clic en OK debe de aparecer un cuadro como el siguiente:

Page 9: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

6.- Después de haber dado clic en OK, deberá aparecer la ventana del

proyecto a desarrollar, tal y como en Visual Basic.

NOTA: En caso de marcar un fallo, que indique que hace falta algún

complemento como gb.db.form como se muestra en la siguiente captura.

Lo que se tiene que hacer es agregar esos componentes, por lo cual basta con

dirigirse al Centro de Software de Ubuntu y escribir gb.db para que se muestren

todos los complementos con dicho nombre.

Page 10: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

Para instalar el complemento faltante, se selecciona y automáticamente

aparece la opción de instalar, se da clic y se espera hasta que termine el

proceso. También hay que mencionar que debe de estar instalado el gambas2-

gb-db-mysq, en caso contrario no se podrá efectuar la conexión del formulario

con MySQL.

Después de haber instalado los complementos faltantes es recomendable que

reinicien su PC, para que funcione todo a la perfección.

Page 11: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

7.- Retomando la creación de la aplicación, en la ventana del proyecto del lado

izquierdo, aparecen unas carpetas de las cuales se seleccionará la carpeta con

el nombre de modulo, se da clic derecho y se selecciona la opción de Nuevo y

luego clic en Módulo.

NOTA: El modulo se realiza para tener un mejor manejo en cuestión a la

conexión en los formularios, ya que si se cuentan con muchos formularios,

escribir en cada uno toda la sintaxis de la conexión puede ser muy tedioso, por

lo cual con el módulo se reduce un poco. A pesar de que solo se realizará un

formulario en este ejemplo, nunca está demás que se explique por futuras

cuestiones.

Page 12: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

8.- Después de haber seleccionado un nuevo módulo, aparece una ventana en

la que se escribe el nombre del módulo, puede ser el que uno desee, en este

caso se llamará “moduloconexion”. Como consiguiente se pasa a dar clic en el

botón de OK.

9.- Después aparece una ventana en blanco, en la cual se procederá a realizar

la codificación de dicho módulo. El código a escribir es el siguiente:

'Declaramos una variable en donde se guardara la conexion.

PUBLIC $conexion AS NEW Connection

'se declara el inicio del procedimiento en el modulo creado.

PUBLIC PROCEDURE moduloconexion()

'Se cierra la conexion.

$conexion.Close

'Se pasa a establecer una estructura para la conexion con mysql.

$conexion.Type = "mysql"

'Se indica hasia donde se realizará la conexion.

$conexion.Host = "localhost"

'se indica el nombre con el que se accede a la base de datos.

'En caso de tener algun otro usuario, basta con colocar ese usuario en lugar de root.

$conexion.Login = "root"

Page 13: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

'Se establece el puerto en el que se conecta MySQL, que por default es 3306.

$conexion.Port = "3306"

'Se indica el nombre de la base de datos a la cual se desea acceder.

$conexion.Name = "registros"

'Se indica la contraseña establecida en MySQL para poder accesar a la Base de Datos.

$conexion.Password = "university"

'Se abre la conexion.

$conexion.Open()

END

10.- Una vez terminado el módulo, se pasa a crear el formulario, por lo que

pasa a dar doble clic en donde dice FMain (ubicado del lado izquierdo, justo

donde se encuentra la carpeta de Módulos.

11.- Al dar doble clic, aparecerá el formulario como en Visual Basic. Antes de

empezar, comentaré las herramientas necesarias para el formulario, para

visualizar la barra de herramientas, para dibujar los botones, etiquetas y

cuadros de texto. Basta con dirigirse al menú de vista y seleccionar Caja de

Herramientas.

Page 14: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

Esto es para visualizar la siguiente cuadricula.

Donde la es un Label, el es un cuadro de texto y el es un

botón de comando.

12.- Explicado lo anterior, se pasa a dibujar 6 labels, 6 cajas de texto y 6

botones dando como resultado algo como esto.

Label 1 y Texbox1 = número de control Boton1 = Nuevo

Label 2 y Texbox2 = nombre Boton2 = Guardar

Label 3 y Texbox3 = apellido paterno Boton3 = Buscar

Label 4 y Texbox4 = apellido materno Boton4 = Modificar

Label 5 y Texbox5 = carrera Boton5 = Eliminar

Label 6 y Texbox6 = semestre Boton6 = Salir

Page 15: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

NOTA: Las propiedades son idénticas a las de visual Basic, para cambiar los

nombres Basta con buscar en sus propiedades donde diga Text.

Page 16: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

Codificación

1.- Para empezar con los códigos, se empezará en el mismo orden en el que

se encuentran los botones en el formulario, por lo que se comenzará con el

botón de Nuevo hasta llegar al de Salir. Empezando con esto, el Boton de

Nuevo solo limpiará las cajas de texto para después proceder a guardar lo que

se introduzca en las cajas de texto. El código es el siguiente:

'Se realizará una limpieza de las cajas de texto.

TextBox1.Clear

TextBox2.Clear

TextBox3.Clear

TextBox4.Clear

TextBox5.Clear

TextBox6.Clear

2.- Código del botón Guardar.

'Codigo del boton Guardar

'Se declara una variable donde se almacena y devuelve el proceso de insercion y de

conexion

DIM agregar AS Result

'Se abre la conexion

moduloconexion.moduloconexion

'se pasa a realizar la instruccion para insertar un registro

agregar = moduloconexion.$conexion.Exec("insert into alumno values ('" &

TextBox1.Text & "' , '" & TextBox2.text & "' , '" & TextBox3.text & "' , '" & TextBox4.text

& "' , '" & TextBox5.Text & "' , '" & TextBox6.text & "')")

'Se establece un mensage que indique que se guardo el registro.

Message("Registro Guardado")

'Se cierra la conexion

moduloconexion.$conexion.Close

Page 17: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

3.- Código del botón Buscar.

'Codigo del boton Buscar

'Se declara una variable de tipo string para guardar el valor de un InputBox para

realizar la busqueda.

DIM respuesta AS String

'Se declara otra variable que almacena y devuelve el proceso de busqueda y de

conexion.

DIM buscar AS Result

'se abre la conexion.

moduloconexion.moduloconexion

'Se declara que la bariable respuesta tomara el valor que se introduzca en el InputBox.

respuesta = InputBox("Introduzca el numero de control del alumno")

'se pasa a realizar la consulta. Cabe mencionar que el valor de alumno es el nombre de

la tabla de la base de datos y num_control el campo declarado en mysql

buscar = moduloconexion.$conexion.Exec("select * from alumno where num_control=

'" & respuesta & "' ")

'Se pasa a visualizar el registro en las respectivas cajas de texto.

TextBox1.Text = buscar["num_control"]

TextBox2.Text = buscar["nombre"]

TextBox3.Text = buscar["apellido_p"]

TextBox4.Text = buscar["apellido_m"]

TextBox5.Text = buscar["carrera"]

TextBox6.Text = buscar["semestre"]

'Se cierra la conexion.

moduloconexion.$conexion.Close

4.-Código del botón Modificar.

'Codigo del boton Modificar

'Se declara una variable de tipo string para guardar el valor de un InputBox para

guardar o no, los cambios.

DIM respuesta AS String

'Se declara otra variable que almacena y devuelve el proceso de busqueda y de

conexion.

Page 18: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

DIM modificar AS Result

'Se declara que la variable respuesta tomara el valor del menssage.

respuesta = Message.Question("¿Desea Guardar los cambios realizados?", "&Aceptar",

"&Cancelar")

'Se establece un if para comparar el valor de la respuesta.

'En el Message, el boton de Aceptar toma el valor de 1, por lo cual la condicion

quedaría de la siguiente forma.

IF respuesta = 1 THEN

'se abre la conexion.

moduloconexion.moduloconexion

‘se pasa a realizar un Update para actualizar los registros.

modificar = moduloconexion.$conexion.Exec("update alumno set nombre= '" &

TextBox2.Text & "' , apellido_p= '" & TextBox3.Text & "' , apellido_m= '" &

TextBox4.Text & "' , carrera= '" & textbox5.text & "' , semestre= '" & textbox6.text & "'

where num_control = '" & TextBox1.Text & "' ")

'Se establece un mensage que indique que se guardaron los cambios.

Message("¡Registro Modificado!")

'Se Cierra la conexion

moduloconexion.$conexion.Close

'Se cierra el if

ENDIF

5.- Código del botón Eliminar.

'Codigo del boton Eliminar

'Se declara una variable de tipo string para guardar el valor de un InputBox para

Eliminar o no, el registro.

DIM respuesta AS String

'Se declara otra variable que almacena y devuelve el proceso de Eliminacion y de

conexion.

DIM eliminar AS Result

'Se declara que la variable respuesta tomara el valor del menssage.

respuesta = Message.Question("¿Esta seguro que desea Eliminar el registro?",

"&Aceptar", "&Cancelar")

'Se establece un if para comparar el valor de la respuesta.

Page 19: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

'En el Message, el boton de Aceptar toma el valor de 1, por lo cual la condicion

quedaría de la siguiente forma.

IF respuesta = 1 THEN

'se abre la conexion.

moduloconexion.moduloconexion

'se pasa a realizar la sentencia de eliminacion del registro, haciendo una comparacion

unicamente con la clave primaria que es Num_control.

eliminar = moduloconexion.$conexion.Exec("delete from alumno where num_control=

'" & TextBox1.Text & "' ")

'Se establece un mensage que indique que se Eliminó el registro.

Message("¡Registro Eliminado!")

'Se Cierra la conexion

moduloconexion.$conexion.Close

'Se realizara una limpieza de las cajas de texto.

TextBox1.Clear

TextBox2.Clear

TextBox3.Clear

TextBox4.Clear

TextBox5.Clear

TextBox6.Clear

'Se cierra el if

ENDIF

6.- Y el código más largo, el del botón Salir.

'Codigo del boton Salir

FMain.Close

Page 20: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

Comprobación

1.- Para ejecutar el proyecto, basta con teclear F5 o en el menú Depuración. Al

ejecutar el proyecto, la aplicación se visualiza de la siguiente forma:

Page 21: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

2.-Lo primero a realizar es un alta de un registro, por lo que se llenarán los

campos con los siguientes datos:

Numero de control: 123

Nombre (s): Gabriel

Apellido Paterno: Perez

Apellido Materno: Ortiz

Carrera: Ingenieria Electromecanica

Semestre: 6to. Semestre

3.- Ahora se pasa a dar clic en el Botón de Guardar, y deberá visualizarse el

siguiente mensaje:

Page 22: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

4.- Nos dirigimos a la base de datos en MySQL, y se realiza una visualización

de los registros de la tabla alumno, para verificar que si se agregó el registro,

para ello se escribe:

“ select * from alumno; “

5.- Procederemos ahora a realizar una modificación, al registro con el número

de control “07510423”. Por lo que primero se da clic en el botón de buscar, y

en el recuadro que aparece, escribir el número de control a buscar.

Page 23: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

6.- Al dar clic en OK, aparecerán los datos del registro en cada cuadro de texto

respectivamente.

7.- Se cambiará el nombre de “Jose” por “Jose Armando”. Ahora, se pasa a dar

clic en el botón de Modificar, y se nos preguntará si se desea guardar los

cambios, se da clic en Aceptar.

Page 24: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

8.- Ahora se pasa a la B.D. en MySQL y se realiza una visualización

nuevamente.

“ select * from alumno; “

9.- Para terminar se verificará que el botón de Eliminar funcione correctamente.

Por lo que se eliminará el dato que se acaba de modificar. Por lo que se da clic

en el botón de eliminar, y se nos pregunta si se desea eliminar, se da clic en

Aceptar para proseguir.

Page 25: Altas Bajas Consultas y Modificaciones Con Gambas Ubuntu

Se muestra un mensaje en el que se nos indica que fue eliminado.

10.- Se procede a realizar una nueva visualización de los registros para

corroborar que el registro fue eliminado:

“ select * from alumno; “

Con esto queda terminado este pequeño manual.

Espero que esto les sea de ayuda y que les sirva de guía para desarrollar una

aplicación en Gambas.