Newsgroup: it.comp.appl.access
Titolo: Numero di Record in maschera

salve a tutti ...
volevo chiedere se è possibile in una maschera
far comparire in una casella il numero dei record trovati
nella maschera ... mi spiego meglio....
ho una maschera di ricerca...
se trovo Pippo Calò, nella barra inferiore della maschera
se la condizione esiste dice " Record 1 di 7 (filtrati)
ebbene a me servirebbe fare una casella in cui esce
questo risultato... dato che lo devo fare con un bel numero
grosso... dato che l'operatore del Pc non ci vede bene...:-)
grazie per l'aiuto....
-- 
;o) SuperPippo®

" SuperPippo®" <ik0qd...@SPAMlibero.it> ha scritto nel messaggio
news:55kMa.137400$Ny5.3...@twister2.libero.it...

Prova ad impostare come Origine una Funzione del tipo:
Public RecNumber() as Long
    RecNumber=Me.recordsetClone.RecordCount
End Function
OrigineControllo =RecNumber()
Ciao.
@Alex.

 OrigineControllo =RecNumber()
------------
Ciao Alex... sai che non sono molto pratico di Access..cmq..
ho creato nella maschera una casella di testo non associata
nella riga Origine controllo ho scritto RecNumber() (devo aggiungere
anche il segno uguale?? )
poi ho inserito il codice... nella casella mi esce #Nome?
dove sbaglio ??
Private Sub Testo85_BeforeUpdate(Cancel As Integer)
Public RecNumber() As Long
    RecNumber = Me.RecordsetClone.RecordCount
End Function
End Sub
--------------
Ciao...

 End Sub
Diventerà solo:
 Public Function RecNumber() As Long
     RecNumber = Me.RecordsetClone.RecordCount
End Function
Ciao.
@Alex.

 End Function
...........
Ok... Alex... ora non ho errori ma...vi è qualche piccolo difetto...
come apro la maschera ci trovo scritto "501"...
poi ho provato a filtrare delle ricerche ma mi restituisce il numero
1 se l'utente in realtà è uno ed il numero 2 se gli utenti trovati sono
più di uno...esempio... Pinco pallino ne sono 114 ma ne segna 2...
come mai ???

" SuperPippo®" <ik0qd...@SPAMlibero.it> ha scritto nel messaggio
news:SjFMa.141627$lK4.3...@twister1.libero.it...

Non so come gestisci le varie filtrature, è chiaro che devi eseguire
un Requery, io per sicurezza ho provato su una mia Form e
funziona regolarmente.
Questo per dirti che forse c'è qualche altro problema nella gestione
dei Record a darti inceppamenti........!
Però sinceramente non saprei cosa suggerirti......!
@Alex.

 come mai ???
Me.RecordsetClone.MoveLast
RecNumber = Me.RecordsetClone.RecordCount
--
HTH
Karl
*********
Access-FAQ (tedesco): 
http://www.donkarl.com


A me con il RecordsetClone non ha mai dato difetti come
nella gestione dei Recordset.........!!!
E' un casò......?????
Ciao Karl.
@Alex.

 E' un casò......?????
Un form e il suo Recordset(Clone) lavoro con siti (pages) di memoria.
RecordCount conta giustamente per il primo sito della memoria.
Il problema si presenta se ci sono più record che trovano posto
in un sito perché solo i record di un sito vengono caricati e così
sono visibili per Recordcount. Per questo un MoveLast aiuta.
Devi provarla con qualche centinaio di record per vedere l'effetto.
--
cu


 sono visibili per Recordcount.
Per non essere equivoco:
Anche i record del sito attuale non sono contato giustamente
nel caso che i record superarono un tale unità della memoria,
ma Access/DAO solo aggiungiono 1 al numero del record
corrente o simile. Non si può fidare a quanti record sono
accesi per Access in questo caso.


 ..------------
grazie Alex e Karl per l'aiuto.-...
con la routine di Karl cmq.. funziona perfettamente...
grazie....
ne approfitto per chiedere altre 2 cose sucuramente
banali per voi esperti di Access...
da una maschera principale di ricerca apro un'altra
maschera che però si apre troppo grande...
come fare a "fissare" una misura fissa di una seconda
maschera ??? (non è popup)...
infine è possibile far lampeggiare il testo in un'etichetta ???
oppure devo inserire una casella di testo ??
grazie ancora per l'aiuto....

" SuperPippo®" <ik0qd...@SPAMlibero.it> ha scritto nel messaggio
news:mrUMa.143545$lK4.4...@twister1.libero.it...

Per la misura della Form la fai come vuoi in struttura e poi SALVA.
Ovvio devi impostare la proprietà Dimensione Automatica=No.
Per il lampeggio devi mettere una Routine nell'Evento OnTimer
dopo aver impostato il TimeInterval=500(in millisecondi)
Nell'Evento metti:
Me.TuaLaber.Visible=Not Me.TuaLabel.Visible
Per Karl:
Ho capito perfettamente, in effetti ho visto che io sono
abituato a far lavorare il DB estraendo una Qry filtrata
il più possibile, questo per le dimensioni delle Tabelle
per la tipologia di servizio che mi deve fare, e realmente
il tutto si riduce a qualche decina di Record.
Ho provato su 100.000 Record e 2 volte su 10 mi ha
dato problemi, quindi Ottimo consiglio.
Grazie.
@Alex.

 maschera ??? (non è popup)...
...
<F1> MoveSize
-- 
HTH


 <F1> MoveSize
--------------------------
ho notato una cosa.. nella prima maschera ho
in apertura un DoCmd.Maximize
e di conseguenza mi apre anche la seconda maschera
in forma massimizzata...
se provo ad aprire la prima maschera piccola anche
la seconda è piccola...
ho provato il suggerimento di Karl... sotto
ma esce un errore..(lo sò sono una frana in Access)
Private Sub Form_Load()
DoCmd.MoveSize ([Width 15,5)],([Height 8,0)]
End Sub
------
inoltre...
Per il lampeggio devi mettere una Routine nell'Evento OnTimer
dopo aver impostato il TimeInterval=500(in millisecondi)
Nell'Evento metti:
Me.TuaLaber.Visible=Not Me.TuaLabel.Visible
non trovo nella Proprietà della casella l'evento On timer..
dove è ???
grazie..

 grazie..
E' UN EVENTO DI FOOOOOOOOOOOOOOOOOOOOOOORM!
--
a.cara 
Togli qualcosa dall'email

 E' UN EVENTO DI FOOOOOOOOOOOOOOOOOOOOOOORM!
grazie...anche per questo suggerimento... ma ti prego non urlare... :o))
... riguardo al lampeggio ci sono riuscito... ma
lampeggia tutta la casella... vi è modo di far lampeggiare
solo il numero contenuto ???
di nuovo grazie...

 solo il numero contenuto ???
e' perche' hai agito sulla visibilita'. Dovresti agire sul colore di foreground
modificando lo stesso in questo modo (e' un esempio)
if ctl.forecolor = ctl.backcolor then
        ctl.forecolor = 0 (nero, se il backcolor e' nero allora potrebbe essere
ctl.forecolor=rgb(255,255,255))
else
        ctl.forecolor = ctl.backcolor
end if


 form massimizzate e non a meno che non siano di dialogo
C'č un workaround che sempre uso per la maschera
principale in questo caso:
http://support.microsoft.com/default.aspx?id=210123
Ma sei tu che a il permesso di spiegarlo al SuperPippo. ;-)
-- 
cu


 Ma sei tu che a il permesso di spiegarlo al SuperPippo. ;-)
come direbbero gli inglesi, questo e' un "cucumber"? ;<)


 come direbbero gli inglesi, questo e' un "cucumber"? ;<)
-------
ok, ok... cmq riguardo la maximizzazione delle maschere
e non,.... andrò a vedere il workaround di Karl....
riguardo al lampeggio ho risolto...con i colori di backcolor...
ma vorrei chiedere se è possibile e come far lampeggiare
il numero solo se è maggiore di 1 (>1)
il codice utilizzato è il seguente... cosa dovrei fare ???
------------------------------
Private Sub Form_Timer()
Me.NumRec.Visible = Not Me.NumRec.Visible
End Sub
-----------------------------
grazie Alexandro.. e chiaramente anche al gentile Karl ...
colgo l'occasione per augurarvi un felice week end...
Ciao...

 -----------------------------
come sarebbe che il codice che utilizzi e' questo, non hai scritto che
ora usi il backcolor?
cmq, ti sei risposto da solo!
if numrec > 1 then
    esegui codice per il "lampeggiamento"
end if
--
a.cara
togli qualcosa dall'email