Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - Visualizzazione ricerca dati
Forum - Visual Basic 6 - Visualizzazione ricerca dati

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
claudio1962 (Normal User)
Newbie


Messaggi: 17
Iscritto: 25/08/2009

Segnala al moderatore
Postato alle 22:41
Martedì, 22/09/2009
Buonasera a tutti, :)
sto cercando di fare (autodidatta) un programma per il gioco del Lotto.
Con Ado in VB6 cerco i dati  da un archivio .dbf e li visualizzo in un Datagrid in questo modo:
Codice sorgente - presumibilmente VB.NET

  1. sSQL = sSQL & " SELECT Estratti.Estraz,Concorso,BA1,BA2,BA3,BA4,BA5 "
  2.  sSQL = sSQL & " FROM Estratti"
  3.  sSQL = sSQL & " Where BA1= '" & Text69.Text & "'"
  4.  sSQL = sSQL & " OR BA2= '" & Text69.Text & "'"
  5.  sSQL = sSQL & " OR BA3= '" & Text69.Text & "'"
  6.  sSQL = sSQL & " OR BA4= '" & Text69.Text & "'"
  7.  sSQL = sSQL & " OR BA5= '" & Text69.Text & "'"
  8.  Rs.Open sSQL, cn, adOpenStatic, adLockOptimistic, adCmdText
  9.  
  10.   Set DataGrid6.DataSource = Rs


La mia domanda è questa :
come posso fare per visualizzare su datagrid o altro solo le x estrazioni successive al numero trovato. 8-|
In pratica se chiedo di trovarmi il numero 15 nel datagrid dovrei visualizzare per esempio le 9 estrazioni successive all'uscita del numero 15.
Con la speranza di essere stato chiaro attendo fiducioso un consiglio e aiuto. ;)

PM Quote
Avatar
zemas (Normal User)
Newbie


Messaggi: 11
Iscritto: 16/07/2009

Segnala al moderatore
Postato alle 8:25
Mercoledì, 23/09/2009
Ciao Claudio 1962,

potresti provare così:

Rs.Filter = "NumeroEstrazione >'" & 15 & "'"

PM Quote
Avatar
claudio1962 (Normal User)
Newbie


Messaggi: 17
Iscritto: 25/08/2009

Segnala al moderatore
Postato alle 19:41
Mercoledì, 23/09/2009
Ciao zemas,
ma così non ottengo quello che mi serve.
In pratica ogni qualvolta la ricerca rileva il numero 15 deve visualizzarmi le nove estrazioni successive.
Grazie


PM Quote
Avatar
claudio1962 (Normal User)
Newbie


Messaggi: 17
Iscritto: 25/08/2009

Segnala al moderatore
Postato alle 10:08
Sabato, 26/09/2009
Nessuno può consigliarmi :d

PM Quote
Avatar
Alfonso (Normal User)
Rookie


Messaggi: 37
Iscritto: 16/05/2009

Segnala al moderatore
Postato alle 23:19
Sabato, 26/09/2009
Se come penso Concorso è il numero del concorso e tu vuoi i nove concorsi successivi

Con la tua sql memorizzi il numero del concorso e poi crei una sql del genere:

sSQL = "SELECT TOP 9 BA1,... ecc FROM Estratti WHERE Concorso=" & numero del concorso & " ORDER BY Concorso"

PM Quote
Avatar
claudio1962 (Normal User)
Newbie


Messaggi: 17
Iscritto: 25/08/2009

Segnala al moderatore
Postato alle 17:59
Domenica, 27/09/2009
Ciao Alfonso,
grazie per l'indicazione
In pratica dovrei fare due SQL una prima per la ricerca del numero, e una seconda che all'uscita di quel numero mi visualizza le nove estrazioni successive e ricomincia la ricerca. Purtroppo da autodidatta non riesco a sviluppare molto potresti fare un esempio o indicarmi qualke link dove trovare spunto :-?
Concorso equivale a numero consecutivo dei concorsi ma la ricerca la vorrei fare su Estraz che corrisponde alla data di estrazione.
Ti ringrazio nuovamente :)

PM Quote
Avatar
Alfonso (Normal User)
Rookie


Messaggi: 37
Iscritto: 16/05/2009

Segnala al moderatore
Postato alle 20:56
Domenica, 27/09/2009
Purtroppo non so darti indicazioni più particolareggiate su come fare con il datagrid perchè non ho mai usato un datagrid.
Presumo che con la tua SQL tu abbia una lista di tutte le estrazioni dove è presente il numero 15
Scegli nella colonna della data il valore rappresentato da cui vuoi partite per vedere le 9 estrazioni successive, e assegnalo ad una variabile

per es.
Dim D as string
D ="20/03/09"  ovvero quella scelta da te

La tua seconda Sql sarà:

sSQL = "Select Top 9 Estratti.Estraz,Concorso,BA1,BA2,BA3,BA4,BA5"
sSQL = sSQL & " FROM Estratti WHERE Estratti.Estraz >" & "#" & Month(D) & "/" & Day(D) & "/" & Year(D) & "#"
SQL = sSQL & " ORDER BY Estratti.Estraz"

Il primo suggerimento che ti do è scrivere queste tre righe in questo modo:

sSQL = "Select Top 9 Estratti.Estraz,Concorso,BA1,BA2,BA3,BA4,BA5" & _
       " FROM Estratti WHERE Estratti.Estraz >" & "#" & Month(D) & "/" & Day(D) & "/" & Year(D) & "#" & _
       " ORDER BY Estratti.Estraz"

Si evitano inutili assegnazioni di variabili temporanee.

La formattazione della data nel formato   #mese/giorno/anno# è valida per i database Access .mdb, ma tu parli di un database .dbf.
Non so se il campo data è trattato allo stesso modo.

PM Quote
Avatar
claudio1962 (Normal User)
Newbie


Messaggi: 17
Iscritto: 25/08/2009

Segnala al moderatore
Postato alle 22:44
Domenica, 27/09/2009
Ciao Alfonso,
nel datagrid ho tutte le estrazioni dal 1939 in poi,
purtroppo non posso segliere una data in quanto con la query gli indico di ricercarmi un numero (es. 15) e ogni qualvolta (dal 1939 ad oggi) lo rintraccia parte da quella data e mi visualizza le nove estrazioni successive.
La ricerca continua con il ritrovamento di un'altro numero 15 e successive nove estrazioni e così via.
Credo che ci voglia una query nella query oppure un Loop ma non sò come impostarlo.
Comunque ti ringrazio tanto per la tua attenzione, :k:
se hai altre idee te ne sarei grato. :)
Ciao

PM Quote
Avatar
Alfonso (Normal User)
Rookie


Messaggi: 37
Iscritto: 16/05/2009

Segnala al moderatore
Postato alle 11:07
Lunedì, 28/09/2009
Potresti usare un secondo datagrid slegato dal recorsdset

Scorrere la prima griglia assegnando per ogni riga la data di estrazione ad una variabile

For i = Prima riga TO UltimaRiga
     D=data estrazione riga(i)
     Sql2 ....    WHERE  data = D
     aggiungere da programma i dati dei 9 record alla Griglia2
Next

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo