The system is about a shop which gives credit facilities to its customers and so has to keep track of payments effected by them.
I have 3 tables: Customer, Payment, Balance. The main table is Customer, with primary key CustCode which is an autonumber. It keeps personal details of the customers. The Payment table keeps details of payments effected by the customers and the Balance table keeps the overall balance for each customer. The relationships are as follows:
Customer to Payment, 1-to-many
Customer to Balance, 1-to-1
Fields in Payment table: CustCode, PaymentDate, AmtPaid
Fields in Balance table: CustCode, Balance
Problem 1
I have a data entry form for Customer. When I create a new customer record, I want a new record automatically created as well for the customer in the Balance table. How can I do that?
Problem 2
I need to produce a report on customers who have not made any payments during the previous month. I’d like to know how to do that as well.
I hope I’ve made myself clear enough. Thank you for all help.
I have a table that gets updated by a query(For Invoices).When I query that Invoice table for the last record, I do not get the last one written. It stops at number 12. I am using the Totals option with Invoice number field and setting to "Last".is there another way I can get the last record to query correctly. I am trying to populate an invoice report.
I have an issue with my subform, that when opened inside the main form, I want the form to be opened on its last record (which works) and then I want the subform to be opened on the first record regarding that record ID coming from from the main form. The relationship is many to one, coming from the form to the subform. I have tried several code on many events on the subform so it can goes to the first record, but it sometimes goes to the first, othe times ot goes to the third, i don't know why. I have tried the following:
Private Sub Form_Load() DoCmd.GoToRecord , , acGoTo, 1 En Sub
or DoCmd.GoToRecord , idsPreguntas, acFirst 'idsPreguntas is the control name of the record
I'm using a navigation control to switch between forms. In one of those forms, I have a continuous subform which is a list of Projects (source is a query) that is read-only. To edit a project, I can click on its name, which switches the form displayed in the navigation control via docmd.BrowseTo (with acEditForm as the last parameter). This works fine. The proper form opens, with the proper project being displayed.
Now, on this second form, I have on the right the list of tasks contained in the project in a continuous subform (source is a query), and on the left another subform which is kind of an "edit bar" that I use to actually edit the individual tasks. So, when I click on a task in the task list, the OnCurrent event triggers a docmd.BrowseTo command that updates the "edit bar" subform and passes the ID of the task as the WhereCondition parameter. This updates the values displayed in the Edit Bar to that of the selected task, which I can then edit.
Now here's the thing: depending on the project I open, the Edit Bar doesn't work. Actually, it looks like only one of the projects is working, while the others are not (and I managed to have a different project working, but only one works at any given try). When it doesn't work, the Edit Bar is in "NewRecord = True" for some reason. All the other properties of that subform seem to be the same between when it works and when it doesn't.
So, it looks like the same command (docmd.BrowseTo with acEditForm) opens the subform properly in acEditMode when it works, and in something else when it doesn't, depending on the parent record that's being opened. This really gets me, I really can't figure out how that's even possible.
I suspect it might have something to do with locked records, maybe?
I am using a form to add a record to a table and need to be able to specify one of the fields in the table that will be added to. This field is predetermined by another form selection. If there is a way to force a value on a title box with a control source this would also do the trick.
I am rather new to Access and looking for some help with my table. I have a report that I do, that I used to do in Excel and was wondering if it was setup right or if there was a better way of doing it.
From looking around I noticed that people usually have mulitple tables and such, while mine is all in one. I see there is a table analyzer but am not sure if I should use that, or what the importance of having it split up.
I have attached my table in XML if anyone wants to share opinions on how they would set it up or what they would do.
Is there a bad thing to having it all in one table?
I have a table that has records added to it using the following VBa code:
Const MyTable As String = "tblSampleSubmission" Const MyField As String = "SampleName" Dim db As DAO.Database Dim rs As DAO.Recordset Dim intCounter As Double Dim LastDub As Double Dim addString As String Set db = CurrentDb Set rs = db.OpenRecordset(MyTable) Randomize 'LastDub = Me.txtStartValue - Was only used to start the random function later in series addString = "" For intCounter = Me.TxtStartValue To Me.txtEndValue rs.AddNew rs.Fields(MyField) = Me.SamPre & intCounter & Me.SamSuf & addString rs.Fields("SubmissionNumber") = Me.SubNum rs.Fields("CustomerID") = Me.CustomerID rs.Fields("SamplePrep") = Me.SamplePrep rs.Fields("Fusion") = Me.Fusion rs.Fields("XRF") = Me.XRF rs.Fields("LOI") = Me.LOI rs.Fields("Sizing") = Me.Sizing rs.Fields("Moisture") = Me.Moisture rs.Update addString = "" If Rnd < 0.02 Then 'LastDub = intCounter intCounter = intCounter - 1 addString = " DUP" End If Next intCounter rs.Close db.Close Set rs = Nothing Set db = Nothing
What I would hope to be able to do is add a "standard" randomly to each SubmssionNumber (each SubmissionNumber might be 1-100 records). The record I need to add should be chosen at random from a list of 6 or so options and added at the end or middle or start of the job (SubmissionNumber) is this something that is easy to do or should I just give up and add it manually?
Thanks to everyone who has helped me in the past, it is getting me up to speed quickly. Access seems to be quite popular as I have contacted 3 developers to help with my dB but they are all to busy to help me so I am going it alone.
I have a table with duplicate ids. When I have a forum popup another form, the forms are linked by ids. This works great except for one problem. There are duplicate ids. So if I pop up a form then it will go to the first record that that id exist. This is not good if you are going to add another record. Therefore, I need to create a unique variable for a record. The autonumber would be a great variable but it seems I cannot use it to filter. Unless someone can show me how. Is there another way to create a unique variable automatically for a new record?
I have limited experience in Access, but I have managed to create a user form, where items are selected from comboboxes (Test results; when, who, outcome, etc)
At the end I have built in a command button that should add a record to an existing table, but so far no luck. I have used the following VB code for this:
Private Sub Save_test_results_KeyPress(KeyAscii As Integer) Dim dbsICT_Test_Management As DAO.Database Dim rstActual_test_results As DAO.Recordset Set dbsICT_Test_Management = CurrentDb Set rstActual_test_results = dbsICT_Test_Management.OpenRecordset("Actual_test_ results")
rstActual_test_results.AddNew rstActual_test_results.Update End Sub
Whenever I add a new record to a table with a form I created, it records the "ID autonumber" that it's associated with instead of the text. For instance, if I selected "Kevin" from a combobox list and had the form record it, it will show up as "1" in the table under the field name "Names".
When the database is open the form StartingAmount is open (only until a starting balance is entered.)
User then puts the starting amount in. clicks create.
Then a record is added to Transactions. TransactionDate = Date entered (auto populate) TransactionName = Starting Balance TransactionAmount = StartingAmount
I have several tables that are linked that I need to be able to add to. This is an example of the structure:
Patient Info ID FK_Ward - ID of Ward table FK_Room - ID of Room table FK_Cond - ID of Condition table
Ward ID WardID
Room ID RoomNumber
Condition ID Description
Unfortunately, its not the exact one as I can't post that here! What I am trying to do is to add a new patient record using information from the other tables as guides - e.g. the user selects the name of the Ward but the ID in the Ward table is entered, the User selects the number of the room but again the ID in the Room table is entered, and for the Condition same thing. So I would like to have dropdowns (or ComboBoxes) for each of these and based on the user's selections add a new record to PatientInfo using the ID values as links.
Hi, I have 7 tables in my database and 1 form corresponding to all the fields in these tables (linked by a query by recordsource). My problem is that the form will only show a record if ALL 7 tables have manually had the primary key entered (not good when i have information that needs to be added at different times). How can I make it such that if I create a new record on the form that all primary key fields will be updated, and this record will be present every time i open my the form??
I have a table with 2 fields in it - Type and Pallet_Case - using a form the user enters the name of the Type and then from a combo box selects either Pallet or Case. There is a button on the form that is to save the new record to the table. (code below) The strangeness that is happening is that when the new record is added to the table, whatever is the first existing record alphabetically in the table is changed to the same Pallet_Case selection that was made for the new record.
I have a list box that displays on the form that is updated after a new record is added to show what records exist in the table (this is done by a query of the table and sorts on the type), so I can see this happening without having to open the table. It doesn't matter what sort order I put the list box in nor the table it still changes the first record alphabetically. And it is only change the Pallet-Case field. I even changed the first record to something else and it still did this.
Dim dbs As DAO.Database, strSql As String Set dbs = CurrentDb strSql = "Insert into [PP Type TBL] ([Prepack Type],[Pallet Case]) Values ('" & Me.Type & "','" & Me.Pallet_Case & "' )" dbs.Execute strSql, dbFailOnError
I am currently working on an Access Database that houses our security clearance information. Most of the system is up and running but the most recent form has got me spinning my wheels. I have a Word User Form that users will download and complete, once completed the macros will automatically send us the document to be added to our database. Most of this is working the problem is that this portion of the database has multiple related tables and at any given time a user may require multiple records in the related tables. I have created the code to copy most of the information but am getting stuck adding a new record on the sub-form when multiple items are required. Here is a breakdown of the scenario
Word Doc Table 1 = Basic Organization Info Word Doc Table 2+ = Sites to Visit (There could be more than 1 table added here) Word Doc Table 3+ = People to go on site (this might not be the third table based on user interaction for sites)
So far I can get Table 1 and Table 2 data but if there are more than 1 site I cant seem to get the system to create a new record on the related table it is creating a new record on the main form. Here are the lines I used to try to create the related record..
When I put just the above code on a button it seems to have worked as the sub-form showed an additional record was created but when using this on my macro the sub-form is not taking the focus for some reason.
I have a table A in which I write down orders for cars. A record is an order. A single order may contain multiple cars in varying quantities.Each car has its components. Some cars may have some of their components common. There is a table B which indicates each car and its components required with their quantities required to build the car. There is a record for each different car.
Now suppose there is a new car we are going to produce so we need a new record in table B for the car and all its components. Also we need a new field in table A because people can now order the new car(in some quantity).
With form for table B we can introduce a new record. But how can we add a field in table A automatically after a record is added in table B?
I have a form to add a record to a table. How can I give the user a way to close this form without saving the just created record.
I tried
If me.dirty then DoCmd.RunCommand acCmdDeleteRecord endif
This works, but gives a messagebox in return to confirm the command, and I don't want that. And I try to avoid sendkeys. I also don't want to change the options of access.
When I open one of my tables or queries and look at the customer Id, the displayed info is a single digit. On my customers table my primary key is the customer Id with auto number with the format like this: "ID"000. This is great however, when you look up the customer id in other tables it only displayes the single digit. I want it to show up like ID001 or ID002. In the customers tables it looks just like that, but if you click in that cell/field it takes away the ID and just shows the 001 or 002. I changed the format in my other tables under customer id to "ID000" but that didn't seem to make a difference. I would like to be able to do a search lets say by customer ID in one of my products table and when I type ID005 or ID012 it takes me to those records. But right now I would have to enter 5 or 12. Datatype in my other tables on field customer ID is set to text. Do I have to do a validation rule? How can I get it to show up the way I want it?
Hi I want to see Which tabel was opened, who and when opened it. And if possible I want to see what is changed. I want to see as I mentioned above as a "log file"
I have a form "FrmMaintenance" based on the query "QryMaintenance" that is taken information from the table "TblMaintenance".
In the form, I have to pull the serial number of a machine from a drop down list which works perfectly fine in the form and it also updates other associated records.
When I go to the table, it puts associated number instead of the serial number that I've pulled.
Same thing happening for the pull down list "Engineer".
I've tried to look at the format of the "SerialNo" and changed to text, then to Combo Box but it didn't work, and the same for "Engineer"
I've a quick question. In Access, I have a form that allows user to add new record into a table. Is there anyway of finding whether the new record has successfully been inserted or added?
So i think it may be wise to have a message to notify us of whether it's inserted successfully or not.
Can someone please tell me why I might be adding a record everytime I open my database. I have to forms that work from querys if I open the main form all is well , if I open the other oone first and then the main form I find a record has been added. Most annoying! :(