Newsgroup: it.comp.appl.access
Titolo: recordsetclone e controllo calcolato

Buona sera a tutti,
ho un problemino: ho una maschera con una sottomaschera; nella
sottomaschera ho dei controlli calcolati ottenuti attraverso dei DSum.
Ho creato un msc.recordsetclone della sottomaschera così da poter
lavorare tranquillamente solo sui record filtrati; il problema è che
il controllo calcolato (inserito in una text box) non viene visto:
tant'è che ho l'errore "elmento non trovato in questo insieme".
Sicuramente sono io che sto "forzando" l'uso del recordsetclone... ma,
in alternativa come posso fare a lavorare sui record presenti nella
sottomaschera? In particolare devo controllare che il valore del
controllo calcolato sia maggiore di zero!
Grazie

 Grazie
Siamo qui per servire.
-- 
ac (x=y-1)

se non ho capito male mi stai consigliando di utilizzare un riferimento del tipo:
Forms!Msk_Main!Msk_ggEstr.Form!Sospeso ?
se è così, purtroppo, non funge... mi riporta sempre e solo il valore del primo record (la maschera è continua, avevo scordato di mensionarlo, sorry!)


Che la maschera fosse continua era una previsione (quasi) scontata.
Non esattamente cosi:
set myRef = subform.recordset
myref.movefirst
do until myref.eof
         x=me!sospeso(*)
	myref.movenext
loop (**)
(*) se la gestione avviene sul subform altrimenti un potente 
subform!sospeso. Si vede che vi piace scrivere, fate sempre, come si 
dice dalle parti mie, "sti giri de peppe intorno alla reale"
(**) se hai bisogno, al termine, di riposizionarti devi conservare il 
numero di record di inizio e fare:
record.movefirst
record.move n , dove n e' il numero di record da saltare.
-- 
ac (x=y-1)

Il 10/08/2011 20.05, Alessandro Cara ha scritto:
P.S. Come dicevo all'inizio mai provata.
Cmq, secondo logica, forse c'e' bisogno di un doevents dopo  la movenext
-- 
ac (x=y-1)

ma il subform come lo utilizzi? qual è la sintassi?
non riesco a usarlo ... sarà perchè ho più sottomaschere nella maschera principale?

 non riesco a usarlo ... sarà perchè ho più sottomaschere nella maschera principale?
Ogni subform dovrebbe avere un suo nome. Quello e'.
E, ripeto, questo se il codice viene eseguito dal form e comunque nel 
tuo caso il subform dovrebbe essere questo? Msk_ggEstr e quindi senza 
passare per l'insieme forms e' un semplice
Msk_ggEstr.Form!nomecontrollo
o un piu' complicato
me!Msk_ggEstr.Form!nomecontrollo
-- 
ac (x=y-1)

 Siamo qui per servire.
gulp
Antonio 


cos'e', la trippa ti e' andata di traverso?
-- 
ac (x=y-1)

ovviamente... aggiustata una cosa... se ne sfascia un'altra -.-"
quando "Sospeso" faceva parte della tabella di orgine con  msc.findfirst("id_cliente = cliente and sospeso > 0") riuscivo a muovermi direttamente sui record interessati... adesso non posso più usare questa sintassi perchè, ovviamente, Sospeso non fa più parte del record ma è un controllo calcolato!
Volendo utilizzare il metodo findfirst, senza però dover ciclare tutti i record a caccia di quelli > 0, come posso fare? 
grazie


Cosa hai aggiustato di grazia? ed in che modo?
Questo e' un NG non un HelpDesk personale e, magari, esternare la 
soluzione puo' essere utile a qualcuno (il sottoscritto compreso).
Mi fai venire voglia di lasciar perdere.....
Comunque se i sospesi non sono milioni, se la soluzione trovata e' 
lontanamente simile a quanto da me suggerito, e' sufficiente che nel 
ciclo di "scoperta" dei sospesi ti conservi gli id, separati da ",",  da 
qualche parte e poi quando ti servono, con un potentissimo:
Filter = "id_cliente in (" & stringa & ")" dovrebbero apparire tutti i 
record con "sospeso".
E, aricomunque, se il ciclo di findfirst lo fai tu invece del sistema 
non e' che il tempo di risposta diventa eonico.
-- 
ac (x=y-1)

Il 11/08/2011 10.06, Alessandro Cara ha scritto:
P.S. E tricomunque. Questo e' un altro problema si potrebbe anche 
pensare che meriti post ex-novo
-- 
ac (x=y-1)

 Mi fai venire voglia di lasciar perdere.....
come sopra :D
-- 
--------------------------------
Pablitomf
Napoli sempre nel "Q"uore!

 ha scritto nel messaggio 
news:ZIK0q.59905$GZ3....@tornado.fastwebnet.it...

no no, non credevo di far parte della servitů
ceniamo prima o dopo dei padroni?
Antonio 

 ceniamo prima o dopo dei padroni?
Cenare? Stai celiando vero?
Io, come diceva A. Sordi, se mi va bene, "cocce de noci".
-- 
ac (x=y-1)


Comunque anche l'altro post in cui ti sei incarognito (na cosa che 
riguarda variabili VBA e mappe) non scherza.
Cmq. la "mappa" (da non confondersi con la "mappazza") e di antica 
derivazione mainframesca allora i "form" si chiamavano "mappe" da due 
sottosistemi IBM, BMS e MFS, in cui la "M", se non erro stava per 
mapping/map. Roba per palati sopraffini mica per due parvenu come te e 
"l'arbiter" ;-{)
-- 
ac (x=y-1)

 "l'arbiter" ;-{)
Mainframe vs Access... Brrrrrrrrrrrr... :D


 Mainframe vs Access... Brrrrrrrrrrrr... :D
Vs Access probabilmente no.
Quei sistemi sono(*) stateless e sono(*) molto simili al web (se escludi 
javascript e cookies)
(*) Tempo presente, esistono ancora. Chiedi al tuo "amico" radicale. ;-{)
-- 
ac (x=y-1)

> (*) Tempo presente, esistono ancora. Chiedi al tuo "amico" radicale. ;-{)
quello e' amico di Antonio!...soprattutto da quando l'ho scoperto a trollare sui
napoletani... ovviamente l'ho killato... so che vanno a pizzate ogni tanto! :D
PS. devi assolutamente leggere "sostituire Query con Vba"... sto andando al
manicomio! :D



Leggo, leggo. Tutti e dui i 3d. Mica mi posso perdere il gusto di 
vederti "sbroccare".
-- 
ac (x=y-1)


non pensavo di aver fatto una cosa così grave.. 
ho cmq risolto usando il codice che mi hai postato tu:
/------------------------------------------------------
Dim msc As Recordset
Set msc = Forms!Msk_Main!Msk_ggEstr.Form.Recordset
Dim DBCorrente As DAO.Database
Dim Tab_Pag_Estr, Tab_Pag_Det As DAO.Recordset
Set DBCorrente = CurrentDb
...
Tab_Pag_Det.Fields("Versamento") = Me.Msk_ggEstr.Form!Sospeso
/------------------------------------------------------
e successivamente, dopo vari tentativi, ho risolto anche il findnext così:
/------------------------------------------------------
msc.FindLast ("Id_Cliente = " & Me.Cliente & " AND " & Me.Msk_ggEstr.Form!Sospeso & "> 0")
/------------------------------------------------------
So benissimo che questo non è un helpdesk, ma mi avete anche detto che i libri servono a poco ed è meglio questo NG, quindi.. se uno ha bisogno di una mano chiede qui, o no?! 
Non capisco questo sbottare (off topic tra l'altro)! 
Non credo che qui ci siano solo grandi programmatori ... ci sarà anche gente che come me ha delle conoscenze discrete e deve migliorare ... 
Vi sono mq grato per l'aiuto.. 

 Non capisco questo sbottare (off topic tra l'altro)!
Forse non mi sono spiegato.
Proprio per i motivi suddetti (da te) se un qualsiasi povero cristo 
cerca una soluzione sul NG il post che hai appena fatto (questo 
intendo!) non pensi possa essere d'aiuto?
Io, per esempio, fra i vari post ho evidenziato un paio di cose che 
dovrebbero tornarmi utili al piu' presto.
in questa:
msc.FindLast ("Id_Cliente = "&  Me.Cliente&  " AND "& 
Me.Msk_ggEstr.Form!Sospeso&  ">  0")
ovviamente Me.Msk_ggEstr.Form!Sospeso contiene un nome di campo, vero?
Se fosse un numero puo' andare bene lo stesso ma in finale di questo non 
ne capisco la logica (la AND sarebbe abbastanza superflua, credo).
-- 
ac (x=y-1)

non ho ben compreso cosa vuoi dire 
... cmq la AND serve perchè si deve muovere solo su quei record dove Sospeso > 0

 vederti "sbroccare".
uhauhauhauhauhauhauha ma tu hai capito? alla fine secondo lui ero io ad aver
sbagliato in quella soluzione e soprattutto la FUNZIONE... ma io non ho
sbroccato, sono un signore... ho semplicemente risposto con una DEMO... che
ovviamente non sapra' usare! :D :D 
un bel EXIT SUB ha chiuso il 3D ;)


 Io, come diceva A. Sordi, se mi va bene, "cocce de noci".
beh sempre cena �
anche con le cocce de noci... e crude per giunta...
Antonio