miércoles, 18 de enero de 2012

C# Select de un DataSet

Recorremos con un ciclo el DataSet en busca de los que cumpla nuestra condicion se de y lo agregamos a un DataRow de alguna tabla u otro DataSet
Pero recordemos que existe la posibilidad de hacer un select al estilo SQL para un DataSet regresandonos un arreglo de DataRow con los registros que cumplen la condicion.
La condicion es como el mismo where en SQL
aca un ejemplo

private DataRow[] SelectDS(DataSet _ds)
{
 Int32 NEjemplo = 1;
 DataRow[] _dr;
 //select * from Tabla WHERE NOMBRE_COLUMNA_X = NOMBRE_COLUMNA_Y and NOMBRE_COLUMNA_Z <>  1 

_dr = _ds.Tables[0].Select("NOMBRE_COLUMNA_X = NOMBRE_COLUMNA_Y AND NOMBRE_COLUMNA_Z <> " + NEjemplo.ToString());
  return _dr;  
}
      

viernes, 13 de enero de 2012

Educación del primer mundo en Guatemala

Es inicio de actividades academias en nuestra bella Guatemala, recien vi unas imagenes de niños de las areas rurales y recorde que tristemente nuestro pais no asegura una educación como debe de ser.
Anteriormente sabia que Finlandia es el pais con mejor nivel educativos y me di a la tarea de buscar el como logran eso.
Cabe mencionar que recorde a mis compañeros de la Universidad, donde el pensamiento era si no sabe que se cambie de carrera o que se quede, que repita una y otra vez, los maestros con la escusa de aprender a ser autodidactas, se encargaban de que un muy bajo porcentaje de alumnos finalizara exitosamente el curso, admito que el ser autodidacta fue la mejor educacion que obtuve en la universidad, pero si tan solo existieran mas recursos para poder lograr que el 100% de la gente que ingrese se logre graduar nuestro pais seria aun mejor.
Y esto no se aplica solo a la universidad si no a la educación desde su inicio.
Recuerdo que un vez escuche, los examenes son para saber cuanto han aprendido, y lo que no aprendieron se debia repetir de alguna otra forma hasta lograr que el alumno entienda, comprenda y domine el tema.

Aca una extracción del libro Globalización y educación crítica Paginas 263-264.
Que a su vez hace referencia a la revista Cronica de El Mundo en su edición número 478 de fecha Domingo, 12 de diciembre de 2004.

Cubierta delantera
Finlandia pais nordico con mejores resultados educativos, seguro tiene gran relacion el nivel de Bienestar Social que disfruta el país.
La ayuda social que el Estado ofrece a las familias, especialmente a las mujeres, la protección social que ofrece a travéz de servicios de guarderias, hospitales especiales para la infancia hasta los 7 años, etc., permite que sea compatible la vida familiar y laboral. Los sistemas de apoyo educativo son igualmente extraordinarios. Por ejemplo, las bibliotecas tienen unos recursos inmensos y están abiertas a horas en las que las familias pueden acompañar a sus hijos e hijas.
De esta forma Finlandia, al muy por lo contrario a Guatemala se encuentran con que los niños y niñas dedican mas tiempo a leer el periódico que a ver televisión o a jugar videjuegos. Todo esto gracias a los principios de la educación finlandesa como:
  • Igualdad de oportunidades educativas para todos sin distinción alguna. 
  • Coeducación activa, conciente y sistematica. 
  • Gratuidad absoluta, ninguna separación por niveles en ningún eslabón educativo. 
  • Fuerte proceso de cooperación entre niveles educativos y otros agentes sociales. 
  • Apoyo individualizado educativo y social al alumnado con dificultades de aprendizaje. 
  • Evaluaciones pensando en términos de desarrollo personal, que no incluye ni clasificaciones del alumnado ni test para seleccionar. 
  • Profesorado con gra autonomia (pero también gran responsabilidad) y permanentemente en formación. 
  • Una aproximación socioconstructivista a la tarea de enseñar. 
El éxito del modelo escolar finlandés se basa en el fomento de la solidaridad, rompiendo el modelo competitivo: "Si alguno no ha tenido tiempo de estudiar suficiente o hay algo que no entiende los demás lo explican, si alguno no tiene ganas de seguir se animan entre ellos).
Esto da como resultado unas muy escasas diferencias en las puntuaciones entre los mejores y los peores alumnos de Finlandia.
  • Todo mundo es igual. 
  • No hay repetidores. 
  • No dejan que ninguno se quede atras. 
  • No dividen alumnos entre los que van mejor y los que necesitan mas tiempo. 
 Glosario:
Coeducación, también conocida como educación mixta, es la educación integral de hombres y mujeres en la misma institución

C# Buscar registros distintos de una columna en un DataSet

Tengo un DataSet con varias columnas y en una de ellas necesito revisar por cada dato distinto si tiene otras opciones en otro lugar, como no quiero recargar iendo a buscar por cada registro cuando por ejemplo tengo mil registros y solo pueden venir unos 10 distintos.
Entonces genero un listado de los registros sin repetir de una columna especifica, aunque puede usarse para varias columnas a la vez.


//Recibimos como parametro la columna donde bucaremos los distintos registros
public DataTable ExtraerDistintos(DataSet _ds, String _atributo)
{
    DataTable _ValoresDistintosTabla;
    try
    { DataView view = new DataView(_ds.Tables[0]);
      _ValoresDistintosTabla = view.ToTable(true, _atributo);
    }
    catch (Exception _ex)
    {
      throw (_ex.Message);
    }
    return _ValoresDistintosTabla;
}

Referencia:

How to select distinct values from datatable?

domingo, 8 de enero de 2012

Suprimir un blog en blogspot

Ingresa uno al blog, en el menu vamos a [Configuracion]->[Otros] y alli en la parte de arriba encontramos la opcion:
Suprimir Blog

Nos da 90 dias despues de eliminado para restaurar el blog, tambien nos permite antes exportar el contenido.

Historial de Pidgin en Windows 7

Hoy necesitaba ver una conversacion de messenger, y como uso para conectarme Pidgin encontre que el guarda los registros de las conversaciones en el siguiente directorio

C:\Users\<<NombreDeUsuario>>\AppData\Roaming\.purple\logs



viernes, 6 de enero de 2012

C# Copiar filas de un DataSet a otro nuevo

Esta vez, queria seleccionar ciertas filas de un DataSet y copiarlas a uno nuevo donde tendria solo los que me interesan.
Metodos que me ayudaron en esta mision
DataTable.Clone();
DataTable.ImportRow(DataRow)

private DataSet ExtraerAfectos(DataSet _ds, int ini, int fin)
{
    DataSet _tmp = new DataSet();
    DataTable _dt = _ds.Tables[0].Clone();
    _tmp.Tables.Add(_dt);

    //Si biene mal el fin devuelve el DataSet en blanco
    if (_ds.Tables[0].Rows.Count >= fin)
    {
        for (int i = ini; i < fin; i++)
        _tmp.Tables[0].ImportRow(_ds.Tables[0].Rows[i]);
    }
    return _tmp;       
 }