public void DarBajaoAlta(Cpago_credito obj, Ccuenta_corriente objcuenta, bool alta)
 {
     Cdatos_operaciones.Modificar("[PAGOS_CREDITOS]", obj, alta, obj.Concepto);
     if (alta)
     {
         objcuenta.Creditos.Remove(obj);
         obj.Alta = alta;
         objcuenta.AgregarCredito(obj);
     }
     else
     {
         objcuenta.EliminarCredito(obj);
     }
 }
 public void AgregarOperacion(Cpago_credito objcredito, Ccuenta_corriente objcuenta)
 {
     if (ultimoCredito == 0)
     {
         ultimoCredito = Cdatos_operaciones.DevolverUltimo("[PAGOS_CREDITOS]");
     }
     try
     {
         ultimoCredito++;
         objcredito.Numero = ultimoCredito;
         Cdatos_operaciones.Agregar("[PAGOS_CREDITOS]", objcredito, objcuenta, objcredito.Concepto);
         objcuenta.AgregarCredito(objcredito);
         Cdatos_cuentas_corrientes.Modificar(objcuenta);
     }
     catch
     {
         AgregarOperacion(objcredito, objcuenta);
     }
 }
 public void CargarAltasDebitosyCreditos(Ccuenta_corriente obj)
 {
     if (obj.Creditos == null)
     {
         decimal saldoActual = obj.Saldo;
         obj.Saldo = 0;
         DataTable DT = Cdatos_operaciones.DevolverDebitos(obj, true);
         obj.Debitos = new List <Crecibo_debito>();
         Crecibo_debito oDebito;
         foreach (DataRow DR in DT.Rows)
         {
             oDebito = new Crecibo_debito(Convert.ToInt32(DR[0]), DR[1].ToString(), Convert.ToDecimal(DR[2]), Convert.ToDateTime(DR[3]), true);
             obj.AgregarDebito(oDebito);
             if (DR[4].ToString() != "")
             {
                 oDebito.Compra(new Ccompra(Convert.ToInt32(DR[4]), Convert.ToDecimal(DR[5]), Convert.ToDecimal(DR[6]), Convert.ToDecimal(DR[7]), Convert.ToDateTime(DR[8])));
             }
         }
         DT           = Cdatos_operaciones.DevolverCreditos(obj, true);
         obj.Creditos = new List <Cpago_credito>();
         Cpago_credito     oCredito = null;
         int               index    = 0;
         Cpago             oPago;
         Ctrl_formas_pagos adm = Ctrl_formas_pagos.ClaseActiva();
         foreach (DataRow DR in DT.Rows)
         {
             if (index == 0)
             {
                 oCredito = new Cpago_credito(Convert.ToInt32(DR[0]), DR[1].ToString(), Convert.ToDecimal(DR[2]), Convert.ToDateTime(DR[3]), true);
                 //obj.Creditos.Insert(index, oCredito);
                 obj.AgregarCredito(oCredito);
                 index++;
                 if (DR[4].ToString() != "")
                 {
                     oPago = new Cpago(adm.BuscarPorID(Convert.ToInt32(DR[11])), Convert.ToDecimal(DR[8]), DR[9].ToString(), Convert.ToDecimal(DR[10]));
                     oCredito.Venta(new Cventa(Convert.ToInt32(DR[4]), Convert.ToDecimal(DR[6]), Convert.ToDecimal(DR[7]), Convert.ToDecimal(DR[6]) - Convert.ToDecimal(DR[7]), oPago));
                     oCredito.ID_Caja_Diaria(Convert.ToInt32(DR[5]));
                 }
             }
             else
             {
                 if (obj.Creditos[index - 1].Numero != Convert.ToInt32(DR[0]))
                 {
                     oCredito = new Cpago_credito(Convert.ToInt32(DR[0]), DR[1].ToString(), Convert.ToDecimal(DR[2]), Convert.ToDateTime(DR[3]), true);
                     //obj.Creditos.Insert(index, oCredito);
                     obj.AgregarCredito(oCredito);
                     index++;
                     if (DR[4].ToString() != "")
                     {
                         oPago = new Cpago(adm.BuscarPorID(Convert.ToInt32(DR[11])), Convert.ToDecimal(DR[8]), DR[9].ToString(), Convert.ToDecimal(DR[10]));
                         oCredito.Venta(new Cventa(Convert.ToInt32(DR[4]), Convert.ToDecimal(DR[6]), Convert.ToDecimal(DR[7]), Convert.ToDecimal(DR[6]) - Convert.ToDecimal(DR[7]), oPago));
                         oCredito.ID_Caja_Diaria(Convert.ToInt32(DR[5]));
                     }
                 }
                 else
                 {
                     oPago = new Cpago(adm.BuscarPorID(Convert.ToInt32(DR[11])), Convert.ToDecimal(DR[8]), DR[9].ToString(), Convert.ToDecimal(DR[10]));
                     oCredito.Venta().Pago2 = oPago;
                 }
             }
         }
         if (saldoActual != obj.Saldo)
         {
             Modificar(obj);
         }
     }
 }