Mostrar Datos En Dataview A Partir De Un Query


Objetivo: Mostrar Datos En Dataview A Partir De Un Query
Mi problema es el siguiente, recien comienzo hace 2 dias a trabajar con gambas nunca trabaje con visual basic como para tener alguna nocion.
el tema es asi, tengo una tabla que quiero mostrar pero no quiero mostrar todas las columnas solo son 7 y todas las filas.
hago lo siguiente y queda colgado como si entrara en un bucle infinito. alguien podria darme una mano? si a la tabla la hago con el datasource poniendo columns las veo..pero no voy a poder mostrar solo las que quiero porque no son contiguas todas...
espero haberme dado a entender...y este esmi primer post aca asi que muchas gracias.


PUBLIC SUB Form_Open()
DIM cn AS Connection
DIM resultado AS Result
DIM query AS String
DIM intRow AS Integer = 0
MODconnect.Connect()
'cid_tramite,cid_letra,nid_nro,nid_ano,nreporigen,nid_nro_ini,cnombre_ini
query = "select * from metramites"
resultado = MODconnect.$Con.Exec(query)
IF resultado.Available THEN
resultado.MoveFirst
grdDatos.GridView.Rows.Count = resultado.Count
grdDatos.GridView.Columns.Count = 7
FOR EACH resultado

grdDatos.GridView[intRow, 0].Text = resultado!cid_tramite
grdDatos.GridView[intRow, 1].Text = resultado!cid_letra
grdDatos.GridView[intRow, 2].Text = resultado!nid_nro
grdDatos.GridView[intRow, 3].Text = resultado!nid_ano
grdDatos.GridView[intRow, 4].Text = resultado!nreporigen
grdDatos.GridView[intRow, 5].Text = resultado!nid_nro_ini
grdDatos.GridView[intRow, 6].Text = resultado!cnombre_ini
INC intRow
NEXT

ENDIF

'srcDatos.Table = "metramites"
srcDatos.Refresh


END

Perfil MP  
Objetivo: Re: Mostrar Datos En Dataview A Partir De Un Query
Hola.
Imagino que tienes una variable tipo connection con la que has abierto la base de datos. Bien, ahora pon en un formulario un datasource y dentro del datasource pon un databrowser. Imagínate que en la base de datos tienes una tabla llamada "Datos" con campos llamados "Campo1,Campo2,Campo3". Ahora en la propiedad "Table" del datasource pon el nombre de la tabla que quieres mostrar (Datos en este caso) y en la propiedad "Columns" del databrowser escribe los campos que quieres mostrar (por ejemplo Campo1 y Campo3).
Si quieres filtrar las datos que se muestran, puedes usar algo así como
databrowser1.filter="Campo1='hola'"
Saludos

Perfil MP  
Objetivo: Re: Mostrar Datos En Dataview A Partir De Un Query
yo creo que el error esta que cada vez que entras en el bucle lo vuelves al principio
por ejemplo tu tienes esto

IF resultado.Available THEN ' cada vez que haya datos
resultado.MoveFirst ' aqui es donde esta el error lo tiene que poner fuera del bucle por consiguiente siempre esta al principio de la tabla y lee el mismo resultado
grdDatos.GridView.Rows.Count = resultado.Count
grdDatos.GridView.Columns.Count = 7
FOR EACH resultado


resultado.MoveFirst 'lo pones al principo de la tabla y ya el bucle se encarga de terminar de leer la tabla
IF resultado.Available THEN
grdDatos.GridView.Rows.Count = resultado.Count
grdDatos.GridView.Columns.Count = 7
FOR EACH resultado

espero que te haya ayudado y me e explicado bien

última edición por david el Viernes, 20 May 2011, 19:09; editado 2 veces
Perfil MP  
Objetivo: Re: Mostrar Datos En Dataview A Partir De Un Query
Ahí te falta el evento grDatos_Data(row,col), que es el que se encarga de rellenar el grid cada vez que es necesario de forma automática.

Suerte

Perfil MP  
Objetivo: Re: Mostrar Datos En Dataview A Partir De Un Query (SOLUCIONADO)
bueno ya solucione mi problema usando los databrowser y la propiedad columns que es un array de los campos a mostrar.
muchas gracias por las respuestas.
Pablo

PUBLIC SUB Form_Open()
DIM cn AS Connection
DIM resultado AS Result
DIM query AS String
MODconnect.Connect()
'cid_tramite,cid_letra,nid_nro,nid_ano,nreporigen,nid_nro_ini,cnombre_ini
query = "select * from metramites"
resultado = MODconnect.$Con.Exec(query)

srcDatos.Table = "metramites"
DataBrowser1.GridView.Columns.Count = 7
DataBrowser1.GridView.Rows.Count = resultado.Count
DataBrowser1.Columns = ["cid_tramite", "cid_letra", "nid_nro", "nid_ano", "nreporigen", "nid_nro_ini", "cnombre_ini"]
DataBrowser1.GridView.Columns[0].Text = "id_tramites"
DataBrowser1.GridView.Columns[1].Text = "letra"
DataBrowser1.GridView.Columns[2].Text = "número"
DataBrowser1.GridView.Columns[3].Text = "Año"
DataBrowser1.GridView.Columns[4].Text = "Repartición de origen"
DataBrowser1.GridView.Columns[5].Text = "id Iniciador"
DataBrowser1.GridView.Columns[6].Text = "Apellido y nombre iniciador"
DataControl1.Field = "creferencia"



srcDatos.Refresh



END

Perfil MP  

Página 1 de 1


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.1386s (PHP: -32% SQL: 132%)
Consultas SQL: 23 - Debug off - GZIP Activado