I have seen a few posts on various blogs which have info on the SA System area, but none of them seemed complete so here's my attempt :-)
The SA System area allows you to set up delivery devices for users of Siebel Delivers automatically, so that it isn't necessary for each user to fill in My Account with appropriate delivery devices and profiles etc.
The core of the SA System area is a presentation catalog/subject area containing exactly the following tables and columns:
So, once I had created this rest rpd, I set up my OBIEE server to use it, filled in some data in the DB tables and then started it up. This is a query showing what I added to the tables:
I then logged in as my test user, went to My Account and got this:
On playing around with this there appear to be some of the columns which don't do anything:
Another thing to consider is that a user can still add their own delivery devices and profiles and thus override the SA System ones. However this can be disabled through the instanceconfig.xml, the tag <IgnoreWebcatDeliveryProfiles> needs to be added inside the Alerts tags and set to true, for example:
<ServerInstance>
...
<Alerts>
...
<IgnoreWebcatDeliveryProfiles>true</IgnoreWebcatDeliveryProfiles>
...
</Alerts>
...
</ServerInstance>
This will mean that users cannot now add their own delivery devices or profiles, the My Account screen looks like this (notice that the links to add new devices and profiles are missing):
By default the user name you log in with and the user name in the database table must exactly match for the SA System area to work. You can get around this by using the tag <UpperCaseRecipientNames> in the instanceconfig.xml as below:
<ServerInstance>
...
<Alerts>
...
<UpperCaseRecipientNames>true</UpperCaseRecipientNames>
...
</Alerts>
...
</ServerInstance>
If you then ensure that the user names on the database table are in upper case then the user logging in can be in upper, lower or a mix and it will still work. For example, the username on the database table is 'MATT' but I log in using 'Matt', this will still pick up my delivery devices and profiles if the tag above is set to true.
Finally, it is possible to disable the SA System area completely from the instanceconfig.xml using the tag <SystemSubjectArea> (note that this tag does not go inside Alerts):
<ServerInstance>
...
<SystemSubjectArea>true</SystemSubjectArea>
...
</ServerInstance>
The core of the SA System area is a presentation catalog/subject area containing exactly the following tables and columns:
As far as I can work out the BMM layer can look pretty much as you want as long as the presentation layer looks like this. For example, in other examples on blogs I have seen the Group Name on the same logical table as the user name etc; in my BMM I took a leaf out of the OBIA and how the SA System is configured to work with Siebel:
So I created a seperate logical table for groups, and then an intersection table to hold the many to many relationship between users and groups, this also mapped to the physical layer:
I did this because I wanted each user to be able to have multiple groups, more on this later.
I then logged in as my test user, went to My Account and got this:
Hmm, strange. So as instructed I looked at the BI presentation server log:
Authentication Failure.
Odbc driver returned an error (SQLDriverConnectW).
---------------------------------------
Type: Error
Severity: 40
Time: Fri Jan 29 14:20:21 2010
File: project/websubsystems/sasystemsubjectarea.cpp Line: 248
Properties: ThreadID-7256;HttpCommand-UserPreferences;RemoteIP-127.0.0.1;User-Matt
Location:
saw.httpserver.request
saw.rpc.server.responder
saw.rpc.server
saw.rpc.server.handleConnection
saw.rpc.server.dispatch
saw.threadPool
saw.threads
Error finding System SA. Authentication Failure.
Error Codes: IHVF6OM7:OPR4ONWY:U9IM8TAC
Odbc driver returned an error (SQLDriverConnectW).
State: 08004. Code: 10018. [NQODBC] [SQL_STATE: 08004] [nQSError: 10018] Access for the requested connection is refused.
[nQSError: 43001] Authentication failed for Administrator in repository Star: invalid user/password. (08004)
Odbc driver returned an error (SQLDriverConnectW).
---------------------------------------
Type: Error
Severity: 40
Time: Fri Jan 29 14:20:21 2010
File: project/websubsystems/sasystemsubjectarea.cpp Line: 248
Properties: ThreadID-7256;HttpCommand-UserPreferences;RemoteIP-127.0.0.1;User-Matt
Location:
saw.httpserver.request
saw.rpc.server.responder
saw.rpc.server
saw.rpc.server.handleConnection
saw.rpc.server.dispatch
saw.threadPool
saw.threads
Error finding System SA. Authentication Failure.
Error Codes: IHVF6OM7:OPR4ONWY:U9IM8TAC
Odbc driver returned an error (SQLDriverConnectW).
State: 08004. Code: 10018. [NQODBC] [SQL_STATE: 08004] [nQSError: 10018] Access for the requested connection is refused.
[nQSError: 43001] Authentication failed for Administrator in repository Star: invalid user/password. (08004)
I had to scratch my head over this one for a while until I wondered if it was something to do with the credential store that Delivers uses to authenticate to the presentation services. So I decided to try adding Administrator to the store:
C:\OracleBI\web>cd bin
C:\OracleBI\web\bin>cryptotools credstore -add infile c:\OracleBI\web\config\credentialstore.xml
>Credential Store File:
C:\OracleBI\web\bin>cryptotools credstore -add infile c:\OracleBIData\web\config\credentialstore.xml
>Credential Store File:
C:\OracleBI\web\bin>cryptotools credstore -add infile c:\OracleBIData\web\config\credentialstore.xml
>Credential Store File: c:\OracleBIData\web\config\credentialstore.xml
>Credential Alias: admin
>Username: Administrator
>Password: ******
>Do you want to encrypt the password? y/n (y): n
>File "c:\OracleBIData\web\config\credentialstore.xml" exists. Do you want to overwrite it? y/n (y): y
C:\OracleBI\web\bin>
C:\OracleBI\web\bin>cryptotools credstore -add infile c:\OracleBI\web\config\credentialstore.xml
>Credential Store File:
C:\OracleBI\web\bin>cryptotools credstore -add infile c:\OracleBIData\web\config\credentialstore.xml
>Credential Store File:
C:\OracleBI\web\bin>cryptotools credstore -add infile c:\OracleBIData\web\config\credentialstore.xml
>Credential Store File: c:\OracleBIData\web\config\credentialstore.xml
>Credential Alias: admin
>Username: Administrator
>Password: ******
>Do you want to encrypt the password? y/n (y): n
>File "c:\OracleBIData\web\config\credentialstore.xml" exists. Do you want to overwrite it? y/n (y): y
C:\OracleBI\web\bin>
After that I restarted the services and tried again, to my surprise this had worked:
Here we can see the devices I added for myself in the database table (the cell phone and pager aren't real examples, they have to be addresses to which texts can be delivered rather than actual phone numbers):
And here is the profile I added:
- Language
- Locale
- Time Zone
- Group Name
Another thing to consider is that a user can still add their own delivery devices and profiles and thus override the SA System ones. However this can be disabled through the instanceconfig.xml, the tag <IgnoreWebcatDeliveryProfiles> needs to be added inside the Alerts tags and set to true, for example:
<ServerInstance>
...
<Alerts>
...
<IgnoreWebcatDeliveryProfiles>true</IgnoreWebcatDeliveryProfiles>
...
</Alerts>
...
</ServerInstance>
This will mean that users cannot now add their own delivery devices or profiles, the My Account screen looks like this (notice that the links to add new devices and profiles are missing):
By default the user name you log in with and the user name in the database table must exactly match for the SA System area to work. You can get around this by using the tag <UpperCaseRecipientNames> in the instanceconfig.xml as below:
<ServerInstance>
...
<Alerts>
...
<UpperCaseRecipientNames>true</UpperCaseRecipientNames>
...
</Alerts>
...
</ServerInstance>
If you then ensure that the user names on the database table are in upper case then the user logging in can be in upper, lower or a mix and it will still work. For example, the username on the database table is 'MATT' but I log in using 'Matt', this will still pick up my delivery devices and profiles if the tag above is set to true.
Finally, it is possible to disable the SA System area completely from the instanceconfig.xml using the tag <SystemSubjectArea> (note that this tag does not go inside Alerts):
<ServerInstance>
...
<SystemSubjectArea>true</SystemSubjectArea>
...
</ServerInstance>
Hi Matt,
ReplyDeleteI had a query:
We have scheduler configured with LDAP and is working fine. How can we set the deafult device for all the users as Email instead of the users having to set it through - My Account.
Hi,
ReplyDeleteAs far as I know there is no way to have the SA System area use LDAP directly. Therefore you would need a table as in the examples above.
Regards,
Matt
HI,
ReplyDeleteCant we call the mail parameter in LDAP through use of session variable Email on OBIEE?Let me know what you think about it..
Regards,
San
is it possible in siebel analytics?
ReplyDeleteHi there.
ReplyDeleteWhere did you get the information on the editing of the instanceconfig.xml?
I cannot find anything on this in the OBIEE Documentation
As an addendum to this if you are using the SA system subject area over Siebel then it uses an inner join to get the user's timezone. The upshot of this is that if the user does not have a timezone set in Siebel then they will never get an iBot delivered to the dashboard or their email (even if their email address is correct in Siebel)! An excellent "feature" ...
ReplyDeleteHi
ReplyDeleteMy name is Nagendra plz any one give me the imddt rply to this question? Set of data-Zone areas Eg: Need to find the height of a people with maximum minimum and average height. Can we do this using OBIEE
awful piece of information, I had come to know about your blog from my friend vimal, mumbai,i have read atleast 13 posts of yours by now, and let me tell you, your blog gives the best and the most interesting information. This is just the kind of information that i had been looking for, i'm already your rss reader now and i would regularly watch out for the new posts, once again hats off to you! Thanks a million once again, Regards,
ReplyDeleteobiee online training