Microsoft KB Archive/289659

= Error updating a field when you add a new record to a form =

Article ID: 289659

Article Last Modified on 4/10/2007

-

APPLIES TO


 * Microsoft Office Access 2007
 * Microsoft Office Access 2003
 * Microsoft Access 2002 Standard Edition

-



This article was previously published under Q289659



Novice: Requires knowledge of the user interface on single-user computers.

This article applies to a Microsoft Access database (.mdb) or a Microsoft Office Access 2007 database (.accdb), and to a Microsoft Access project (.adp). For a Microsoft Access 2000 version of this article, see 207684.



For a Microsoft Access 97 version of this article, see 174005.



SYMPTOMS
When you type data into a new record on a form that is based on a query or an SQL statement, you receive one of the following error messages:

Field cannot be updated.

-or-

Multiple-step operation generated errors. Check each status value.

-or-

Start position is before the beginning or past the end of the rowset. No rows were returned.

When you click OK, you can continue to edit, and then you can save the record.



CAUSE
This behavior occurs when you try to update a read-only field in a record by using either the DefaultValue property or Visual Basic for Applications.



RESOLUTION
Do not use the DefaultValue property or Visual Basic for Applications to edit read-only controls.



MORE INFORMATION
When you create a form that is based on a query, any control that is bound to a query field that contains an expression is read-only. Because the query expression is not bound to any specific field in the underlying table, you cannot edit the values in these fields. However, when you set the DefaultValue property of such a control, Access tries to write a new value to that control every time that you add a new record.

Steps to Reproduce the Behavior

 * 1) Start Microsoft Access 2002 or Microsoft Office Access 2003, and then open the sample database Northwind.mdb or the sample project NorthwindCS.adp.
 * 2) Open the Orders Subform form in Design view.
 * 3) Click in the Extended Price text box. On the View menu, click Properties, and then set the DefaultValue property to 0 (zero).
 * 4) Close and save the Orders Subform form.
 * 5) Open the Orders form in Form view, and then add a new item to any order. Note that you receive one of the error messages that are mentioned in the &quot;Symptoms&quot; section of this article.

Additional query words: default value prb ACC2002 ACC2003 ACC2007

Keywords: kbvba kbarttypefix kbdta kberrmsg kbprb KB289659

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.