private void CargarArrayHT() { #region Obtenión de dataset con empresas, proyectos y clientes y nodos y creación de HASTABLES oProveedor = null; oProyectoSubNodo = null; oClaseEconomica = null; oNodoDestino = null; oMoneda = null; DataSet ds = AddDATAECO.ValidarFichero(); htProveedor = new Hashtable(); foreach (DataRow dsProveedor in ds.Tables[0].Rows) //Recorro tabla de proveedores { htProveedor.Add(dsProveedor["t315_codigoexterno"].ToString(), new Proveedor((int)dsProveedor["t315_idproveedor"], dsProveedor["t315_codigoexterno"].ToString()) ); } htProyectoSubNodo = new Hashtable(); foreach (DataRow dsProyectoSubNodo in ds.Tables[1].Rows)//Recorro tabla de proyectos-subnodos { htProyectoSubNodo.Add(dsProyectoSubNodo["t301_idproyecto"].ToString() + @"/" + dsProyectoSubNodo["t303_idnodo"].ToString(), new ProyectoSubNodo((int)dsProyectoSubNodo["t301_idproyecto"], (int)dsProyectoSubNodo["t305_idproyectosubnodo"], (int)dsProyectoSubNodo["t303_idnodo"], dsProyectoSubNodo["t305_cualidad"].ToString()) ); } htClaseEconomica = new Hashtable(); foreach (DataRow dsClaseEconomica in ds.Tables[2].Rows)//Recorro tabla de Clases económicas { htClaseEconomica.Add(dsClaseEconomica["t329_idclaseeco"].ToString(), new ClaseEconomica((int)dsClaseEconomica["t329_idclaseeco"], dsClaseEconomica["t329_necesidad"].ToString(), bool.Parse(dsClaseEconomica["t329_visiblecarruselC"].ToString()), bool.Parse(dsClaseEconomica["t329_visiblecarruselJ"].ToString()), bool.Parse(dsClaseEconomica["t329_visiblecarruselP"].ToString())) ); } htNodoDestino = new Hashtable(); foreach (DataRow dsNodoDestino in ds.Tables[3].Rows)//Recorro tabla de Nodos { htNodoDestino.Add(dsNodoDestino["t303_idnodo"].ToString(), new NodoDestino((int)dsNodoDestino["t303_idnodo"]) ); } htMoneda = new Hashtable(); foreach (DataRow dsMoneda in ds.Tables[4].Rows)//Recorro tabla de Monedas { htMoneda.Add(dsMoneda["t422_idmoneda"].ToString(), new Moneda(dsMoneda["t422_idmoneda"].ToString()) ); } ds.Dispose(); #endregion }
private DesdeFichero validarLinea(DesdeFichero oDesdeFichero) { oClaseEconomica = (ClaseEconomica)htClaseEconomica[(int.Parse(oDesdeFichero.idclaseeco)).ToString()]; if (oClaseEconomica != null) { oDesdeFichero.t329_necesidad = oClaseEconomica.t329_necesidad; oDesdeFichero.t329_visiblecarruselC = oClaseEconomica.t329_visiblecarruselC; oDesdeFichero.t329_visiblecarruselJ = oClaseEconomica.t329_visiblecarruselJ; oDesdeFichero.t329_visiblecarruselP = oClaseEconomica.t329_visiblecarruselP; } if (oDesdeFichero.t329_necesidad == "P") { oDesdeFichero.codigoexterno = oDesdeFichero.idProveedNodoDestino; oProveedor = (Proveedor)htProveedor[oDesdeFichero.codigoexterno]; // cod externo Proveedor if (oProveedor != null) { oDesdeFichero.t315_idproveedor = oProveedor.t315_idproveedor; } } else if (oDesdeFichero.t329_necesidad == "N") { if (Utilidades.isNumeric(oDesdeFichero.idProveedNodoDestino)) { oDesdeFichero.idnododestino = oDesdeFichero.idProveedNodoDestino; oNodoDestino = (NodoDestino)htNodoDestino[(int.Parse(oDesdeFichero.idnododestino)).ToString()]; // cod Nodo if (oNodoDestino != null) { oDesdeFichero.t303_idnododestino = int.Parse(oDesdeFichero.idnododestino); } } else { oDesdeFichero.t303_idnododestino = -1; } } oProyectoSubNodo = (ProyectoSubNodo)htProyectoSubNodo[oDesdeFichero.idproyecto + "/" + oDesdeFichero.idnodo]; if (oProyectoSubNodo != null) { oDesdeFichero.t301_idproyecto = oProyectoSubNodo.t301_idproyecto; oDesdeFichero.t305_idproyectosubnodo = oProyectoSubNodo.t305_idproyectosubnodo; oDesdeFichero.t303_idnodo = oProyectoSubNodo.t303_idnodo; oDesdeFichero.t305_cualidad = oProyectoSubNodo.t305_cualidad; } if (Utilidades.isNumeric(oDesdeFichero.idnodo)) { oDesdeFichero.t303_idnodo = System.Convert.ToInt32(oDesdeFichero.idnodo); } else { oDesdeFichero.t303_idnodo = -1; } if (Utilidades.isNumeric(oDesdeFichero.idproyecto)) { oDesdeFichero.t301_idproyecto = System.Convert.ToInt32(oDesdeFichero.idproyecto); } else { oDesdeFichero.t301_idproyecto = -1; } if (Utilidades.isNumeric(oDesdeFichero.annomes)) { oDesdeFichero.t325_annomes = System.Convert.ToInt32(oDesdeFichero.annomes); } else { oDesdeFichero.t325_annomes = -1; } if (Utilidades.isNumeric(oDesdeFichero.idclaseeco)) { oDesdeFichero.t329_idclaseeco = System.Convert.ToInt32(oDesdeFichero.idclaseeco); if (oDesdeFichero.t329_idclaseeco < 0) { oDesdeFichero.t329_idclaseeco = 999999; } } else { oDesdeFichero.t329_idclaseeco = -1; } if (oDesdeFichero.t305_cualidad == "C" && oDesdeFichero.t329_visiblecarruselC == false) { oDesdeFichero.t329_idclaseeco = 888888; } if (oDesdeFichero.t305_cualidad == "J" && oDesdeFichero.t329_visiblecarruselJ == false) { oDesdeFichero.t329_idclaseeco = 777777; } if (oDesdeFichero.t305_cualidad == "P" && oDesdeFichero.t329_visiblecarruselP == false) { oDesdeFichero.t329_idclaseeco = 666666; } if (Utilidades.isNumeric(oDesdeFichero.importe)) { oDesdeFichero.t376_importe = System.Convert.ToDecimal(oDesdeFichero.importe); } else { oDesdeFichero.t376_importe = -999999999; } //if (Utilidades.isNumeric(oDesdeFichero.idnododestino)) // oDesdeFichero.t303_idnododestino = System.Convert.ToInt32(oDesdeFichero.idnododestino); //else // oDesdeFichero.t303_idnododestino = -1; return(oDesdeFichero); }