Newsgroup: it.comp.appl.access
Titolo: recordcount ?

Scusate la domanda che potrą sembrare stupida...
Le righe di codice  che seguono sono una parte della classica apertura di un
recordset
nell'help mi si dice che recordcount " va riempito" cioč ci si deve
spostare sull'ultimo record per ottenere il valore del numero di record
contenuto nel recorset ( non vorrei sbagliarmi...)
Mi spegate perchč nell'esempio qui sotto dal primo ciclo num assume subito
il valore di 518 cioč dell'ultimo record?
.....
rst.MoveFirst
    Do Until rst.EOF
    num = rst.RecordCount
    codMed = rst.Cod_MED
......
grazie per la spiegazione ...
volevo semplicemente, nel ciclo di calcolo che svolge il programma,
visualizzare un numero che mi indicasse lo scorrere del recordset...
bce...@tiscalinet.it
P.s.
Ho visto un sito (praticamente un mirror del sito comune) ...
Quando si copia qualcosa sarebbe perlomeno corretto citare la fonte,
altrimenti si chiama scopiazzatura....


Perchč RecordCount ritorna sempre e solo il numero di record presenti nel
recordset, indipendentemente da dove si trova il puntatore in un dato
momento.
Usa all'interno del ciclo un contatore.


num = rst.AbsolutePosition + 1
num ritorna la posizione del record nel recorset corrente.
Poiche' AbsolutePosition e' su base 0, lo devete incrementare di uno.
    Paolo



 momento.
Non è corretto quello che dici.
RecordCount può restituire il numero totale dei record, ma non sempre.
Se il recordset ha 10000 record e la pagina del recordset è di 1000,
RecordCount ritornerà 1000.
Muovendosi alla fine del recordset, invece, l'oggetto Recordset avrà avuto
modo di contare quanti sono effettivamente i record presenti nel recordset.
Normalmente non è indispensabile questa procedura, ma è sicuramente più
sicura.
L'uso di AbsolutePosition può andare bene per sapere qual'è il record
corrente, ma non per avere un totale.
Se si vuole gestire una barra di progressione o un "[n] record di [ntot]"
nella barra di stato, o altrove, è necessario sapere anche il totale dei
record (e, a questo punto, utilizzare un banale cotnatore per sapere qual'è
il record corrente).

momento.
Niente di piu' falso...RecordCount conta fino al record corrente!
E poi 'ritornare' e' intransitivo!:-)
Saluti.
Luciano

 Poiche' AbsolutePosition e' su base 0, lo devete incrementare di uno.
Ahi, ahi, ahi! Sei sicuro? Guarda che la posizione del recordset è anche lei
su base 0 come AbsolutePosition!
Ho fatto una serie di routines che usano queste due proprietà per reperire
dei records a l'interno di un recordset, e funziona perfettamente, nel senso
che non mi va a cercare il record seguente... ma quello che gli ho detto io.
Forse confondi con il contatore della tabella (se c'è) che è su base 1 :-)
Ciao
Thierry

E poi 'ritornare' e' intransitivo!:-)
Falso, e' anche transitivo (limitativamente ad alcune regioni) con
l'accezione
di rendere, restiture, usatissimo tra informatici: "quella funzione ti
ritorna il
valore x", quindi lo diventera' anche a livello nazionale.
"Intendeva ritornarlo", lo ha scritto Boccaccio.
La lingua non e' statica, si evolve.
    Paolo

 Record n. x di y.
Sě, sě va beh... avevi parlato di recordset non di controllo. In questo caso
c'č una differenza di cui tenere conto.
Soprattutto che nel caso di un controllo con intestazione, il primo record č
il n. 1 e non lo 0 come in un controllo senza intestazione:-))
Ciao
Thierry

RecordCount ritornerą 1000.
mi pare che se setti un recordset su una tabella locale, non allegata
e senza query di mezzo, recordcount restituisce subito il numero di
record della tabella.
tra l'altro recordcount e' anche proprieta' di tabledef, per cui se si
hanno tabelle popolatissime (diciamo sopra i 100mila record) si fa
prima a controllare il recordcount della tabledef che non quello del
recordset.
--
il sito comune di it.comp.appl.access:
http://members.xoom.it/it_db_access/