Example #1
0
 public bool Agregar(Cotizacion cotizacion)
 {
     try
     {
         daCotizacion = new daCotizacion();
         daCotizacion.IniciarTransaccion();
         if (string.IsNullOrEmpty(cotizacion.numero))
         {
             cotizacion.numero = generarNumeracion(daCotizacion, cotizacion.numeracion.idNumeracion);
         }
         cotizacion.fechaCreacion = DateTime.Now;
         daCotizacion.Agregar(cotizacion);
         daCotizacionGrupo = new daCotizacionGrupo();
         daCotizacionGrupo.AsignarSesion(daCotizacion);
         daCotizacionItem = new daCotizacionItem();
         daCotizacionItem.AsignarSesion(daCotizacion);
         daCotizacionServicio = new daCotizacionServicio();
         daCotizacionServicio.AsignarSesion(daCotizacion);
         foreach (CotizacionGrupo grupo in cotizacion.grupos)
         {
             grupo.idCotizacion = cotizacion.idCotizacion;
             daCotizacionGrupo.Agregar(grupo);
             foreach (CotizacionItem item in grupo.items)
             {
                 item.idCotizacionGrupo = grupo.idCotizacionGrupo;
                 daCotizacionItem.Agregar(item);
                 foreach (CotizacionServicio servicio in item.servicios)
                 {
                     servicio.idCotizacionItem = item.idCotizacionItem;
                     daCotizacionServicio.Agregar(servicio);
                 }
             }
         }
         daCotizacion.ConfirmarTransaccion();
     }
     catch (Exception)
     {
         daCotizacion.AbortarTransaccion();
         throw;
     }
     finally
     {
         daCotizacion.CerrarSesion();
     }
     return true;
 }