General :: Get ID Number And Update Record With New Information
Jul 25, 2014
I am having a problem with retrieving the information I am looking for. Basically I am checking to see if a user has selected a TRNumber from a drop down menu and if that TRNumber matches any other records in the table in that field. If it does, is that Number already associated with the user selecting it. If it is I want to get the ID number so I can simply update the record with new information. Here is what I have so far.
Code:
Dim Rs As DAO.Recordset
Dim Tech As String
Dim MsgStr As String
Dim IdMod As String
Set Rs = CurrentDb.OpenRecordset("PrepStartDateBlankQuery")
I have a table called tblCompanies. When a company acquires another company, I need a method by which the acquired company's CompanyID (PK) can be updated to the new company's CompanyID (PK). I also need to be able to update all related CompanyIDs (FKs) to the new value in related tables.
In cases in which the new company does not have an existing record, there is no problem: the company name simply gets changed to the new company and the existing CompanyID is maintained. I then use an audit table and Track Changes function to keep track of the company name data and a union query to keep the old names in the selection lists.
The problem is when both companies already have existing records in the table.
So, let's say I have records for Company A and Company B. Company A merges with Company B and Company B is now the main record. What is the best, simplest and easiest way to update the CompanyID (PK) from A to B and change the CompanyID (FK) to the new value in all related tables?
I am envisioning a pop-up form that directs the user to select the new company and then an update query happens behind the scenes... but exactly how does the criteria for the update query get selected and how do all the related tables get updated? My vba skills are pretty basic, will I need extensive coding to do something like this?
I created a database to record lesson information (see attached sample). When there was only one student per record, everything worked fantastic.
However, management would like to have one record per lesson, which means that up to eight students would need to be accounted for.
Adding additional Student_IDs to the lesson record table and the associated links to the student table was simple. Inputting lesson information was pretty straightforward.
The problem arises with output. There is one report to review an individual student's past lessons. Also, there is a form in which to export the lesson's public comment.
Both use different queries, but with the same name as the form and report. Both the report and exported Excel file are blank, no data.
I'm building this in A2010, but saved as A2003 (working environment).
What is the best way to allocate a record number to the end user?
I have had problems where users have come back to me saying that both of them created the same record number at the same time and I am not sure why that is happening.
To be certain, I am using INSERT rather than UPDATE which was my initial concern (an update would just over write the previous record)
How can we check the last value, uniquely assign that value to a person at the point of creating the record and ensure that no one else can take it...
Is it possible that a laggy server would cause these issues? (as the code executes roughly the same time as another person also executes code, they overlap?)
I've recently come across a problem whilst saving an edited record..I get the following message but only sometimes..could not update currently locked by another session on this machine..Sometimes the record saves without a problem (mainly on the first edit). However, any further edits of the same record mainly but not always triggers the above message. I can't work out why it's happening, It's a split database but I'm the only user on a standalone PC (so no other users editing the same record). Sometimes I get lucky and the record save even after the first edit but not always. There doesn't seem to be any pattern.
Record locks for the form are set to NO LOCKS Recordset type is set to DYNASET In settings - Default open mode it set to SHARED Default record locking is set to NO LOCKS Open database by using record-level locking IS CHECKED
This has been working fine for years so I'm a little stumped as to why it should happen now. The only thing I've changed recently is a memo field from Plain text to Rich text.Whilst writing this I just went back and double checked and found that if I change any other field (not the memo field) the record saved just fine. So the problem is to do with the Rich Text memo field only.
When I create a new record I am also generating a new Auto Number. This is so I have a sure fire way of returning the records that I want to return. I have read where it is a known issue that when using the Compact and Repair it can reset the Auto Number to a lower number and generate a duplicate Auto Number. That is the problem that I have at this time. I have tried using the Allen code but it doesn't seem to worked on linked tables. I use linked tables because I have multiple users who can access this system at any given point in time.how to have the Auto Number field select a number that is unique
I am working on a database where the records are numbered sequentially. On a regularly basis, records will be deleted leaving a gap in the record number sequence. I would like to have my db recognize that a number(s) is number in the sequence and use the missing number (filling in the gaps) when a new record(s) is added until all spaces are filling and then to continue from the largest number sequentially.
I want to return the number of record with the SQL search in MS Access. I am using the following code, the expected result will be a value. But somehow, it does not give any result.
StrSQL = "SELECT COUNT(*) FROM table1 WHERE [Condition]='A' "
I have three tables which I have linked with relationships. The linked fields are given the ID number of the parent, where I wanted the value. What on earth am I doing wrong, something stupidly obvious I bet! Access 2007
I'm using Dmax() to return a max number in a field which I then want to inc by 1 for a new record. Dmax is returning 999. I believe Dmax therefore thinks it's a text field. So where do I change this to a number field?
I have a table called [Tasks] which has the following relevant fields:
[Task ID] [Location]
I have a form that people use to create new tasks and update current ones. Location on the form is a combo box where people can pick from 5-6 different locations.
What I want:
After someone selects a new location from the combo box and changes the task location, I want to create a new record in a table called [Task Progress] with the [Task ID] of the task whose location was changed, the new [Location], and the [Date] and [Time] it was changed. It would look like
Code: [Progress ID] [Task ID] [Location] [Date] [Time] 1 5 Station 1 1/1/2011 12:13:01 2 8 Station 2 1/3/2011 01:53:29 3 5 Station 2 1/5/2011 11:13:05 4 5 Station 3 1/6/2011 12:35:22
What should I put in the AfterUpdate event for the [Location] combobox to make the above happen?
Note: All my tables are ODBC linked to SQL Server (can't use data macros).
I have a create new record from with Employees information taken from tblEmployees. On that form I have a dropdown box of company names taken from tblCompanies. How do I get that to input a ClientID into tblEmployees when I add the new employee? At the moment it just adds a new employee but leaves the ClientID box blank.
I would like to be able to copy a single record in a table and then paste this record a pre-defined number of times 10,20,30 depending on requirements. The reason I need to do this is that I want to set up a number of identical records that can easily be amended into unique records. This will vastly reduce the amount of work and time spent entering records individually.
The only way that I have been able to achieve this is to copy and transfer the master record into Excel, and then copy the row and paste it into a range of cells. Copy the range of cells back from Excel and then paste this range back into the Access table.
This works but is long winded; what I would like to know is is there a simply way of achieving this.
I have a form set to the table Client Information with a subform set to the table Event Information. Client Information has a one to many relationship to Event Information.
There is a button that deletes the current record in Client Information--also deleting the related records in Event Information--then closes the form. The code works fine but a blank record in Event Information is apparently being created before the form closes.
Here's the VBA that I'm using:
Private Sub CmdDelReturn_Click() Dim CmdDelReturnMsg As String CmdDelReturnMsg = MsgBox("Delete event & client then return to front?", vbYesNo + vbDefaultButton1, "Delete and Return?")
[Code] ....
It's not a big deal because the button won't be used often and I can manually go into the table to delete the blank record. But if there's a simple solution to prevent this that would be nice.
I need to write a query which populates an empty field in the current record with information from a specific field in the next sequential record. Any ideas?:confused:
I am working on a database for a Skip Delivery Company, I have all relevant tables and Forms done and can add customers and so on. I have a field name in my Skips Delivered table called Delivery Docket which contains a long list of customer dockets. What i want to do is, be able to retrieve all customer information (such as Customer Name, County, Location, Phone Number and so on ...) on my Skips Delivered form by just entering the docket number on that form. I'm thinking i need an SQL Statement somewhere?
I have a stockist which includes " stock number", " description"
When I use these parts to create a "bill of materials" for a job I am presently selecting the material and this data is going into the table and the stock number just goes in the form not the table, is there a way that when I select the "stock number" the material will still go in the table and the stock number stays on the form. or also go into the table
The reason I want to do this is because the stock number is easier to remember than the description ...
I have made up a database to record generations of birds; along with others I have the following fields:
Ring number (primary key) Sex Year Colour
Data entry via a form view.
For new entries I pick up from a combo box the parents, what I need to do now is create a relationship between 1, 3&4 and 2, 5&6 so that the data will automatically slot in the relevant fields.
1Parent Cock 2Parent Hen 3Grand Parent Cock C/S 4Grand Parent Hen C/S 5Grand Parent Cock H/S 6Grand Parent Hen H/S
would I do it via a query.’ And would one cover relevant generations
I am trying to create a report that has a header ( all ok ) then could have 1 or 15 detail lines ( all ok ) which contain cost for each line
then I have a footer with the subtotals of the costs and also bank details then I have footnotes
What I need the report to do is keep the subtotals, bank details and the footer notes at the bottom of the page all the time weather I have one detail line or 15 detail lines
What is happening at this time is the footer information is moving up or down depending on the number of lines I have.
I have an after update event that populates, Date, Time and User into corresponding fields when the record status changes to closed.
However... Whilst the information is recorded on the form it does not record to the underlying table is there any reason for this, or anything that I am not doing correctly?
We are developing a work evaluation for all of out employees on the shop floor.
While Access is way easier to update and allow for quicker ways to gather information, our requirements is that we must display a training matrix. While access has great reporting features, it is tough to get it a format with all users listed on top, tasks listed on the LH side and knowledge levels showing what level each user is at for each task.
I am limited by standard practice on how to display it so I was curious to know if information updated in Access can be updated on an Excel spreadsheet as well. I know in Excel you can format one spreadsheet to update another but I can't figure out away to have Access do the same thing.
I've read over and over that calculated data is bad, that's fine with me... but here is my dillema...
I have four fields that interact with my calculation in a single form. There is only one table in the database.
AmountF (The stored data in the table) (amount financed) FC (calculated by =[amountf]*.25) (finance charge) Amount Paid (used in calculation of total due) total due (calculated by =[amountf]+[fc]-[amount paid])
The math already works, everything works. I can choose to print the form and it looks great. However, I would like for it to (when I'm done printing the form) somehow save the total due data to the AmountF column in the table. AmountF is in the same line as all the other information, so I would like it to not create a new record just update the old one.
All four of these fields have a text box in the form for themselves.
I'm working with Access 2007 and am trying to make a form with multiple tabs that will update when a certain business name is selected in the combo box at the top of the form. I have tried looking up different codes to make the combo box update correctly but can't find anything. Right now I have this code in my After Update:
Private Sub cboBusinessName_AfterUpdate() On Error GoTo myError Dim rst As Object Set rst = Me.RecordsetClone rst.FindFirst "[GrowerID] = " & Me.cboBusinessName Me.Bookmark = rst.Bookmark
leave:
If Not rst Is Nothing Then Set rst = Nothing Exit Sub myError: MsgBox "Record Not Found" Resume leave End Sub