Indice de capítulos Listados de este capítulo Pedir el libro

Programación de bases de datos con Visual Basic .NET

Listado 9.1

Los procedimientos que se ejecutan en la página ASP.NET Inicio.aspx.

 

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    'Si es una carga inicial de la página, ocultamos los botones que dan acceso

    'a las demás páginas.

    If Not Page.IsPostBack = True Then

      Panel1.Visible = False

      Button2.Visible = False

      Button3.Visible = False

    End If

 

  End Sub

 

 

  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    Dim intCodCliente As Integer

    Dim strNomCliente As String

    Dim miExcepcion3 As Exception

 

    'Si el cuadro de texto del número de cliente está vacío,

    'mostramos mensaje de error en rojo.

 

    If TextBox1.Text = "" Then

      Label3.Text = "Hay que introducir un número de cliente"

      Label3.ForeColor = System.Drawing.Color.Red

      Exit Sub

    End If

 

    'Convertimos el valor del cuadro de texto en numérico.

    'Verificamos que el usuario ha introducido un

    'número, y si no es el caso, mostramos mensaje de error en rojo.

 

    Try

      intCodCliente = CInt(TextBox1.Text)

    Catch miExcepcion As Exception

      Label3.Text = "Hay que introducir un número de cliente"

      Label3.ForeColor = System.Drawing.Color.Red

      Exit Sub

    End Try

 

    'Abrimos la conexión. Si no se puede abrir la conexión mostramos mensaje

    'de error en rojo.

 

    Try

      SqlConnection1.Open()

    Catch miExcepcion1 As Exception

      Label3.Text = "No se puede abrir la conexión"

      Label3.ForeColor = System.Drawing.Color.Red

      Exit Sub

    End Try

 

    'Establecemos el texto del comando SQL con la variable que contiene el

    'número de cliente.

 

    Try

      SqlCommand1.CommandText = "SELECT NombreCliente FROM Clientes " _

      & "WHERE idCliente = " & intCodCliente & ""

 

      'Ejecutamos el comando.

      strNomCliente = SqlCommand1.ExecuteScalar

 

      'Guardamos el valor obtenido en el objeto Session.

      Session("NombreCliente") = strNomCliente

 

      'Si el comando SQL no devuelve nada, mostramos mensaje de error en rojo.

      If strNomCliente = "" Then

        Throw miExcepcion3

      End If

 

      'Mostramos el nombre del cliente devuelto y hacemos visibles los botones

      'de acceso a las demás páginas.

 

      Label3.Text = "Usuario: " & strNomCliente & ""

      Panel1.Visible = True

      Button2.Visible = True

      Button3.Visible = True

      Session("idCliente") = intCodCliente

      Label3.ForeColor = System.Drawing.Color.SlateGray

    Catch miExcepcion3

      Label3.Text = "Este Cliente no existe"

      Label3.ForeColor = System.Drawing.Color.Red

      Panel1.Visible = False

      Button2.Visible = False

      Button3.Visible = False

      Exit Sub

 

    Finally

      'Cerramos la conexión

      SqlConnection1.Close()

    End Try

 

  End Sub

 

 

  Private Sub TextBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged

    'Si el usuario cambia el valor en el cuadro de texto del número de cliente

    'ocultamos los botones de acceso a otras páginas.

 

    Panel1.Visible = False

    Button2.Visible = False

    Button3.Visible = False

    Label3.Text = ""

    Label3.ForeColor = System.Drawing.Color.SlateGray

  End Sub

 

  Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

    'Vamos a la página para introducir pedidos

    Response.Redirect("introducir pedidos.aspx")

  End Sub

 

  Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

    'Vamos a la página para consultar pedidos

    Response.Redirect("consultar pedidos.aspx")

  End Sub