Modules & VBA :: Attachment Locking The Entire Database
Jun 13, 2013
I have access BD and every one use it through shared folder. My problem is in attachment ! , if i use the regular attachment filed in access there is one user only able to attach files and others can`t attach any thing until he finish.
I tried to do attachment through VBA like below which make it worse as it lock the DB so, no one can even open the DB and one user only access the DB .
Dim db As DAO.Database
Dim rsParent As DAO.Recordset2
Dim rsChild As DAO.Recordset2
Set db = CurrentDb
Set rsParent = me.Recordset
[Code] .....
How multi users attach files at the same time without locking the DB.....
I have designed a database which I intend to split for multi-users to access from one front end icon on a shared folder at work. I have designed a form bound to cmr record table and on it a subform to another table where cmrs activities will be saved. The form has buttons to and blank controls.
User can create a new activity entry by typing into the blank controls and pressing the save button which saves to the activity table. the edit button extracts a selected records details (selected on the subform) from the activity table and populates the blank field for a user to edit and then hit save to save changes. The delete button deletes a selected record from the activity table. I intend to have multi-users either accessing, viewing and a possibly editing the same customer at the same time. The simultaneous viewing is essential but the simultaneous editing, though not desired is inevitably going to occur.
What I would like to know is:
1. Can you lock an individual record in a table or does the whole table have to be locked. E.g If Colleague 1 is editing Cmr A's record in Table1 can he lock it so Colleague 2 can view and edit Cmr B's record in Table1
2.Can Colleague 1 access/read Cmr A's record in Table1 to retrieve details toe the form controls if Colleague 2 is viewing or editing Cmr A's record in Table1
3. If record lock is possible, how can I initiate it in my example code below.Edit activity record Code
Code: Private Sub Edit_A_Click() 'Get Data to text box control With Me.R_P_Data_P_Subfrm.Form Me.txtrID = !rID Me.txtrID.Tag = !rID Me.txtrefNo = !refNo Me.cmbrpc = !rPC
Hi :rolleyes: I would like when I click a button for the system to automatically create a copy of the whole database and place it into a separate folder. How would I do this??? :confused:
Is there a way to search an entire database? Almost like a Google search where a user could put in a few key words and it would retrieve all records no matter which fields the key words appeared in?
I am running an autocompact module in Access97 which will created a 'compacted version' of my database. I then want to rename this compacted version to the name of the original database I compacted. I cannot however find a way of doing this in code.
Basically the idea is to compact every 45 minutes or so, but what my autocompact is doing is creating a compacted version under a different name, and so compacting a copy of the database, I then want to change this compacted database name to the original name and re compact every 45 mins
I wonder if by any chance it is possible to create a search bar that scans the entire database- or lemme say the fields i assigned to such search bar- that can be put in the switchboard or so.
According to my level of understanding of access, this should be a query.
However, is it possible to make it appear like a search bar that could be placed where I want it; in this case in the switchboard??
Not a very important question and is just for aesthetics however is there a way to make every form, every command button the same colour, font, size etc?
I have selected a theme however it does not change all forms, labels, text boxes, etc
I don't really want to have to go change them all one by one
For example I would like to get rid of all the navigation on all my forms can you change it over whole database or just individually?
I have a database with multiple forms and I would like to on close I would assume of the form, save a backup to a specific folder. This will all change once I move the database to the server but for now want a backup on my machine. Here is my code:
Code: Private Sub Form_Close() Call db_backup End Sub Below is in a module
[code]...
The problem is when I run this the program will give me an error saying: runtime error 438 object does not support this property or method
I have a form which has a field called quote directory, this contains the path of the quote documents and sub folders, I also have a field called project directory.
When a quote is confirmed I have it all working so a new folder is created with specfic details like project number etc.What I want to do is move the folder from the quote directory and put it in the newly created folder in the project directory.
I am building a database where one Form displays records from 14 different tables. For some reason, when I recently try to add a field on to a form from a new table, the ENTIRE form loses the record source, and every single field that is already on the form gets that green dot in the corner with errors surrounding a record source that cannot be found. What am I doing wrong? Am I exceeding some limitations with forms?
I have a company wanting to asses my database and i am willing to show them but i need to be able to lock the database so that they can view it but cannot edit anything in it either adding deleting or plan editing. How can i do this.
As my username states, I am a rookie to MS Access. I built a database using Access 2002, I will distributed it to other people, I will like to lock changes to certain areas such as forms, design view, etc.
Can this be done? The help is greatly appreciated!
I have looked on the forums and cant quite find what im looking for so i wanted to ask you lot for help.
I have a database i have created.
It will be sent out to people to populate via a series of forms i have created.
How can I lock it down so that: 1) you cant access any of the database apart from the forms 2) Lock it so no one can get in to view the code anywhere or make any amendments to the forms and database what so ever
I am new at this stuff. So please excuse my ignorance. I created a database which a lot of my colleagues want a copy. I don't mind giving them a copy. However I don't want them to change the design or copy it to give to others. I don't mind them adding their records.
Is this possible to do? Or should I just keep the database to myself.
Is there a way to set the control source for an entire form through VBA? I have a database that was set up just as an archive file, not intending to have any forms or reports in it. It was simply to house tables containing data from previous years. My main database just copies the table over to the archive file and adds the year to the table name. I have just been told that the users would like a form and a series of reports set up in this database.
I would like to set the main form up so that before it will allow them to do anything, they have to enter the year of the data they are looking for. After the year has been entered, I would like to adjust the control source of the form to reflect the appropriate table. In other words, when a user opens the archived database, he or she will see a field for the year an nothing else. Once they enter the year they are looking for, the form will populate with data from the corresponding table (the table names look like this - tblPM_Completed_2013). Is this possible?
I would like continuous subform as a list box in my file. Now when click fields on my form the entire record will not be highlighted. In the sample I have found from the net when click on each field in the form entire row will be highlighted. So I try to using function in the sample for my own but it does not work and when I click on each field just that field in 1 second will be highlighted and entire row will not be highlighted.
Private Sub P_ForceHighLight() On Error Resume Next Dim ct As Control, ct1 As Control DoCmd.Echo False Set ct1 = ActiveControl For Each ct In Me.Detail.Controls ct.SetFocus
I have prepared an access database on a shared drive location(lan) with 5 tables. The main table has over 110 fields and is linked to a form. On an average the table stores 12000 records, which are updated via a form.
Normally, 7 users work on this form and do add/change/delete operations on the records.
The frequent issues I face are: Corruption of records. "Could not update, currently locked" errors.
I have constantly tried compact and repair option, but the same does not give required results.
Does anyone know how to lock a database so it can be accessed by only one person at a time? We have several users using a 'local' copy of the same database and frequently synchronizing with a network copy. We want to avoid a situation where more than one person is trying to synchronize with the master. Please advise - thanks!
I have a call tracking database with 5 active users. Ocasionally the database will freeze, usually for several people at once. It will say: "Can not update record; Currently Locked"
The only way to fix it is to close and re-open. I split the database, compiled it and then created an MDE file to distribute. They are using copies of the front-end, not links. The database locking more and more every day. But we are using it more. After parusing the forum I'm starting to suspect that this is a problem of "Primary Key duplication" If everyone trys to create a record at the same time, would the database lock because we all created the same record at the same time?
If so, how do I get around this? Use something other than Autonumber for the primary key? Or is this an entirely different problem?
Have an Access database that is used by multiple users, the lock file seems to have vanished. Yet the database is in a read only state and still locked. How do I unlock the database? How do I find out who is locking it? How do I kick the person off is neccesary to unlock the database? Thanks.
I created a database a while ago which has been working just fine, until I wanted to make one addition: an attachement field to one of its tables.
If I do so, some queries don't work anymore and as a result of that, some (sub)forms do not work. The only error I get is: The search key was not found in any record.
When I add an other kind of field (like a text field), the problem does not occur..
When I remove the attachment field again, everything works fine again...
why is it that as soon as you fix one problem another one needs dealing with :mad:
OK, the problem i have is that i have a BE/FE configuration database in a multiuser environment. I have built all the tables and the relationships in the BE configuration. In the FE configurations i have built the main forms to input data. It has no come to the point where i have begun to create the queries to allow reporting and data searching. And this is where i have a problem. I am trying to create a simply query and i do mean simple (at the moment i simply want 2 fields from 1 table and 2 fields from another table) no calculations or anything i just want it to display the data. I have tried creating this query numerous times and i keep getting the same error.
"The wizard is unable to open your query in datasheet view, possibly because another user has a source table open in exclusive mode. Your query will be opened in design view"
the above is the error i get when i use a wizard to create the query, after getting this message and going into design view i try to view the results in datasheet view and get the following error "Type Mismatch in expression"
If i dont use a wizard and create it in design view, when i go to view the results i get the second error message everytime.
If i create a query from 1 table only the query works without errors, but i always get errors when i have more than one table in the query.
Also i am the only person with the database open so therefore it is total impossible for the database to be open by another user in exclusive mode.
Anyone know what the problem might be or how to fix. Your answers will be very much appreciated.