While I'm not aware of a specific issue with A2002, the service packs are
always worth while when things are not working well.
Explicit save before any move/filter can save some weird behavior in Access.
Before calling the find dialog, you might consider adding:
If Me.Dirty Then
Me.Dirty = False
End If
Would it be possible to test this with the Form_Current disabled? That would
establish whether it is playing any part in the problem. Anything that
happens between the start of the problem (issuing the Find) and the end
(record displayed) should be considered as possibly related.
--
Allen Browne - Microsoft MVP. Perth, Western Australia.
Tips for Access users -
http://allenbrowne.com/tips.html
"HJ" <hj******@hotmail.com> wrote in message
news:3f***********************@dreader8.news.xs4al l.nl...
OK. See answers below. Thanks for your help.
HJ
"Allen Browne" <ab***************@bigpond.net.au> wrote in message
news:ri*******************@news-server.bigpond.net.au... More information please:
What version of Access and what service pack? (Help | About)> Access 2002, no service pack applied.
How is the record being found? Bookmark of form?> Standard Access Find dialog box. I do not know how Access does it's search.
Roughly how many records in the form's recordset at the time when it
fails?> About 15.000
Is this a continuous form with some text boxes in the form footer
section?> Single form. Text boxes only in Detail section.
Are you explicitly saving before attempting to move?> No.
The controls that don't match - anything consistent about them, e.g. are
they bound to expressions that are not updated in time?> No. Controls are directly bound to table fields (through the query of course).
Is there anything in other events (e.g. Form_Current) that could be
relevent?> Yes. 1. The current record number and the total number of records are printed
in a label caption.
2. Controls are being locked when the record is not a new record. For the
finding procedure this will always be the case.
Private Sub Form_Current()
'Fill the recordnumber label
Dim rs As DAO.Recordset
If Me.NewRecord Then
Me.lblRecordNumber.Caption = "New item"
Else
Set rs = Me.RecordsetClone
rs.MoveLast
rs.MoveFirst
With Me.RecordsetClone
.Bookmark = Me.Bookmark
Me!lblRecordNumber.Caption = "Item " & _
.AbsolutePosition + 1 _
& " of " & .RecordCount
End With
End If
If Me.NewRecord Then
Call UnlockFields
Else
Call LockFields
End If
Me.lblLocked.Visible = False
Me.puAddressee.SetFocus
End Sub
--
Allen Browne - Microsoft MVP. Perth, Western Australia.
Tips for Access users - http://allenbrowne.com/tips.html
"HJ" <hj******@hotmail.com> wrote in message
news:3f***********************@dreader7.news.xs4al l.nl...
Consider an Access 2002 run-time application on Windows XP. The
controls on a form are locked until the user clicks an Edit button. The form is based on a query and all controls are bound.
On this form the user can use a Find button to call the standard Find
dialog. Then the user enters search criteria and the wanted record can
be found.
This works fine, except for some occasions when the correct record number has been found, but not all data in the controls correspond with this
record number. Only when the user clicks the Edit button to make
modifications the corresponding data are shown.
It looks like the display is not being refreshed correctly. This
happens infrequently and so far only on a single computer (and not on five
other computers with the same application). What may be the cause of this?