lunes, 21 de marzo de 2011

Chau Pinella!

DE PUNTA EN BLANCO. Durante los ejercicios de combate medievales se empleaban armas sin filo con un botón en la punta, como tienen los floretes de esgrima. Eran llamadas armas negras, en contraposición a las afiladas de acero, puntas brillantes, punta en blanco empleadas durante los torneos. Con despliegue espectacular, en medio de música de fanfarrias y gran pompa, los combatientes presentaban también sus mejores galas en cada torneo. Quedó como sinónimo del mejor aspecto que presenta alguien en público.

ANDA QUE TE CURE LOLA. Irreverencia sacrílega entre los antiguos católicos. Lola, sobrenombre familiar de Dolores, es nombrada aquí por la Virgen de los Dolores, a la que se invoca frente a enfermedades y contratiempos. Se suma, a la irreverencia de poner apodo a la Virgen, remitir a ella a quien no nos interesa en absoluto.

ESTAR EN BABIA. En el noroeste de España, en la provincia de León, está Babia. En el siglo XI, León era un reino: sus monarcas tenían allí su retiro de verano, fastuosa residencia dotada con todo el lujo introducido por los árabes en la península. Cuando había crisis, peligros o guerras, los soberanos se refugiaban en el lujo total de Babia. Cuando alguien está en Babia, no se da cuenta de lo que ocurre a su alrededor.

SALIR CON UN DOMINGO SIETE. Para muchos, el domingo es el séptimo día, no el primero de la semana. Cuando alguien sale con un domingo siete, dice algo sin sentido. Para el Antiguo Testamento fueron necesarios seis días para la Creación, "... y al séptimo día descansó", dice la Biblia. Los judíos interpretaron ese sexto día por el sábado (el sabbath hebreo): el domingo es para ellos el primer día de la semana. También los cristianos ven en el domingo el día de la Resurrección, el comienzo de la semana. Por tanto el domingo como día siete es un sinsentido.

¡NO HAY TUTIA! Es decir: no tiene arreglo, no tiene cura. Sin embargo carece de origen familiar: proviene de la medicina antigua, hoy casi olvidada. El diccionario define tutía como "la costra que queda en el horno después de utilizar ciertos minerales". Con esa costra se preparaba un ungüento que por su contenido en óxido de zinc (que aún hoy se emplea con esos fines) era poderoso cicatrizante. Cuando se decía "no hay tutía", quería decir que no había remedio. Después la derivación la convirtió en asunto familiar.

LA ESPADA DE DAMOCLES. Dionisio gobernaba Siracusa con mano de hierro, allá por el siglo IV antes de Cristo. Cuando un cortesano, Damocles, alabó la felicidad en que vivía Dionisio, éste lo invitó a cenar a su palacio. Lo sentó a la cabecera y allí Damocles disfrutó de lo lindo hasta que vio, sobre su cabeza exactamente, la punta de una espada que colgaba del techo. "Sólo la sostiene una crin", le comentó Dionisio, para explicarle el estado en que vivía por miedo a ser asesinado a cada paso. La frase sobrevivió al tiempo, ejemplo del peligro en algunas posiciones.

¡VIVA LA PEPA! En 1820 la revolución en Cádiz exigió restablecer la Constitución española, dictada ocho años antes, mientras Fernando VII era prisionero de Napoleón, en Francia. Fernando VII había abolido la Constitución y prohibido mencionarla en público. Los liberales apelaron a una treta: como la Constitución de 1812 se había jurado un 19 de mayo, Día de San José, y como todos los Josés en España son Pepe, bautizaron Pepa a aquella Constitución. Al grito de "viva la Pepa", los liberales abuchearon al régimen y evitaron represión. Hoy sin embargo, la frase refiere más a un "vale todo" en proceso.

LA TERCERA ES LA VENCIDA. La expresión aún se usa en España de forma original: "la tercera, va vencida". Data de la época de las legiones romanas: la primera línea de infantería que entraba en combate eran jóvenes y con armas livianas. Una segunda línea la formaban combatientes más fogueados y con armas más pesadas. La tercera línea, los tertiati, eran los guerreros más consumados que, en general, definían las batallas.

HACERSE LA RABONA. Aún se usa en España para quien da la espalda (el rabo) a alguna obligación. En nuestro país, refiere casi siempre a inasistencia a clases de educación. En Argentina, hasta comienzos del siglo pasado se decía por derivación "hacerse la ratona", de donde seguramente proviene, "hacerse la rata". Si en Uruguay alguien se "hace la rata", es que se ha convertido en una persona mezquina.

FULANO, MENGANO, ZUTANO, PERENGANO. Alguien de quien no se sabe el nombre ni el apellido. Su origen es de los más curiosos: proviene de las leyes árabes. Cuando alguien carece de filiación se le llama Fulan ibn Man gan: "un tal hijo de quien sea". De Fulan derivó fulano y de Man gan, mengano. Fulano de Tal es una ironía, para quien aspira tener apellido con blasones. Perengano ya es voz española derivada del apellido Pero, de donde vienen los Pérez: al principio eran Perencejo, después para acompañar la rima, devinieron Perengano. Estos personajes innominados acompañan a otros aun más misteriosos de nuestro uso, habla y conocimiento popular. Magoya, Mongo Aurelio, Mengueche. Ah: y ¡chau Pinela! *


Fuente: http://www.larepublica.com.uy/comunidad/71657-chau-pinela

lunes, 25 de octubre de 2010

Clase Alumnos

Public Class Alumnos

 

   

    Private Const CadenaDeConexion = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Facu\Ejercicio Final\BASE.MDB;User Id=admin;"

 

    'Declaramos el tipo de Conexion A utilizar

    Private Const TipoDeConexion As Integer = 1

 

    Private Function dameNuevaConexion() As System.Data.IDbConnection

 

        Dim objConnection As System.Data.IDbConnection

 

        Select Case TipoDeConexion

            Case 1 'oledb

                objConnection = New Data.OleDb.OleDbConnection(CadenaDeConexion)

            Case 2 'Sql

                objConnection = New Data.SqlClient.SqlConnection(CadenaDeConexion)

            Case 3 'oracle

                'objConnection = New Data.(CadenaDeConexion)

            Case 4 'ODBc

                objConnection = New Data.Odbc.OdbcConnection(CadenaDeConexion)

        End Select

 

        Return objConnection

 

    End Function

 

    Private Function dameNuevoComando() As Data.IDbCommand

        Dim objCommand As Data.IDbCommand

 

        Select Case TipoDeConexion

            Case 1 'oledb

                objCommand = New Data.OleDb.OleDbCommand

            Case 2 'Sql

                objCommand = New Data.SqlClient.SqlCommand

            Case 3 'oracle

                'objCommand = New Data

            Case 4 'ODBc

                objCommand = New Data.Odbc.OdbcCommand

        End Select

 

        Return objCommand

    End Function

 

 

    Public Function dameParametro(ByVal parameterName As String, _

                                  ByVal parameterValue As Object) As IDbDataParameter

        Dim objParameter As Data.IDbDataParameter

 

        Select Case TipoDeConexion

            Case 1 'oledb

                objParameter = New Data.OleDb.OleDbParameter

            Case 2 'Sql

                objParameter = New Data.SqlClient.SqlParameter

            Case 3 'oracle

                'objCommand = New Data

            Case 4 'ODBc

                objParameter = New Data.Odbc.OdbcParameter

        End Select

 

        objParameter.ParameterName = parameterName

        objParameter.Value = parameterValue

 

        Return objParameter

    End Function

 

    Function dameDataAdapter() As IDataAdapter

        Dim objAdapter As Data.IDbDataParameter

 

        Select Case TipoDeConexion

            Case 1 'oledb

                objAdapter = New Data.OleDb.OleDbDataAdapter

            Case 2 'Sql

                objAdapter = New Data.SqlClient.SqlDataAdapter

            Case 3 'oracle

                'objCommand = New Data

            Case 4 'ODBc

                objAdapter = New Data.Odbc.OdbcDataAdapter

        End Select

 

        Return objAdapter

 

    End Function

 

 

    Public Function consultaQueNoRetornaDatos(ByVal strSql As String, _

                                              ByVal vParametros As List(Of Data.IDbDataParameter)) As Boolean

        Dim oConexion As IDbConnection

        Dim oCommand As IDbCommand

        oConexion = dameNuevaConexion()

        oCommand = dameNuevoComando()

        Try

 

            oCommand.CommandType = CommandType.Text

            oCommand.Connection = oConexion

            oCommand.CommandText = strSql

 

            For Each p As Data.IDbDataParameter In vParametros

                oCommand.Parameters.Add(p)

            Next

 

            oConexion.Open()

            oCommand.ExecuteNonQuery()

 

        Catch ex As Exception

            Throw ex

        Finally

            oConexion.Close()

        End Try

 

 

 

    End Function

 

 

    Public Function consultaQueRetornaDatos(ByVal strSql As String, _

                                              ByVal vParametros As List(Of Data.IDbDataParameter)) As Data.DataTable

        Dim dataSetRetorno As New DataSet

 

        Dim oConexion As IDbConnection

        Dim oCommand As IDbCommand

        oConexion = dameNuevaConexion()

        oCommand = dameNuevoComando()

        Try

 

            oCommand.CommandType = CommandType.Text

            oCommand.Connection = oConexion

            oCommand.CommandText = strSql

 

            For Each p As Data.IDbDataParameter In vParametros

                oCommand.Parameters.Add(p)

            Next

 

            oConexion.Open()

 

            Dim oAdapter As Data.IDbDataAdapter

            oAdapter = dameDataAdapter()

            oAdapter.Fill(dataSetRetorno)

            Return dataSetRetorno.Tables(0)

 

        Catch ex As Exception

            Throw ex

        Finally

            oConexion.Close()

        End Try

 

 

        Return Nothing

    End Function

 

 

 

    Public Sub AgregarAlumno(ByVal Apellidos As String, _

                           ByVal Nombres As String, _

                           ByVal Legajo As String, _

                           ByVal Fecha_De_Nacimiento As Date)

         Dim strSql As String

        strSql = "Insert Into ALUMNOS "

        strSql += "(ALU_LEGAJO, ALU_APELLIDO, ALU_NOMBRES, ALU_FECHANACIMIENTO) "

        strSql += " values "

        strSql += " (@pmtLegajo,@pmtApellido,@pmtNombres,@pmtFechaNac) "

 

        Try

            Dim oPmtLegajo As IDbDataParameter

            oPmtLegajo = dameParametro("@pmtLegajo", Legajo)

            oPmtLegajo.DbType = DbType.String

 

            Dim oPmtApellido As IDbDataParameter = dameParametro("@pmtApellido", Apellidos)

            oPmtApellido.DbType = DbType.String

 

            Dim oPmtNombres As IDbDataParameter = dameParametro("@pmtNombres", Nombres)

            oPmtNombres.DbType = DbType.String

 

            Dim oPmtFecha As IDbDataParameter = dameParametro("@pmtFechaNac", Fecha_De_Nacimiento)

            oPmtFecha.DbType = DbType.Date

 

            Dim pmtList As New List(Of IDbDataParameter)

 

            pmtList.Add(oPmtLegajo)

            pmtList.Add(oPmtApellido)

            pmtList.Add(oPmtNombres)

            pmtList.Add(oPmtFecha)

 

            Me.consultaQueNoRetornaDatos(strSql, pmtList)

 

        Catch ex As Exception

            Throw ex

        End Try

 

 

 

    End Sub

 

    Public Sub ActualizarAlumno(ByVal ID As Integer, _

                                ByVal Apellidos As String, _

                                ByVal Nombres As String, _

                                ByVal Legajo As String, _

                                ByVal Fecha_De_Nacimiento As Date)

 

        Dim oConexion As Data.OleDb.OleDbConnection

        Dim oComandos As Data.OleDb.OleDbCommand

 

 

 

        Dim strSql As String

        strSql = " UPDATE ALUMNOS "

        strSql += " Set ALU_LEGAJO = @pmtLegajo,"

        strSql += " ALU_APELLIDO = @pmtApellido,"

        strSql += " ALU_NOMBRES = @pmtNombres,"

        strSql += " ALU_FECHANACIMIENTO = @pmtFechaNac"

        strSql += " WHERE (ALU_ID = @pmtID)"

 

 

 

 

        oConexion = New Data.OleDb.OleDbConnection(CadenaDeConexion)

        oComandos = New Data.OleDb.OleDbCommand()

 

 

 

        Try

            oConexion.Open()

            'TODO Escribir el código

            oComandos.Connection = oConexion

            oComandos.CommandType = CommandType.Text

            oComandos.CommandText = strSql

 

            Dim oPmtLegajo As New Data.OleDb.OleDbParameter("@pmtLegajo", Legajo)

            oPmtLegajo.DbType = DbType.String

 

            Dim oPmtApellido As New Data.OleDb.OleDbParameter("@pmtApellido", Apellidos)

            oPmtLegajo.DbType = DbType.String

 

            Dim oPmtNombres As New Data.OleDb.OleDbParameter("@pmtNombres", Nombres)

            oPmtLegajo.DbType = DbType.String

 

            Dim oPmtFecha As New Data.OleDb.OleDbParameter("@pmtFechaNac", Fecha_De_Nacimiento)

            oPmtLegajo.DbType = DbType.Date

 

            Dim oPmtID As New Data.OleDb.OleDbParameter("@pmtID", ID)

            oPmtLegajo.DbType = DbType.Int32

 

 

            oComandos.Parameters.Add(oPmtLegajo)

            oComandos.Parameters.Add(oPmtApellido)

            oComandos.Parameters.Add(oPmtNombres)

            oComandos.Parameters.Add(oPmtFecha)

            oComandos.Parameters.Add(oPmtID)

 

 

 

            Dim filasAfectadas As Integer = oComandos.ExecuteNonQuery()

 

 

        Catch ex As Exception

            Throw ex

        Finally

            oConexion.Close()

        End Try

 

    End Sub

 

    Public Sub EliminarAlumno(ByVal ID As Integer)

        Dim oConexion As Data.OleDb.OleDbConnection

        Dim oComandos As Data.OleDb.OleDbCommand

 

 

 

        Dim strSql As String

        strSql = " DELETE * FROM ALUMNOS "

        strSql += " WHERE (ALU_ID = @pmtID)"

 

 

 

 

        oConexion = New Data.OleDb.OleDbConnection(CadenaDeConexion)

        oComandos = New Data.OleDb.OleDbCommand()

 

        Try

            oConexion.Open()

            'TODO Escribir el código

            oComandos.Connection = oConexion

            oComandos.CommandType = CommandType.Text

            oComandos.CommandText = strSql

 

            Dim oParameter As New OleDb.OleDbParameter("@pmtID", ID)

            oComandos.Parameters.Add(oParameter)

 

            Dim filasAfectadas As Integer = oComandos.ExecuteNonQuery()

 

 

        Catch ex As Exception

            Throw ex

        Finally

            oConexion.Close()

        End Try

 

    End Sub

 

    Public Function BuscarAlumno(ByVal ID As Nullable(Of Integer), _

                                   ByVal Apellidos As String, _

                                   ByVal Nombres As String, _

                                   ByVal Legajo As String, _

                                   ByVal Fecha_De_Nacimiento As Nullable(Of Date)) As DataTable

        Dim oConexion As Data.OleDb.OleDbConnection

        Dim dt As New DataTable

        Try

 

            Dim oComandos As Data.OleDb.OleDbCommand

            oConexion = New Data.OleDb.OleDbConnection(CadenaDeConexion)

            oComandos = New Data.OleDb.OleDbCommand()

 

 

            oConexion.Open()

            oComandos.CommandType = CommandType.Text

            oComandos.Connection = oConexion

 

 

            Dim strSql As String

            strSql = " Select * From Alumnos "

 

            Dim where As String = ""

 

 

 

            If ID.HasValue Then

                where += " ALU_ID = @pmtID AND"

                Dim pmt As New OleDb.OleDbParameter("@pmtid", ID)

                oComandos.Parameters.Add(pmt)

            End If

 

            If Apellidos IsNot Nothing Then

                where += " ALU_Apellido = @pmtapellido AND"

                Dim pmt As New OleDb.OleDbParameter("@pmtapellido", Apellidos)

                oComandos.Parameters.Add(pmt)

            End If

 

            If Nombres IsNot Nothing Then

                where += " ALU_Nombre = @pmtNombres AND"

                Dim pmt As New OleDb.OleDbParameter("@pmtNombres", Nombres)

                oComandos.Parameters.Add(pmt)

            End If

 

            If Legajo IsNot Nothing Then

                where += " ALU_Legajo = @pmtLegajo AND"

                Dim pmt As New OleDb.OleDbParameter("@pmtLegajo", Legajo)

                oComandos.Parameters.Add(pmt)

            End If

 

            If Fecha_De_Nacimiento.HasValue Then

                where += " ALU_FECHANACIMIENTO = @pmtFechaNac AND"

                Dim pmt As New OleDb.OleDbParameter("@Fecha_De_Nacimiento", Fecha_De_Nacimiento)

                pmt.DbType = DbType.Date

                oComandos.Parameters.Add(pmt)

            End If

 

            If where <> "" Then

                where = " Where " & where.Substring(0, where.Length - 3)

            End If

 

            oComandos.CommandText = strSql & "  " & where

 

            Dim oDataAdapter As New OleDb.OleDbDataAdapter(oComandos)

 

            oDataAdapter.Fill(dt)

 

 

        Catch ex As Exception

            Throw ex

        Finally

            oConexion.Close()

        End Try

 

 

        If dt IsNot Nothing Then

            Return dt

        Else

            Return Nothing

        End If

 

 

    End Function

 

End Class

 

jueves, 21 de octubre de 2010

Material de Estido - Arquitectura 3 Capas

Estimados alumnos: En el siguiente Link http://download.microsoft.com/download/2/2/1/221AD022-E701-488F-B070-7A0B87DFE789/Guia_Arquitectura_N-Capas_DDD_NET_4_(Borrador_Marzo_2010).pdf
Ponemos a disposición el material de estudio teórico sobre arquitectura en 3 capas. Estudiar los 3 primeros capítulos.
(NOTA: La unidad 2 es hasta el ítem 2.7 (Diseño de la Solución En Visual Studio) No inclusive. Ya que son ejemplos de implementación en VS 2010 que escapan al alcance de este curso)