Autore Topic: Limiti GridView  (Letto 834 volte)

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Limiti GridView
« il: 16 Marzo 2010, 00:48:43 »
Già tempo fà in una precedente discussione accennai all'argomento in oggetto, è arrivato il momento di pormi e porvi la questione.
La GridView ha un limite di visualizzazione di righe?
Se si quale è il limite? Si può superarlo in qualche modo?

Se non gestibile con la GridView c'è un' altro oggetto più idoneo?

La mia domanda non è solo teorica per capirne il funzionamento, ma perche in pratica ho la necessità reale di visualizzare un elenco di voci (un listino ricambi) di circa 20.000 voci.

Aspetto indicazioni per gestire al meglio questa situazione.
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline Picavbg

  • Senatore Gambero
  • ******
  • Post: 1.620
    • Mostra profilo
Re: Limiti GridView
« Risposta #1 il: 16 Marzo 2010, 10:47:46 »
Io conosco ancora poco Gambas e tutti i suoi oggetti, però ho capito che a volte si possono presentare casi estremi di utilizzo come quello a cui stai accennando ora, per i quali trovare una risposta ad hoc, non è facilissimo. Perciò essendo un caso particolare, la risposta, secondo me, te la potrebbe dare direttamente Gambas. Se tu imposti per esempio
Codice: [Seleziona]
GriMovv.Rows.count = 50000

fra i comandi di configurazione della griglia, che ti risponde Gambas?
Ciao.
:ciao:

Offline Golia

  • Senatore Gambero
  • ******
  • Post: 1.298
  • no xe mai massa tardi
    • Mostra profilo
Re: Limiti GridView
« Risposta #2 il: 16 Marzo 2010, 12:31:53 »
io non mi sono posto il problema, ho caricato un listino di 22.000 record.
Unico problema come stiamo parlando in un altro post, un pò lento a caricare, circa 30 secondi

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: Limiti GridView
« Risposta #3 il: 16 Marzo 2010, 14:40:57 »
L'unico limite che ha la gridview è la memoria RAM.....la visualizzazione di tale componente infatti "disegna" il componente mantenendolo in memoria finchè esso esiste...

Tieni presente perciò che potresti avere problemi su vecchissimi Pc ma su un nuovo mostro con 2 GB di RAM non penso tu debba preoccuparti...

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.272
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: Limiti GridView
« Risposta #4 il: 16 Marzo 2010, 18:20:30 »
@Cesko

Il limite e' anche dato dalle proprieta' Rows.Count e Columns.Count che accettano come valore una variabile di tipo Integer...

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Limiti GridView
« Risposta #5 il: 16 Marzo 2010, 21:51:48 »
Quindi da quello che mi avete risposto teoricamente non dovrei avere problemi.

L'unico limite che ha la gridview è la memoria RAM.....la visualizzazione di tale componente infatti "disegna" il componente mantenendolo in memoria finchè esso esiste...

Tieni presente perciò che potresti avere problemi su vecchissimi Pc ma su un nuovo mostro con 2 GB di RAM non penso tu debba preoccuparti...
Con un Dual-processor e 4 Gb di Ram dovrei andare tranquillo.

Citazione
milio
Il limite e' anche dato dalle proprieta' Rows.Count e Columns.Count che accettano come valore una variabile di tipo Integer...
Mi puoi spiegare meglio.

Grazie delle risposte, provo e vi faccio sapere.
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.272
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: Limiti GridView
« Risposta #6 il: 16 Marzo 2010, 23:28:00 »
la variabile integer accetta valori compresi tra -2147483648 e +2147483647
« Ultima modifica: 16 Marzo 2010, 23:42:28 da milio »

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: Limiti GridView
« Risposta #7 il: 17 Marzo 2010, 13:04:36 »
la variabile integer accetta valori compresi tra -2147483648 e +2147483647

Questa è un limitazione di gambas e non della gridview....

Se usi la gridview ad esempio con il C puoi crearti un tipo di dato e te lo chiami doppio_int e lo fai valere il doppio di un intero normale...

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.272
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: Limiti GridView
« Risposta #8 il: 17 Marzo 2010, 13:33:49 »
Si, ma qui si sta parlando di gambas appunto :)

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: Limiti GridView
« Risposta #9 il: 17 Marzo 2010, 13:41:24 »
Io ho preso alla lettera la richiesta del nostro amico... ;)

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Limiti GridView
« Risposta #10 il: 18 Marzo 2010, 02:22:20 »
Eccomi qua, ho fatto tutte le prove che mi servivano, ho caricato 62.320 record su una tabella di MySQL ottimizzandola al meglio (secondo le mie conoscenze), visualizzati su GridView senza nessun rallentamento. Funziona alla grande :D :D

Golia@
Non so che Db usi (forse l'hai detto ma non ricordo) 20 secondi non sono pochi, hai provato sul Db la stessa query che usi per visualizzarli sulla GridView e verificarne i tempi?

Da tutte le prove che ho fatto ho potuto notare che incidono sulla velocità di selezione dei dati e quindi sulla visualizzazione anche come vengono impostate le tabelle e la struttura delle query, spesso si tratta di centesimi di secondo ma in certi casi si fanno notare.
Grazie a tutti
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)