Escolar Documentos
Profissional Documentos
Cultura Documentos
OBJETIVOS ............................................................................................................. I
INTRODUCCION .................................................................................................... II
1. Requerimientos Técnicos ................................................................................. 1
1.1. Requerimientos mínimos de hardware ....................................................... 1
1.2. Requerimientos mínimos de software ........................................................ 1
2. HERRAMIENTAS UTILIZADAS PARA EL DESARROLLO .............................. 2
2.1. NetBeans IDE 8.2 ...................................................................................... 2
2.2. MySQL 8.0 ................................................................................................. 3
2.3. MySQL Workbench 8.0 CE ........................................................................ 3
2.4. Mysql-connector-java-5.1.47-bin.jar ........................................................... 4
3. Paquete Controlador ......................................................................................... 5
3.1. CtrlProducto.java ........................................................................................ 5
3.2. btnGuardar ................................................................................................. 6
3.3. btnModificar ................................................................................................ 7
3.4. btnEliminar ................................................................................................. 8
3.5. btnBuscar ................................................................................................... 8
3.6. btnLimpiar .................................................................................................. 9
3.7. CtrlVentas.java ........................................................................................... 9
4. Paquete Modelo .............................................................................................. 12
4.1. Conexión.java .......................................................................................... 12
4.2. ConsultaVentas.java ................................................................................ 13
4.3. ConsultaProducto.java ............................................................................. 15
4.4. Producto.java ........................................................................................... 19
4.5. Ventas.java .............................................................................................. 20
4.6. SqlUsuarios.java ...................................................................................... 21
4.7. Usuarios.java ........................................................................................... 23
5. Paquete Vista ................................................................................................. 24
5.1. frmPreventa.java ...................................................................................... 24
5.2. Diseño del Frame Preventa y programación de los botones .................... 27
5.2.1. Botón Buscar ..................................................................................... 27
5.2.2. Botón Agregar.................................................................................... 28
5.2.3. Botón Facturar ................................................................................... 29
5.2.4. frmVentas .......................................................................................... 29
5.3. Diseño de Frame Ventas y Programación de Botones ............................ 31
5.3.1. Botón Facturar ................................................................................... 32
6. Botón Nueva Venta .................................................................................. 33
6.1.1. frmProducto ....................................................................................... 33
6.1.2. frmLogin ............................................................................................. 34
6.2. Diseño frame Login y programación de botón .......................................... 34
6.2.1. Boton Ingresar ................................................................................... 35
6.2.2. frmRegistro ........................................................................................ 36
6.3. Diseño del Frame Registrar y programación de los botones .................... 36
6.3.1. Botón Registrar .................................................................................. 37
6.3.2. Botón Regresar.................................................................................. 38
OBJETIVOS
General
Específicos
I
INTRODUCCION
II
1. REQUERIMIENTOS TÉCNICOS
Procesador: Core
Memoria RAM: Mínimo: 1 Gigabytes (GB)
Disco Duro:
Privilegios de administrador
Sistema Operativo: Windows NT/98/Me/2000/2003/XP/Vista
NetBeans IDE es libre, código abierto, multiplataforma con soporte integrado para
el lenguaje de programación Java.
MySQL Workbench ahora proporciona una solución completa y fácil de usar para
migrar Microsoft SQL Server, Microsoft Access, Sybase ASE, PostreSQL y otras
tablas, objetos y datos RDBMS a MySQL. Los desarrolladores y los DBA pueden
convertir rápida y fácilmente las aplicaciones existentes para que se ejecuten en
MySQL tanto en Windows como en otras plataformas. La migración también admite
la migración de versiones anteriores de MySQL a las últimas versiones.
2.4. Mysql-connector-java-5.1.47-bin.jar
3.1. CtrlProducto.java
Esta clase es muy importante debido a que en ella se realizan todos los métodos y
acciones de los botones en nuestro formulario, para empezar a trabajar esta clase
debemos importar todas las librerías necesarias para la realización de este
proyecto, las librerías que importamos son las siguientes:
3.2. btnGuardar
3.3. btnModificar
De igual manera que el botón guardar este obtendrá los datos del Id que se convierte
a un int, se realizará un getText también para código, nombre y las variables precio
y cantidad se parsean a doublé e int respectivamente. Al finalizar la modificación se
mostrará un mensaje que indicará que el “Registro Modificado” sino se cumple esta
condición muestra un error. Al finalizar se cualquier condición se ejecuta el método
limpiar ().
Para la acción del botón eliminar solamente se necesitará obtener con un get el id
debido a que es único. De la misma manera que los anteriores botones muestran
una alerta que indica si la acción fue exitosa o lo contrario.
3.5. btnBuscar
Para el botón buscar necesitamos obtener el código del producto una vez ingresado
el código se tendrá que obtener todos los datos del mismo, realizamos una
conversión tipo Sting para Id, Precio y Cantidad debido a que necesitamos
únicamente valores tipo Sting (cadena de texto). Si el código ingresado existe
mostrara todos sus datos en caso contrario mostrara un mensaje que indica un error
al buscar.
Por ultimo tenemos el botón limpiar que simplemente cuando se efectúa su acción
llama al método limpiar () al finalizar este último if se cierra con una llave el if
principal. El método limpiar () únicamente establece como tipo null los campos de
texto.
3.7. CtrlVentas.java
4.1. Conexión.java
La clase Conexión es fundamental para nuestro proyecto debido a que con ella
creamos el objeto conexión el cual ejecutara la conexión con nuestra base de datos,
por ello necesitamos algunas librerias especificas por ejemplo import
com.mysql.jdbc.Connection la cual nos sirve para crear el objeto conexión y nos
permite usar el jdbc de la API de java especifico de mysql, import
java.sql.DriverManager que incluye metodos para poder agregar y eliminar
controladores asi mismo utilizamos SQLException devolver los errores o las
condiciones de excepción después de ejecutar un comando de bases de datos SQL.
4.2. ConsultaVentas.java
Esta clase será fundamental cuando deseemos insertar una nueva venta a nuestra
base de datos para ello debemos importar ciertas librerías que nos ayudaran a la
realización de este proyecto por ejemplo la librería import java.sql.Connection que
nos sirve para realizar una conexión con nuestros datos utilizamos por primera vez
la librería import java.sql.PreparedStatement, con la clase PreparedStatement se
pueden crear sentencias SQL pre compiladas que las podremos usar varias veces
y utilizaremos una SQLException para tomar las excepciones que pueden ocurrir
dentro del programa.
Finalmente creamos un método try-catch donde realizaremos los métodos set que
nos servirán para asignar los valores de los parámetros que utilizamos con el
símbolo ?, podemos ver también que utilizamos nuestra variable preparedStatement
y le designamos el String sql que realizamos anteriormente utilizamos el método
execute para ejecutarlo de igual realizamos un finally con el cual cerramos la
conexión y agregamos una excepción sql y damos por finalizado esta clase.
En la clase ConsultaProducto crearemos todos los String sql para nuestro programa,
primeramente, importamos las librerías que ocuparemos o que necesitaremos para
realizar todos los métodos con los String sql. Esta vez ocupamos una librería más
que la anterior clase la cual es import java.sql.ResultSet en la cual se obtiene un
objeto de tipo ResultSet el cual permite leer una fila del resultado de la consulta
cada vez.
Seguidamente creamos otro método que nos servirá para modificar los datos por
medio del id del producto, de igual manera creamos nuestra variable
preparedStatement, creamos nuestra variable con la conexión y por ultimo nuestro
String sql donde colocaremos nuestro Update donde especificamos los campos que
serán actualizados una vez más colocamos el símbolo ? debido a que el valor que
tendrán se obtendrá durante el desarrollo del programa.
5.1. frmPreventa.java
Este frame agrega los productos seleccionados en la table visible al carrito compras
(tablaauxiliar). Se declaran las librerías que se utilizan a lo largo del frame y se
declaran las variables que se usan para calcular el total a pagar y descontar los
productos que fueron facturados.
Este botón hace la búsqueda del producto por medio del código ingresado. El código
utilizado fue el siguiente:
Este botón manda a llamar el formulario de venta para ingresar los datos del cliente.
El código para programador este botón es el siguiente:
5.2.4. frmVentas
En este frame se declara las variable totalventa que reciben el valor de frmPreventa
ubicada en el campo txtTotalVenta. Y la variable int para colocar el numero de
factura correspondiente.
Manda el total y datos del cliente a la tabla ventas y crea un nuevo registro en la
base datos en la tabla ventas.
6.1.1. frmProducto
Este frame es controlado por medio del modeloMVC (Modelo vista controlador) y
tiene la función de un CRUD (Create Read Update Delete)*.
Este botón comprueba los datos ingresados en los campos en la base de datos.
Este frame es el encargado de solicitar los datos del nuevo usuario que empezara
a usar los servicios del aplicativo.
1 2
Este botón almacena los datos ingresados en los campos en la base de datos,
creando un usuario nuevo.
Este botón nos regresa al login principal para ingresar como otro usuario.