public int AgregarPrestamo(Prestamo pres)
 {
     if (pres.Tipo == string.Empty)
         throw new ValidationException("Indique el tipo de Financiamiento");
     if (pres.Cantidad   <= 0)
         throw new ValidationException("Indique el monto a Financiar");
     _mapeoFinanciamiento.Prestamos.InsertOnSubmit(pres);
     _mapeoFinanciamiento.SubmitChanges();
     return pres.Clave;
 }
 partial void UpdatePrestamo(Prestamo instance);
 partial void DeletePrestamo(Prestamo instance);
 partial void InsertPrestamo(Prestamo instance);
		private void detach_Prestamos(Prestamo entity)
		{
			this.SendPropertyChanging();
			entity.Usuario = null;
		}
		private void attach_Prestamos(Prestamo entity)
		{
			this.SendPropertyChanging();
			entity.Usuario = this;
		}
		private void detach_Prestamos(Prestamo entity)
		{
			this.SendPropertyChanging();
			entity.Financiamiento = null;
		}
 private void botonGuardar_Click(object sender, EventArgs e)
 {
     try
     {
         if (!ClsVerificarCaja.CajaEstado())
         {
             MessageBox.Show("La Caja del Dia de hoy ya se ha cerrado\n SISTEMA BLOQUEADO", "Caja Cerrada", MessageBoxButtons.OK, MessageBoxIcon.Error);
             Application.Exit();
         }
         if (_cveprestamo > 0)
         {
             if (
                 MessageBox.Show("El Prestamo se ha registrado desea volver a Imprimir documentos", "Reimpresión",
                                 MessageBoxButtons.YesNo) !=
                 DialogResult.Yes)
             {
                 ImprimirDocumentos();
                 return;
             }
         }
         if (ClsVerificarCaja.SaldoEnCaja() >
             ((decimal)txtCantidadFinancimiento.EditValue + Convert.ToDecimal(txtEnganche.EditValue)))
         {
             Prestamo pres = new Prestamo
                 {
                     CveCliente = GuadarCliente(),
                     CveTipoFinancimiento = _cveTipoFinanciamiento,
                     FolioFinanciamiento = Convert.ToInt32(txtFolioFinanciamiento.EditValue),
                     Cantidad = Convert.ToDecimal(txtCantidadFinancimiento.EditValue),
                     Enganche = Convert.ToDecimal(txtEnganche.EditValue),
                     Saldo =
                         Convert.ToDecimal(txtCantidadFinancimiento.EditValue) -
                         Convert.ToDecimal(txtEnganche.EditValue),
                     CveUsuario = Convert.ToInt32(new clsModificarConfiguracion().configGetValue("IdUsuarioApp")),
                     FechaPrestamo = dtpFechaPrestamo.DateTime,
                     Tipo = cboTipoFinanciamiento.Text,
                     Observacion = txtObservacion.Text,
                     Interes = Convert.ToDecimal(txtPorcInteres.EditValue),
                     Recargo = Convert.ToDecimal(txtPorcRecargo.EditValue),
                     Meses = Convert.ToInt32(txtMeses.EditValue),
                     Estado = "Vigente",
                 };
             _cveprestamo = new LogicaNegocios.LogicaPrestamos().AgregarPrestamo(pres);
             if (_dtReferencias.Rows.Count > 0)
                 GuardarReferencias(_cveprestamo);
             MessageBox.Show("Prestamo Guardado", Application.ProductName);
             new ManejadorControles().DesectivarTextBox(gpoContenedor, false);
             ImprimirDocumentos();
         }
         else
             MessageBox.Show("Lo disponible en caja es menor a lo que desea financiar", Application.ProductName);
     }
     catch (ValidationException vex)
     {
         MessageBox.Show(vex.Message, "Validación de datos");
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, Application.ProductName);
     }
 }