I have a main form + subform bound by a RecordSource/Requery everytime something changes in the mainform.
In my subform I've got a save button to save/update the information in my subform.
As I wanted to avoid the ACCESS default behavior that updates/add records each time you do some action, I decided, as advised in some of the threads, to add "Cancel = True" in the "BeforeUpdate" event on my subform each time the Save button was not pressed.
Unfortunately, this causes a side-effect when I need to update the RecordSource of the subform because the "BeforeUpdate" event is activated, the "Cancel = True" is triggered (because I didn't press the Save button) and then I end up with this error:
Run-time error '2107' The value you entered doesn't meet the validation rule defined for the field or control
Before I implemented the "Cancel true", my ResordSource statement was working.
Does the "Cancel true" has some impact on something else ?? Any ideas ?? :confused:
Ok, I have a delete query that I use to delete records form a table. I have created a form that I run that query from. It has Delete button that runs the query. After I get the message that says "You are about to delete 56 records" and I click No, I get a "run-time error '3059'. Operation Cancel by user"
I did some searching on the forum and thought I could trap this error. But I still continue to get the error at
"DoCmd.OpenQuery stDocName, acNormal, acEdit"
What am I doing wrong and how can I prevent this error from appearing when I click NO or cancel the operation.
Private Sub cmdDelete_Click() On Error GoTo Err_cmdDelete_Click
cmdDelete_Error: Select Case Err.Number Case 3059 MsgBox "You have canceled the delete operation.", vbOKOnly, "Delete Canceled" Exit Sub Case Else MsgBox "Error number: " & Err.Number & " has occurred. " & Err.Description, vbOKOnly, "Error" End Select
I have a form and a subform in it. I added New cancel button in the form so that the the user can cancel the record creation and no record will be inserted in the parent table.
But when details are entered in the subform (a datasheet) row records will be created in the subform table. what is the correct method or how to cancel these records if the user choose to click cancel button on the parent form.
I am modifying the Students template for a student & alumni administration database for our non-profit Food Service Training Academy.
After making some changes recently, whenever I select Design View on a specific form (Student Details), a window pops up stating "The command or action 'Requery' isn't available now. The window further states that:
You may be in a read-only database or an unconverted database from an earlier version of the databaseThe type of object the action applies to isn't currently selected or isn't in the active view.And finally "Use only those commands and macro actions that are currently available for this database."
After exiting this window, a Macro Single Step window opens with the following info:
This form is usually opened via an "Open" button in a list of students form called Student List. It has 5 tabs on it, the last I created & copied 2 queries to it. The form opens in Form view OK and I can switch to Layout view OK. Once in Design view I seem to be able to do go back and forth OK, although often going back into Design view sometimes only the name of the sub-form is displayed and the whole header, detail, grid, and controls etc. do not show.
Further, you can open the Student Details form directly, but now it opens as a datasheet instead of a form. Otherwise, the normal use of the forms, from a user perspective, does not seem to be affected.
This may have begun after I opened the database in Access 2007. I have done all the development in Access 2010.
I have a Contacts form which has a Calls sub-form which itself has a Subjects sub-form. From the Contacts form the user can click a button which writes a pro-forma letter from a selection. The application then updates the Call & allows the user to select the Subject(s) from the Subjects available (drop-down menu). If the user wants to write a second letter immediately, I get the above message. If they do anything else first, they are OK. I have tried refreshing the Contacts form & each of the others at various points in the process, explictly saving the record (caused another error) etc. without success. Can you help?
1. I have a two-tier, tabbed Navigation form (Menu-Main).
2. One of the second-tier tabs opens a form (VendorMain) which displays a Datasheet based on [Query.Vendor_Query]
3. VendorMain contains a Command Button (EditButton), which calls a subform (VendorForm) used for editing.
4. Upon saving the edits, VendorForm's OnClose event is supposed to Requery the datasheet on VendorMain, so the edits are reflected when the user returns.
I have tried over a dozen different permutations of the following, but nothing seems to work:
I have a form (frmTimecardsDataEntry3*) that needs to requery combo boxes to narrow down the selections offered in the dropdown of each combo box.
It is a data entry form. I.e. Dataentry is set to yes.
The ClientName combo box has an after update event which requeries the matter combo box, so that the MatterName combo box dropdown only shows the matters relating to that client. This works just fine.
The MatterName combo box has an after update event which requeries the Rate combo box so that in the Rate combo box dropdown only the hourly charge rates relating to that matter are shown. That works too. So far so good.
I then tried adding another after update event to the MatterName combo box, so that another combo box, Application, was requeried too, so with the Private Sub it looked like:
Rate.Requery Application.Requery
But this resulted in the error in the title to this post and the debugger highlighted in red the word Requery in the phrase Application.Requery.
I thought maybe Access does not allow two requeries resulting from one after update event, so instead I took Application.Requery out and placed it as an after update event in another combo box which did not have any other after update events to run.
However, this resulted in the same error.So the error appears to have something to do with trying to requery the Application combo box but I cannot see what is causing the error.
The Application combo box SQL is:
SELECT Applications.ApplicationID, [ApplicationDate] & " " & [ApplicationName] AS ApplicationDisplay, Applications.ApplicationDate, Applications.ApplicationName, Applications.MatterName FROM Applications WHERE (((Applications.MatterName)=[Forms]![frmTimecardsDataEntry3*]![MatterName])) ORDER BY Applications.ApplicationDate, Applications.ApplicationName;
This is the same arrangement of SQL that I am using on the other requeried combo boxes that work. When I take the WHERE statement out of the Application SQL and run it the query returns all of the applications.
I am not sure what the error code is trying to tell me about the attempt to requery the Application combo box.
I have a yes/no box in the form and when the firm is first opened it has a small square dot in it, but as soon as any data is entered in the form the dot clears and leaves the usual empty tick box that you would expect to see.
Also, another possible symptom is that I had another version of this form previously working quite well except that when I did several data entries all at once, so I had several forms filled in with different data (before refreshing and thus entering the data in the table), when I scrolled between the forms I kept losing the MatterName data when I scrolled back, and then when I re-entered the ClientName data the correct MatterName data returned without me having to use the dropdown to select it.
I have had an earlier simpler version of this form working for some time, with ClientName requerying MatterName and MatterName requerying Rate, and I am using the same SQL structures in the new form but getting the error in the title to this post and the other isues just described.
I cant find my triggers option. I have followed the help instructions, which tell me that i should right click on the selected table and there should be a triggers option that i can click on and a window should appear so that i can write my trigger in, but i dont appear to have that function. Any ideas why. I am using Microsoft Access 2003.
I'm using Access 2K. I have created a Form BeforeUpdate event to check that certain fields in the form have been filled. However, I don't want to do the check until after a subform entry is also complete, but the BeforeUpdate event fires as soon as the subform is entered. Is there any way I can around this?
There are 4 unbound dropdown list box that will have a default value of empty string. All 4 must have values entered (data is required).Once all 4 are required - the bottom 5 text box will become enabled (optional data).Forcing the user to click on a Validation Button
Some users type then use the mouse to select the next.Other users type to select then tab.The trick is: After filling in the 4th listbox and validating all 4 have values, the event must trigger code to enable the 5 optional text boxes below.This provides a seamless data entry environment.
I have been doing this in other places, but the transisition after the last required field is complete gets ugly.If Trim(cmbBoxname1 & "") = vbNullString ' check all 4..If it is the 4th one, the event seems not to happen quick enough for the bottom 5 text boxes to be enabled so the user can continue with data entry.
Using Access 97, I have a single-form allow-additions form where a couple of bound fields are auto-populated 'on current' and a couple of other bound fields are left to be populated by the user (me!).
At the end of an input session, I can press ESC and then close the form OK. But if I forget to press ESC and try to close the form, I have an invalid incomplete record on screen.
How do I indicate that the new record isn't wanted? I have tried stuff like If Me!txtRequiredBoundField = Null then SendKeys "(ESC)" End If to no avail.
Hi, I want my user to be able to "cancel" his entry. At first I tried just deleting the record they were working on. But that added numbers in the auto number "ID" field, and I also needed the feature for editing, so deleting wasn't an option. As of now I have something that works, but is kind of messy. I made a mirror "temp table" that I write the record to. If they "save" i append/update the record to the regular table, then delete it from the temp, if they "cancel" I just Delete it from the temp. Was wondering if there was a cleaner way to do this ?
Hello All, I am finding this one difficult so felt I should post my issue. I have status field on my form. It is a bound field. A combobox - inactive, active. I wanted the field to do the following when changed If change then msgbox = Please enter reason in activity notes a vbYesCancel If they select it calls the activity notes form - this portion works. If they select cancel I tried making the field do form.field.undo (Me.statusid.undo) - something similar Cancel = True to reset the field to the original state. This fails and says my object is not valid I would be happy to take any suggestions . As always thanks in advance.
After looking through the forums, i couldn' really see the answer i was looking for. I have a form, that users can enter in details (with an auto-number created which is assigned to each record). Once they have entered the detials, theres a 'save' button which will save the record - which is fine. I also have a 'return' button which should return to the previous form and doesnt save the record. But as it stands, the record is saved when i click this return button. How do i make it so that the record isnt saved untill the save button is clicked? so if i return from the screen (pressing the return button), the record isnt saved (i.e. a cancel button).
I am having a problem with my cancl button on my form. this form has a subform. any changes cancel correctly on my main form. the problem is when there is a change on my subform and then is cancelled.. any ideas anyone? thanks!
I am trying to get my program to cancel a send e-mail command if certain things aren't filled out. Instead it is supposed to pop up with a message and then put the pointer in that field. The message box pops up, but the e-mail command is not cancelled. Can someone please tell me what I am doing wrong?
Private Sub SubmitAddCmd_Click() On Error GoTo Err_SubmitAddCmd_Click
Dim stDocName As String Dim strEmail As String Dim strMailSubject As String Dim strMsg As String Dim strCopy As String 'Make sure MMS Job# is entered If IsNull(MMSJob) Then MsgBox "Please enter the MMS Job#" [MMSJob].SetFocus Cancel = True 'Make sure Client's name is entered ElseIf IsNull(Client) Then MsgBox "Please enter the Client's name" [Client].SetFocus Cancel = True 'Make sure job name is entered ElseIf IsNull(Job) Then MsgBox "Please enter the job name" [Job].SetFocus Cancel = True 'Make sure CSR name is entered for this job ElseIf IsNull(CSR) Then MsgBox "Please enter the name of the CSR for this job" Cancel = True
'Make sure date job submitted button was clicked ElseIf IsNull(Submitted) Then MsgBox "Please click on the 'Date Job Submitted' button" '[SubmittedCmd].SetFocus Cancel = True 'Make sure mail date was entered ElseIf IsNull(MailDate1) Then MsgBox "Please enter a mail date for this job" ' [MailDate1].Value Cancel = True End If
'E-mail booking sheet to scheduling office in snapshot format stDocName = "BookingRpt" strEmail = "jhutton@merklenet.com;jsayers@merklenet.com" strCopy = "rgarneriii@merklenet.com;"
I have a Report linked with a SubReport. I would like to cancel viewing this Report if my SubReport Has No Data. i tried this code but the report just shows up. Any Ideas?
Private Sub Report_Open(Cancel As Integer) On Error GoTo Err_Trapper If Reports![qryRepCurOrgProjsSR].Report.HasData = 0 Then Cancel = True End If Err_Trapper: MsgBox Err.Description Exit Sub End Sub
Ok i got an error message. Yoy entered an expression that has an invalid Reference to the hasData property.
Ive tried using a text bpx on my main report and putting a control source as
=IIf(qryRepCurOrgProjsSR.Report.HasData,0,"Nothing") Then in my Report Open Event i put the code below. But it fails me still.
If trim(Me.MyText) = "Nothing" Then MsgBox "The Report Is Cancelling....." Cancel = True Exit Sub End If
I have a subform which asks a user to confirm the update before it happens - if the user selects no - then the update is cancelled.
When the parent (they are not related record wise) form is closed the update on the subform is attempted - if the user selects no - how can I cancel the close of the parent form. At the moment a message saying "Cannot save the record at this time - changes may be lost". Which I don't want to see.
I have docmd.sendobject that opens Outlook to send an email, etc. However if the user does not send the email and cancels out of the message Access is asking the user if they want to debug. How can I simply have Access return to where the user was before they hit the command button that launched Outlook. I don't want them to go into the code. In fact I don't even want a message of any type - I thought I could trap the cancel somehow and code for it...