Hello all -
This is driving me crazy. I have a table called tblClients - very
simple, has the following fields:
taxID (PK)
ClientName
SalesName
The main form of my application allows a user to select a client and
shows sales transactions on a subform. I wanted to include a button
the user could click which would allow them to edit the client
information. So, I created a form called frmEditClient which is loaded
when the button is clicked. Code on the OnClick event for the code
button:
Private Sub cmdEditClient_Click()
Dim LinkCriteria As String
LinkCriteria = "[ClientName]= '" & Me.txtSelectedCLient & "'"
DoCmd.OpenForm "frmEditClient", , , LinkCriteria
End Sub
Pretty simple, just opens the EditClient form using the current client
in the recordsource - this opens the form and the user can edit
details and save the form. The recordsource of frmEditClient is a
query called vwEditClient that selects all from tblClients (tried
using tblClients as record source - same problem)
Only problem is if the user wants to edit the ClientName field - since
frmEditClient is using the ClientName field as a filter, I get a
runtime error 30014 - the data has been added but cannot be displayed
because it no longer meets the criteria of the underlying
recordsource.
I know *why* I'm getting the error, I just want to stop it. I've tried
to trap the damn thing, but can't seem to get it to trap - the error
is generated on the "me.dirty=false" line, and this stops any code
after from running. I have tried to put On Error Goto 0 at the
beginning of the sub, etc..., but nothing seems to trigger.
Here is the code for the Save button, without any error handling:
Private Sub cmdSave_Click()
If Me.Dirty Then
Me.Dirty = False
Else
MsgBox ("No changes were detected - please make your changes, or
hit Cancel to return to the previous screen")
Exit Sub
End If
DoCmd.Close acForm, "frmEditClient"
End Sub
All I want is:
1) A way to load the frmEditClient so the form displays the client
that was selected on the main form
2) A way to suppress or hide the runtime error that occurs when the
user edits the clientname.
Can someone assist with a way to trap this error or prevent it from
happening?
Thanks 3 5145
On May 5, 3:38*pm, Jim Armstrong <armstron...@hotmail.comwrote:
Hello all -
This is driving me crazy. I have a table called tblClients - very
simple, has the following fields:
taxID (PK)
ClientName
SalesName
The main form of my application allows a user to select a client and
shows sales transactions on a subform. I wanted to include a button
the user could click which would allow them to edit the client
information. So, I created a form called frmEditClient which is loaded
when the button is clicked. Code on the OnClick event for the code
button:
Private Sub cmdEditClient_Click()
Dim LinkCriteria As String
LinkCriteria = "[ClientName]= '" & Me.txtSelectedCLient & "'"
DoCmd.OpenForm "frmEditClient", , , LinkCriteria
End Sub
Pretty simple, just opens the EditClient form using the current client
in the recordsource - this opens the form and the user can edit
details and save the form. The recordsource of frmEditClient is a
query called vwEditClient that selects all from tblClients (tried
using tblClients as record source - same problem)
Only problem is if the user wants to edit the ClientName field - since
frmEditClient is using the ClientName field as a filter, I get a
runtime error 30014 - the data has been added but cannot be displayed
because it no longer meets the criteria of the underlying
recordsource.
I know *why* I'm getting the error, I just want to stop it. I've tried
to trap the damn thing, but can't seem to get it to trap - the error
is generated on the "me.dirty=false" line, and this stops any code
after from running. I have tried to put On Error Goto 0 at the
beginning of the sub, etc..., but nothing seems to trigger.
Here is the code for the Save button, without any error handling:
Private Sub cmdSave_Click()
If Me.Dirty Then
* * Me.Dirty = False
Else
* * MsgBox ("No changes were detected - please make your changes, or
hit Cancel to return to the previous screen")
* * Exit Sub
End If
DoCmd.Close acForm, "frmEditClient"
End Sub
All I want is:
1) A way to load the frmEditClient so the form displays the client
that was selected on the main form
2) A way to suppress or hide the runtime error that occurs when the
user edits the clientname.
Can someone assist with a way to trap this error or prevent it from
happening?
Thanks
Well, I still have not been able to trap the error, but I was able to
get around it using the resync property. Basically, I added the
following line in the Save button's On Click code:
Me.ResyncCommand = "SELECT * FROM vwEditClient WHERE TaxID=?"
Seems to work so far - but I'm still all ears if anyone has some
trapping code I could try or a reason the 30014 runtime was not picked
up by my attempts...
Thanks!
Jim Armstrong wrote:
On May 5, 3:38 pm, Jim Armstrong <armstron...@hotmail.comwrote:
>>Hello all -
This is driving me crazy. I have a table called tblClients - very simple, has the following fields:
taxID (PK) ClientName SalesName
The main form of my application allows a user to select a client and shows sales transactions on a subform. I wanted to include a button the user could click which would allow them to edit the client information. So, I created a form called frmEditClient which is loaded when the button is clicked. Code on the OnClick event for the code button:
Private Sub cmdEditClient_Click() Dim LinkCriteria As String LinkCriteria = "[ClientName]= '" & Me.txtSelectedCLient & "'" DoCmd.OpenForm "frmEditClient", , , LinkCriteria End Sub
Pretty simple, just opens the EditClient form using the current client in the recordsource - this opens the form and the user can edit details and save the form. The recordsource of frmEditClient is a query called vwEditClient that selects all from tblClients (tried using tblClients as record source - same problem)
Only problem is if the user wants to edit the ClientName field - since frmEditClient is using the ClientName field as a filter, I get a runtime error 30014 - the data has been added but cannot be displayed because it no longer meets the criteria of the underlying recordsource.
I know *why* I'm getting the error, I just want to stop it. I've tried to trap the damn thing, but can't seem to get it to trap - the error is generated on the "me.dirty=false" line, and this stops any code after from running. I have tried to put On Error Goto 0 at the beginning of the sub, etc..., but nothing seems to trigger.
Here is the code for the Save button, without any error handling:
Private Sub cmdSave_Click() If Me.Dirty Then Me.Dirty = False Else MsgBox ("No changes were detected - please make your changes, or hit Cancel to return to the previous screen") Exit Sub End If DoCmd.Close acForm, "frmEditClient" End Sub
All I want is:
1) A way to load the frmEditClient so the form displays the client that was selected on the main form 2) A way to suppress or hide the runtime error that occurs when the user edits the clientname.
Can someone assist with a way to trap this error or prevent it from happening?
Thanks
Well, I still have not been able to trap the error, but I was able to
get around it using the resync property. Basically, I added the
following line in the Save button's On Click code:
Me.ResyncCommand = "SELECT * FROM vwEditClient WHERE TaxID=?"
Seems to work so far - but I'm still all ears if anyone has some
trapping code I could try or a reason the 30014 runtime was not picked
up by my attempts...
Thanks!
There's on OnError event for the form. It's not a runtime VBA error. So
perhaps that's where that error is being generated. If so, in the error
routine try entering
If DataErr = 30014 then response = acdataerrcontinue
Amore http://www.youtube.com/watch?v=9FtuV3xMrN0
Jim Armstrong <ar*********@hotmail.comwrote in news:0c3890c4-9c48-4d54- 96***************@b64g2000hsa.googlegroups.com:
On May 5, 3:38*pm, Jim Armstrong <armstron...@hotmail.comwrote:
>Hello all -
This is driving me crazy. I have a table called tblClients - very simple, has the following fields:
taxID (PK) ClientName SalesName
The main form of my application allows a user to select a client and shows sales transactions on a subform. I wanted to include a button the user could click which would allow them to edit the client information. So, I created a form called frmEditClient which is loaded when the button is clicked. Code on the OnClick event for the code button:
Private Sub cmdEditClient_Click() Dim LinkCriteria As String LinkCriteria = "[ClientName]= '" & Me.txtSelectedCLient & "'" DoCmd.OpenForm "frmEditClient", , , LinkCriteria End Sub
Pretty simple, just opens the EditClient form using the current client in the recordsource - this opens the form and the user can edit details and save the form. The recordsource of frmEditClient is a query called vwEditClient that selects all from tblClients (tried using tblClients as record source - same problem)
Only problem is if the user wants to edit the ClientName field - since frmEditClient is using the ClientName field as a filter, I get a runtime error 30014 - the data has been added but cannot be displayed because it no longer meets the criteria of the underlying recordsource.
I know *why* I'm getting the error, I just want to stop it. I've tried to trap the damn thing, but can't seem to get it to trap - the error is generated on the "me.dirty=false" line, and this stops any code after from running. I have tried to put On Error Goto 0 at the beginning of the sub, etc..., but nothing seems to trigger.
Here is the code for the Save button, without any error handling:
Private Sub cmdSave_Click() If Me.Dirty Then * * Me.Dirty = False Else * * MsgBox ("No changes were detected - please make your changes, or hit Cancel to return to the previous screen") * * Exit Sub End If DoCmd.Close acForm, "frmEditClient" End Sub
All I want is:
1) A way to load the frmEditClient so the form displays the client that was selected on the main form 2) A way to suppress or hide the runtime error that occurs when the user edits the clientname.
Can someone assist with a way to trap this error or prevent it from happening?
Thanks
Well, I still have not been able to trap the error, but I was able to
get around it using the resync property. Basically, I added the
following line in the Save button's On Click code:
Me.ResyncCommand = "SELECT * FROM vwEditClient WHERE TaxID=?"
Seems to work so far - but I'm still all ears if anyone has some
trapping code I could try or a reason the 30014 runtime was not picked
up by my attempts...
Thanks!
Try using On Error Resume Next just prior to the Me.Dirty = False
statement. That should let you then examine the Err.Number (if 13004,
resume, if anything else do something).
Do you have Error Handling set to Break on Unhandled Errors?
You can't trap an error AS it is happening, you can only respond to it
after the fact.
The reason you're having so much trouble is that it is the equivalent of
sawing off the branch while standing on it. As soon as you change the
ClientName, the record *should* vanish (since it is not within the filter
criteria. Access detects this as a logical impossibility and throws the
error.
Instead, you might try declaring a Public string variable in the module
area of the original form. Store the original value of ClientName. Open
frmEditClient as a dialog (acDialog) and when you close frmEditClient,
store the new value into the Public variable. Then compare the ClientName
textbox value with the Public variable. If different, replace ClientName
with the new value. This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
by: Pete |
last post by:
I'm trying to improve my code so that when I open a recordset object,
I can absolutely guarantee it is closed and is set = Nothing. I have
read some old threads and they all say to use the...
|
by: Paul |
last post by:
I have an Access 2000 database with a form that is giving me some
major headaches. When you open the form, it displays all records and
allows editing, but has AllowAdditions set to False so that...
|
by: Nathan Bloomfield |
last post by:
Hi there,
I am having difficulty with a piece of code which would work wonders
for my application if only the error trapping worked properly.
Basically, it works as follows:
- adds records...
|
by: Thelma Lubkin |
last post by:
I use code extensively; I probably overuse it. But I've been using
error trapping very sparingly, and now I've been trapped by that.
A form that works for me on the system I'm using, apparently...
|
by: Bill |
last post by:
Despite our best efforts occasionally in an aspx file, something like <%=x%>
where x is not defined sqeaks by and I get the ugly asp error message. I want
to be able to identify this particular...
| |
by: Nalaka |
last post by:
Hi,
I suddenly started getting a lot of errors from html validation (some CSS)
so I followed the following instructions to disable it.
If you'd rather not have these types of HTML validation...
|
by: Captain Nemo |
last post by:
I'm still using Office 2000 myself, but some of my clients have Office 2003.
I've recently added a piece of code to create an instance of Word, open a
document, fill in the blanks and become...
|
by: 47computers |
last post by:
Pretty new to PHP, I recently started learning about error trapping.
As of right now, I include the following into a page in my website:
-------BEGIN PASTE--------
error_reporting(E_ERROR |...
|
by: ajb123 |
last post by:
I am encountering an R6025 ("No object has been instantiated to handle the pure virtual function call") error in a complex application.
The error is intermittent and it is time consuming to...
|
by: marktang |
last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
|
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers,...
| |
by: jinu1996 |
last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
|
by: Hystou |
last post by:
Overview:
Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
|
by: tracyyun |
last post by:
Dear forum friends,
With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
|
by: conductexam |
last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
|
by: TSSRALBI |
last post by:
Hello
I'm a network technician in training and I need your help.
I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs.
The...
|
by: 6302768590 |
last post by:
Hai team
i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated ...
| |
by: bsmnconsultancy |
last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence...
| |