• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 342
  • Last Modified:

Recordset not updateable ......

See attached.
Click frmDatasheet
Double on one of the circular option buttons on the left.  This chooses a customer.

I have put a STOP in the code to assist.
Now F8 through the code.
It will crash with a recordset error on the line "DateViewed = Now()"

WHY ? This worked earlier in the day.
KeyService2.accdb
0
Patrick O'Dea
Asked:
Patrick O'Dea
  • 4
  • 3
1 Solution
 
mbizupCommented:
Not sure if this is your issue, but the file you uploaded appears to be corrupt.
0
 
Patrick O'DeaAuthor Commented:
Hi again,
Hopefully this is not corrupt.
I have simplified things.
Click on frmCUstomers
F8 until you get a recordset error (only a few F8)

Why this error?

frmCustomers maintains the tblCustomers - fairly straight forward stuff
KeyService2.accdb
0
 
mbizupCommented:
Can't open that one either - unrecognized database format, and the upload is zero bytes.
0
Cloud Class® Course: Microsoft Azure 2017

Azure has a changed a lot since it was originally introduce by adding new services and features. Do you know everything you need to about Azure? This course will teach you about the Azure App Service, monitoring and application insights, DevOps, and Team Services.

 
mbizupCommented:
Okay - I got a little further with your first uploaded DB by switching to an Access 2010 computer.

I now get to a password prompt.
0
 
Patrick O'DeaAuthor Commented:
Yes , I see the zero sized one.
I have uploaded again and this is 3MB (I can see it in EE screen!)

Password is 1234
KeyService2.accdb
0
 
mbizupCommented:
Your recordsource query for frmCustomers looks odd  - I'm not sure if this is deliberate or not, but it is the culprit:

SELECT tblCustomers.CustomerID, tblCustomers.CustomerName, tblCustomers.CustomerPhone, tblCustomers.CompanyName, tblCustomers.Add1, tblCustomers.Add2, tblCustomers.Add3, tblCustomers.PostCode, tblCustomers.DateReported, tblCustomers.ExpectedCompletion, tblCustomers.RevisedCompletion, tblCustomers.GeneralComments, tblCustomers.WindowCount, tblCustomers.FaultyWindowCount, tblCustomers.InstallationDate, tblCustomers.ReportedBy, tblCustomers.Status, tblCustomers.CallBackDate, tblCustomers.DateCompleted, tblCustomers.SiteVisitRequired, tblCustomers.CompletionCertNumber, tblCustomers.EngineerorSubcontractor, tblCustomers.Locked, tblCustomers.DateLocked, tblStatus.AllowLock, tblCustomers.Merchant, tblCustomers.Locker, tblCustomers.DateViewed, tblCustomers.email, tblCustomers.PaymentMethod, tblCustomers.CreditCardNumber, tblCustomers.[3Digit], tblCustomers.NameOnCard, tblCustomers.ExpiryDate, tblCustomers.CalloutCharge, tblCustomers.PaymentReceived, tblCustomers_1.ChargeableToCustomer
FROM tblCustomers AS tblCustomers_1, tblCustomers INNER JOIN tblStatus ON tblCustomers.Status = tblStatus.StatusID;

You have tblCustomers and an alias for tblCustomers (tblCustomers_1), with one field being selected from the alias (ChargeableToCustomer).

That doesn't *seem* necessary, and revising it like this makes it updateable:

SELECT tblCustomers.CustomerID, tblCustomers.CustomerName, tblCustomers.CustomerPhone, tblCustomers.CompanyName, tblCustomers.Add1, tblCustomers.Add2, tblCustomers.Add3, tblCustomers.PostCode, tblCustomers.DateReported, tblCustomers.ExpectedCompletion, tblCustomers.RevisedCompletion, tblCustomers.GeneralComments, tblCustomers.WindowCount, tblCustomers.FaultyWindowCount, tblCustomers.InstallationDate, tblCustomers.ReportedBy, tblCustomers.Status, tblCustomers.CallBackDate, tblCustomers.DateCompleted, tblCustomers.SiteVisitRequired, tblCustomers.CompletionCertNumber, tblCustomers.EngineerorSubcontractor, tblCustomers.Locked, tblCustomers.DateLocked, tblStatus.AllowLock, tblCustomers.Merchant, tblCustomers.Locker, tblCustomers.DateViewed, tblCustomers.email, tblCustomers.PaymentMethod, tblCustomers.CreditCardNumber, tblCustomers.[3Digit], tblCustomers.NameOnCard, tblCustomers.ExpiryDate, tblCustomers.CalloutCharge, tblCustomers.PaymentReceived, tblCustomers.ChargeableToCustomer
FROM tblCustomers INNER JOIN tblStatus ON tblCustomers.Status = tblStatus.StatusID;

That makes it 'work', and I don't think it changes your expected functionality.

0
 
Patrick O'DeaAuthor Commented:
Thanks , perfect solution.  I should have spotted it !
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Introducing Cloud Class® training courses

Tech changes fast. You can learn faster. That’s why we’re bringing professional training courses to Experts Exchange. With a subscription, you can access all the Cloud Class® courses to expand your education, prep for certifications, and get top-notch instructions.

  • 4
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now