Newsgroup: it.comp.appl.access
Titolo: barre di scorrimento su esecuzione query

Ciao a tutti, ho un db con delle tabelle di circa 500.000 records e
quando eseguo una query con dei parametri di selezione impiega dai 10
ai 15 secondi per restituirmi i records richiesti, E' possibile
associare a questa query una barra di scorrimento che mi permetta di
vedere l'avanzamento della ricerca della query? Grazie in anticipo

sergiofanti@hotmail . it ha scritto:

L'unica cosa che mi viene in mente, in velocità, è attivare la barra di stato di Access. Ad ogni qry che lanci (anche da codice) ti mostra l'avanzamento in basso a sinistra.....Io nn ho trovato alternative....forse con le API ma nn ci giurerei.....l'unica altra maniera che mi viene in mente è eseguire la qry, calcolare i tempi, rieseguire utilizzando la barra di progressione sui tempi calcolati in precedenza....ma vien da se che nn è molto performante.....fammi sapere che se trovi un'altra soluzione sicuramente mi interessa!!!!
PS a meno che al posto dell'SQL nn adotti l'accesso sequenziale (li nn hai problemi per calcolare i tempi)....ma non credo che il gioco valga la candela....
-- 
Questo articolo e` stato inviato dal sito web 
http://www.nonsolonews.it

 ha scritto nel messaggio 
news:335773b0-5e17-40fb...@l64g2000hse.googlegroups.com...

Puoi utilizzare la barra di avanzamento di access con il metodo SysCmd
Legato a questo hai:
acSysCmdClearStatus
acSysCmdSetStatus
acSysCmdIniMeter
acSysCmdUpdateMeter
acSysCmdRemoveMeter
Nella guida troverai informazioni a riguardo.
Trovi inoltre molte altre info sulle barre di avanzamento nei vari siti di 
competenza
www.accessgroup.it
www.alessandrobaraldi.it
www.sitocomune.com
Ciao
-- 
Roberto da Parma 

 Roberto da Parma
[risposta]
grazie roberto, potresti però postarmi il codice per questa barra
magari da poter adattare alle mie esigenze?
Sulle barre di progressione sono assolutamente ignorante!!!!! grazie


 [risposta]
Ciao e scusatemi, sono andato sul sito comune, ho scaricato diversi
esempi, ho letto molti post precedenti, risultato?
Non ho trovato nulla su una barra di progressione che possa farmi
vedere la progressione dell'elaborazione di una query di selezione;
scusate la mia domanda troppo diretta: con access è possibile creare
una barra di progressione da associare all'elaborazione di una query?
E se si, come è possibile farla? Scusatemi di nuovo e ciao

 ha scritto nel messaggio 
news:e43b91c3-b35b-445f...@f63g2000hsf.googlegroups.com...

Puoi usare il codice che ti riporto in fondo....più di così....
Ciao
-- 
Roberto da Parma
Private Function Elabora2()
    Dim dbs As Database
    Dim rst As Recordset
    Set dbs = CurrentDb
    Set rst = dbs.OpenRecordset("Test") 'cambia il nome con la tua tabella o 
query
    Call SysBarraProgressione(0, rst)
    Do While Not rst.EOF 'qui dentro poi eseguire le operazioni che vuoi 
fare con la query o semplicemente leggerla
        rst.Edit
        rst!Totale = rst!PrezzoUnitario * rst!Quantità
        Sleep (50) ' per allungare l'attesa nel TEST
        rst.Update
        Call SysBarraProgressione(1)
        rst.MoveNext
    Loop
    rst.Close
    Call SysBarraProgressione(2)
End Function
'Questa è la barra di progressione nella barra sys
' bytOperazione = 0 -> inizializza  - obbligatorio rst
' bytOperazione = 1 -> progressione
' bytOperazione = 2 -> chiusura
Public Static Function SysBarraProgressione(bytOperazione As Byte, Optional 
rst As Recordset)
    Static mtRst As Recordset
    Static numMax As Long
    Static numPos As Long
    Static varDummy As Variant
    Select Case bytOperazione
    Case 0
        Set mtRst = rst
        mtRst.MoveLast
        numMax = mtRst.RecordCount
        numPos = 0
        varDummy = SysCmd(acSysCmdInitMeter, "Elaborazione: ", numMax)
        mtRst.MoveFirst
    Case 1
        varDummy = SysCmd(acSysCmdUpdateMeter, numPos)
        numPos = numPos + 1
    Case 2
        varDummy = SysCmd(acSysCmdClearStatus)
    End Select
End Function 

 - Mostra testo citato -
[risposta]
Grazie Roberto per la disponibilità e con il tuo codice sono sulla
buona strada, ci studierò un po su e riuscirò nel mio intento, ti
ringrazio nuovamente, ciao ciao

 ha scritto nel messaggio 
news:c6312401-5846-4498...@a18g2000pra.googlegroups.com...

[risposta]

Facci sapere se ci salti fuori... :-)
