public static string[] obtener_items_pendientes(string id) { solicitud_materiales sol = new solicitud_materiales(); sol.id_solicitud = id; sol=sol.obtenerSolicitud(); List<itemSolicitudMateriales> listaItems = sol.ObtenerItemsDeSolicitudMateriales(); string texto_item = ""; for(int i=0;i<listaItems.Count;i++) { if (!listaItems[i].fuePedido(id)) { texto_item += listaItems[i].id_partida + "|" + listaItems[i].nombre_item + "|" + listaItems[i].unidad + "|" + listaItems[i].cantidad + "|" + listaItems[i].id_faena + "|" + listaItems[i].nombre_item_partida + "|" + listaItems[i].numero_item_partida + ";"; } } texto_item = texto_item.TrimEnd(';'); string[] items = texto_item.Split(';'); if(items.Length==1 && items[0].Equals(""))items = new string[0]; return items; }
public static List<solicitud_materiales> obtenerTodasSolicitudesRevisadasNoProcesadas() { List<solicitud_materiales> Solicitudes = new List<solicitud_materiales>(); SqlConnection cnx = conexion.crearConexion(); SqlCommand cmd = new SqlCommand(); cmd.Connection = cnx; cmd.CommandText = "SELECT * FROM solicitudes_materiales WHERE nombre_revision_oficina IS NOT NULL ORDER BY fecha ASC"; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { solicitud_materiales Solicitud = new solicitud_materiales(); Solicitud.id_solicitud = (string)dr["id_solicitud"]; Solicitud = Solicitud.obtenerSolicitud(); List<itemSolicitudMateriales> detalleSol = Solicitud.ObtenerItemsDeSolicitudMateriales(); bool agregar = false; for (int i = 0; i < detalleSol.Count; i++) { if (!detalleSol[i].fuePedido(Solicitud.id_solicitud)) agregar = true; } if (agregar) { Solicitudes.Add(Solicitud); } } cnx.Close(); return Solicitudes; }
public ActionResult revisar(string id_solicitud) { if (Session["nombre"] != null) { solicitud_materiales Solicitud = new solicitud_materiales(); solicitud_materiales TempSolicitud = new solicitud_materiales(); faena laFaena = new faena(); Solicitud.id_solicitud = id_solicitud; TempSolicitud = Solicitud.obtenerSolicitud(); ViewData["unidad"] = items.obtenerTodasUnidades(); ViewData["solicitud"] = TempSolicitud;//Solicitud.obtenerSolicitud(); ViewData["itemSolicitud"] = Solicitud.ObtenerItemsDeSolicitudMateriales(); //ViewData["items"] = items.obtenerTodos(); ViewBag.rolSession=Session["rol"].ToString(); ViewBag.IDFAENA = TempSolicitud.id_faena; ViewBag.fecha_solicitud = TempSolicitud.fecha.ToString("d"); ViewBag.solicitante = TempSolicitud.nombre_solicitante; ViewBag.nombre_revision_oficina = TempSolicitud.nombre_revision_oficina; ViewBag.fecha_revision_oficina = TempSolicitud.fecha_revision_oficina.ToString("d"); laFaena.nombre = TempSolicitud.id_faena; ViewData["partidasFaena"] = new faena().obtenerPartidas(TempSolicitud.id_faena); ViewBag.Presupuesto = Solicitud.obtenerPresupuestoPartidaFaenaSolicitud(); return View(); } else { return RedirectToAction("Index", "Home"); } }
public static string[] obtenerTodasSolicitudesFaenas(string faena) { string solicitudes = ""; SqlConnection cnx = conexion.crearConexion(); SqlCommand cmd = new SqlCommand(); cmd.Connection = cnx; cmd.CommandText = "select * from solicitudes_materiales where id_faena='" + faena + "' and nombre_revision_oficina IS NOT NULL ORDER BY fecha ASC"; cmd.CommandType = CommandType.Text; SqlDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { solicitud_materiales Solicitud = new solicitud_materiales(); Solicitud.id_solicitud = (string)dr["id_solicitud"]; Solicitud = Solicitud.obtenerSolicitud(); List<itemSolicitudMateriales> detalleSol = Solicitud.ObtenerItemsDeSolicitudMateriales(); bool agregar = false; for (int i = 0; i < detalleSol.Count; i++) { if (!detalleSol[i].fuePedido(Solicitud.id_solicitud)) agregar = true; } if (agregar) { // Solicitudes.Add(Solicitud); solicitudes += Solicitud.id_solicitud + ";"; } // solicitudes += (string)dr["id_solicitud"] + ";"; } cnx.Close(); solicitudes = solicitudes.TrimEnd(';'); string[] items = solicitudes.Split(';'); return items; }
public FileContentResult VistaReporte_Solicitud(string idSolicitudMateriales) { // Nota los datos creados en el dataset deben ser con el mismo nombre que tengan los Datos del Modelo // Nota los datos creados en el dataset deben ser con el mismo nombre que tengan los Datos del Modelo LocalReport reporte_local = new LocalReport(); // pasa la ruta donde se encuentra el reporte reporte_local.ReportPath = Server.MapPath("~/Report/solicitudMateriales.rdlc"); // creamos un recurso de datos del tipo report ReportDataSource conjunto_datos = new ReportDataSource(); ReportDataSource conjunto_datos2 = new ReportDataSource(); // le asginamos al conjuto de datos el nombre del datasource del reporte conjunto_datos.Name = "DataSet1"; conjunto_datos2.Name = "DataSet2"; List<solicitudMaterialesInforme> solicitudesMateriales = new List<solicitudMaterialesInforme>(); List<detallePartidas> detalle = new List<detallePartidas>(); if (Session["rol"] != null) { solicitud_materiales solicitud = new solicitud_materiales(); solicitud.id_solicitud = idSolicitudMateriales; solicitud = solicitud.obtenerSolicitud(); solicitudesMateriales = solicitudMaterialesInforme.convertirSolicitudEnSolicitudInforme(solicitud); detalle = detallePartidas.obtenerDetallePartidasSolicitud(solicitud); } // se le asigna el datasource el conjunto de datos desde el modelo conjunto_datos.Value = solicitudesMateriales; conjunto_datos2.Value = detalle; // se agrega el conjunto de datos del tipo report al reporte local reporte_local.DataSources.Add(conjunto_datos); reporte_local.DataSources.Add(conjunto_datos2); // datos para renderizar como se mostrara el reporte string reportType = "PDF"; string mimeType; string encoding; string fileNameExtension; string deviceInfo = "<DeviceInfo>" + " <OutputFormat>jpeg</OutputFormat>" + " <PageWidth>10in</PageWidth>" + " <PageHeight>12in</PageHeight>" + " <MarginTop>0.5in</MarginTop>" + " <MarginLeft>1in</MarginLeft>" + " <MarginRight>1in</MarginRight>" + " <MarginBottom>0.5in</MarginBottom>" + "</DeviceInfo>"; Warning[] warnings; string[] streams; byte[] renderedBytes; //Se renderiza el reporte renderedBytes = reporte_local.Render(reportType, deviceInfo, out mimeType, out encoding, out fileNameExtension, out streams, out warnings); // el reporte es mostrado como una imagen return File(renderedBytes, mimeType); }