public void ModificarOperacion(Cgasto obj, Cgasto objnuevo, Ccaja_diaria caja) { objnuevo.Numero = obj.Numero; Cdatos_operaciones.ModificarGasto(objnuevo, objnuevo.FORMAPAGO()); caja.EliminarGasto(obj); caja.AgregarGasto(objnuevo); }
private void btn_Guardar_Click(object sender, EventArgs e) { try{ Oconcepto = (Cconcepto)cb_concepto.SelectedItem; if (Gasto) { Cgasto obj = new Cgasto(Oconcepto, Convert.ToDecimal(txt_importe.Text), (Cforma_pago)cb_FormasPagos.SelectedValue); if (Ooperacion == null) { if (obj.FORMAPAGO().Altera_caja) { if (ObjCajaDiaria.Efec_final >= obj.Importe) { adm.AgregarOperacion(obj, ObjCajaDiaria); } else { throw new Exception("No tiene suficiente plata en caja como para pagar ese gasto"); } } else { adm.AgregarOperacion(obj, ObjCajaDiaria); } } else { if (obj.FORMAPAGO().Altera_caja) { if (ObjCajaDiaria.Efec_final < (obj.Importe - Ooperacion.Importe)) { throw new Exception("No tiene suficiente plata en caja como para pagar ese gasto"); } } adm.ModificarOperacion((Cgasto)Ooperacion, obj, ObjCajaDiaria); } if (cb_registrar.Checked) { Ctrl_cuentas_corrientes admCuentas = Ctrl_cuentas_corrientes.ClaseActiva(); Cpago_credito objcu = new Cpago_credito(obj.Concepto, obj.Importe, DateTime.Today, true); Cproveedor objproveedor = ((Cproveedor)Opersona); admCuentas.CargarAltasDebitosyCreditos(objproveedor.DevolverCuentaCorriente()); admCuentas.AgregarOperacion(objcu, objproveedor.DevolverCuentaCorriente()); admCuentas.AgregarReferiaEntreOperacion(objcu, obj); } else { if (Opersona != null) { Cgasto ogasto = (Cgasto)Ooperacion; if (obj.Importe != ogasto.Credito().Importe) { Ccuenta_corriente cuenta = Opersona.DevolverCuentaCorriente(); ogasto.Credito().Importe = obj.Importe; cuenta.ModificarCredito(cuenta.BuscarCredito(ogasto.Credito().Numero), obj.Importe); Ctrl_cuentas_corrientes admCuentas = Ctrl_cuentas_corrientes.ClaseActiva(); admCuentas.ModificarOperacion(ogasto.Credito()); } } } } else { Ccobro obj = new Ccobro(Oconcepto, Convert.ToDecimal(txt_importe.Text), (Cforma_pago)cb_FormasPagos.SelectedValue); if (Ooperacion == null) { adm.AgregarOperacion(obj, ObjCajaDiaria); } else { adm.ModificarOperacion((Ccobro)Ooperacion, obj, ObjCajaDiaria); } if (cb_registrar.Checked) { Ctrl_cuentas_corrientes admCuentas = Ctrl_cuentas_corrientes.ClaseActiva(); Crecibo_debito objc = new Crecibo_debito(obj.Concepto, obj.Importe, DateTime.Today, true); Ccliente objcliente = ((Ccliente)Opersona); admCuentas.CargarAltasDebitosyCreditos(objcliente.DevolverCuentaCorriente()); admCuentas.AgregarOperacion(objc, objcliente.DevolverCuentaCorriente()); admCuentas.AgregarReferiaEntreOperacion(objc, obj); } else { if (Opersona != null) { Ccobro ocobro = (Ccobro)Ooperacion; if (obj.Importe != ocobro.Debito().Importe) { Ccuenta_corriente cuenta = Opersona.DevolverCuentaCorriente(); ocobro.Debito().Importe = obj.Importe; cuenta.ModificarDebito(cuenta.BuscarDebito(ocobro.Debito().Numero), obj.Importe); Ctrl_cuentas_corrientes admCuentas = Ctrl_cuentas_corrientes.ClaseActiva(); admCuentas.ModificarOperacion(ocobro.Debito()); } } } } Close(); } catch (Exception ex) { Frm_confirmacion frm = new Frm_confirmacion(ex.Message, "Error", "Aceptar"); frm.ShowDialog(); } }
static public void Agregar(Cgasto obj, Ccaja_diaria caja) { try { string cmdtxt = "INSERT INTO GASTOS (id,id_concepto,importe,id_caja_diaria,id_forma_pago) VALUES (" + obj.Numero + "," + obj.ID_Concepto() + "," + ((obj.Importe.ToString()).Replace(",", ".")) + "," + caja.ID + "," + (obj.FORMAPAGO()).ID + ")"; cDatos.ActualizarDatos(cmdtxt); Actualizar = true; } catch { throw new ArgumentException("Error al cargar la operacion"); } }