Problema con ListView y DataBase

Iniciado por Skeletron, 12 Octubre 2009, 03:46 AM

0 Miembros y 1 Visitante están viendo este tema.

Skeletron

Cita de: seba123neo en 12 Octubre 2009, 06:15 AM
aca esta el ejemplo lo acabo de probar recien:

Código (vbnet) [Seleccionar]
        Dim vItem As ListViewItem
        While dr.Read
            vItem = New ListViewItem(dr("idestado").ToString)
            vItem.SubItems.Add(dr("nombre"))
            ListView1.Items.Add(vItem)
        End While
        vItem = Nothing


donde "dr" es el datareader...

Pero tio, es lo mismo que hice yo...
La diferencia, es que vos creas un item, le cargas los datos y luego lo subis al item ya con sus SUB DATOS... pero yo los ingreso a los sub-datos cuando el item esta cargado..
Vos decis que es mas eficiente esa manera??

raul338

Cita de: Skeletron en 12 Octubre 2009, 04:27 AM
AMigo, Te comento que uso SQLite.. Lo de las funciones FECHA, me gustaria que me lo expliques mejor... Sin administradores me manejo bien.. (por ahora)... Pero esta MUY MAL como lo estoy haciendo???
No estoy seguro si sea necesario guardar formateado (las pocas veces que lo use no me dio problema, ni con el MySQL), pero a la hora de devolverlo si lo tendras que formatear, sino lo tendras en el formato YYYY-MM-DD. (DateTime.Format("DD/MM/YYYY").ToString() creo que es)

Cita de: Skeletron en 12 Octubre 2009, 04:27 AM
En cuanto a lo del BOOLEAN, yo leí por ahí que SQLite si tiene el tipo BOOLEAN.. Corrigeme si me equivoco..
En cuanto al DOUBLE, si, es verdad, necesito numeros con COMA, de putno flotante, pero todavia no he mriado bien eso... Me gustaria que em digas cual es el tipo de dato de punto flotante para SQLITE
nunca lo vi, pero puedes usar bit como boolean. De todas forma guardalos con 0 y 1, y cuando devuelvas con un select, conviertelos con el Boolean.Parse o CBool


Cita de: Skeletron en 12 Octubre 2009, 04:27 AM
Y en cuanto a lo del lsitview, era eso, efectivamente, auqnue te comento que lo solucione antes que me lo digas :P
Pero se me presento un problea: Ahora no se ordena automaticamente, proque eso era el problema.. pero, tendria que ordenarlo manualmente entonces, así que puse que el usuario pueda ordenarlo manualmente pero no me funciona.. algo raro pasó.. no quiero preugntarte cual puede ser el problema, porque es algo totalmente ilogico.. per bueno.. seguire probando
Es medio atado con alambres la forma que hicistes, no se si funcionara el ordenado, pero yo siempre hacia asi: declaras un elemento ListViewItem, le pones los subitems y lo agregas a la grilla. De todas formas, si no funciona, el listview tiene eventos para cuando uno quiere ordenar.


Código (vbnet) [Seleccionar]
Dim item as New ListViewItem("Item")
item.Subitems.Add("SubItem1")
item.Subitems.Add("SubItem1")
item.Subitems.Add("SubItem1")
ListView1.Items.Add(item)

Skeletron

@Raul:
En cuanto a lo de la fecha, es mejor el formato YY MM DD, ya que apra ordenar, esa es la mejor manera.. ;) por mas que no sea la mas utilizada en Argentina, esa seria la mejor manera para ordenar :D

En cuanto a lo de atado con alambres... es verdad.. será mejor que les haga caso, hasta seguramente como ustedes dicen, es mas rapido...

Lo pondré en practica.. Y luego me pongo a ver como hago para que el usuario los ordene haciendo click en la columna :)

Skeletron

#13
En cuanto a lo de aprovechar la POO de vb.net, tendría que crear 1 clase para hacer el UPDATE, SELECT, INSERT y DROP?? o una clase para cada una de las 4 opciones?

Nunca utilicé (aunque no lo crean.. es que llevo poco tiempo utilizando .net) la POO en -net...
Si la utilizé y muy muchas veces en java...
En java hay 3 tipos de contructores... Por parametros, por copia y por defecto...
En vb.net los constructores se crean así???:

Por defecto:
Public Sub New()

Por parametro y copia:
Public Sub New(ByVal value As Integer)

raul338

#14
Cita de: Skeletron en 12 Octubre 2009, 20:33 PM
En cuanto a lo de aprovechar la POO de vb.net, tendría que crear 1 clase para hacer el UPDATE, SELECT, INSERT y DROP?? o una clase para cada una de las 4 opciones?

Nunca utilicé (aunque no lo crean.. es que llevo poco tiempo utilizando .net) la POO en -net...
Si la utilizé y muy muchas veces en java...
En java hay 3 tipos de contructores... Por parametros, por copia y por defecto...
En vb.net los constructores se crean así???:

Por defecto:
Public Sub New()

Por parametro y copia:
Public Sub New(ByVal value As Integer)

jamas escuche eso (asi que supongo que no). No, generalmente se hace una clase por tabla (o grupo de tablas si estan relacionadas) con las 4 funciones: select, insert, update, delete y derivados (select from where)

Aunque para copiar clases, en vb.net no te sirve

Código (vbnet) [Seleccionar]
Dim clase1 As New MiClase("Raul338", 3)
Dim clase2 As MiClase = clase1

clase1.Nombre = "ra"
msgbox(clase2.nombre) ' RA
clase2.Nombre = "ul338"
msgbox(clase1.nombre) ' ul338


Lo que debes hacer es implementar la interfaz IClonable, te creará una funcion que devuelve la misma clase, lo que debes hacer ahi es instanciar una nueva clase y asignarle los mismos campos primitivos (no clases). O aun mejor y mas simple, serializar y deserializar en memoria. (Tal vez no te sirva todavia todo esto que te estoy diciendo, pero tengo ganas de escribir jajaj)

Skeletron

Pero amigo, para poder hacer:
Dim clase1 As New MiClase("Raul338", 3)

La clas MiClase tiene que tener un Constructor!

Skeletron

Para ser mas preciso, me refiero a ésto:
http://www.startvbdotnet.com/oop/constructor.aspx
o a:
http://www.java2s.com/Code/VB/Class/Constructorwithparameters.htm (por mas que el link sea java2s.. vos mria lo mismo, es de vb.net.. mira la aprte de:  Public Sub New(ByVal dt As DateTime) )