P. 1


|Views: 22|Likes:
Published by Ramesh Babu Babu

More info:

Published by: Ramesh Babu Babu on Aug 04, 2011
Copyright:Attribution Non-commercial


Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less






Question)We have a requirement to switch between the DBs based on the user login. We have two identical/similar dbs. But based on the users, the connection should switch. Ex: user1 should see the data fram DB1 and user2 should see the data from DB2. Our plan is to keep a single stream of Physical, BMM ,Presentation catalogs and Webcat. Is this possible through Session variables. If yes, how? Solution) It can be achieved using following steps. 1) Create a table "db_details" in any db with the following details: Login_Name dbname dblogin dbpassword 2) Populate this table as per your requirements. Create a connection pool in Physical layer which connects to this table (via database) 3) Create three Non-System Session Variables: dbname,dblogin,dbpassword. Create an initialization block with the following SQL Query: select dbname,dbuser,dbpassword from db_details where Login_Name=':User' and polplute the the above created variables. Set the connection pool of the initialization block which was created in step 2. 4) Now for the connection pool for which dynamicity is required as per the logged in user, in connection pool of that database in physical layer set the the following properties to: Data Source Name: VALUEOF(NQ_SESSION.dbname) User Name: VALUEOF(NQ_SESSION.dbuser) Password:VALUEOF(NQ_SESSION.dbpassword) Make sure if you are using ODBC or DSN's then DSN's with the name "VALUEOF(NQ_SESSION.dbname)" already exist in the system. So now you will be able to switch DB's based on the Login_Name.

You're Reading a Free Preview

/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->