Este foro usa cookies
Este foro utiliza cookies para almacenar su información de inicio de sesión si está registrado y su última visita si no lo está. Las cookies son pequeños documentos de texto almacenados en su computadora; las cookies establecidas por este foro solo se pueden usar en este sitio web y no representan ningún riesgo de seguridad. Las cookies en este foro también rastrean los temas específicos que ha leído y la última vez que los leyó. Si Ud. continúa navegando, entenderemos que acepta todas las cookies.

Se almacenará una cookie en su navegador, independientemente de la elección, para evitar que se le vuelva a hacer esta pregunta. Podrá cambiar la configuración de sus cookies en cualquier momento utilizando el enlace en el pie de página.

El foro antiguo se encuentra accesible desde https://foro.gambas-es.org en modo de solo lectura.

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

Campos claves
#1

Buenas!.

En un ejemplo de base de datos tengo dos tablas, gastos y categorías. Los registros de cada tabla se muestra en su tableView correspondiente.

Hay algunas columnas en ambos tableViews que su ancho están a cero para que no se vea su contenido, estas columnas contiene los campos claves,
donde se encuentran las claves o llaves primarias. El ancho a cero está hecho a drede, mientras no modifiques el diseño no tienes por que ver nada.
( No tienes por que pensar que se ocultaba de esa forma , de principio no tienes ni idea.).

¿ Es la forma tradicional hacerlo así ?. En parte no lo creo ya que puedo mover con el cursor del ratón y ajustar los anchos del tableview y hacerlo visible. ( Como hice ).
Como fui cambiándole el diseño, se llega a ver, como mínimo la última de los gastos. La primera de gastos no tiene por que verse, al igual que la primera de categorías.
( Mientras no toques con el ratón y no sepas que eso existe ). Smile

[Imagen: yXrLysr.png]

Saludos

"Pero no toques, por qué tocas? - Amador"
    ¡Gracias!
#2

Hola.

  Se me ocurren dos posibles soluciones.
 Una: hacer una llamada a la base de datos que solo devuelva los datos que vayas a visualizar, con lo cual te evitas el problema.
 Dos: en el evento Data solo mostrar los datos que te interese, algo asi:
GAMBAS
  1. Public Sub GridView1_Data(Row As Integer, Column As Integer)
  2.  
  3.   Dim a As String[] = ["fecha", "cantidad", "precio"]
  4.   resultado.MoveTo(Row)
  5.  
  6.   GridView1.Data.Text = resultado[a[Column]]
  7.  



 Aunque tampoco me voy a arriesgar a decir que es la solución más óptima.

Un saludo.
[-] Los siguientes 1 usuarios dice gracias a guizans por este post:
  • Shell
    ¡Gracias!
#3

Este tema se me presentó muy a menudo en el curro. La visión de las claves en el gridview es incómoda... pero a veces necesaria, sobre todo en la depuración de datos (registros duplicados o campos coincidentes, etc.).

La solución de Guizans es totalmente correcta (aunque yo le añadiría un poco de flexibilidad sustituyendo los nombres de los campos por su posición dentro del Result, que los nombres no son de fiar).

Aplicando la solución de Shell añadí la propiedad "Widths", que es un integer[] con los anchos de las columnas. A le que ponías 0 se ocultaba la columna, si ponías otro número se aplicaba ese ancho y si no ponías nada la columna era de ancho variable.

El tema de la propiedad Widths podéis verlo en la serie de vídeos que subí sobre la extensión de Gridview hace un tiempo... si no me falla la memoria.

Saludos

No podemos regresar
[-] Los siguientes 1 usuarios dice gracias a Shordi por este post:
  • Shell
    ¡Gracias!
#4

Uno de los problemas que nos encontramos cuando aprendemos algo en programación, es la extensión del código.
Al principio creía que iba a ser más corta. Cuando lo hace uno mismo, tu lo entiendes, pero cuando es otro  o muchos otros,
es más complicado.

Esta base de datos en concreto que se supone que es para aprender, es realmente compleja, tiene como mil líneas de código.
La documentación del proyecto también es grande todo en inglés (normal, pero esto también se lo tienen que aplicar los que hablan inglés si
un proyecto o libro de programación está en español, ellos también deben traducir. La tarea es la misma para todos ).

En la documentación viene todo detallado, mapeado cada proceso o función. Ya no es que sea la base de datos, está enseñando
a como se debe organizar un proyecto, a como estudiarlo.
 
(11-01-2023, 11:33)Shordi escribió:  Aplicando la solución de Shell añadí la propiedad "Widths", que es un integer[] con los anchos de las columnas. A le que ponías 0 se ocultaba la columna, si ponías otro número se aplicaba ese ancho y si no ponías nada la columna era de ancho variable.

No es mi solución, es lo que estoy aprendiendo del manual que os comenté hace unos días.Tiene muchos ejemplos y uno es la
creación de una base de datos. Le modifiqué el diseño, tema de colores, añadí contenedores, etc.

Esta es la documentación original y os recomiendo que conozcáis. Es interesante. Su autor es Gerry Buzolic.

A book by Gerry Buzolic Programming Gambas from Zip
 
Cita:El tema de la propiedad Widths podéis verlo en la serie de vídeos que subí sobre la extensión de Gridview hace un tiempo... si no me falla la memoria.

Estuve viendo desde el principio los videotutoriales. Son muchos y como dije arriba del todo, el código se va complicando y hay que retomarlo.
No es algo fácil y tampoco lo es para el que lo crea, en parte es que requiere mucho tiempo, dedicación, aclaraciones. Pero prometo que volveré
a retomarlo y volver a preguntar..jeje.  Smile

Cuando en su día conocí M$ Access no recuerdo si las tablas mostraban los campos de las claves primarias.
Es que en realidad no es algo que le interese al usuario y por otro lado no queda bien, sobre todo si es para algo profesional.

Saludos

"Pero no toques, por qué tocas? - Amador"
    ¡Gracias!
#5

Cita:Esta base de datos en concreto que se supone que es para aprender, es realmente compleja, tiene como mil líneas de código.
La documentación del proyecto también es grande todo en inglés (normal, pero esto también se lo tienen que aplicar los que hablan inglés si
un proyecto o libro de programación está en español, ellos también deben traducir. La tarea es la misma para todos ).

En la documentación viene todo detallado, mapeado cada proceso o función. Ya no es que sea la base de datos, está enseñando
a como se debe organizar un proyecto, a como estudiarlo.
 
¿De qué base de datos hablas?

Por otro lado mil líneas de código no son nada dentro de un proyecto míminamente sólido. El gbAmp (y lo cito por ser mi último proyecto casi finalizado) tiene casi cinco mil, y el anterior, el Soprano, unas cinco mil quinientas (sin olvidar que esta última versión era la simplificada) y no hablemos de programas serios. Los tres desarrollos principales que hice para mi empresa, Intriga, Gabinete y Shinigami ocupaban 14.343, 14.973 y 21.104 lineas respectivamente. La longitud no es ningún problema si el código está mínimamente bien estructurado y modularizado. Pero cuando empiezas a encontrar funciones de 800 líneas que contienen ifs de 300 y cosas por el estilo... échate a temblar.

Saludos

No podemos regresar
    ¡Gracias!
#6

(11-01-2023, 17:50)Shordi escribió:  ¿De qué base de datos hablas?

Te muestro el enlace donde habla del capitulo de bases de datos en Sqlite.

Programming Gambas from Zip/SQLite
 
(11-01-2023, 17:50)Shordi escribió:  Por otro lado mil líneas de código no son nada dentro de un proyecto míminamente sólido

En un proyecto para aprendizaje se vuelve algo enrevesado. Repaso las estadísticas del proyecto.

[Imagen: uzxSbfe.png]

Naturalmente que los proyectos suelen tener un montón de líneas, sobre todo si lo requiere.
Es solo que es más complicado a la hora de estudiarlo, planificarlos y quererlos mostrar al resto de la comunidad
si se quiere hacer un videotutorial, son muchas horas de estudio por ambas partes. La planificación y esqueleto
del proyecto se hace necesario. No es cuestión solo de mi proyecto hace esto, es aprender como se ha creado
y que recursos del lenguaje se ha utilizado. Y sobre todo no perderse por el camino.

"Pero no toques, por qué tocas? - Amador"
    ¡Gracias!


Posibles temas similares…
Tema / Autor Respuestas Vistas Último mensaje

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)