private void dataGridViewResultadosFiltrar_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (e.ColumnIndex == 8) // si se presionó sobre la columna de visualizar asiento { if (e.RowIndex != this.dataGridViewResultadosFiltrar.Rows.Count) //valida que no se intenta anular la fila creadora. { int numeroAsiento = Int32.Parse(this.dataGridViewResultadosFiltrar["NumeroAsiento", e.RowIndex].Value.ToString()); //logica a buscar las cuentas de la empresa CuentaAsiento cuenta = new CuentaAsiento(numeroAsiento, compania); cuenta.ShowDialog(); } } else if (e.ColumnIndex == 9)// si se presionó sobre la columna que anula asientos { DialogResult dialogConfirmarAnulacion = MessageBox.Show("Está seguro que desea anular este asiento, esta operación es irreversible", "Advertencia", MessageBoxButtons.YesNo); if (dialogConfirmarAnulacion == DialogResult.Yes) { //instrucciones si se presionó yes int numAsiento = Int32.Parse(this.dataGridViewResultadosFiltrar["NumeroAsiento", e.RowIndex].Value.ToString()); LogicaAsientos.anularAsiento(numAsiento, compania); MessageBox.Show("Asiento anulado con éxito."); this.dataGridViewResultadosFiltrar.Rows.Clear(); cargarAsientos(); //anular asiento } } }
private void cargarAsientos() { listaAsientos = LogicaAsientos.obtenerAsientos(compania); foreach (Asiento asiento in listaAsientos) { this.dataGridViewResultadosFiltrar.Rows.Add(); int numFila = dataGridViewResultadosFiltrar.Rows.Count - 1; this.dataGridViewResultadosFiltrar["NumeroAsiento", numFila].Value = asiento.Codigo; this.dataGridViewResultadosFiltrar["Detalle", numFila].Value = asiento.Detalle; this.dataGridViewResultadosFiltrar["DebeLocal", numFila].Value = asiento.TotalDebeLocal; this.dataGridViewResultadosFiltrar["HaberLocal", numFila].Value = asiento.TotalHaberLocal; this.dataGridViewResultadosFiltrar["DebeSistema", numFila].Value = asiento.TotalDebeSistema; this.dataGridViewResultadosFiltrar["HaberSistema", numFila].Value = asiento.TotalHaberSistema; this.dataGridViewResultadosFiltrar["FechaDocumento", numFila].Value = asiento.FechaDocumento; this.dataGridViewResultadosFiltrar["FechaContabilizacion", numFila].Value = asiento.FechaContabilizacion; } }
public CuentaAsiento(int numeroAsiento, string compania) { InitializeComponent(); listaPartidas = LogicaAsientos.obtenerPartidas(numeroAsiento, compania); foreach (Partida partida in listaPartidas) { this.dtGrdVwCuentas.Rows.Add(); int numFila = dtGrdVwCuentas.Rows.Count - 1; this.dtGrdVwCuentas["Cuenta", numFila].Value = partida.Cuenta; this.dtGrdVwCuentas["Moneda", numFila].Value = partida.Moneda; this.dtGrdVwCuentas["Debe", numFila].Value = partida.Debe; this.dtGrdVwCuentas["Haber", numFila].Value = partida.Haber; this.dtGrdVwCuentas["DebeLocal", numFila].Value = partida.DebeLocal; this.dtGrdVwCuentas["HaberLocal", numFila].Value = partida.HaberLocal; this.dtGrdVwCuentas["DebeSistema", numFila].Value = partida.DebeSistema; this.dtGrdVwCuentas["HaberSistema", numFila].Value = partida.HaberSistema; } }
public AsientosDiario(string Compania) { this.compania = Compania; InitializeComponent(); this.numAsiento = LogicaAsientos.obtenerNuevoNumeroAsiento(compania); this.txtNumAsiento.Text = this.numAsiento.ToString(); this.listaCuentas = LogicaCuentas.cargarCuentasDisponiblesAsiento(compania); this.cmbCuenta.DisplayMember = "Nombre"; this.cmbCuenta.ValueMember = "ID"; this.cmbCuenta.SelectedText = "Nombre"; this.cmbCuenta.DataSource = this.listaCuentas; this.cuentasAsiento = new DataTable();//Datatable que se enviará cuando se guarda el asiento this.cuentasAsiento.TableName = "@Cuentas"; this.cuentasAsiento.Columns.Add("IdCuenta", typeof(int)); this.cuentasAsiento.Columns.Add("Debe", typeof(double)); this.cuentasAsiento.Columns.Add("Haber", typeof(double)); this.cuentasAsiento.Columns.Add("Moneda", typeof(string)); }
private void ButtonGuardarCerrar_Click(object sender, EventArgs e) { if (this.cuentasAsiento.Rows.Count > 1) { try { LogicaAsientos.crearAsiento(cuentasAsiento, compania, this.numAsiento, this.txtDetalle.Text); MessageBox.Show("Asiento creado con éxito."); this.cuentasAsiento.Clear(); this.DataGridViewAsiento.Rows.Clear(); this.Dispose(); } catch (Exception ex) { MessageBox.Show(ex.Message); } } else { MessageBox.Show("Ingrese al menos dos cuentas para realizar el asiento"); } }
public void GuardarAsiento(DataTable tabla, string compania, int numAsiento, string detalle) { LogicaAsientos.crearAsiento(tabla, compania, numAsiento, detalle); }