D
Dr. Know
Hey Folks,
Geezzz, just when things are going smoothly, Bill goes and updates Jet
again, and throws a wrench into many ACCESS apps I have deployed in
the field.
Has anyone else run across this problem?
For example, I have a past due accounts e-mail notification program
that is used to notify a clients past due accounts of their overdue
status. It parses the invoices database of a foreign DB system (DDMS)
and assembles an HTML or TEXT file summarizing the account status
which is subsequently e-mailed through a remote SMTP server. This app
has worked perfectly for all my customers using ACCESS 2000 and the
Jet Engine SP8 - DLL version 4.0.8015.0 and earlier.
That is, until April 14, when I was bombarded with dozens of irate
phone calls concerning the app which no longer functions after
installing MS Security Update K837001 - Jet SP8 - DLL 4.0.8618.0.
After banging my head on this for a while, I discovered that you can
no longer update any field in a SQL query based form with two tables
with a one-to-one relationship. ACCESS responds with a error 2006,
table not updatable error. This is ridiculous!
I recreated the SQL select in a standard query, and sure enough, it
doesn't work anymore. Two rather plain tables, linked on one field
with a one-to-one relationship will not allow updates. Verified on
three different systems.
Here is the SQL query:
SELECT tbl_ARPastDueSelection.CustomerNumber,
tbl_ARCustomers.CustomerName, tbl_ARPastDueSelection.Balance,
tbl_ARPastDueSelection.InvoicesPastDue, tbl_ARCustomers.PEMailContact,
tbl_ARCustomers.PEMailAddress, tbl_ARPastDueSelection.SalesRep,
tbl_ARPastDueSelection.RepName, tbl_ARPastDueSelection.RepEmail,
tbl_ARCustomers.TextOnly, tbl_ARCustomers.NotifyDefault,
tbl_ARPastDueSelection.NotifySession, tbl_ARPastDueSelection.Notified
FROM tbl_ARCustomers INNER JOIN tbl_ARPastDueSelection ON
tbl_ARCustomers.CustomerNumber = tbl_ARPastDueSelection.CustomerNumber
ORDER BY tbl_ARPastDueSelection.CustomerNumber;
The program used to update the tbl_ARPastDueSelection.Notified field
from False to True after an e-mail was successfully sent, but not now!
It fails with the aforementioned error.
As a temporary work-around, I changed the RecordSet type from Dynaset
to Dynaset [Inconsistent Updates], and it now works again, but can
anyone tell me what the heck they are doing/were thinking with this?
I have dozens of apps that are failing because of this change!
Thanks,
Greg
Dr. Know
Geezzz, just when things are going smoothly, Bill goes and updates Jet
again, and throws a wrench into many ACCESS apps I have deployed in
the field.
Has anyone else run across this problem?
For example, I have a past due accounts e-mail notification program
that is used to notify a clients past due accounts of their overdue
status. It parses the invoices database of a foreign DB system (DDMS)
and assembles an HTML or TEXT file summarizing the account status
which is subsequently e-mailed through a remote SMTP server. This app
has worked perfectly for all my customers using ACCESS 2000 and the
Jet Engine SP8 - DLL version 4.0.8015.0 and earlier.
That is, until April 14, when I was bombarded with dozens of irate
phone calls concerning the app which no longer functions after
installing MS Security Update K837001 - Jet SP8 - DLL 4.0.8618.0.
After banging my head on this for a while, I discovered that you can
no longer update any field in a SQL query based form with two tables
with a one-to-one relationship. ACCESS responds with a error 2006,
table not updatable error. This is ridiculous!
I recreated the SQL select in a standard query, and sure enough, it
doesn't work anymore. Two rather plain tables, linked on one field
with a one-to-one relationship will not allow updates. Verified on
three different systems.
Here is the SQL query:
SELECT tbl_ARPastDueSelection.CustomerNumber,
tbl_ARCustomers.CustomerName, tbl_ARPastDueSelection.Balance,
tbl_ARPastDueSelection.InvoicesPastDue, tbl_ARCustomers.PEMailContact,
tbl_ARCustomers.PEMailAddress, tbl_ARPastDueSelection.SalesRep,
tbl_ARPastDueSelection.RepName, tbl_ARPastDueSelection.RepEmail,
tbl_ARCustomers.TextOnly, tbl_ARCustomers.NotifyDefault,
tbl_ARPastDueSelection.NotifySession, tbl_ARPastDueSelection.Notified
FROM tbl_ARCustomers INNER JOIN tbl_ARPastDueSelection ON
tbl_ARCustomers.CustomerNumber = tbl_ARPastDueSelection.CustomerNumber
ORDER BY tbl_ARPastDueSelection.CustomerNumber;
The program used to update the tbl_ARPastDueSelection.Notified field
from False to True after an e-mail was successfully sent, but not now!
It fails with the aforementioned error.
As a temporary work-around, I changed the RecordSet type from Dynaset
to Dynaset [Inconsistent Updates], and it now works again, but can
anyone tell me what the heck they are doing/were thinking with this?
I have dozens of apps that are failing because of this change!
Thanks,
Greg
Dr. Know