Crear un punto de venta (5 de 10)

InicioAnteriorSiguienteFinal

Consulta de ventas

Lo que haremos en esta ocasión es una pantalla para consultar ventas.

1. Agregar un formulario con el nombre frmConsultaVentas
2. Agregar un ListView con el nombre lvListaVentas



Propiedades del ListView:

Name= lvListaVentas
Dock=Fill
GridLines=True

Creamos este procedimiento:

private void Encabezados()
{
lvListaVentas.View = View.Details;
lvListaVentas.Columns.Add("Ticket", 90,
HorizontalAlignment.Left);
lvListaVentas.Columns.Add("Fecha", 175,
HorizontalAlignment.Left);
lvListaVentas.Columns.Add("Caja", 50,
HorizontalAlignment.Center);
lvListaVentas.Columns.Add("Cajero", 175,
HorizontalAlignment.Left);
lvListaVentas.Columns.Add("Total", 150,
HorizontalAlignment.Right);
}


Luego agregamos este otro procedimiento:

private void ReadData(){
//Este procedimiento lee los datos
//que se tranferirán y los mostrará en forma de
//lista en el ListView
try{
string varSQL = "SELECT V.FOLIO, V.FECHA,"+
" V.ID_CAJA as CAJA, "+
" U.NOMBRE + ' ' +" +
" U.PATERNO + ' ' + U.MATERNO as CAJERO,"+
" SUM(DV.CANTIDAD * DV.P_UNITARIO) AS TOTAL" +
" FROM USERS U INNER "+
" JOIN (CAT_PRODUCTOS P INNER JOIN "+
" (VENTAS V INNER "+
" JOIN DETALLE_VENTAS DV ON V.FOLIO = DV.FOLIO) "+
" ON P.ID_PRODUCTO = DV.ID_PRODUCTO)"+
" ON U.USER_NAME = V.USER_NAME"+
" GROUP BY V.FOLIO, V.FECHA, V.ID_CAJA, U.NOMBRE,"+
" U.PATERNO, U.MATERNO";
double varTOTAL = 0;
//Si la conexion esta abierta la cerramos
//en caso contrario, la abrimos
OleDbConnection cnnReadData =
new OleDbConnection(Class.clsMain.CnnStr);
if (cnnReadData.State == ConnectionState.Open)
cnnReadData.Close();
else cnnReadData.Open();
int I = 0;
OleDbCommand cmdReadData =
new OleDbCommand(varSQL, cnnReadData);
OleDbDataReader drReadData;
drReadData = cmdReadData.ExecuteReader();
lvListaVentas.Items.Clear();
while (drReadData.Read()){
lvListaVentas.Items.
Add(drReadData["FOLIO"].ToString());
lvListaVentas.Items[I].
SubItems.Add(drReadData["FECHA"].ToString());
lvListaVentas.Items[I].
SubItems.Add(drReadData["CAJA"].ToString());
lvListaVentas.Items[I].
SubItems.Add(drReadData["CAJERO"].ToString());
lvListaVentas.Items[I].
SubItems.Add(String.Format("{0:C}",
drReadData["TOTAL"]));
varTOTAL += Convert.ToDouble(drReadData["TOTAL"]);
I += 1;
}
//Agregamos un registro más
if (I != 0) {
lvListaVentas.Items.Add("");
lvListaVentas.Items[I].SubItems.Add("");
lvListaVentas.Items[I].SubItems.Add("");
lvListaVentas.Items[I].SubItems.Add("Gran Total:");
lvListaVentas.Items[I].
SubItems.Add(String.Format("{0:C}", varTOTAL));
}
drReadData.Close();
cmdReadData.Dispose();
cnnReadData.Close();
}
catch (Exception ex){
MessageBox.Show(ex.Message, "Error",
MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}


Agregamos el siguiente código en el FormLoad:

Encabezados();
ReadData();


Listo!!!!

5 comentarios:

  1. hola si sigo el ejemplos y bueno no tengo ningun problema grave pero sigo con lo de administracion de usuario cuando creo uno nuevo me sobre escribew en el primero y no creo otro diferente debido a que se debe no entindo quisisera que me expliques gracias..... richardt_2000@hotmail.com

    ResponderEliminar
  2. a mi me pasa lo mismo
    k pasa

    alan_1382667@hotmail.com

    ResponderEliminar
  3. Alguien me podria facilitar la base de datos??

    S_Juanito@outlook.com

    ResponderEliminar
  4. Yo voy ya en el paso 6 y no le habia probado el programa cuando le doy el usuario y el password me manda que la base de datos no existe y le doy buscar y selecciono la base de datos y sigue diciendo que la base de datos no existe y dice fnLogin no se ha inicializado la propiedad ConnectionString alguien le sale lo mismo?

    ResponderEliminar