public ActionResult Anular(cp_orden_pago_Info model)
        {
            string mensaje = "";

            if (bus_cancelacion.si_existe_cancelacion(model.IdEmpresa, model.IdOrdenPago))
            {
                mensaje = "La orden de pago tiene cancelaciones no se puede anular";
                cargar_combos(model.IdEmpresa);
                cargar_combos_detalle();
                ViewBag.mensaje = mensaje;
                return(View(model));
            }

            bus_orden_pago        = new cp_orden_pago_Bus();
            model.IdUsuarioUltAnu = SessionFixed.IdUsuario.ToString();
            if (bus_orden_pago.anularDB(model))
            {
                return(RedirectToAction("Index"));
            }
            else
            {
                cargar_combos(model.IdEmpresa);
                cargar_combos_detalle();
                return(View(model));
            }
        }
 public bool anularDB(ro_NominasPagosCheques_Info info)
 {
     try
     {
         foreach (var item in info.detalle)
         {
             item.info_orden_pago                  = new cp_orden_pago_Info();
             item.info_orden_pago.IdEmpresa        = info.IdEmpresa;
             item.info_orden_pago.IdOrdenPago      = item.IdOrdenPago;
             item.info_orden_pago.info_comprobante = bus_comprobante.get_info(item.IdEmpresa, item.IdTipoCbte, item.IdCbteCble);
             item.info_orden_pago.info_comprobante.lst_ct_cbtecble_det = bus_comprobante_det.get_list(item.IdEmpresa, item.IdTipoCbte, item.IdCbteCble);
             bus_orden.anularDB(item.info_orden_pago);
         }
         return(odata.anularDB(info));
     }
     catch (Exception)
     {
         throw;
     }
 }