Beispiel #1
0
        public static void add(Alumno alumno, Persona madre, Persona alumnoP, Persona padre)
        {
            int i = -1;
            String sql = @"INSERT INTO alumnos
                         (id_persona, id_madre, id_padre, conoce_musica, id_nivel_estudio)
                         VALUES        (@id_persona,@id_madre,@id_padre,@conoce_musica,@id_nivel_estudio) SELECT CAST(scope_identity() AS int)";
            SqlConnection cn = new SqlConnection();
            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            //PONER LA STRINGCONNECTION CORRECTA!!!

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);

                cmd.Parameters.AddWithValue("@id_persona", PersonaDao.add(alumnoP));
                cmd.Parameters.AddWithValue("@id_madre", PersonaDao.add(madre));
                cmd.Parameters.AddWithValue("@id_padre", PersonaDao.add(padre));
                cmd.Parameters.AddWithValue("@conoce_musica", (Boolean)alumno.conoceMusica);
                cmd.Parameters.AddWithValue("@legajo", (int)alumno.legajo); //NO SE PARA QUE ESTA SI NO HACE FALTA EL LEGAJO

                int idNivelEstudio = 0;
                switch (alumno.nivelEstudio.descripcion)
                {
                    case "Sin Estudios": idNivelEstudio = 1;
                        break;
                    case "Primario Incompleto": idNivelEstudio = 2;
                        break;
                    case "Primario Completo": idNivelEstudio = 3;
                        break;
                    case "Secundario Incompleto": idNivelEstudio = 4;
                        break;
                    case "Secundario Completo": idNivelEstudio = 5;
                        break;
                    case "Terciario Incompleto": idNivelEstudio = 6;
                        break;
                    case "Terciario Completo": idNivelEstudio = 7;
                        break;
                    case "Universitario Incompleto": idNivelEstudio = 8;
                        break;
                    case "Universitario Completo": idNivelEstudio = 9;
                        break;
                    case "Posgrado": idNivelEstudio = 10;
                        break;
                }
                cmd.Parameters.AddWithValue("@id_nivel_estudio", idNivelEstudio);
                resetearAutoIncrement(MaxLegajo()-1); // aca le pone el autoincrement en el ultimo legajo de la tabla, pido el max legajo, -1 es el ultimo de la tabla

                i = (Int32)cmd.ExecuteScalar();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al insertar el Alumno" + ex.Message);
            }
            finally
            {
                cn.Close();
            }
        }
Beispiel #2
0
        public static void registrarCursadoAlumno(Alumno alumno, List<int> idCursos, DateTime fechaInscripcion)
        {
            int i = 1;
            String sql = @"INSERT INTO alumno_x_curso
                         (id_curso, fecha_inscripcion, legajo_alumno)
                         VALUES        (@id_curso,@fecha_inscripcion,@legajo_alumno)";
            SqlConnection cn = new SqlConnection();
            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            cn.Open();
            SqlTransaction sqltran = cn.BeginTransaction();

            try
            {

                SqlCommand cmd = new SqlCommand(sql, cn);
                cmd.Transaction = sqltran;

                foreach (int l in idCursos)
                {
                    sql = @"INSERT INTO alumno_x_curso
                         (id_curso, fecha_inscripcion, legajo_alumno)
                         VALUES        (@id_curso" + l + ",@fecha_inscripcion" + l + ",@legajo_alumno" + l + ")";
                    cmd.CommandText = sql;
                    cmd.Parameters.AddWithValue("@legajo_alumno" + l, alumno.legajo);
                    cmd.Parameters.AddWithValue("@id_curso" + l, l.ToString());
                    cmd.Parameters.AddWithValue("@fecha_inscripcion" + l, fechaInscripcion);
                    cmd.ExecuteNonQuery();
                }

                sqltran.Commit();
                cn.Close();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al registrar el Alumno a cursado " + ex.Message);
                try
                {
                    // Attempt to roll back the transaction.
                    sqltran.Rollback();
                }
                catch (Exception exRollback)
                {
                    // Throws an InvalidOperationException if the connection
                    // is closed or the transaction has already been rolled
                    // back on the server.
                    Console.WriteLine(exRollback.Message);
                }
            }
            finally
            {
                cn.Close();
            }
        }
Beispiel #3
0
        public static List<Alumno> buscarPorParametros(String nombre, String apellido, int legajo)
        {
            List<Alumno> listAlumnos = new List<Alumno>();

            string sql = @"SELECT        a.legajo, a.id_persona, a.id_madre, a.id_padre, a.conoce_musica, a.id_nivel_estudio
                         FROM            alumnos AS a INNER JOIN
                         personas AS pA ON a.id_persona = pA.id
                         WHERE        (1 = 1) ";

            if (nombre != "")
                sql += " AND (pA.nombre LIKE @nombre)";
            if (apellido != "")
                sql += " AND (pA.apellido LIKE @apellido)";
            if (legajo != 0)
                sql += " AND (a.legajo = @legajo)";

            SqlConnection cn = new SqlConnection();
            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            //PONER LA STRINGCONNECTION CORRECTA!!!

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);

                if(nombre!="")
                    cmd.Parameters.AddWithValue("@nombre", "%" + nombre + "%");
                if(apellido!="")
                    cmd.Parameters.AddWithValue("@apellido", "%" + apellido + "%");
                if(legajo!=0)
                    cmd.Parameters.AddWithValue("@legajo", legajo);

                SqlDataReader dr = cmd.ExecuteReader();
                int c = 0;
                while (dr.Read())
                {
                    Alumno alumno = new Alumno()
                    {
                        legajo = (int)dr["legajo"],
                        conoceMusica = (Boolean)dr["conoce_musica"],
                        madre = PersonaDao.obtenerPersona((int)(dr["id_madre"])),
                        padre = PersonaDao.obtenerPersona((int)(dr["id_padre"])),
                        nivelEstudio = NivelEstudioDao.obtener((int)(dr["id_nivel_estudio"]))
                    };

                    listAlumnos.Add(alumno); //lleno la coleccion en memoria
                    c++;
                }
                dr.Close();

            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al buscar los Alumnos" + ex.Message);
            }
            finally
            {
                cn.Close();
            }
            return listAlumnos;
        }
Beispiel #4
0
        public static void update(Alumno alumnoViejo, Alumno alumnoNuevo, Persona personaAlumnoViejo, Persona personaAlumnoNuevo, Persona madreVieja, Persona padreViejo, Persona madreNueva, Persona padreNuevo)
        {
            string sql = @"UPDATE       alumnos
                         SET                conoce_musica = @conoce_musica_nuevo, id_nivel_estudio = @id_nivel_estudio_nuevo
                         WHERE        (legajo = @legajoAlumno)";

            SqlConnection cn = new SqlConnection();
            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);

                int idNivelEstudioNuevo = 0;

                switch (alumnoNuevo.nivelEstudio.descripcion)
                {
                    case "Sin Estudios": idNivelEstudioNuevo = 1;
                        break;
                    case "Primario Incompleto": idNivelEstudioNuevo = 2;
                        break;
                    case "Primario Completo": idNivelEstudioNuevo = 3;
                        break;
                    case "Secundario Incompleto": idNivelEstudioNuevo = 4;
                        break;
                    case "Secundario Completo": idNivelEstudioNuevo = 5;
                        break;
                    case "Terciario Incompleto": idNivelEstudioNuevo = 6;
                        break;
                    case "Terciario Completo": idNivelEstudioNuevo = 7;
                        break;
                    case "Universitario Incompleto": idNivelEstudioNuevo = 8;
                        break;
                    case "Universitario Completo": idNivelEstudioNuevo = 9;
                        break;
                    case "Posgrado": idNivelEstudioNuevo = 10;
                        break;
                }

                PersonaDao.update(madreVieja, madreNueva);
                PersonaDao.update(padreViejo, padreNuevo);
                PersonaDao.update(personaAlumnoViejo, personaAlumnoNuevo);
                cmd.Parameters.AddWithValue("@legajoAlumno", alumnoViejo.legajo);
                cmd.Parameters.AddWithValue("@conoce_musica_nuevo", (Boolean)alumnoNuevo.conoceMusica);
                cmd.Parameters.AddWithValue("@id_nivel_estudio_nuevo", idNivelEstudioNuevo);

                cmd.ExecuteNonQuery();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al actualizar los datos del Alumno"+ex.Message);
            }
            finally
            {
                cn.Close();
            }
        }
Beispiel #5
0
        public static List<Alumno> obtenerTodo()
        {
            List<Alumno> listAlumnos = new List<Alumno>();

            string sql = "SELECT * FROM alumnos a JOIN personas pA ON (a.id_persona = pA.id) ";

            SqlConnection cn = new SqlConnection();
            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            //PONER LA STRINGCONNECTION CORRECTA!!!

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);
                SqlDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    Alumno alumno = new Alumno()
                    {
                        alumno = PersonaDao.obtenerPersona((int)(dr["id_persona"])),
                        legajo = (int)dr["legajo"],
                        conoceMusica = (Boolean)dr["conoce_musica"],
                        madre = PersonaDao.obtenerPersona((int)(dr["id_madre"])),
                        padre = PersonaDao.obtenerPersona((int)(dr["id_padre"])),
                        nivelEstudio = NivelEstudioDao.obtener((int)(dr["id_nivel_estudio"]))
                    };
                    listAlumnos.Add(alumno);
                }
                dr.Close();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al buscar los Alumnos" + ex.Message);
            }
            finally
            {
                cn.Close();
            }
            return listAlumnos;
        }
Beispiel #6
0
        public static Alumno obtenerPorLegajo(int legajo)
        {
            Alumno alumno = new Alumno();
            string sql = @"SELECT        a.legajo, a.id_persona, a.id_madre, a.id_padre, a.conoce_musica, a.id_nivel_estudio, pA.id, pA.nombre, pA.apellido, pA.nro_documento, pA.domicilio, pA.telefono, pA.id_tipo_documento, pA.celular, pA.mail,
                         pA.fecha_nacimiento
                         FROM            alumnos AS a INNER JOIN
                         personas AS pA ON a.id_persona = pA.id
                         WHERE        (a.legajo = @legajo)";

            SqlConnection cn = new SqlConnection();
            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";
            //PONER LA STRINGCONNECTION CORRECTA!!!

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);
                cmd.Parameters.AddWithValue("@legajo", legajo);
                SqlDataReader dr = cmd.ExecuteReader();
                if (!dr.HasRows)
                {
                    alumno = null;
                }
                else
                {
                    dr.Read();

                    //alumno.legajo = (int)dr["legajo"];
                    //alumno.legajo = legajo;
                    //alumno.alumno = PersonaDao.obtenerPersona(int.Parse(dr["id_persona"].ToString()));
                    //alumno.conoceMusica = Boolean.Parse(dr["conoce_musica"].ToString());
                    //alumno.madre = PersonaDao.obtenerPersona(int.Parse(dr["id_madre"].ToString()));
                    //alumno.padre = PersonaDao.obtenerPersona(int.Parse(dr["id_padre"].ToString()));
                    //alumno.nivelEstudio = NivelEstudioDao.obtener(int.Parse(dr["id_nivel_estudio"].ToString()));

                    alumno.alumno = PersonaDao.obtenerPersona((int)(dr["id_persona"]));
                    alumno.legajo = (int)dr["legajo"];
                    alumno.conoceMusica = (Boolean)dr["conoce_musica"];
                    alumno.madre = PersonaDao.obtenerPersona((int)(dr["id_madre"]));
                    alumno.padre = PersonaDao.obtenerPersona((int)(dr["id_padre"]));
                    alumno.nivelEstudio = NivelEstudioDao.obtener((int)(dr["id_nivel_estudio"]));

                }
                dr.Close();
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al buscar al Alumno" + ex.Message);
            }
            finally
            {
                if (cn.State == ConnectionState.Open)
                    cn.Close();
            }

            return alumno;
        }
Beispiel #7
0
        public static void delete(Alumno alumno)
        {
            string sql = @"DELETE FROM alumnos
                         WHERE        (legajo = @legajo) SELECT CAST(scope_identity() AS int)";

            SqlConnection cn = new SqlConnection();
            cn.ConnectionString = "Data Source=ALEBELTRAMEN\\ALEJANDRA;Initial Catalog=ASA;Integrated Security=True";

            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand(sql, cn);

                cmd.Parameters.AddWithValue("@legajo", alumno.legajo);

                cmd.ExecuteScalar();

                PersonaDao.delete(alumno.alumno);
                PersonaDao.delete(alumno.madre);
                PersonaDao.delete(alumno.padre);
            }
            catch (SqlException ex)
            {
                throw new ApplicationException("Error al eliminar el Alumno"+ex.Message);
            }
            finally
            {
                cn.Close();
            }
        }