Este es mi codigo entero..... porsiacaso estoy usando como DB a un EXCEL, el ultimo codigo es el que me trae problemas...
Código C#:
Ver originalusing System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
namespace Demo06
{
public partial class frmProforma : Form
{
private DataView dvwProducto;
public frmProforma()
{
InitializeComponent();
}
private void cargarDatos(object sender, EventArgs e)
{
OleDbConnection con = new OleDbConnection("provider=microsoft.jet.oledb.4.0;data source=D:\\PROGRAMACION\\Proyectos\\Proforma\\listaprecio.xls;extended properties=excel 8.0");
con.Open();
//OleDbCommand cmd1 = new OleDbCommand("Select mes,año,producto,proveedor,udm,codigo,precio_soles,precio_dolares From [varios$]", con);
OleDbDataAdapter dap1 = new OleDbDataAdapter("Select mes,año,producto,proveedor,udm,codigo,precio_soles,precio_dolares From [varios$]", con);
//OleDbDataReader drd1 = cmd1.ExecuteReader();
DataSet dst = new DataSet();
dap1.Fill(dst);
dvwProducto = dst.Tables[0].DefaultView;
dgvProducto.DataSource = dvwProducto;
con.Close();
}
private void cargarProductos(object sender, EventArgs e)
{
dvwProducto.RowFilter = "producto Like '" + txtProducto.Text + "%'";
//dvwCliente.RowFilter = "CompanyName Like '" + txtCliente.Text + "%'";
}
private void agregarProducto(object sender, DataGridViewCellEventArgs e)
{
txtProductoShow.Text = dgvProducto.CurrentRow.Cells[2].Value.ToString();
txtPreU.Text = dgvProducto.CurrentRow.Cells[6].Value.ToString();
}
private void cerrar(object sender, EventArgs e)
{
this.Close();
}
private void credito(object sender, EventArgs e)
{
MessageBox.Show("Programa creado por Eduardo Rodriguez para su viejo","Creditos");
}
private void agregarAproforma(object sender, EventArgs e)
{
if (txtProductoShow.Text == "")
{
MessageBox.Show("No se ha seleccionado ningun producto, porfavor vuelva a seleccionar el producto:\n\n-Si el producto no se llegara agregar, haga doble click en la respectiva celda\n-Si el producto sigue sin ser agregado, cierre la aplicacion y vuelvalo a ejecutarlo", "ADVERTENCIA");
}
else
{
if (txtCantidad.Text == "")
{
MessageBox.Show("Usted no ha ingresado la cantidad", "ADVERTENCIA");
txtCantidad.Focus();
}else{
double precioA = 0;
precioA = double.Parse(txtPreU.Text) * double.Parse(txtCantidad.Text);
dgwProforma.Rows.Add(txtProductoShow.Text, txtCantidad.Text, txtPreU.Text, precioA.ToString(), "Eliminar");
txtCantidad.Clear();
txtPreU.Clear();
txtProductoShow.Clear();
DataGridViewCell dgc;
double subtotal = 0;
for (int i = 0; i < dgwProforma.Rows.Count; i++)
{
subtotal = subtotal + Convert.toDouble(dgwProforma.Rows[i].Cells[6]);
subtotal += dgc;
}
txtSubtotal.Text = subtotal.ToString();
txtIgv.Text = (subtotal * 0.19).ToString();
txtTotal.Text = (subtotal + (subtotal * 0.19)).ToString();
}
}
}
}
}
El error que me sale este :