Foros del Web » Programación para mayores de 30 ;) » .NET »

DataSet tipado - no me muestra ningun dato

Estas en el tema de DataSet tipado - no me muestra ningun dato en el foro de .NET en Foros del Web. He creado un dataset tipado enlazado a SQLServer2005 segun la info del guille elguille.info/NET/ADONET/base_sql_asistente_express.htm El resultado es este, revisen la imagen esta todo ok img.tomatone.net/big/dataset.png ...
  #1 (permalink)  
Antiguo 25/09/2009, 20:26
 
Fecha de Ingreso: septiembre-2009
Mensajes: 73
Antigüedad: 14 años, 8 meses
Puntos: 0
DataSet tipado - no me muestra ningun dato

He creado un dataset tipado enlazado a SQLServer2005 segun la info del guille
elguille.info/NET/ADONET/base_sql_asistente_express.htm

El resultado es este, revisen la imagen esta todo ok
img.tomatone.net/big/dataset.png

Ahora intento visualizar datos atravez de este ejemplo pero no ocurre nada, no
se genera ningun error solo me muestra el mensaje "Se termino el ejemplo" donde puedo estar fallando.

Código:
    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Try
            Dim MiSqlConnection As New SqlConnection("Data Source=.\SQLEXPRESS; Initial Catalog=ventas; Integrated Security=True")

            Dim MiSqlDataAdapter As New SqlDataAdapter("SELECT*FROM categoria", MiSqlConnection)
            Dim MiDtTyped As New ventasDataSet
            MiSqlDataAdapter.Fill(MiDtTyped, "ejemplo")
            Dim MisDatos As ventasDataSet.CategoriaRow
            For Each MisDatos In MiDtTyped.Categoria
                MessageBox.Show(MisDatos.CodCat & " " & MisDatos.NomCat)
            Next
            MsgBox("Termino el ejemplo")
        Catch
            MsgBox("error")
        End Try
    End Sub
En la bd tengo varios registros, por que no me muestra la informacion?, la conexion es la misma en el dataset y en el codigo
Data Source=.\SQLEXPRESS; Initial Catalog=ventas; Integrated Security=True

saludos
  #2 (permalink)  
Antiguo 28/09/2009, 02:20
 
Fecha de Ingreso: septiembre-2009
Ubicación: Galicia
Mensajes: 111
Antigüedad: 14 años, 8 meses
Puntos: 3
Respuesta: DataSet tipado - no me muestra ningun dato

Hola, xDriver!

prueba este código, es casi como el tuyo:

Código:
Dim MisDatos as DataRow
Dim MiDtTyped As New DataSet
Dim MiSqlDataAdapter As SqlDataAdapter

MiSqlDataAdapter = New SqlDataAdapter("SELECT * FROM Categoria", MiSqlConnection)
MiSqlDataAdapter.Fill(MiDtTyped, "Categoria")

Msgbox "Filas devueltas por la consulta: " & MiDtTyped.Tables("Categoria").Rows.Count

For Each fila In MiDtTyped.Tables("Categoria").Rows
    Msgbox fila.Item("Codcat")
Next
A ver si te va!!
  #3 (permalink)  
Antiguo 28/09/2009, 16:29
 
Fecha de Ingreso: septiembre-2009
Mensajes: 73
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: DataSet tipado - no me muestra ningun dato

Ya solucione!
Al ver tu codigo me di cuenta que utilizada "ejemplo" en lugar del nombre de la tabla, si cambio esa linea corre perfecto.
MiSqlDataAdapter.Fill(MiDtTyped, "ejemplo")
Pero no capto bien la idea, si no utilizo dataset tipados yo le podia poner cualquier nombre, asumo que es por que utilizo el archivo .xsd y dicho esquema toma como nombre al nombre de la tabla, saludos
  #4 (permalink)  
Antiguo 29/09/2009, 01:05
 
Fecha de Ingreso: septiembre-2009
Ubicación: Galicia
Mensajes: 111
Antigüedad: 14 años, 8 meses
Puntos: 3
Respuesta: DataSet tipado - no me muestra ningun dato

Hola de nuevo!

no es necesario que le pongas el nombre de la tabla. En mi ejemplo, si en vez de poner
Código:
MiSqlDataAdapter.Fill(MiDtTyped, "Categoria")
, pongo
Código:
MiSqlDataAdapter.Fill(MiDtTyped, "Prueba")
me funcionará igual.

Yo creo que el problema lo tenias en el bucle, porque aqui
Código:
For Each MisDatos In MiDtTyped.Categoria
estas recorriendo el dataset "categoria", cuando tu lo llamaste "ejemplo"
Código:
 MiSqlDataAdapter.Fill(MiDtTyped, "ejemplo")
Saludos!!
  #5 (permalink)  
Antiguo 29/09/2009, 13:06
 
Fecha de Ingreso: septiembre-2009
Mensajes: 73
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: DataSet tipado - no me muestra ningun dato

El xDataSet.xsd es el esquema que se ha creado y esta asi fijate los nombres, no quize decir que tenia que poner el nombre de la tabla sino el nombre que esta en el esquema, asumo que con mi codigo no puedo cambiarlo


Código:
Dim MiSqlConnection As New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=D:\ventas.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True")
Dim MiSqlDataAdapter As New SqlDataAdapter("SELECT*FROM categoria", MiSqlConnection)

Dim MiDtTyped As New xDataSet1
MiSqlDataAdapter.Fill(MiDtTyped, "categoria")

Dim MisDatos As xDataSet1.CategoriaRow
For Each MisDatos In MiDtTyped.Categoria
      MessageBox.Show(MisDatos.CodCat & " " & MisDatos.NomCat)
Next
Ahora al utilizar tu codigo si me da la posibilidad de cambiarlo o renombrarlo, no le veo diferencia, ojo que estoy empezando recien con vb2005 y me parece haber leido que es un ventaja poder ver el nombre de los objetos en lugar de hacerlo a tu manera:
MiDtTyped.Categoria vs MiDtTyped.Tables
Cual es mas entendible, no le veo diferencia al codigo??

Código:

Dim MiSqlConnection As New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=D:\ventas.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True")
Dim MiSqlDataAdapter As New SqlDataAdapter("SELECT*FROM Categoria", MiSqlConnection)

Dim MiDtTyped As New xDataSet1
MiSqlDataAdapter.Fill(MiDtTyped, "Nuevo_nombre")
'MsgBox("Filas devueltas por la consulta: " & MiDtTyped.Tables("Nuevo_nombre").Rows.Count)

Dim Fila As DataRow
For Each Fila In MiDtTyped.Tables("Nuevo_nombre").Rows
      MsgBox(Fila.Item("Codcat"))
Next

Última edición por xDriver; 03/10/2009 a las 12:33
  #6 (permalink)  
Antiguo 01/10/2009, 05:19
 
Fecha de Ingreso: septiembre-2009
Ubicación: Galicia
Mensajes: 111
Antigüedad: 14 años, 8 meses
Puntos: 3
Respuesta: DataSet tipado - no me muestra ningun dato

Hola de nuevo!!

por ese tipo de cosas yo escapo de crear datasets en modo diseño: me parece más fácil por código y (lo más importante) tienes control absoluto sobre él, lo diseñas a tu manera.

Yo te aconsejaría que te olvidaras del diseño e intentes hacer todo por código: te acabarás acostumbrando y evitarás este tipo de problemas...

Saludos!
  #7 (permalink)  
Antiguo 10/10/2009, 13:05
 
Fecha de Ingreso: septiembre-2009
Mensajes: 73
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: DataSet tipado - no me muestra ningun dato

Hola jarogo gracias por la sugerencia, tienes razon lo mejor es tener el control absoluto pero segun lei para utilizar dataset con tipo hay que utilizar el archivo .xsd y me parece que en ambos caso lo hace debido a esta linea
Dim MiDtTyped As New xDataSet1, lo unico que varia es el modo de utilizar los datos del esquema, en resumen tu codigo utiliza dataset tipado o sin tipo?, ya que seria casi igual si utilizo esta linea Dim MiDtTyped As New DataSet y no utilizar el esquema del .xsd, estoy haciendo una mezcla algo rara, te envio un MP, saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:00.