why can't i edit my form?

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

all of the allow properties are set to yes. this form opens up from my
'edit' button on my "inquiry" screen (which allows no edits). what am i
doing wrong. thanks!
 
i do see the 'recordset not updatable" msg.. but i don't understand why..
there are a few tables referenced in the query and 2 of them would be where
the edits would happen.. i have no problem adding/editing to these on other
forms i have in this db.. im confused.
 
i do see the 'recordset not updatable" msg.. but i don't understand why..
there are a few tables referenced in the query and 2 of them would be where
the edits would happen.. i have no problem adding/editing to these on other
forms i have in this db.. im confused.

Not all queries are editable; queries with two or perhaps three tables
often are, but "a few" tables will almost certainly NOT be.

Typically one would use a Form for the "one" side of a one to many
relationship, and one or more Subforms for the "many" side tables.

Perhaps you could open the form's query in SQL view and post the SQL
code here. Someone might be able to suggest a solution.

John W. Vinson[MVP]
Join the online Access Chats
Tuesday 11am EDT - Thursday 3:30pm EDT
http://community.compuserve.com/msdevapps
 
Lp,

If you open the datasheet of the query that the form is based on, can
you edit/add data to it? It sounds like you are using a non-updateable
query. There are a number of conditions which result in a query not
being updateable, for example the use of aggregate functions. Maybe you
could post back with the SQL view of the query, and someone may then be
able to offer some more specific explanation.
 
yes.. i did open my form in datasheet view and i was NOT
able to edit any of the data... well i AM able to edit my
subform's value (also when i run the form I AM able to
edit my subform data.. just not the rest) Here is my SQL
statement (Note: the user should not be able to make edits
to the username and ID fields):

SELECT tblCheckReq.ID, tblCheckReq.Approvedby,
tblCheckReq.UserName,
tblCheckReqAmtsToAccts.GLAccountNumber,
tblCheckReqAmtsToAccts.Amount, tblCheckReq.PaymentType,
tblCheckReq.PaymentMethod, tblCheckReq.PaymentDueDate,
tblCheckReq.TaxType, tblCheckReq.TaxYear,
tblCheckReq.Company, tblCheckReq.State FROM ((tblCheckReq
INNER JOIN tblCheckReqAmtsToAccts ON tblCheckReq.ID =
tblCheckReqAmtsToAccts.ID) INNER JOIN tblStateTaxDepts ON
(tblCheckReq.TaxType = tblStateTaxDepts.TaxType) AND
(tblCheckReq.State = tblStateTaxDepts.StateAbrv)) INNER
JOIN tblUsers ON tblCheckReq.UserName = tblUsers.UserName
WHERE (((tblCheckReq.ID=[forms]![frmInquiryCheckRequest]!
ID]));

Help is appreciated! Thanks!
 
yes.. i did open my form in datasheet view and i was NOT
able to edit any of the data... well i AM able to edit my
subform's value (also when i run the form I AM able to
edit my subform data.. just not the rest) Here is my SQL
statement (Note: the user should not be able to make edits
to the username and ID fields):

SELECT tblCheckReq.ID, tblCheckReq.Approvedby,
tblCheckReq.UserName,
tblCheckReqAmtsToAccts.GLAccountNumber,
tblCheckReqAmtsToAccts.Amount, tblCheckReq.PaymentType,
tblCheckReq.PaymentMethod, tblCheckReq.PaymentDueDate,
tblCheckReq.TaxType, tblCheckReq.TaxYear,
tblCheckReq.Company, tblCheckReq.State FROM ((tblCheckReq
INNER JOIN tblCheckReqAmtsToAccts ON tblCheckReq.ID =
tblCheckReqAmtsToAccts.ID) INNER JOIN tblStateTaxDepts ON
(tblCheckReq.TaxType = tblStateTaxDepts.TaxType) AND
(tblCheckReq.State = tblStateTaxDepts.StateAbrv)) INNER
JOIN tblUsers ON tblCheckReq.UserName = tblUsers.UserName
WHERE (((tblCheckReq.ID=[forms]![frmInquiryCheckRequest]!
ID]));

Help is appreciated! Thanks!
-----Original Message-----

yes.. i did open my form in datasheet view and i was NOT
able to edit any of the data... well i AM able to edit my
subform's value (also when i run the form I AM able to
edit my subform data.. just not the rest) Here is my SQL
statement (Note: the user should not be able to make edits
to the username and ID fields):

SELECT tblCheckReq.ID, tblCheckReq.Approvedby,
tblCheckReq.UserName,
tblCheckReqAmtsToAccts.GLAccountNumber,
tblCheckReqAmtsToAccts.Amount, tblCheckReq.PaymentType,
tblCheckReq.PaymentMethod, tblCheckReq.PaymentDueDate,
tblCheckReq.TaxType, tblCheckReq.TaxYear,
tblCheckReq.Company, tblCheckReq.State FROM ((tblCheckReq
INNER JOIN tblCheckReqAmtsToAccts ON tblCheckReq.ID =
tblCheckReqAmtsToAccts.ID) INNER JOIN tblStateTaxDepts ON
(tblCheckReq.TaxType = tblStateTaxDepts.TaxType) AND
(tblCheckReq.State = tblStateTaxDepts.StateAbrv)) INNER
JOIN tblUsers ON tblCheckReq.UserName = tblUsers.UserName
WHERE (((tblCheckReq.ID=[forms]![frmInquiryCheckRequest]!
ID]));

Help is appreciated! Thanks!
-----Original Message-----
Lp,

If you open the datasheet of the query that the form is based on, can
you edit/add data to it? It sounds like you are using a non-updateable
query. There are a number of conditions which result in a query not
being updateable, for example the use of aggregate functions. Maybe you
could post back with the SQL view of the query, and someone may then be
able to offer some more specific explanation.
of
them would be where
.
 
yes.. i did open my form in datasheet view and i was NOT
able to edit any of the data... well i AM able to edit my
subform's value (also when i run the form I AM able to
edit my subform data.. just not the rest) Here is my SQL
statement (Note: the user should not be able to make edits
to the username and ID fields):

SELECT tblCheckReq.ID, tblCheckReq.Approvedby,
tblCheckReq.UserName,
tblCheckReqAmtsToAccts.GLAccountNumber,
tblCheckReqAmtsToAccts.Amount, tblCheckReq.PaymentType,
tblCheckReq.PaymentMethod, tblCheckReq.PaymentDueDate,
tblCheckReq.TaxType, tblCheckReq.TaxYear,
tblCheckReq.Company, tblCheckReq.State FROM ((tblCheckReq
INNER JOIN tblCheckReqAmtsToAccts ON tblCheckReq.ID =
tblCheckReqAmtsToAccts.ID) INNER JOIN tblStateTaxDepts ON
(tblCheckReq.TaxType = tblStateTaxDepts.TaxType) AND
(tblCheckReq.State = tblStateTaxDepts.StateAbrv)) INNER
JOIN tblUsers ON tblCheckReq.UserName = tblUsers.UserName
WHERE (((tblCheckReq.ID=[forms]![frmInquiryCheckRequest]!
ID]));

Help is appreciated! Thanks!
 
yes.. i did open my form in datasheet view and i was NOT
able to edit any of the data... well i AM able to edit my
subform's value (also when i run the form I AM able to
edit my subform data.. just not the rest) Here is my SQL
statement (Note: the user should not be able to make edits
to the username and ID fields):

If a User has multiple Checks, you should really consider using a Form
for Users and a subform for the rest of the query. It *looks* like
(not being able to see the tables themselves) that
tblCheckReqAmtsToAccts is a resolver table for a many to many
relationship, and that tblStateTaxDepts is just a simple lookup table.
The latter would be OK in an editable query, but the former probably
would not.

As a rule of thumb, creating One Big Master Query to do everything is
*not* a good idea. The Access Form is a powerful tool! Use Forms for
main tables; Subforms for many-side tables and many to many resolver
tables; use Combo Boxes for lookups (rather than including the lookup
table in the query). It moves the complexity from query design to form
design but it works well.

John W. Vinson[MVP]
Join the online Access Chats
Tuesday 11am EDT - Thursday 3:30pm EDT
http://community.compuserve.com/msdevapps
 
Thanks for all the info... i will look into modifying my
form design abit. thanks again!.. one more thing.. the
state table is just for a lookup and i do have a combobox
on my form for it (if the user wants to edit it).. so
don't i have to have the table lookup as part of my form
query.. to get the value that is currently in that
field?.. thanks again for your advice!
 
so
don't i have to have the table lookup as part of my form
query.. to get the value that is currently in that
field?..

No, you do not. In my address fields, I'll store the two-letter state
code; the States table has two fields, the Primary Key being the two
letter code and the second field being the state (or territory or
Canadian province) name. The combo box can store ID while displaying
Idaho; it is not necessary to join the States table to the query for
this to work.

John W. Vinson[MVP]
Join the online Access Chats
Tuesday 11am EDT - Thursday 3:30pm EDT
http://community.compuserve.com/msdevapps
 
Back
Top