hello again guys
i got another question...
i have a "quit" button on my form that closes access. my problem is that if there is something selected from my list box and something entered into my textbox, it will add the record when i click quit. what can i do to make it NOT add the record. i've searched on google all day and i've been trudging through a bunch of forums and still can't find anything. i did see something about the dirty property, but i can't seem to figure out how i can use that to my advantage. please help!!!
thanks a bunch
*j
I have a simple EXIT command button that runs these macro actions: save record, close form. I also have a SAVE command button that runs this macro action: save record. If a user closes the form without clicking either the EXIT or SAVE command buttons, will the record changes be saved in the datasource table.
I have found from testing that the data is always saved even if the user does not click the EXIT or SAVE buttons, but I wanted to be absolutely certain. Is this correct ?
I have a split form that's like a list of pending tasks. The data source is a linked SharePoint 2013 list where users submit requests. The user takes the information from each record and performs an action. When it is done, the user presses a button and the task status changes from "Pending" to "Processed". The form record source is based on a query that finds only records with a status of "Pending" so when the user changes the status of the task, it is removed from the list. It works fine except when there is only one task left in the work list. If the user processes the last task, the form refreshes and it goes to a new empty record and I get an error message that says I must enter a value into one of the required fields. I tried making the field non-required but it just creates an empty record in the table.
I have validation logic that runs to test whether certain fields are inputted properly etc on my form. I call these methods in the Before_Update of each form. But How do i actually STOP the update from happening? OR how do i stop the form from being closed? Right now, I just give all these warnings but the save still happens!
I have a form and a report that will not save the changes nor close. I have done compact and repair, performed a restart and it is still happening. What could cause something like this. I have been working all day on other forms and reports without incident.
After I enter data into one field in a record I would like the form to save the record when I move to another field in the same record. It seems that the record is only saved when I exit it entirely. Is there a way to save a record when moving between fields in that record? Can this be done without using an Event Procedure for each field?
I am working on a database and i have notice after making a form that when i enter a record using a form if i enter incomplete data on the form access automatically save that record and generate a id for that record.
For example I have a table that contain
StudentID,StdName,FatherName,DOB,Adress,Phone
And I have created a form for that table that also containing these fields.
Here I want to do that on the form I want a "Save" button , and the purpose of this button that when I click on this button then MS Access Save the record and then generate the ID for that record and if i close my form without pressing "SAVE" button access do not save that incomplete record.
on a form with several subforms i have ran into some trouble. I have the subforms use code to determine if a scrollbar is needed. As a recordselector I use a listbox on the main form.
When i close the mainform, it sometimes makes a popup box appear saying that there is no current record.
Sofar I have determined the following :
- Removing the code from the form, removes the error.
- The code is only executed when selected records in the listbox have related record(s)
- The error only occurs when the code is executed at least once and the last selected record has no related record(s)
I dont know if altering the code would have any success, cause it won't run anyway when I select the last record (with no related records).
I guess moving the code to another section would be better, but I've tried other options like 'on focus' etc, but could not find one that responded.
HELP PLZ :)
Private Sub Form_Current() On Error GoTo Error
'kijken of verticale scrollbar nodig is maxRegels = 14
Dim rstCount As DAO.Recordset Set rstCount = Me.Recordset If rstCount.RecordCount > maxRegels Then Me.Form.ScrollBars = 2 Else Me.Form.ScrollBars = 0 End If
Error: If Err.Number <> "0" Then Else MsgBox Err.Number & " " & Err.Description End If Exit Sub
End Sub
ps. I've tried to catch err.Number = "3021" in the Error: section, but without success
ClientsID (PK) blah blah Information and Referral (a check box) blah blah blah blah
ClientIR (the form that opens up when I & R is checked)
IR ID (PK) ClientsID (FK to the above form) Requests (a lookup referencing to IRCategory)
The code is set up so when the I R box is checked, form will open, and unchecking it will delete the I R record of that Client.
The problem is when the IR Box is already open, the request has been selected, I cannot save it as Access says a record is required in the Clients form. There are only two buttons, one goes on to next requests (one client can have more than one requests), other saves and closes.
The Client form is already coded so it will save the Client's record before opening the IR Form, and either button will save the IR record as well.
I had referential intergrity turned on. Turning it off only gave me weird results (I was able to input records, but Access didn't autofill the ClientID in the IR records, and looking at Clients returns a blank IR record)
I have a form frmAddNewProject that is a Data Entry form.When you click Add Project on the form, it creates folders and copies files to a location and also creates new record(s) in the ProjectT table with appropriate information.Here is my code:
Code:
Private Sub cmdAdd_Click() Dim FSO As Object Dim FromPath As String Dim ToPath As String Dim FolderPath As String Dim strType As String Dim strYear As String Dim strGPN As String
[code]....
Everything works fine till here. Now I would like to close the form but closing it gives me an additional empty record.
Code:
Dim ctl As Control On Error Resume Next For Each ctl In Me.Controls ctl = ctl.DefaultValue Next Set ctl = Nothing
to remove all values, but then it just adds an empty record.Is there a way to close that form without removing my legitimate new records and without adding empty ones?
I have a form I would like to close without saving the record using a button. here is the code I have but it closes the form and it also writes the record to the table.
Code: Private Sub ClosewoSave_Click() Cancel = True Me.Undo DoCmd.close DoCmd.OpenForm "frmMenu" End Sub
I found in a thread that Cancel = True would not write the record.
I've almost completed the DB I'm working on, but still have a few loose ends to tie up that I can't seem to figure out. I've spent many hours already on this forum searching for solutions, and have tried a few different things, but I still can't work out these bugs.
First, I need my form to open with the latest records filtered first, so that the most recently added records will be easiest to find and edit. I'm not sure how exactly to do this. I've tried a run query when the form is opened, but I still need all the records displayed or accessible. The form is called frmDenial, and I would like it to be looking in the DateLogged field of the form. Any suggestions?
Second, I have command buttons that will export data in the fields to MSWord Templates via bookmarks. The button runs well by opening the document, inserting the data, and printing. I have also tried several different code syntax to close word once it is done, but it is still staying open after printing. Here is a sample of the code: ________________________________________ Private Sub Print_Letter_Click() Dim objWord As Word.Application 'Start Microsoft Word 2000. Set objWord = CreateObject("Word.Application") With objWord 'Make the application visible. .Visible = False 'Open the document. .Documents.Open ("G:PharmacyPrior Auth Docs and DataRevised Pharmacy Denial ProcessesKAN Not Nec or Benefit2.dot") 'Move to each bookmark and insert text from the form. .ActiveDocument.Bookmarks("bmkFirstName").Select .Selection.Text = (CStr(Forms!frmDenial!MBRFirst)) .ActiveDocument.Bookmarks("bmkLastName").Select .Selection.Text = (CStr(Forms!frmDenial!MBRLast)) .ActiveDocument.Bookmarks("bmkHRN").Select .Selection.Text = (CStr(Forms!frmDenial!MemberNumber)) .ActiveDocument.Bookmarks("bmkAddress1").Select .Selection.Text = (CStr(Forms!frmDenial!MBRAddress1)) End With Print_Letter_Click_Err: 'If a field on the form is empty, remove the bookmark text, and 'continue. If Err.Number = 94 Then objWord.Selection.Text = "" Resume Next End If objWord.Application.Options.PrintBackground = False objWord.Application.ActiveDocument.PrintOut objWord.Application.ActiveDocument.Close SaveChanges:=wdDoNotSaveChanges 'Quit Microsoft Word and release the object variable. objWord.Quit Set objWord = Nothing Exit Sub End Sub _______________________________________
Finally, I have two cascading combo boxes set up that will auto pop related fields based on the selection made. But, if an item is not in the list, I would like the user to add it to the linked table to appear in the list. I also have this working well, with a pop up asking the user if they want to make the addition, type in the new item, and add to the list without requiring the user to refresh or exit then re-enter the form. But it will only add the item name, and not the item description (another field in the form and another column in the table). How can I modify the code to prompt the user to enter these other details? I can link it to a pop up sub form to enter the data, but if possible, would rather the boxes pop up to have the user type in the data. Here is the code I have so far in the NotInList Event... __________________________________________ Private Sub DrugName_NotInList(NewData As String, Response As Integer) Dim DB As DAO.Database Dim rs As DAO.Recordset Dim strMsg As String strMsg = "'" & NewData & "' is not an available Drug" & vbCrLf & vbCrLf strMsg = strMsg & "Do you want to add the new Drug to the current Database?" strMsg = strMsg & vbCrLf & vbCrLf & "Click Yes to add or No to re-type it." If MsgBox(strMsg, vbQuestion + vbYesNo, "Add new model?") = vbNo Then Response = acDataErrContinue Else Set DB = CurrentDb Set rs = DB.OpenRecordset("tblDrug", dbOpenDynaset) On Error Resume Next rs.AddNew rs!Drug = NewData rs.Update If Err Then MsgBox "An error occurred. Please try again." Response = acDataErrContinue Else Response = acDataErrAdded End If rs.Close Set rs = Nothing Set DB = Nothing End If End Sub ______________________________________________ The two other colums in the tblDrug that I need the user to be prompted to fill are Denial Reason (column 3) and Alternative (column 4). What would be the best way to accomplish this?
I would really appreciate any help or suggestions with any of these problems. Thank you so much! :o
I have an unbound form that I load with one record. The record is selected based on a selection made in a list box on a previous form.
Then changes can be made to the data.
Then I want to click the save button which runs a stored procedure to update the table with the new data. I DON'T want Access to automatically post the record for me.
But when I hit save it tries to update twice and gives me a warning - it saves through the stored procedure and then tries to save again as the form closes. (I'm assuming. - I get a warning that says another user has changed the record and do I want to overwrite the changes.) I think it's because right now I load it with fields from a view.
Here is the code that opens the form and gives it the recordsource....
My database has a master quote form with a gajillion subforms. The database is set up so if a user wants to enter a new quote, a button "enter new quote" is clicked and a new record pops up. (The form is attached to a master quote table.) Originally I thought if the user chooses to create a new quote, they will, and follow through till the end. Now I'm wondering if I should give them the option to save or delete created quote.
Save is automatic, ofcourse, but not sure what method to use to delete record. Will potentially need to delete info from subforms. All tables in use are enforced with referential integrity and cascade delete.
Also, user can go into previously created quote and change if need be (until the quote is approved then this is not possible). Would like to give option of undoing changes and again, I'm not sure what method to use.
I have a form which displays data from a table... however i have added a combo box which retrieves value from another table. I have also added a save record button. When i try to save the record. instead of saving the text in the combo box like i wanted. It saves the value 1,2 or 3 instead. How do i make it save the selected text instead?
I have a main table, which I then query specifying 'XXX' in multiple fields to bring back no records. Then I set up a form based on that query so I always have a blank form to enter details to the table.
Access is saving the record every time I amend a field. I'm now stipulating that many of the fields must have data in and am repeatedly getting the 'field name must not be zero' error message even when I'm nowhere near that field.
I need to disable autosave and then put the docmd.acsave etc once all fields are complete.
I have created a Form to add customer payment entries to our database which will be added to the TRANSACTIONS table. I have a combo box which allows us to lookup our account number from the main CUSTOMERS table designated in the row source of the combo box. The rest of the fields use control sources from the TRANSACTIONS table which is the table that will contain the new records. I have added a Command Button that is labeled "Save Record" and it is programmed to do just that. My problem is that the records are being added to the TRANSACTIONS table even before I click my command button. I have the "date" feild in the form set to auto populate today's date. When I open the form, select an account number and tab to the date or any other field, and then close the form WITHOUT clicking the command button, the record is still added to the table. Can anyone help me to stop this from happening? I do not want anything added to the table until the "Save Record" button is clicked.
I have the Roger Jennings book: "Using MS Access 2003" and also the "MS Access 2003 Bible", but I am still unable to find an answer to my problem.
Hi, I'm not sure where to post this, maybe VBA or Forms would be better, but I think it's fundamentally an index problem, so I'm posting here. I've searched both the net and here, but most of the questions are about preventing duplicate records.
I want to prevent duplicate records but save changes to existing records.
I have a form based on a table that has a 3-field-unique-index (but not the primary index, which is autonumber). I've written a function to check for existing records with the given combination of the three fields, as long as all have data (it bails if any are null). I'm calling the function from BeforeUpdate for each of the textbox controls. I was also calling it from the form's BeforeUpdate, but commented it out as it seemed redundant. I have other code there verifying that the user wants to keep the changes.
I'm trying to save the users from getting all the way to the end before discovering there's a problem. To test it, I added then deleted one character from one of the three relevant fields in an existing record, and bing, up pops my alert that I'm violating the index. Then I can't leave the field, I'm stuck there because I can't save the record.
I want it set up so that other fields in the record can be changed/updated AND so that a new record for the same person can't be entered (a dupe).
Oh, and I'm running into all kinds of problems with acCmdSaveRecord not being available. I feel like an idiot that I haven't been able to make sense of the posts about that. I can just comment it out and let Access save the record when it closes the form. But my bosses really want the users prompted about saving changes.
Any thoughts or suggestions or insights greatly appreciated. I really tried to search this out, so any tips for better searching are also appreciated.
Here's the code for the function:
Public Function CheckForClientDupes() Dim response As Variant Dim strFamID, strLName, strFName As String Dim strFilter As String
If IsNull(Me!FamilyIDNo) Or IsNull(Me!strLastName) Or IsNull(Me!strFirstName) Then Exit Function End If
response = MsgBox("There is already a client with this combination of FamilyID, Last and First names in this database. Would you like to Continue Anyway (Yes) or cancel data entry and Erase Your Changes (No)?", vbYesNo, "Duplicate Client Alert") If response = vbYes Then ' DoCmd.RunCommand acCmdSaveRecord Else response = MsgBox("You have chosen to cancel your changes. Your changes will be erased.", vbOKCancel + vbQuestion, "Data Entry Cancelled") If response = vbOK Then Me.Undo Else Exit Function End If End If End If