Newsgroup: it.comp.appl.access
Titolo: Evitare che il metodo requery aggiorni un controllo

Ciao a tutti.All'interno di una maschera (la quale si apre facendo
riferimento ad una record preciso) ho creato un controllo(casella di
testo) "Testo5" nel quale visualizzo un totale.Il totale visualizzato
fa riferimento ad una form :
=[Forms]![maschera]![Prezzo]
Quando salvo il record per aggiornare in tempo reale un'altra maschera
eseguo un requery (Forms!maschera.Requery)Ovviamente dopo la
riesecuzione della query in"Testo5" ho il valore del primo record,non
del record su cui ero posizionato.
Come posso fare per non far aggiornare dopo il "requery" il controllo
"Testo5"
Grazie in anticipo
Dino

 ha scritto nel messaggio 
news:97d9b9ca-101e-4b83...@z41g2000yqz.googlegroups.com...

Ciao Dino,
www.donkarl.com/it
 Sez. Maschere 4.5
-- 
Cinzia [Office Access MVP]
_______________________
 
www.riolab.org
http://accessdaziacin.spaces.live.com
---------------------------------------- 

 - Mostra testo citato -
Grazie Cinzia per la risposta.Ho provato ma mi da sempre lo stesso
problema.
Sicuramente l'ho impostato male.Dove devo inserire il codice di Karl??
Io l'ho impostato
sull'evento Clik del pulsante di comando che sdalva il record e lancia
il requery.
di seguito ti riporto il codice :
RunCommand acCmdSaveRecord
On Error GoTo myError
Dim lngStore As Long
lngStore = Me.IDDistinta
'riduce lo sfarfallio dello schermo
Me.Painting = False
'Me.Requery
Forms!Maschera.Requery
Me.RecordsetClone.FindFirst "IDDistinta = " & lngStore
Me.Bookmark = Me.RecordsetClone.Bookmark
myExit:
Me.Painting = True
Exit Sub
myError:
Select Case Err.Number
  Case 3159
    'Bookmark non valido
    Resume myExit
  Case Else
    MsgBox "Exception Nr. " & Err.Number & " " & Err.Description
    Resume myExit
End Select


Non capisco perch� fai il Requery.
Cosa esattamente vuoi aggiornare e per ottenere cosa?
Forse c'� un altro modo che non cambia il record.
-- 
cu
Karl
*********
Access FAQ: 
www.donkarl.com/it
 

 Access FAQ:
www.donkarl.com/it
Ciao Karl.Il requery mi serve per aggiornare un 'altra maschera
(maschera2)basata su di una query di raggruppamento.Nella form
"Maschera1" inserisco dei valori che mi permettono di aggiornare il
totale nella maschera2.
La maschera2 e' una form tabulare.Con la maschera1 posso modificare
ogni singolo record della maschera2.
Se pero' sono sul record 3 (per esempio) quando salvo il
dato,ovviamente il requery mi si sposta al record 1.
grazie
Dino

 End Select
prova e fai sapere.
-- 
Ciao
Geppo 

 Dino
Se esegui semplicemente Maschera2.Form.Bookmark=Maschera2.Form.Bookmark 
l'assegnazione ricorsiva ti rinfresca quel campo.
La requery potrebbe essere dispendiosa, a quel punto cerca il campo 
maschera2 e fai l'assegnazione ricorsiva.
Ciao
Daniele 

 - Mostra testo citato -
Ciao a tutti e grazie a tutti per la risposta.ho provato con la
soluzione di entrambi ma il mio problema non l'ho risolto.Cerco di
spiegarmi meglio.
Nella form "Maschera2"e' giusto che si aggiornino i dati (e' giusto il
requery)
Mentre nella form "Maschera1" dove inserisco i valori per variare i
totali ho un controllo "Testo5" dove al suo interno ho un riferimento
alla form "Maschera2" Forms!Maschera2!Prezzo.
Quando inserisco i valori  e lancio il requery il controllo Testo5 mi
si aggiorna ritornando al primo record.(io magari ero posizionato sul
terzo).Io invece in definitiva vorrei che si aggiornasse la form
Maschera2 e che si aggiornasse anche la form "maschera1" ma che il
Focus rimanesse sul record in cui ero posizionato prima
dell'aggiornamento.
Grazie ancora Dino

>>> Forse c'� un altro modo che non cambia il record.

Memorizza i bookmark e il none dello 
Screen.ActiveControl.Name
 nell'evento 
beforeupdate e poi li ricicli dopo la requery.
Ciao! 

 > >> Forse c'� un altro modo che non cambia il record.


Hai provato con Me.Recalc ?
--
sv
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 - Mostra testo citato -
Ciao e grazie a tutti per la risposta.Ho provato con il recalc ma non
mi funziona.Ho poi provato come ha detto
Daniele ma il focus della "Maschera1" mi va totalmente al primo
record.
Di seguito vi riporto il codice completo sull'evento click del
pulsante di comando con i nomi reali delle forms.Come l'ho impostato.
Mi aggiorna il totale nella form "Fm_listino_vendita" (La famosa
"Maschera2" e così mi va bene),mentre nella form
"Margine_listino_vendita" ("Maschera1") il focus rimane nel record
iniziale pero' il requery mi aggiorna
la casella di testo (dove ho inserito il rif "Forms!Fm_listino_vendita!
Prezzo) al valore del primo record.
RunCommand acCmdSaveRecord
 On Error GoTo myError
 Dim lngStore As Long
lngStore = Forms!Margine_listino_vendita.IDDistinta
 'riduce lo sfarfallio dello schermo
 Forms!Margine_listino_vendita.Painting = False
 'Me.Requery
Forms!Margine_listino_vendita.Requery
Forms!Margine_listino_vendita.RecordsetClone.FindFirst "IDDistinta = "
& lngStore
Forms!Margine_listino_vendita.Bookmark = Forms!
Margine_listino_vendita.RecordsetClone.Bookmark
Forms!Fm_listino_vendita.Requery
myExit:
 Me.Painting = True
 Exit Sub
myError:
 Select Case Err.Number
   Case 3159
     'Bookmark non valido
  Resume myExit
   Case Else
    MsgBox "Exception Nr. " & Err.Number & " " & Err.Description
     Resume myExit
 End Select
End Sub