public string ValidarArchivo(string Plantilla, string NombreArchivo, int?Conf = 0) { string RutaArchivo = string.Empty; DTResultadoOperacionModel <DTAthena> DTResultadoModel = new DTResultadoOperacionModel <DTAthena>(); DTResultadoOperacionModel <DTErroresExcel> DTResultadoModelCarga = new DTResultadoOperacionModel <DTErroresExcel>(); int ConEliminacion = 0; try { DTExcel _Plantilla = JsonConvert.DeserializeObject <DTExcel>(Plantilla); List <DTFilasExcel> filas = _Plantilla.sheets.First().rows; if (filas.Count > 1) { //Validar el encabezado List <DTColumnasExcel> columnas = filas.First().cells; if (columnas[0].value.ToString() == DTEstructuraAthena.Item && columnas[1].value.ToString() == DTEstructuraAthena.PurchasingDocument && columnas[2].value.ToString() == DTEstructuraAthena.DocumentDate && columnas[3].value.ToString() == DTEstructuraAthena.Material && columnas[4].value.ToString() == DTEstructuraAthena.ShortText && columnas[5].value.ToString() == DTEstructuraAthena.OrderQuantity && columnas[6].value.ToString() == DTEstructuraAthena.StillDelivered && columnas[7].value.ToString() == DTEstructuraAthena.OrderUnit && columnas[8].value.ToString() == DTEstructuraAthena.Netprice && columnas[9].value.ToString() == DTEstructuraAthena.NetOrderValue && columnas[10].value.ToString() == DTEstructuraAthena.VendorSupplyingPlant && columnas[11].value.ToString() == DTEstructuraAthena.Currency && columnas[12].value.ToString() == DTEstructuraAthena.ReleaseState && columnas[13].value.ToString() == DTEstructuraAthena.DeletionIndicator && columnas[14].value.ToString() == DTEstructuraAthena.POHistory) { List <DTFilasExcel> ConInformacion = (from dt in filas where dt.cells.Count(x => x.value == null) != dt.cells.Count() && dt.index != 0 select dt).ToList(); if (ConInformacion.Count > 0) { foreach (DTFilasExcel Fila in ConInformacion) { if (Fila.cells[Fila.cells.Count - 2].index == 13 && Fila.cells[Fila.cells.Count - 2].value != null) { if (Fila.cells[Fila.cells.Count - 2].value.ToString() != "") { ConEliminacion++; //Si finalmente es mayor que cero entonces significa que hay al menos una eliminación. } } } if (ConEliminacion > 0 && Conf == 0) { DTErroresExcel Eliminar = new DTErroresExcel(); Eliminar.Fila = 1; //Preguntar al usuario si realmente quiere reemplazar DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Resultado = Eliminar; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE007); //Realmente desea reemplazar usuarios? } else { BMAthena _BMIM = new BMAthena(); DTResultadoModelCarga = _BMIM.LeerArchivo(ConInformacion, NombreArchivo); } } else { DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE004); } } else { DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE002); } } else { DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE004); } } catch (Exception ex) { DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE001); GestorLog.RegistrarLogExcepcion(ex); } JavaScriptSerializer serializer = new JavaScriptSerializer(); return(serializer.Serialize(DTResultadoModelCarga)); }
public string ValidarArchivo(string Plantilla) { DTResultadoOperacionModel <DTSolped> DTResultadoModel = new DTResultadoOperacionModel <DTSolped>(); DTResultadoOperacionModel <DTErroresExcel> DTResultadoModelCarga = new DTResultadoOperacionModel <DTErroresExcel>(); //int ConEliminacion = 0; try { DTExcel _Plantilla = JsonConvert.DeserializeObject <DTExcel>(Plantilla); List <DTFilasExcel> filas = _Plantilla.sheets.First().rows; if (filas.Count > 1) { //Validar el encabezado List <DTColumnasExcel> columnas = filas.First().cells; if (columnas[0].value.ToString().Trim() == DTEstructuraSolped.SolNro && columnas[1].value.ToString().Trim() == DTEstructuraSolped.NroOC && columnas[2].value.ToString().Trim() == DTEstructuraSolped.LineaPedido && columnas[3].value.ToString().Trim() == DTEstructuraSolped.NroArticulos && columnas[4].value.ToString().Trim() == DTEstructuraSolped.NroSPE && columnas[5].value.ToString().Trim() == DTEstructuraSolped.HACAT && columnas[6].value.ToString().Trim() == DTEstructuraSolped.PersonaSolicitud && columnas[7].value.ToString().Trim() == DTEstructuraSolped.FechaEnvio && columnas[8].value.ToString().Trim() == DTEstructuraSolped.Estado && columnas[9].value.ToString().Trim() == DTEstructuraSolped.Tipo && columnas[10].value.ToString().Trim() == DTEstructuraSolped.Articulo && columnas[11].value.ToString().Trim() == DTEstructuraSolped.Cantidad && columnas[12].value.ToString().Trim() == DTEstructuraSolped.TotalLinea && columnas[13].value.ToString().Trim() == DTEstructuraSolped.CodigoIVA && columnas[14].value.ToString().Trim() == DTEstructuraSolped.CuadroCuentas && columnas[15].value.ToString().Trim() == DTEstructuraSolped.PersonaCreador && columnas[16].value.ToString().Trim() == DTEstructuraSolped.FechaPedido && columnas[17].value.ToString().Trim() == DTEstructuraSolped.FechaCreacion && columnas[18].value.ToString().Trim() == DTEstructuraSolped.FechaEntrega && columnas[19].value.ToString().Trim() == DTEstructuraSolped.FechaCaducidad && columnas[20].value.ToString().Trim() == DTEstructuraSolped.Proveedor && columnas[21].value.ToString().Trim() == DTEstructuraSolped.Cuenta && columnas[22].value.ToString().Trim() == DTEstructuraSolped.IdOC && columnas[23].value.ToString().Trim() == DTEstructuraSolped.LeandingCostC && columnas[24].value.ToString().Trim() == DTEstructuraSolped.EstadoLinea && columnas[25].value.ToString().Trim() == DTEstructuraSolped.Divisa ) { List <DTFilasExcel> ConInformacion = (from dt in filas where dt.cells.Count(x => x.value == null) != dt.cells.Count() && dt.index != 0 select dt).ToList(); if (ConInformacion.Count > 0) { BMSolped _BMSolped = new BMSolped(); DTResultadoModelCarga = _BMSolped.LeerArchivo(ConInformacion); } else { DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE004); } } else { DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE002); } } else { DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE004); } } catch (Exception ex) { DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE001); GestorLog.RegistrarLogExcepcion(ex); } JavaScriptSerializer serializer = new JavaScriptSerializer(); return(serializer.Serialize(DTResultadoModelCarga)); }
public string ValidarArchivo(string Plantilla) { string RutaArchivo = string.Empty; DTResultadoOperacionModel <DTSolped> DTResultadoModel = new DTResultadoOperacionModel <DTSolped>(); DTResultadoOperacionModel <DTErroresExcel> DTResultadoModelCarga = new DTResultadoOperacionModel <DTErroresExcel>(); //int ConEliminacion = 0; try { DTExcel _Plantilla = JsonConvert.DeserializeObject <DTExcel>(Plantilla); List <DTFilasExcel> filas = _Plantilla.sheets.First().rows; string MesGastos = _Plantilla.sheets.First().name; bool FechaGasto = ValidarFechaGasto(MesGastos); if (filas.Count > 1) { //Validar el encabezado List <DTColumnasExcel> columnas = filas.First().cells; if (columnas[0].value.ToString().Trim() == DTEstructuraGastos.NomCuenta && columnas[1].value.ToString().Trim() == DTEstructuraGastos.NomCentroC && columnas[2].value.ToString().Trim() == DTEstructuraGastos.NroCuenta && columnas[3].value.ToString().Trim() == DTEstructuraGastos.CentroCoste && columnas[4].value.ToString().Trim() == DTEstructuraGastos.Concatenar && columnas[5].value.ToString().Trim() == DTEstructuraGastos.Tipo && columnas[6].value.ToString().Trim() == DTEstructuraGastos.Mes && columnas[7].value.ToString().Trim() == DTEstructuraGastos.Ajustes && columnas[8].value.ToString().Trim() == DTEstructuraGastos.TotalMes ) { List <DTFilasExcel> ConInformacion = (from dt in filas where dt.cells.Count(x => x.value == null) != dt.cells.Count() && dt.index != 0 select dt).ToList(); if (ConInformacion.Count > 0) { if (FechaGasto) { string MesGastoReal = "01-" + MesGastos; BMGastos _BMGastos = new BMGastos(); DTResultadoModelCarga = _BMGastos.LeerArchivo(ConInformacion, MesGastoReal); } else { DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE022); } } else { DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE004); } } else { DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE002); } } else { DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE004); } } catch (Exception ex) { DTResultadoModelCarga.Respuesta = false; DTResultadoModelCarga.Mensaje = DTMensaje.ObtenerObjetoMensaje(DTCodigoMensajes.MENSAJE001); GestorLog.RegistrarLogExcepcion(ex); } JavaScriptSerializer serializer = new JavaScriptSerializer(); return(serializer.Serialize(DTResultadoModelCarga)); }