Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
PROGRAMACIN VISUAL 2
INTEGRANTES:
DOCENTE:
FACULTAD:
INGENIERA DE SISTEMAS
FILIAL PIURA
Sistema Tienda de Abarrotes
El siguiente sistema tiene como finalidad automatizar los procesos de una bodega en
la cul se realizara el mantenimiento de los productos, clientes y se realizarn los
procesos de venta de productos a los clientes ya sea efectuando boletas o facturas
segn lo requiera el cliente.
A continuacin les mostrar el diseo de cada una de las interfaces a usar en nuestro sistema:
Ventana de Acceso al Sistema
String usu=txtuser.getText();
String pas=new String(txtpass.getText());
if(usu.equals("Luis") && pas.equals("123456"))
{
this.setVisible(false);
JOptionPane.showMessageDialog(null, "Bienvenido al Sistema "+usu,"Acceso
Sistema",JOptionPane.INFORMATION_MESSAGE);
Principal ingreso = new Principal();
ingreso.setVisible(true);
ingreso.pack();
}
else
{
JOptionPane.showMessageDialog(null, "Los Datos son Incorrectos vuelva a Intentarlo");
txtuser.requestFocus();
}
}
package claseConectar;
import java.sql.*;
import javax.swing.*;
/**
*
* @author Luis
*/
}
}
package Formulario;
import claseConectar.conectar;
import java.awt.Color;
import java.sql.*;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.*;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
/**
*
* @author Luis
*/
public class Boleta extends javax.swing.JInternalFrame {
numeros();
}
void descontarstock(String codi,String can)
{
int des = Integer.parseInt(can);
String cap="";
int desfinal;
String consul="SELECT * FROM producto WHERE cod_pro='"+codi+"'";
try {
Statement st= cn.createStatement();
ResultSet rs= st.executeQuery(consul);
while(rs.next())
{
cap= rs.getString(4);
}
} catch (Exception e) {
}
desfinal=Integer.parseInt(cap)-des;
String modi="UPDATE producto SET Stock='"+desfinal+"' WHERE cod_pro = '"+codi+"'";
try {
PreparedStatement pst = cn.prepareStatement(modi);
pst.executeUpdate();
} catch (Exception e) {
}
}
void numeros()
{
String c="";
String SQL="select max(num_bol) from boleta";
//String SQL="select count(*) from boleta";
//String SQL="SELECT MAX(cod_emp) AS cod_emp FROM empleado";
//String SQL="SELECT @@identity AS ID";
try {
Statement st = cn.createStatement();
ResultSet rs=st.executeQuery(SQL);
if(rs.next())
{
c=rs.getString(1);
}
if(c==null){
txtnumbol.setText("00000001");
}
else{
int j=Integer.parseInt(c);
GenerarNumero gen= new GenerarNumero();
gen.generar(j);
txtnumbol.setText(gen.serie());
}
/*can=Integer.parseInt(cant);
imp=pre*can;
dato[4]=Float.toString(imp);*/
for(int i=0;i<tbdetbol.getRowCount();i++)
{
pre=tbdetbol.getValueAt(i, 2).toString();
can=tbdetbol.getValueAt(i, 3).toString();
precio=Double.parseDouble(pre);
cantidad=Integer.parseInt(can);
imp=precio*cantidad;
subtotal=subtotal+imp;
tbdetbol.setValueAt(Math.rint(imp*100)/100, i, 4);
txttotal.setText(""+Math.rint(subtotal*100)/100);
}
void boleta(){
String InsertarSQL="INSERT INTO boleta(num_bol,cod_cli,pre_tot,fecha) VALUES
(?,?,?,?)";
String numbol=txtnumbol.getText();
String codcli=txtcod.getText();
String total=txttotal.getText();
String fecha=txtfecha.getText();
try {
PreparedStatement pst = cn.prepareStatement(InsertarSQL);
pst.setString(1,numbol);
pst.setString(2,codcli);
pst.setString(3,total);
pst.setString(4,fecha);
int n= pst.executeUpdate();
if(n>0)
{
JOptionPane.showMessageDialog(null,"Los datos se guardaron correctamente");
}
try {
PreparedStatement pst = cn.prepareStatement(InsertarSQL);
pst.setString(1,numbol);
pst.setString(2,codpro);
pst.setString(3,despro);
pst.setString(4,cantpro);
pst.setString(5,preunit);
pst.setString(6,importe);
pst.executeUpdate();
}
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
setClosable(true);
setIconifiable(true);
setMaximizable(true);
setResizable(true);
setTitle("BOLETA");
jLabel7.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/Imagenes/productos.jpg"))); // NOI18N
jLabel7.setText("jLabel7");
jLabel16.setText("Piura-Per");
jLabel5.setText("Telf: 481804");
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(18, 18, 18)
.addComponent(jLabel4)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jLabel5))
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(57, 57, 57)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAIL
ING)
.addComponent(jLabel3)
.addComponent(jLabel1)))
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(113, 113, 113)
.addComponent(jLabel16)))
.addContainerGap(140, Short.MAX_VALUE))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAIL
ING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(jLabel1)
.addGap(4, 4, 4)
.addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 14,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL
INE)
.addComponent(jLabel5)
.addComponent(jLabel4))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jLabel16))
.addComponent(jLabel7))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
);
jPanel2.setBorder(new
javax.swing.border.SoftBevelBorder(javax.swing.border.BevelBorder.RAISED));
jLabel8.setText("N");
txtnumbol.setEnabled(false);
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel6, javax.swing.GroupLayout.DEFAULT_SIZE, 153,
Short.MAX_VALUE))
.addGroup(jPanel2Layout.createSequentialGroup()
.addGap(33, 33, 33)
.addComponent(jLabel2)))
.addContainerGap())
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel8)
.addGap(18, 18, 18)
.addComponent(txtnumbol, javax.swing.GroupLayout.DEFAULT_SIZE, 113,
Short.MAX_VALUE)
.addGap(20, 20, 20))
);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel2, javax.swing.GroupLayout.DEFAULT_SIZE, 22,
Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 22,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL
INE)
.addComponent(jLabel8)
.addComponent(txtnumbol, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap())
);
jLabel9.setText("Seor(es):");
jLabel10.setText("DNI:");
jLabel11.setText("Cod.Cliente");
jLabel12.setText("Fecha:");
jLabel13.setText("Direccion:");
jLabel14.setText("Productos:");
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addGroup(jPanel3Layout.createSequentialGroup()
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addComponent(jLabel13)
.addComponent(jLabel9)
.addComponent(jLabel10))
.addGap(18, 18, 18)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addGroup(jPanel3Layout.createSequentialGroup()
.addComponent(txtnomape)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(btnclientes,
javax.swing.GroupLayout.PREFERRED_SIZE, 76,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(jPanel3Layout.createSequentialGroup()
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addComponent(txtdni, javax.swing.GroupLayout.PREFERRED_SIZE,
98, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtdire, javax.swing.GroupLayout.PREFERRED_SIZE,
177, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(33, 33, 33)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addComponent(jLabel11)
.addComponent(jLabel12))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addComponent(txtfecha,
javax.swing.GroupLayout.PREFERRED_SIZE, 91,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(txtcod, javax.swing.GroupLayout.PREFERRED_SIZE,
92, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(0, 68, Short.MAX_VALUE))))
.addGroup(jPanel3Layout.createSequentialGroup()
.addComponent(jLabel14)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(btnproductos)
.addGap(0, 0, Short.MAX_VALUE)))
.addContainerGap())
);
jPanel3Layout.setVerticalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL
INE)
.addComponent(jLabel9)
.addComponent(txtnomape, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnclientes))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL
INE)
.addComponent(jLabel10)
.addComponent(txtdni, javax.swing.GroupLayout.PREFERRED_SIZE, 20,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel11)
.addComponent(txtcod, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADI
NG)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL
INE)
.addComponent(jLabel12)
.addComponent(txtfecha, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL
INE)
.addComponent(jLabel13)
.addComponent(txtdire, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASEL
INE)
.addComponent(jLabel14)
.addComponent(btnproductos))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
);
tbdetbol.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
},
new String [] {
"CODIGO", "DESCRIPCION", "PRECIO UNITARIO", "CANTIDAD",
"PRECIO VENTA"
}
){
Class[] types = new Class [] {
java.lang.String.class, java.lang.String.class, java.lang.String.class,
java.lang.String.class, java.lang.String.class
};
jLabel20.setText("Total:");
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE))
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel20)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(txttotal, javax.swing.GroupLayout.PREFERRED_SIZE,
68, javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(jScrollPane2,
javax.swing.GroupLayout.PREFERRED_SIZE, 508,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(btnsalir, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(btncalcular, javax.swing.GroupLayout.DEFAULT_SIZE,
236, Short.MAX_VALUE)
.addComponent(btnven, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(btneli, javax.swing.GroupLayout.Alignment.TRAILING,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
.addGap(10, 10, 10))
.addGroup(layout.createSequentialGroup()
.addGap(55, 55, 55)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE,
121, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createSequentialGroup()
.addComponent(btncalcular)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btneli)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnven)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnsalir)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txttotal, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel20))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE))
);
pack();
}// </editor-fold>
} catch (Exception e) {
}
}
}
boleta();
detalleboleta();
txtcod.setText("");
txtnomape.setText("");
txtdni.setText("");
txtdire.setText("");
txttotal.setText("");