Exemplo n.º 1
0
        public void InsertarImportacion(string ruta)
        {
            try
            {
                List <Factura> lst = new List <Factura>();
                lst = ImportarDatos(ruta);
                bool excelVacio = false;
                bool idCodigo   = false;
                foreach (var item in lst)
                {
                    excelVacio = true;
                    Factura factura = new Factura();
                    factura.Idfactura             = Convert.ToInt32(item.Idfactura.ToString());
                    factura.Cantidad              = Convert.ToInt32(item.Cantidad.ToString());
                    factura.Costo                 = Convert.ToDouble(item.Costo.ToString());
                    factura.Valor_mano_obra       = Convert.ToDouble(item.Valor_mano_obra.ToString());
                    factura.Costo_total           = Convert.ToDouble(item.Costo_total.ToString());
                    factura.Descripcion_mano_obra = item.Descripcion_mano_obra.ToString();
                    factura.Producto              = item.Producto.ToString();


                    //Esto es para validar que no se ingrese un registro con codigo ya existente en la lista
                    Queue <Factura> cola = new Queue <Factura>();
                    cola = lista.Mostrar();

                    if (cola.Count == 0)
                    {
                        lista.InsertarF(factura);
                    }
                    else
                    {
                        if (cola.Contains(item))
                        {
                        }
                        foreach (var item2 in cola)
                        {
                            if (item2.Idfactura == factura.Idfactura)
                            {
                                idCodigo = true;
                                break;
                            }
                        }
                        if (idCodigo == false)
                        {
                            lista.InsertarF(factura);
                        }
                    }
                }

                if (ruta != "..\\..\\Datos\\facturas.xlsx")
                {
                    if (excelVacio == true && idCodigo == false)
                    {
                        ActualizarDataGrid(lista);
                        MessageBox.Show("Archivo importado correctamente", "¡Enhorabuea!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        //Actualizamos el archivo
                        //actualizamos el archivo de inventario
                        string nombrearchivo = "..\\..\\Datos\\facturas.xlsx";
                        try
                        {
                            if (File.Exists(nombrearchivo))
                            {
                                File.Delete(nombrearchivo);
                                Exportar(dgvmostrar, nombrearchivo);
                            }
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show("Error " + ex.Message);
                        }
                    }
                    else if (excelVacio == true && idCodigo == true)
                    {
                        ActualizarDataGrid(lista);
                        MessageBox.Show("Archivo importado correctamente, pero algunos registros se omitieron porque el codigo ya existe", "¡Enhorabuea!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        MessageBox.Show("El archivo agregado no contiene datos", "¡Cuidado!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
                else
                {
                    ActualizarDataGrid(lista);
                }
            }
            catch (Exception Ex)
            {
                MessageBox.Show("Error al importar  " + Ex.Message, "¡Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Exemplo n.º 2
0
        private void btnEditar_Click(object sender, EventArgs e)
        {
            //validaciones
            BorrarMensaje();
            if (validaciones())
            {
                if (validador != -1)
                {
                    try
                    {
                        Factura factura = new Factura();
                        codigo                        = Convert.ToInt32(contid.Text);
                        factura.Idfactura             = Convert.ToInt32(contid.Text);
                        factura.Cantidad              = int.Parse(txtCantidad.Text);
                        factura.Costo                 = Convert.ToDouble(txtCrepuesto.Text);
                        factura.Valor_mano_obra       = Double.Parse(txtValormano.Text);
                        factura.Costo_total           = Math.Round((factura.Costo * factura.Cantidad) + factura.Valor_mano_obra, 2);
                        factura.Descripcion_mano_obra = txtdescripcion.Text;
                        factura.Producto              = cmbProductos.Text;
                        //Esto lo tenía para ver que el dato correcto se estaba borrando  MessageBox.Show(dui);

                        //Creo un nuevo objeto del tipo lista
                        lista.Editar(codigo, factura);
                        //Reinicio los validadores
                        ActualizarDataGrid(lista);
                        reseteo();
                        //Hago que el validador sea nuevamente -1 y el dui le doy un valor nulo
                        validador          = -1;
                        codigo             = 0;
                        btnagregar.Enabled = true;
                        btnEditar.Enabled  = false;

                        //Actualizamos el archivo
                        //actualizamos el archivo de inventario
                        string nombrearchivo = "..\\..\\Datos\\facturas.xlsx";
                        try
                        {
                            if (File.Exists(nombrearchivo))
                            {
                                File.Delete(nombrearchivo);
                                Exportar(dgvmostrar, nombrearchivo);
                            }
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show("Error " + ex.Message);
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                }
                else
                {
                    MessageBox.Show("Debe seleccionar una row primero");
                }
            }
            else
            {
                MessageBox.Show("Debe llenar todos los campos", "¡Cuidado!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
        }
Exemplo n.º 3
0
        private void btnGuardarA_Click(object sender, EventArgs e)
        {
            SLDocument sl = new SLDocument();

            int     iC    = 1;
            SLStyle style = new SLStyle();

            style.Font.Bold = true;

            foreach (DataGridViewColumn column in dgvmostrar.Columns)
            {
                sl.SetCellValue(1, iC, column.HeaderText.ToString());
                sl.SetCellStyle(1, iC, style);
                iC++;
            }

            int contIdFac = 0;

            foreach (DataGridViewRow row in dgvmostrar.Rows)
            {
                sl.SetCellValue(contIdFac, 1, Convert.ToInt32(row.Cells[0].Value.ToString()));
                contIdFac++;
            }

            //ASIGNAMOS EL VALOR DE ID DE MANERA CORRECTA
            contid.Text = Convert.ToString(contIdFac + 1);



            //validaciones
            BorrarMensaje();
            if (validaciones())
            {
                //creo un objeto de la clase persona y guardo a través de las propiedades
                try
                {
                    //Faltan validaciones
                    //Ahorita no las he activado porque sino hay que ingresar toooodos estos datos y es tedioso para hacer pruebas

                    //Creo un objeto del tipo trabajador y lleno los datos de este

                    Factura factura = new Factura();
                    factura.Idfactura             = Convert.ToInt32(contid.Text);
                    factura.Cantidad              = int.Parse(txtCantidad.Text);
                    factura.Costo                 = double.Parse(txtCrepuesto.Text);
                    factura.Valor_mano_obra       = double.Parse(txtValormano.Text);
                    factura.Costo_total           = Math.Round((factura.Costo * factura.Cantidad) + factura.Valor_mano_obra, 2);
                    factura.Descripcion_mano_obra = txtdescripcion.Text;
                    factura.Producto              = cmbProductos.Text;
                    //Si el validador == -1 significa que un dato será INGRESADO

                    //De ser así, ocupo el método InsertarF y le mando el objeto de tipo trabajador
                    lista.InsertarF(factura);
                    //Actualizo el datagrid mandandole la lista con el nuevo dato ingresado
                    ActualizarDataGrid(lista);

                    //Limpio pantalla
                    reseteo();

                    //Actualizamos el archivo
                    //actualizamos el archivo de inventario
                    string nombrearchivo = "..\\..\\Datos\\facturas.xlsx";
                    try
                    {
                        if (File.Exists(nombrearchivo))
                        {
                            File.Delete(nombrearchivo);
                            Exportar(dgvmostrar, nombrearchivo);
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("Error " + ex.Message);
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }