Está en la página 1de 12

UD.

Taller de programación concurrente JAVA


Guía N°8 Formulario de transacciones

FORMULARIO DE TRANSACCIONES
FORMULARIO DE VENTAS

Contenidos

En esta guía el estudiante aprenderá a desarrollar/compilar una aplicación que


presentará un formulario de transacciones del proceso de ventas, que permitirá
realizar operaciones básicas como crear un nuevo registro de venta, buscar un
cliente, buscar y agregar productos, grabar una venta, etc.

Objetivos Específicos

Conocer el uso las librerías JavaSQL.


Conocer los comandos SQL para realizar una actualización segura.
Crear varias consultas de diferente tipo.
Generar un nuevo código a partir de los datos de la BD.
Utilizar variables globales para compartir información entre metodos.
Crear un reporte en iReport y mostrarlo en la aplicación Java.

Materiales y Equipo

En cuanto a las herramientas y software necesario:

 JDK
 XAMPP
 NetBeans
 iReport

Para esta práctica es necesario contar con la biblioteca de mysql o mejor dicho el JDBC
Driver de MySql, asociarlo al complemento iReport.

Fundamento Teórico

Un formulario de transacciones es un formulario que permite no solo realizar tareas


específicas sino que muchas veces combina funciones de otro Formulario, esto hace que
tener acceso directo a los campos de la tabla de un registro especifico. Ademas de
permitir realizar las operaciones más delicadas como son las de actualización.

Aplicación con Formulario de Transacciones con acceso a datos

Pág. 1
UD. Taller de programación concurrente JAVA
Guía N°8 Formulario de transacciones

Primero crearemos el formulario Jframe de Ventas. Luego crearemos el formulario JFrame


ver Reporte, que complementa al formulario para mostrar la venta en formato previo a la
impresión.

Paso 1: Crear un Formulario Maestro Detalle Ventas

1. Crear un JFrame Form con el nombre frmMaestroDetalleVentas.


2. Diseñe el formulario de la siguiente manera.

Componente Nombre de la Variable


Panel Buscar Cliente
JTextField Nombre cliente txtBuscarCliente
JTable Buscar cliente TablaCliente
JButton Agregar cliente btnAgregarCliente
Panel Buscar Producto
JTextField Nombre Producto txtBuscarProducto
JTable Buscar cliente TablaCliente
JButton Agregar producto btnAgregarProducto
JTextField Precio unitario txtPrecio
JTextField Cantidad txtCantidad
Panel Registro de ventas
JTextField N° registro txtBuscarProducto
JRadioButton Boleta optBoleta
JRadioButton Boleta optFactura

Pág. 2
UD. Taller de programación concurrente JAVA
Guía N°8 Formulario de transacciones

JTextField N° Boleta/Factura txtNumComprobante


JLabel fecha lblFechaCompra
JTextField Cliente txtCliente
JTextField Documento txtDocumento
JTextField Dirección txtDireccion
JTextArea Teléfono txtTelefono
JButton Nuevo btnNuevo
JButton Guardar btnGuardar
JButton Imprimir btnImprimir
JButton Cancelar btnCancelar
JTable Detalle de venta TablaDetalle
JButton Quitar producto btnQuitar
JTextField Sub Total txtSubTotal
JTextField IGV txtIgv
JTextField Total a pagar txtTotalApagar
JTextArea Importe txtImporte
JTextField Vuelto txtVuelto

Paso 2: Codificación general para utilizar los objetos.

● Vamos a proceder a programar. Comenzamos con hacer uso del paquete sql, que
nos permitirá tener acceso a la base de datos, luego usaremos el paquete swing,
específicamente a las clases JoptionPane para mostrar los cuadros de dialogo y
para los DefaultTableModel, DefaultComboBoxmodel para los modelos de los
controles JTable y JComboBox.

● Luego procedemos a crear las variables de uso general para la conexión y para el
manejo de la tabla. Esto lo hacemos dentro de la clase
frmMaestroDetalleVentas.

Pág. 3
UD. Taller de programación concurrente JAVA
Guía N°8 Formulario de transacciones

● En el método constructor programamos lo siguiente (sólo escribe lo que se señala


la llave de color rojo):

Pág. 4
UD. Taller de programación concurrente JAVA
Guía N°8 Formulario de transacciones

Con este código configuramos los títulos y asociamos los modelos de las tablas sus
respectivos JTables. Luego crearemos la conexión a la base de datos.

Paso 3: Programación de las operación básicas de búsqueda de clientes y


productos.

● Primero programaremos el método para buscar clientes, esto lo hacemos


directamente en el evento KeyReleased de control txtBuscarCliente. Este
método permitirá consultar en la base de datos, los registros de clientes que
coincidan con los parámetros de búsqueda y los mostrará en la tabla clientes.

Pág. 5
UD. Taller de programación concurrente JAVA
Guía N°8 Formulario de transacciones

● Luego programaremos la parte en el que el usuario selecciona un elemento


resultante haciendo un clic en la tabla. Esto lo hacemos en el evento
MouseClicked del control TablaCliente.

● Por ultimo programaremos la acción de agregar el cliente al registro de ventas.

Pág. 6
UD. Taller de programación concurrente JAVA
Guía N°8 Formulario de transacciones

● Segundo: igual que el método buscar cliente, programaremos el método para


buscar productos, esto lo hacemos directamente en el evento KeyReleased de
control txtBuscarProducto.

● Luego programaremos la parte en el que el usuario selecciona un elemento

Pág. 7
UD. Taller de programación concurrente JAVA
Guía N°8 Formulario de transacciones

resultante haciendo un clic en la tabla. Esto lo hacemos en el evento


MouseClicked del control TablaProducto.

● Por ultimo programaremos la acción de agregar los productos al detalle de ventas.

● Hasta aquí la funcionalidad de agregar productos funciona correctamente, pero

Pág. 8
UD. Taller de programación concurrente JAVA
Guía N°8 Formulario de transacciones

necesitamos saber cuánto vamos sumando al total cuando se agrega cada uno de
los productos, por eso implementamos un método que permita calcular los totales.

● Así mismo, necesitamos un meto para poder quitar aquellos productos que fueron
ingresados por error, o que el cliente desee cancelar. Para ello utilizamos un botón
llamado btnQuitar el cual programaremos dentro de su evento ActionPerformed.

Paso 4: Programación de las operaciones principales del registro de ventas.

● Primero: toda venta genera un nuevo registro y a la vez controla el numero


secuencial de los comprobantes de pago, si es Boleta, tendrá un numero
secuencial y si es factura tendrá otra numeración. Dichas numeración se
encuentran en la misma tabla, por lo que deberá hacerse un filtro previo a la
inserción de una nueva venta. Esto lo hacemos a través del botón btnGuardar,
evento ActionPerformed, en cual codificaremos lo siguiente:

Pág. 9
UD. Taller de programación concurrente JAVA
Guía N°8 Formulario de transacciones

Pág. 10
UD. Taller de programación concurrente JAVA
Guía N°8 Formulario de transacciones

● En el botón btnGuardar, evento ActionPerformed, codificaremos las acciones de


guardar el registro de venta y su detalle:

● Este botón btnGuardar depende de un procedimiento creado en el evento


formWindowsActivated del JFrame Form, evento que ocurre cuando el
formulario se activa.

Pág. 11
UD. Taller de programación concurrente JAVA
Guía N°8 Formulario de transacciones

Paso 4: Programación de algunas utilidades reutilizables.

● Crearemos un método para quitar las filas de los modelos de las tablas.

● Crearemos otro método para actualizar el stock en la tabla producto, esto ocurrirá
cada vez que se guarde un detalle de venta, es decir un producto.

Paso 5: Prueba.

● Ahora podemos probar la aplicacion

Pág. 12

También podría gustarte