Error-You Do Not Have The Necessary Permission..
I get this error when opening my MS Access database - You do not have the necessary permissions to use the ...[flie name and path]... object. Have your system administrator or the person who created this object establish the necessary permissions for you.
The database works fine on another computer, but every time I transfer it to mine (I am on a network), I get the above error. I have recreated the User-level security workgroup file, no joy.
Can you help?
I am trying to modify a database that I found to do automatic updates of a front end on the client's computer. I have it mostly working, except for one snag. When I run the update to copy the new front-end, the following line will only work when I put a stop in the code. " FileCopy strDest, strBkup"
If I don't have the stop, I get a Permissions error. Any ideas?
Hi all, Thanks in advance,
I have form in an access db (Access 2000) that users can use to (hopefully) import a raw .txt file into access. The user clicks a button and a FileDialog opens to select the .txt file the want to import. When the user selects the file, VBA opens the txt file in Excel (2007) using the following:
where strFilePath is the file selected in the FileDialog box.
A “With…End With” runs that sets up the .txt file in a format that Access will recognize and at the end of the “With…End With” it saves the txt file as an excel file so that the code can import the new xls file later:
.ActiveWorkbook.SaveAs FileName:="N:TempVR2Temp.xls", FileFormat:=xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
The code imports the data from Excel into Access using:
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "Data", "N:Temp VR2Temp.xls", True, "Data!A:E"
Everything works fine up to this point. Here I want to delete the temporary Excel file so that the next time the user runs the code a message box doesn’t popup saying “This file already exists. Replace the existing file?” To delete the file I was going to run the following code:
Dim strDeleteFilePath As String
strDeleteFilePath = "N:TempVR2Temp.xls"
However, I get the following error:
“Run-time error ‘70’: Permission denied.”
The code works fine if I run it on its own. But when I run it with everything else I get the error. I’m pretty sure that I’m missing a line of code to close something, but I have no idea what that line would be. I tried the following but it didn’t work:
I’m stumped. Any suggestions?
I have a very important access database running on a Windows 98SE laptop with Access 97 on the laptop. I wish to have that database backep up and opened on an XP machine running Access 2003. The problem is that the laptop is a corporate laptop with lots of security features and the database can only be opened by that laptop. The laptop only has permissions to read the file, so cannot remove the protection. I have tried to copy the system.mdw file across to the xp machine (in the correct directory), but I still get the below error.
The current user account doesn't have permission to convert or enable this database.
To convert or enable a database, ensure the following:
* You must join the workgroup that defines the user accounts used to access the database.
* Your user account must have Open/Run and Open Exclusive permissions for the database object.
* Your user account must have Modify Design or Administer permissions for all the tables in the database, or it must be the owner of all tables in the database.
* Your user account must have Read Design permission for all objects in the database.
* Request that other users close the database.
I have tried to create a new database on the xp machine and import all the data into a new database, but again I get an error (but only when importing certain forms and macros) below:
"You don't have permission to import, export or link to 'item name'"
I have also tried to create a blank database and import data from the database into it on the laptop, with the same error message above.
Does anybody have any ideas about this one? For example is there a piece of software to remove the protection (not a password remover)? - help appreciated.
I thought of a possible way to solve the problem of the annoying msg box that appears when a user tries to open a form when the administrator has not granted permission. (The problem with the message box is that the user has the option of clicking help and I don't want this)
Could I use VB code to say something like:
If CurrentUser = (available usernames that do have permissions) Then
DoCmd.OpenForm "Client Information Main Info Form", acNormal
MsgBox "You do not have permission to open this form!", vbOK, "Tennis Center Business Manager 2007"
Do you forsee this as a solution?
Thanks for your input!
The programmer who built this access program is no longer here...Everytime I create a new Report, it works great for me...but the person I made it for ALWAYS gets the MSystable permission error....I have gone through the wizard to give them every permission available on the report and the query it is using...AND went and made sure permission was given on the SQL side of things as well...YET I still get this incredibly annoying error...that seems there is no real answer to...CAN ANYONE help?!!! even compacted and repaired the program...still no good....I know it will be something small, but I can not see it.
Can i set permission on a single button in a access database form for specific number of users. And rest of the database is available for everybody ?
hi, when i tried to use "update" i got this error, no problem with "select" . it is got something to do with the permission setting?? using winxp pro, ms acccess 2003.
Microsoft JET Database Engine (0x80004005)
Operation must use an updateable query.
/okl/topics/DC/Basic/VD_Q1_Result.asp, line 72
i have this problem if anyone can help me please,,
i have some databases in my server(dc) + the Microsoft Office Access Workgroup Information(secured.mdw) ...
when i open the database i get this error message
("You do not have the necessary permission s to use
the '\dcdatabases$systemsdecdec sharedec_wahab.mdb'
Gas Supplier.mdb' object. Have your system administor or
the person who created the object establish the
appropriate permissions for you.")
then how can i open the database?
I get the above message when I try to open a database created by someone that no longer works here. I tried to create a new version of the workgroup information file and assume the permissions of the administrator, but I still cannot access the database. Any leads?
I was in the process of setting up a new user on our database, when I think I inadvertantly changed my own permissions. As the owner & creator of the database I am now unable to open it up - am getting th following messag:
"You do not have the necessary permissions to use the 'NDatabasesGAB Contacts.mdb' object. Have your system administrator or the person who creatd this objct establish the appropriat permissions for you."
After rading another thread on this subject I hav amendd the security options for the database, by right-clicking & selecting properties and the Security tab, then adding myself as the owner - but this has not resolved the problem.
Does anyone have any other suggestions to help me get back into my database?
I've been asked to modify an existing Access db, that was setup with user and group security. There is an Admins group which contains certain users. There are other user data groups which contain the users that are just entering data and viewing/printing reports. It looks like the users in the Admins group have a password associated with their account to log in, and the user data group's users don't have a password. Anyway, since I need to modify the tables and at least one of the forms, I need to have modify permissions. Unfortunately, all the employees who worked on creating this database, and whose user ids are listed as users under the Admins group, no longer work for the company. Therefore for me to even log into the database, I need to use one of the user data group's user's id. The creators also created an Access Workgroup Information (.mdw) file which seems to have 4 queries specifying the users and groups that are recognized and have can log into the db. However, I can't seem to modify the queries in the mdw file, and although the queries are linked to a table (I'm assuming is in the mdw file), the table doesn't show up in the Tables tab!
I bought a database about 10 years ago and still uses it. Since then we changed our address and need to update all the forms as the address is hard coded into the forms. When I tried to modify any thing it tells me I don't have the Permission. I tried to contact the programmer, but he's been out of business years ago and was unable to contact him.
How do I reset the permission on MDB? I tried Tools->Security->User/GroupPremissions and it only shows Admin user with "Read Design" checked on all object names. And if I check on any other permission it says I need administer permission.
I tried upvmsa2k.zip "Users' passwords viewer v3.2" and it shows admin user with garbled up password. Also tried MDWRecovery, but it says there's no user or password.
Your help would be greatly appreciated.
I have put my database in a package using MS Access extension but the user and Group Perssion is not included to the package. Does some one know how to include the permissions too.
I am using MS Access which has a ODBC link to a sql database. I find that the linked table can be edited in Access.
I would like to prevent editing in this Linked table. IS there a way?
Either when copying from one db to another on my machine or running a db produced on that machine on a network, I get the message "the database has been placed in a state by user (my machine is called "Rat") that prevents it from being opened or locked". =Error 3734.
The security data says I am "Admin" and permission is set for Admin and Users. It has been doing this intermittently for a while and now does it all the time.
Follow up data
All databases are created, revised and run on home machine (Rat) and run on the office network.
The offending DB will permit internal design, editing , copying and will accept pasting IN of tables etc. from other DBs. But it will not allow copying OUT of files such as a table to other DBs even on the machine that created them. However it will allow copying and pasting of objects such as forms in visual form or individual query cells to other DBs.
I’ve carefully compared the Tools/Security/User & Group Permissions with a good running version of the DB and can see no difference.
Permission settings on good and bad DBs are:-
Permissions: Admin Object: Current DB
Checked: Open/Run, Open Exclusive, Administer.
I’ve also checked each individual files’ Permissions. The .ldb file, viewed with Word with the offending DB running on my office machine (Weasil), reads:-
The creating machine “Rat” uses the Account “Richard”: but I have had few similar problems before. While revising the DB, I made 30 copies of at each stage along the way but saved carefully each design change and certainly did not deboot the computer without doing so.
I’ve tried the above procedure on my computer (Weasil) at the office, but got the same result. So it’s not the computers or MS Access 2000 program. Somewhere along the line, perhaps, the DB got corrupted. It Repaired and Compacted OK but still has the problem.
I have 1 permissions related Q.
If I create msaccess db by calling the app through its icon, i get a db with following permission items :
but if I create it through rightclick> new> ms_office_access_application, I get a db with:
VS Developers(compNameVS Developers)
Why /the hell/ those differences btw the same kind of files ? :mad:
maybe I should try again. It seems there are a few user of this forum with enough knowledge to help me out of my problem. Unfortunately I got no reply to my first post yet. I'm still in pain with Access Security permission and forms running VBA code. :confused:
Anybody out there with an idea, please!!! I can post my code if this helps...
I have a form which has a VBA code underlying which selects data from tables and queries and where the user can set individual criterias. For me as an admin this form works perfect. When I log on as a user and run the select query directly it works perfect. If I use my form with the VBA code running the query I got the message: "You do not have the necessary permission to use the 'MSys Table' object...." The user should not be an admin user and I already set the modify, update, delete, read, read design permission to the group. Nothing helps.
What's wrong with VBA code selects and security?
When users are active in DB
I have a table in Access database. I would like to set read only permissions to some of the fields/columns in the table. I do not want user to alter or edit some fields/columns in a table. Could someone give a solution for this?
thanks in adavance
I have a database, which contains linked tables to another database. The information held in the tables are mostly open for every permitted user but some of the table informations are restricted to a few user only. To manage all of this different permissions I created a workgroup, changed all the necessary things to become an administrator and run the security wizard to secure my database. Finally I want to give every single group the access it belongs to. And there is my problem.
I have a form which has a VBA code underlying which selects data from a table and two queries and where the user can set individual criterias. For me as an admin user this form works perfect. When I log on as a user I can't find out how to set the permissions not to receive the error message: "You do not have the necessary permission to use the 'MSys Table' object...." The user should not be an admin user and I already set the modify, update, delete, read, read design permission to the group. Nothing helps.
Please if anybody has an idea what I can try I really would appreaciate this help!
Thanks very much :)
My db is secured using Access security but now find myself needing to code a little security work around if possible.
I have a form that has a subform. On the subform is a field named "Comments". The subform security only lets a particular group write to the fields it contains (including "Comments"). I have a new user that I need to allow to write to "Comments" but not to any of the other fields on the subform. I could make another subform with "Comments" only field and redo my security so that the original group can write to both subforms and new user can only write to "Comments" subform but I think it might be easier to code in that the new user is only allowed to write to field "Comments" in the existing subform. Every user logs into the db so I can get the user ID.
Is it possible to do this?
If I split a database so that the front end is one pc and the back end is on another then the front end cant access the back end. the error message says that ....the database is already opened by another or that permissions are needed.... Please tell me: To what does these permissions have to be set and how do I set them. I dont think that it is a already open error. I think it is the second one which entails permissions. Still. I dont believe any user accounts or passwords have been set for anyone. If I try to open this database back end with a front end from the computer where it resides it works just fine.
I have obtained code that allows me to obtain external database object names from the MSySObjects system table.
When I select the external db, I sometimes get it to work while other times it comes up with a debug error that I don't have read permission to the MSySObjects table for that db. However, if I go directly into the db in question, I can view the MSySObjects table.
Here's the code: -
Code: DoCmd.GoToControl "txtFile"
If Me.txtFile.Text = "" Then
Set db = CurrentDb()
strFile = txtFile
strPath = txtPath
Set db = OpenDatabase(strPath & strFile)
OpenType = ObjectType
strSQL = "SELECT MSysObjects.Name FROM MSysObjects " & "WHERE Left$([Name],1)<>'~'"
Select Case ObjectType
'The MSysObjects.Type values can be found in the system table MSysObjects.
Case 1 'Tables
strSQL = strSQL & " AND Left$([Name],4)<>'MSys' " & "AND MSysObjects.Type =1 ORDER BY MSysObjects.Name"
Case 2 'Queries
strSQL = strSQL & " AND MSysObjects.Type =5 ORDER BY MSysObjects.Name"
Case 3 'Forms
strSQL = strSQL & " AND MSysObjects.Type =-32768 ORDER BY MSysObjects.Name"
Case 4 'Reports
strSQL = strSQL & " AND MSysObjects.Type =-32764 ORDER BY MSysObjects.Name"
Case 5 'Macros
strSQL = strSQL & " AND MSysObjects.Type =-32766 ORDER BY MSysObjects.Name"
Case 6 'Modules
strSQL = strSQL & " AND MSysObjects.Type =-32761 ORDER BY MSysObjects.Name"
I have an error when running my access application under Windows Terminal Server.
I use FileSystemObject to test whether .FileExists .FolderExists and whether drives .IsReady (forgive the English there).
When logged in as Administrator all works well. When logged in as User I strike "Permission Denied" errors (err code 70). I have gotten to the point where I believe that when logged in as "User" I cannot use FileSystemObject.
Permissions have been set to the .mdb file and folder in which it resides allowing Full Control. When logged in as a user I can open the mdb and add, modify and delete records. This leads me to believe that it's not a permissions problem with the mdb, just the user of FileSystemObject.
Any clues as to how I give the user permission (perferably with continuing to use FileSystemObject)??
Any help is appreciated. Regards Brett.
i have an unsecured database in 2000
i open up a blank db with a workgroup file and then pull everything in from the unsecured
ta da, a secured database
but if i go tools>security>users & accounts it gives me
'Cannot Read Permission on MSysAccounts'
which has stumped me
the workgroup file is OLD, like and mda old, and it might be that it needs converting to a 2000 mdw, but i don't have permissions to do it
am struggling for more things to try to solve the issue, any thoughts are welcome
I've added new user and change the Users rights on its objects, after completion, all other user including Admin rights has been removed from all the objects, the ownership of the object becomes <Unknown>.
Is there anyway I can reset the user permission?
Please help... Urgent!!!
I am accessing an access db (pts.mdb) via VB6. Everything has been working great. I added 2 tables to the pts.mdb and whenever I try to read the new tables I get the above message; but if I change the table name (PTS_Vendors) to an original table name then it reads just fine.
How can it read one table but not another?
There are no other users on this database and here is my VB6 code on the read:
Private Sub ConnectToPTSDB()
Dim cnnConnectString As String
Set rs = New ADODB.Recordset
Set cnn = New ADODB.Connection
rs.LockType = adLockOptimistic
cnn.ConnectionTimeout = 30
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:MyDirdatabasepts.db;Persist Security Info=False"
'Check to make certain we have a good connection
If cnn.State = adStateOpen Then
'select something from a table to check to see if we have a good connection
Set rs = cnn.Execute("select * from PTS_Vendors")
PS - Thanks in advance for your time on this =)
I wrote the following statements to update a SQL server database:
Dim MyDb As Database
Dim MyRs As Recordset
Set MyDb = DBEngine.Workspaces(0).OpenDatabase("AMD", dbDriverPrompt, False, "ODBC;DATABASE=AMD;DSN=Remote")
Set MyRs = MyDb.OpenRecordset("SELECT AllAttendanceEvents.* FROM AllAttendanceEvents ORDER BY AllAttendanceEvents.EntryTime DESC")
While Not MyRs.EOF
MyVal = MyRs!EntryTime
MyRs!Ix = 50099
When it execute the red line statement, it generates the error:Cannot update. Database or object is read-only.
This error is generated isnpite that I already checked the boxes: SELECT, INSERT, UPDATE, DELETE in the Permissions page of the tables?
Hi My 'Utter Friends,
Before I go and try and reinvent the wheel, I thought I'd ask for opinions and options.
I have a client who started out with like 4 - 5 people with database access, and each with
different areas allowed to them based upon their accessID using 'Security2000Demo''s code.
Its working great as always, but here is the issue.
They are expanding and now have like 8-10 users, which is no problem in their current setup.
But the office is moving people around to different responsibilities and hense their levels of
permission to areas within the database have to change also.
Originally, the accessID levels were coded within the main menu form, as they didn't really change
I am thinking of creating a new form with like a 'matrix' of yes/no controls so that the database admin
can easily select what various levels each user can gain access to.
Just wondering what anyone else has done before.
As always TIA,
I've used the 'Database Splitter' option to create a 'front end' to my database to provide users the ability to view my switchboard and order reports. My problem now is everytime someone opens the front end I'm locked out of the back end and can't make any updates to the data in the tables. I do have the front end and the back end in different server folders - not sure that makes a difference. How can I retain update capabilities to the back end even if someone has the front end open to run reports?
I want to use VBA with ADO (and/or ADOX) to allow a user Open/Run permission to the <Current Database>.
Can someone please provide a specific example.
I assume it's something like the following; but I need help, especially with the SetPermissions ... I don't know what to put in for the Name attribute?
dim cat as ADOX.Catalog
dim strUser as string
strUser = "ptescher"
set catalog = New ADOX.Catalog
cat.ActiveConnection = CurrentProject.Connection
cat.Users(strUser).SetPermisslions Name, adPermObjDatabase, adAccessGrand, adRightRead
set cat = Nothing
I have about 500 folders on a server that I am going to be assigning different permissions to for different users. Today I am tasked with changing one user as the only user for a specific 500 folders within about 65,000 folders. Any idea or tips for doing this?.... I just did about 50 by hand and it took me 30 minutes (using a search and right clicking them all). I'd rather spend the time learning and retaining the code for this process rather than veg out for 5 hours. Anything would be much appreciated! Thanks!