N
Neil Sargent
I have a generic code library, developed as an MDA and distributed as an
MDE. It is developed using my system workgroup file.
I have a number of applications which use the code library. One of these is
secured using its own workgroup file. It is split into a frontend/backend.
The backend only has tables and these are all owned by the developer user
account with full permissions. The users group account has all permissions
except write design and administer.
I have a library function which compares the tabledefs in two databases. It
is used to check schema changes when the backend structure is updated.
If the function is called then it reports "Error 3110, Couldn't read
definitions; no read definitions permission for table or query '|'." when if
tries to read the tabledefs collection of the target database.
If I import the function into the application, it runs OK.
It appears that when the code runs in the context of the library database,
it has some sort of permissions issue. This may be because the code was
developed with a different workgroup file - even though the users group has
permission to do the intended oepration.
Is this expected behaviour?
Is there a workaround?
I could probably produce a copy of the library database using the
application's workgroup file, but then it is not generic and defeats the
whole object of a library.
MDE. It is developed using my system workgroup file.
I have a number of applications which use the code library. One of these is
secured using its own workgroup file. It is split into a frontend/backend.
The backend only has tables and these are all owned by the developer user
account with full permissions. The users group account has all permissions
except write design and administer.
I have a library function which compares the tabledefs in two databases. It
is used to check schema changes when the backend structure is updated.
If the function is called then it reports "Error 3110, Couldn't read
definitions; no read definitions permission for table or query '|'." when if
tries to read the tabledefs collection of the target database.
If I import the function into the application, it runs OK.
It appears that when the code runs in the context of the library database,
it has some sort of permissions issue. This may be because the code was
developed with a different workgroup file - even though the users group has
permission to do the intended oepration.
Is this expected behaviour?
Is there a workaround?
I could probably produce a copy of the library database using the
application's workgroup file, but then it is not generic and defeats the
whole object of a library.