private void save() { string fecha = txtFecha.Text; double compra = Convert.ToDouble(txtCompra.Text); double venta = Convert.ToDouble(txtVenta.Text); if (edit) { int id = Convert.ToInt32(dgvTipoCambio.CurrentRow.Cells["ID"].Value); if (tipoCambio.edit(id, fecha, compra, venta)) { MessageBox.Show("Tipo de Cambio Actulizado", "Tipo de Cambio .::. Info", MessageBoxButtons.OK, MessageBoxIcon.Information); all(); clearText(); } else { MessageBox.Show("Tipo de Cambio NO Actulizado", "Tipo de Cambio .::. Info", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } else { DataTable dataTableFecha = new DataTable(); dataTableFecha = tipoCambio.show(fecha); if (dataTableFecha.Rows.Count <= 0) { if (tipoCambio.save(fecha, compra, venta)) { MessageBox.Show("Tipo de Cambio Guardado", "Tipo de Cambio .::. Info", MessageBoxButtons.OK, MessageBoxIcon.Information); all(); clearText(); } else { MessageBox.Show("Tipo de Cambio NO Guardado", "Tipo de Cambio .::. Info", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } else { MessageBox.Show("Tipo de Cambio con Fecha " + fecha + " ya existe\n Busquelo en la lista para modificarlo", "Tipo de Cambio .::. Info", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } }
private void dgvRegistroCompras_CellEndEdit(object sender, DataGridViewCellEventArgs e) { switch (e.ColumnIndex) { case 3: string fecha = null, compra = null, venta = null; DataTable dataTableTipoCambio = new DataTable(); if (isDate(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasFechaEmision"].Value.ToString())) { fecha = dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasFechaEmision"].Value.ToString(); dataTableTipoCambio = tipoCambio.show(fecha); if (dataTableTipoCambio.Rows.Count > 0) { compra = dataTableTipoCambio.Rows[0]["Compra"].ToString(); venta = dataTableTipoCambio.Rows[0]["Venta"].ToString(); } } else { MessageBox.Show("(" + dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasFechaEmision"].Value.ToString() + ") No es una fecha valida \nIngrese una fecha válida con formato: \ndd/MM/yyyy"); } if (venta == null) { MessageBox.Show("No se encontro un tipo de cambio para la fecha: " + fecha, "Tipo de Cambio .::. Info", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasTipoCambio"].Value = venta; } break; case 4: if (!isDate(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasFechaPago"].Value.ToString())) { MessageBox.Show("Ingrese una fecha valida con formato: dd/MM/yyyy"); } break; case 9: string ruc; string razonSocial; ruc = dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasProveedorNumeroDocumento"].Value.ToString(); razonSocial = proveedor.getSupplierName(ruc); if (razonSocial == null) { MessageBox.Show("No se encontro al proveedor con ruc: " + ruc, "Compras .::. Info", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { dgvRegistroCompras.Rows[e.RowIndex].Cells[e.ColumnIndex + 2].Value = razonSocial; } break; case 14: case 16: case 18: //Calculos de No BaseInmponible double baseImponible = 0, descuento = 0, igv = 0, noGravada = 0; if (!String.IsNullOrEmpty(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasBaseImponible"].Value.ToString() as String)) { baseImponible = Convert.ToDouble(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasBaseImponible"].Value.ToString()); } if (!String.IsNullOrEmpty(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasDescuento"].Value.ToString() as String)) { descuento = Convert.ToDouble(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasDescuento"].Value.ToString()); } dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasIgv"].Value = Math.Round((baseImponible + descuento) * 0.18, 2); if (!String.IsNullOrEmpty(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasIgv"].Value.ToString() as String)) { igv = Convert.ToDouble(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasIgv"].Value.ToString()); } if (!String.IsNullOrEmpty(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasNoGravada"].Value.ToString() as String)) { noGravada = Convert.ToDouble(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasNoGravada"].Value.ToString()); } dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasImporteTotal"].Value = baseImponible + descuento + igv + noGravada; double importe_total; importe_total = Convert.ToDouble(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasImporteTotal"].Value.ToString()); if (importe_total >= 3500) { if (String.IsNullOrEmpty(dgvRegistroCompras.Rows[e.RowIndex].Cells["BancarizacionFecha"].Value as String) || String.IsNullOrEmpty(dgvRegistroCompras.Rows[e.RowIndex].Cells["BancarizacionBco"].Value as String) || String.IsNullOrEmpty(dgvRegistroCompras.Rows[e.RowIndex].Cells["BancarizacionOperacion"].Value as String)) { MessageBox.Show("Ingrese Bancarización"); dgvRegistroCompras.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.Red; } else { dgvRegistroCompras.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.White; } } break; case 19: double tipoCambi = 0, dolares = 0; if (!String.IsNullOrEmpty(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasDolares"].Value.ToString() as String)) { dolares = Convert.ToDouble(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasDolares"].Value.ToString()); } if (!String.IsNullOrEmpty(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasTipoCambio"].Value.ToString() as String)) { tipoCambi = Convert.ToDouble(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasTipoCambio"].Value.ToString()); } dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasConversionDolares"].Value = Math.Round((dolares * tipoCambi), 2); break; case 12: case 23: string codigo; string cuenta; codigo = dgvRegistroCompras.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString(); cuenta = planContable.getAcount(codigo); if (cuenta == null) { MessageBox.Show("No se encontro una cuenta con código: " + codigo, "Compras .::. Info", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { dgvRegistroCompras.Rows[e.RowIndex].Cells[e.ColumnIndex + 1].Value = cuenta; } break; case 27: double comprasImporteTotal = 0; int comprasCodigo = 0; if (String.IsNullOrEmpty(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasImporteTotal"].Value.ToString() as String)) { MessageBox.Show("Ingrese un Importe Total"); } else { comprasImporteTotal = Convert.ToDouble(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasImporteTotal"].Value.ToString()); } if (String.IsNullOrEmpty(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasCodigo"].Value.ToString() as String)) { MessageBox.Show("Ingrese un código"); } else { comprasCodigo = Convert.ToInt32(dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasCodigo"].Value.ToString()); } DataTable dataTableDetraccion = new DataTable(); dataTableDetraccion = detraccion.show(comprasCodigo); if (dataTableDetraccion.Rows.Count > 0) { double detraccionProcentaje = Convert.ToDouble(dataTableDetraccion.Rows[0]["porcentaje"].ToString()); dgvRegistroCompras.Rows[e.RowIndex].Cells["comprasConstanciaReferencia"].Value = comprasImporteTotal * detraccionProcentaje; } else { MessageBox.Show("Ingrese un número entero (1 - 5)"); } break; } }