11-06-2014 11:36 AM
I have created a Oracle Library in SAS Management Console and registered the tables to the library. I can see all the tables which are registered in SAS Management Console. Few users are not able to see all the registerd tables in SAS Enterrpi guide. The strange part is they are able to see few, but not all the tables. I checked the permissions and the permissions are same for all the registerd tables in the library. Can someone advice on what the issue might be?
11-06-2014 01:51 PM
When you say the same permission, I take it you mean in SAS metadata?
Are all the table in the same SAS Metadata folder?
How is the Oracle library set when it come to authorization? Do you use the users login, or a shared group login/default user?
11-06-2014 01:52 PM
Check to see if the missing tables are in fact views or not. You can allow users to see both tables and views without registering them in SMC by adding AssignMode = 2 as an extended attribute on the SMC data library definition.
11-06-2014 02:39 PM
You are right . User has ReadMetadata and Read access to the library as well as the tables. The permissions are defined on the libraries implicitely. All the tables are in the same metadata folder. Also, we are using individual user logins to the Oracle server which are defined under a new auth domain. Also, I just found that another user with similar priveleges is able to see all the tables registered in that partcular library.
11-06-2014 02:47 PM
@saskiwi - I have registerd all the tables to that library. I have asked the user to execute the below code just to create an other sample library.
libname MYDATA2 META library="Meta Library";
PROC DATASETS NOLIST NODETAILS;
Assume that the table XX is not seen by the user in the library.
The Log file says that the table does not exist and in fact, I can see the table under the new library "MYDATA2". When I made the user to click on the XX table under MYDATA2 library, I see the below error message,
SAS EG cannot open the data file XX
Error opening Data XX
XX Does not exist
I see a sasnote with a similar error message "44703 - Errors opening database views in SAS® Enterprise Guide® or other SAS® client applications"
But I am surprised because few users are ablle to see the tables.
11-06-2014 03:12 PM
Since you are using individual user logins for Oracle I suggest you confirm with your Oracle DBA that these logins have at least read access to all the tables. Since metadata permissions are all the same it is worth checking the Oracle permissions.
The point I was making in my first post is that if you want to avoid having to register tables in metadata you can, using AssignMode.
11-06-2014 03:38 PM
You can see the registered tables in the metadata and they will not having functionality in accessing the real data.
Users that found the SAS metadata can tell you they see them, users that want to access oracle can tell you the can not see the data. All is true depends on the subject being reviewed.
Proc datasets is accessing the real oracle data not the metadata.
It will require the libref has been set for the user. Is that the case?
11-11-2014 09:52 AM
Thanks everyone for your feedback. I just noticed that the library is predefined (Native Engine) and the user dont have read access to certain tables in Oracle DB. When I initially created the library (Not predefined), I registerd the tables manually and later changed the table definition to pre-defined which was the reason for confusion.