Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 2
Ir a la página 1, 2  Siguiente
 
El Control Dataview
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje El Control Dataview 
 
Un Dataview es un control que muestra datos tabulados procedentes de una tabla y permite actualizarlos directamente. A efectos de comprensión debemos pensar en un DATAGRID en VB. Allí el Datagrid está asociado a un adodc. Aquí lo está a un datasource tal y como explico a continuación:

Crear la conexión a base de datos
Dim Cn as new Connection
Cn.type="mysql"
Cn.host="localhost"
Cn.login="usuario"
Cn.clave="1234"
Cn.name="base"
try Cn.open

Una vez tenemos una conexión activa el siguiente paso es situar en el formulario un objeto datasource que es un objeto contenedor que requiere una conexión activa.

El datasource requiere la librería GB.DB.FORM.
Las propiedades mínimas para obtener la funcionalidad del datasource son:
Datasource.table="tabla o vista" ----> la tabla debe tener un índice primario
Datasource.filter = "condicion" ---> la condición que iría en una claúsula where de una sentencia select
Datasource.readonly=true/false


Ahora insertamos el control enlazado dentro del contenedor datasource. En este caso se trata de un dataview.

Definimos cabeceras del dataview
with dataview.gridview
   .Columns[0].text="Codigo"
   .Columns[0].width=50
   .Columns[1].text="Cliente"
   .Columns[1].width=100
   ...
end with

Algunas propiedades interesantes
Dataview.grid=true/false ---> si habrá o no rejilla
Dataview.mode=none/single ---> si se seleccionará la fila entera o no.


Posicionarse en celda
Dataview.GridView[0,0] ----> primera celda
Dataview.GridView[1,0] ----> primera celda segunda fila
Dataview.GridView[,0] ----> primera celda segunda fila
Dataview.GridView(DataView.GridView.row,DataView.GridView.col] ---> celda actual

 



 
soplo - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: El Control Dataview 
 
Hi: espero que me puedas ayudar, hace pocos dias estoi aprendiendo esto por mi mismo y bueno tengo una base de datos en mysql logre hacer la coneccion del datasource kn la tabla que quiero usar, pero no entiendo como hago para poder ver esta tabla en un dataview, intente siguiendo algunas sugerencias en paginas que encontre y ejemplos, pero okurre un error: Driver name missing....     ..... de antemano muchas gracias por tu ayuda
 



 
kaos_kofrn - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: El Control Dataview 
 
Hola kaos

Sería interesante que pusieras tu código por aquí, para poder ver qué estás haciendo mal.
En principio, el mensaje de error que recibes es bastante descriptivo: falta que declares la propiedad del tipo de base de datos que estás usando.

Suponiendo que Cn es tu objeto Connection:

Dim Cn as new Connection
Cn.type="mysql" ' ---> posiblemente te falte esto
Cn.host="localhost" '---> host donde se ubica tu motor mysql
Cn.login="usuario"
Cn.Password="1234"
Cn.name="base"  '---> nombre de tu bd
 


Saludos

P.D. Recuerda leer las normas del foro: No se permiten abreviaturas tipo SMS.
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: El Control Dataview 
 
Hola Kaos_kofrn.
Como bien te dice jguardon sería bueno que nos dieras alguna información adicional. Por ejemplo en este caso no se si has conseguido conectar la base y el error lo tienes posteriormente en el dataview o si el error lo da al conectar como te dice jguardon.

Desde luego si no le has puesto a la conexión la propiedad type no sabrá que tiene que abrir pero en ese caso no habrás conseguido establecer la conexión.
 



 
soplo - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: El Control Dataview 
 
Quisiera destacar que intente enlazar el control DataView a traves del contenedor DataSource y me guie por este excelente post, pero creo que hay algo que debo resaltar que no veo aqui y es que a mi particularmente el DataView no me mostro los registros hasta que hice lo siguiente adicional:
WITH Dataview1.GridView
    .Columns.Count = 4    'valor entero de acuerdo a las columnas que quiero visualizar de la tabla enlazada
END WITH
 


Espero le sirva a alguien que haya enfrentado el mismo problema!
 



 
DavidGrub - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: El Control Dataview 
 
En otra idea quisiera saber como puedo mostrar con el DataView algunos campos de una tabla, he logrado enlazarlo a traves de DataSource, pero me muestra todos los campos de los registros, yo solo quiero que me muestre algunos.

Ejemplo de la tabla:
id_users       name_users       age_users
0001            jhon                    31
0002            lethi                    34                      


Con esta tabla solo me interesa mostrar en pantalla los campos name_users y age_users

Gracias!
 



 
DavidGrub - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: El Control Dataview 
 
Tengo un datasourse y un dataview, los he utilizado en postgres y corren bien, cuando los utilizo con mysql 5 me da un error: query failed;you have an error in your sql syntax check the manual that corresponds to your MYSQL server version for the right syntax to use near ' from SCestados where (cod_edo='01') limit 64 at line 1
 
la sintaxis que utilizo es la siguiente:
TRY $hConn.Close
  $hConn = NEW Connection
  WITH $hConn
    .Type = "MySQL"
    .Host = "localhost"
    .Login = "root"
    .Password = "mike2000"
    .Name = "mysql"
  END WITH
 $hConn.Open

  DataSource1.Table = "SCestados"
   DataSource1.filter = "cod_edo='" & xcod & "'"   'aqui me da el error
  DataSource1.ReadOnly = FALSE
  DataView1.Grid = TRUE
  WITH DataView1.GridView
   .columns[0].text = "Cod. Edo"
   .columns[0].width = 100
   .columns[1].text = "Cod. Mun"
   .columns[1].width = 100
  END WITH
 DataSource1.Refresh

la tabla tiene indice primario
 



 
Miguel1813 - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: El Control Dataview 
 
Ah utilizo gambas 2.22 en ubuntu 11.04
 



 
Miguel1813 - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: El Control Dataview 
 
Hola Miguel

Puede ser un error de sintaxis, puesto que la variable 'xcode' no sabemos de qué tipo es, sin embargo en la sentencia sql la tratas como tipo string.

Yo siempre recomiendo usar sustituciones a la hora de concatenar texto con variables, de esta forma:

DataSource1.filter = Subst("cod_edo='&1'", xcod) ' si xcod es un string


o

DataSource1.filter = Subst("cod_edo=&1", xcod) ' si xcod es un entero


De esa forma tendremos menos líos a la hora de colocar las comillas, etc.

CUando usamos la otra sintaxis basada en la ejecución directa de sql mediante el método Exec de la clase Connection, incluso no tendremos que preocuparnos por el tipo de dato ni las comillas, porque gambas se encarga de hacer las conversiones.

http://www.gambas-es.org/viewtopic.php?p=3766#p3766

Saludos
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: El Control Dataview 
 
Ahora estoy conociendo mas a gambas. El codigo de posicionamiento ed celdas no me funciona. Me dice que esta linea no puede ser una sentencia. Alguine puede ayudarme?. Lo que intento es editar una celda de un DataGrid para cambiar el valor y luego guardarlo en la base de datos correspondiemte, pero la edicion no se ejecutarla. Saludos
 



 
gones - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
Ocultar¡Este tema fue útil?

 

Elegir valoración:                       

Media de valoración Valoración mínima Valoración máxima Número de valoraciones
10.00 10 10 1
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Colorear Fila De Un Dataview drjuano Controles/Librerías/Componentes 1 Jueves, 01 Septiembre 2011, 02:49 Ver último mensaje
RodSanRey
No hay nuevos mensajes Como Limpiar Un Dataview? v3ctor Controles/Librerías/Componentes 0 Martes, 07 Abril 2015, 11:52 Ver último mensaje
v3ctor
No hay nuevos mensajes Sumar Campos De Un Dataview pittusa Aplicaciones/Fragmentos de Código 4 Miercoles, 20 Junio 2012, 17:09 Ver último mensaje
luisrel
No hay nuevos mensajes Dataview Y Otras Grillas Editables En Gam... codificador Controles/Librerías/Componentes 0 Domingo, 23 Diciembre 2012, 15:42 Ver último mensaje
codificador
 

Publicar nuevo tema  Responder al tema  Página 1 de 2
Ir a la página 1, 2  Siguiente

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 0 invitados
Usuarios registrados conectados: Ninguno


 
Lista de permisos
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
No puede descargar archivos
No puede publicar eventos en el calendario