Is It Possible To Access Specific Records Without Locking The Whole Table?
Nov 19, 2007
Is it possible to access specific records from a Microsoft Access table without locking the whole table?. I have different processess accessing at the same time different records from the same table and I getting an execption, indicating the table is locked. Can any one provide me some help regarding how to access specifi records without locking the whole table in MS Access?
Is there any way other than through coding/controls I can lock specific records in a table.
I have a reference table with less than 200 records on it. 5 and only 5 records need to be locked so that they primarily can not be deleted but also so they can't be edited.
I've read about locking it at form level but that, to me, means some sort of coding.
Hello, I have just spent ages doing searches and reading everything I can on locking. But, I have yet to find an answer as to how I can lock a specific field in a specific record.
e.g. Staff enter customer details, then at the end of the day the admin (me) checks it over and presses a big old button that stops them from locking certain fields in the current record only - they must still have access to the unlocked fields of the current record, and it must not lock any other records.
I'm guessing there's some VB code in the form of fieldname.lock = true, but then it locks the field throughout the whole table!
I have a query on a form in which I want to lock the first two rows to prevent the user from manipulating the data. The user will input information in the third column.
I have a staff database in my office which holds, amongst other things a list of staff holiday taken. Presently the staff have no access to view holidays because they will also be able to view other employees details. What I need to do is enable members of staff to see their own holiday, but no others and Im really not sure how to go about it.
I have a workgroup in place; so each user has their own login/password.
And sadly i am saying hello with a problem. I am a relatively new user, and i have a amateur(i think) problem.
Doing a booking system, and working in VBA I want to check if certain records exist by date. My "bookings" table has 'roomname' and 'date' and 'timeslot' as fields.
My query is: strSQL = "SELECT * FROM bookings WHERE (((bookings.room)=" & roomName & ") AND ((bookings.date)=#" & dateStr & "#));"
I need to get all those records, and be able do certain checks on them, but I dont know how to execute that in VBA, so i check the records to see which time slots have been booked.
In pseudocode: If(bookings.date == #xxx# AND bookings.timeslot == xx) then 'some sort of action'
In short how do i filter specific records using my query and how do i access record information directly in VBA? research suggests recordsets, but not sure how to implement that
I am creating a task tracker where the user will enter a task which is working. If he is complete the task at that moment he will submit the task and everything is done for that task. However, if there is some issue or if the user need any information, then the user will enter a comment and will hit hold. My queryis once the user hits hold button, the table "Main" will capture the hold date and time. I need a second table, may be by name "Inbox" which will only show records kept on hold.
Secondly there should be hyperlink for "ID" of Hold records in table "Inbox" and when the user click on the the "ID" to resume the task, it should take the user to "Main" form and display that particular record (record which the user had clicked). Also, the date and time should be recorded when the user click on the hyperlink in Resume_Date and Resume_Time fields for that record.
While I am not new to Access, I am not well versed in its abilities as far as combo boxes go. What I have is a Form where a combo box allows you to pick from a table records 'record ID #' in order to fill in the data of that record to the rest of the form.What I want to do is use a query to select specific records from this table and allow the combo box to show only these 'selected Record IDs' for user selection.
I have table call "empTable" and it has an Attachment field called "Attachment". Some of the records has empty Attachment field and some record has one attachment and some has two and the attachment types are jpeg and pdf.
I want to remove all the pdf from all the records in this table automatically with VBA or something, is it possible? How to do it?
I Have a table that contains the fields: CAT, CHAPTER, ID, someSrting and Completed
CAT, CHAPTER, ID are numbers and Completed is true/false. If I mark a certain entry as Complted (true), I want all the records with the same (CAT, CHAPTER, ID) as the one I marked to be updated to Completed.
For example, If I marked the entry cat:1 chapter:1 id:1 as completed (true), I want all the entrys that have cat:1 chapter:1 id:1 to be marked as completed (true)
the code I wrote is:
Code: Private Pub Completed_check_AfterUpdate() Dim myCC Dim myCat Dim myChap Dim myID myCC = Me.Completed_check myCat = Me.CAT myChap = Me.CHAPTER myID = Me.ID CurrentDb.Execute "Update [my Table] " _ & "SET Completed = (" & myCC & ") " _ & "WHERE CAT = (" & myCat & ") And CHAPTER = (" & myChap & ") And ID = (" & myID & ") ;" End Sub
I'm running the code (my clicking the "check box") and nothing happens, I was thinking that maybe I defined the after "WHERE" statement wrong, and there are 0 entrys changed..
UPDATE: after removing the
Code:
"& "WHERE..."
row, the code does update the entire table, so I have a problem with the syntax of the sql..
I need to extract a specific number of records into a table using a MakeTable or Append command using a temp variable, e.g. TempK&SA. Previously on the forum I was shown how code could be added to the OnOpen function to use a temp variable to select a specific number of records to report. ACCESS does not have the OnOpen function in the design view of a query like in the report. It does allow a SELECT TOP but only with fixed variables or percents (e.g. 25 in the code below).
The beginning code for the make table query (where 25 is the number of records added) is:
INSERT INTO [Output] ( RndNo, PointBiserial, BloomsTax, DateRevised, Exam1, Status, Exam2, Exam3, Exam4, [NCCPAKnowledge&Skills] ) SELECT TOP 25 TestBank.RndNo, TestBank.PointBiserial, TestBank.BloomsTax, TestBank.DateRevised, TestBank.Exam1, TestBank.Status, TestBank.Exam2, TestBank.Exam3, TestBank.Exam4, TestBank.[NCCPAKnowledge&Skills], * FROM TestBank WHERE (((TestBank.PointBiserial) Is Null Or (TestBank.PointBiserial) Between [TempVars]![TempPointBiserialLow] And .....
how to modify the code to allow a temp variable to determine the number of records to append to another table would be gratefully received. (This process then is repeated for a total of 7 append tables with different temp variables.)
Is there any way to "lock down" newly created records somehow, so that only the person who created them can edit them after the fact?
Obviously, this would require some kind of system where everyone logged in with some kind of userID and password...and even then, I don't know how such a security system could be set up.
Is this possible? If SO, are there any examples of it anywhere that I could check out?
I update the table through a form. Each page in the form updates one complete row of the table.
I am trying to find a method to block each row of the table (or equivalenty each record in the form) after completing the entry in order to prevent unwanted deletion or alteration of the entries of this record in the future. Is this possible?
I’m new to access but I have created a table with a form linked to it. It shows one record per page. I just want to be able to lock and unlock individual records in the form by using a checkbox. This will prevent me from accidently making a change to an old record.
For example, when the checkbox is unchecked. the current record on the form can still be edited. When the checkbox is checked, the record can only be viewed, not edited. I still need to be able to navigate through the locked record and create a duplicate from the locked record though. Does anyone know a simple way to do this? My guess that it has to do with the AfterUpdate event? Thanks for any help.
anyone know about this? i've messed with it, but i think i screwed it up. when one user is using a record and another tries to access it, my program shuts down completely.
I can't seem to find any answers to this maybe i am asking the wrong question, or its so easy nobody asked.
I am viewing / editing some records in a form, I want to view all of the records but only allow edits to records with forms with tblData.Locked = false.
I have 4 users entering data via aform. The database is located on a shared drive. They are getting errorsthat the record is locked. I believe this happens when 2 or more people open the form and are trying to enter data at the same time. Is there a way to have each person lock a new record on open at the form? or is there a better way to handle this? I'm new at this and am working my way through.
About six months ago I created a database for tracking customer calls and comments. I replicated this database because I wanted to be able to make design changes without effecting the users ability to add records. I have no security set up for the database except for startup options. I am having an issue with users being locked from adding records once in awhile. The dialog box says "Could not update; currently locked by user 'Admin' on machine '***'". The more I read this the more I am thinking that they are getting assigned the same record ID when they go to make an entry. Although, if the users are patient and wait a few minutes they are able to finish adding the record without deleting it and starting over. There are now 22 people utilizing the database and about 17 of them are using it consistently. Any insight on this would be appreciated.
I have 2 Tables. Table "BOL" and Table "Containers". Both contain "Job_Number" and "Bill_of_Lading_Number" as a field. I would like to get a "Bill_of_Lading_Number" record from "BOL" and add it to "Bill_of_Lading_Number" in "Containers" table based on condition when both "Job_Number" are equal. I have tried two methods. One with DLookup and another with SELECT. Both work but with a small problem.
When I execute them, a dialogue box popup asking me to enter the "Bill_of_Lading_Number" value while the required value shows as dialogue box heading. This box shouldn't come up and I am not sure why this is happening. "varsJobCont" variable I get from another form and is "Job_Number" value that determines the record to be selected.
My Both Codes are:
Dim strBill As String strBill = DLookup("Bill_of_Lading_Number", "BOL", "Job_Number = " & Application.TempVars("varsJobCont").Value) DoCmd.RunSQL "Update Containers SET Bill_of_Lading_Number = " & strBill & " WHERE Job_Number = " & Application.TempVars("varsJobCont").Value Dim strBill As String Dim dbs As DAO.Database Dim rst As DAO.Recordset Set dbs = CurrentDb
[code]....
shows the dialogue box and the heading "bbb1055" is actually the correct value I needed to get. It should have been put in the other table automatically without the need to insert it manually again.
Hoping you can help me out with a problem I have... Basically every now and again I get a call from my client saying they cant add a new record, to any table, they get a message saying they are not allowed. I go in and it seems the DB has somehow locked itself and I have to open it up and repair it... it is a multi user setup with the database on a server.... I have seen the users actually end task on Word if it doesnt respond quick enough and was wondering if this would cause the locking problem!? I am just asking to see if there is a setting or something I can do to try and prevent this happening!?
I have and order entry/lookup form with a subform to view the line items on the order. Once an order has been saved and status is ‘placed’ I want the records for that order to be locked.
I would also like to display a message box with a yes/no answer to confirm that they want to issue the order and if they confirm then lock the record otherwise return them to the open order.
I can't find out how to do this, but I'm sure it can be done.