Internal LDAP Session Variable Population

All,
I can find plenty of documentation on how to populate a session varible from an external LDAP server. How do you populate a session variable from the internal LDAP server? I can't find documentation on this anywhere.
Thanks in Advance,
Josh

Turribeach,
In my .RPD I am trying to populate some of the system session variables, such as 'USER', 'DISPLAYNAME', 'GROUP', etc. from the out of the box, internal to Weblogic, DefaultAuthenticator, LDAP. I have found numerous blogs on how to connect to an external LDAP for authentication, at which point one can populate the system session variables from the external LDAP in an session variable initialization block. I can't find any documentation/blogs on how to use the internal LDAP to populate such system session variables. Any help will be greatly appreciated.
I did find the system function 'user()' returns the user currently logged in, so that's a bit of a temporary workaround for the 'USER' system session variable.
Thanks,
Josh

Similar Messages

  • Session variable and initialization block issues

    We are using OBIEE 10.1.3.3 and utilizes built in security features. (No LDAP or other single sign on). The user or group names are not stored in any external table. I have a need to supplement Group info of the user to the usage tracking we implemented recently as the NQ_LOGIN_GROUP.RESP column contains username instead of group name. So I created a session variable and associated with a new initialization block and also had a junk default value set to the variable. In the initialization block, I wrote the following query and as a result it inserted correct values into the table when the TEST button was clicked from the initialization block form.
    insert into stra_login_data (username, groupname, login_time) values ('VALUEOF(NQ_SESSION.USER)', 'VALUEOF(NQ_SESSION.GROUP)', SYSDATE)
    My intention is to make this execute whenever any user logs on. The nqserver.log reports the following error and it doesn?t insert values into the table.
    [nQSError: 13011] Query for Initialization Block 'SET_USER_LOGIN_BLOCK' has failed.
    [nQSError: 23006] The session variable, NQ_SESSION.USER, has no value definition.
    [nQSError: 13011] Query for Initialization Block 'SET_USER_LOGIN_BLOCK' has failed.
    [nQSError: 23006] The session variable, NQ_SESSION.GROUP, has no value definition.
    When I changed the insert statement as below, this does get populated whenever someone logs in. But I need the values of GROUP associated with the user as defined in the repository.
    insert into stra_login_data (username, groupname, login_time) values ('TEST_USER', TEST_GROUP', SYSDATE)
    Could someone help me out! As I mentioned above, I need the GROUP info into the usage tracking. So, if there is another successful approach, could you please share?
    Thank you
    Amin

    Hi Amin,
    See [this thread|http://forums.oracle.com/forums/thread.jspa?messageID=3376946&#3376946]. You can't use the GROUP session variable in an Init Block unless it has been seeded from an Init Block first. There isn't an easy solution for what you want, but here are some options:
    1) Create a copy of your User => Groups assignments in your RPD in an table so you can use it in your Usage Tracking Subject Area. But this means you will have to replicate the changes in two places so it's not a good solution.
    2) As the GROUP session variable is populated when you login you could theoretically use it a Dashboard and pass it a parameter to write the value to the database. But as I am not sure how can you make fire only once when the user logins it sounds like a bad idea.
    3) Move your User => Groups assignments from your RPD to a DB table. Use OBIEE Write Back or something like Oracle APEX to maintain them.
    I think 3) is the best solution to be honest.

  • Having an issue with passing the text of a link to a session variable.

    I am having an issue with passing the text from a link to a session variable. I am adding this html as a literal for each item in the list that i have populated with a query.
    List<Literal> lit = new List<Literal>();
    for (int i = 0; i < posts.Count; i+=4)
    Literal someLit = new Literal();
    someLit.Text=
    @"<div class='row'>" +
    "<div class='col-md-12'>" +
    "<div class='panel'>" +
    " <div class='panel-body'>" +
    " <!--/stories-->" +
    " <div class='row'> " +
    " <br>" +
    "<div class='col-md-2 col-sm-3 text-center' id='javascript'> <h3>" +
    " <a href='#' runat='server' onserverclick='UserProfile_Click'>" + posts[i + 3] + " </a>" +
    "</h3>" +
    " </div>" +
    " <div class='col-md-10 col-sm-9'>" +
    "<h3><a href='Thread.aspx' runat='server' onserverclick='MyFuncion_Click'> " + posts[i] + " </a></h3>" +
    " <div class='row'>" +
    " <div class='col-xs-9'> " +
    posts[i + 1] +
    " </div>" +
    "<div class='col-xs-3'></div>" +
    posts[i + 2] +
    " </div>" +
    "<br><br>" +
    " </div>" +
    " </div>" +
    " <!--/stories-->" +
    " </div>" +
    " </div>" +
    " </div><!--/col-12-->" +
    " </div>" +
    "</div>";
    lit.Add(someLit);
    for(int i=0; i<lit.Count; i++)
    this.Controls.Add(lit[i]);
    I use one of the list positions as the text for a link in two different spots. For now, lets only talk about the line:
    <a href='#' runat='server' onserverclick='UserProfile_Click'>" + posts[i + 3] + " </a>
    Since I am generating these controls at pageLoad, I can't make them <asp:Linkbutton>s. And since they are anchor elements, I don't have access to an onCommand attribute or onservercommand attribute.
    All I want to do is access the content from inside the specific link tags that I generate on link click and set it as a session variable. That's what I would like my UserProfile_Click function to do. I cant commandargs it in like i can with a linkbutton's
    OnCommnad attribute, however.
    My fear is that the onserverclick attribute resolves so something else on pageLoad normally and since I am generating it the way I am similar to the way a <asp:linkButton> resolves to a generated JavaScript.
    Any help?

    @Brunellus
    For questions related to ASP.NET use the ASP.NET forum http://forums.asp.net     
    You should get more, better and faster answers on the other forum.  Thanks, ahead of time.
    Best Regards,
    Kristin
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Row level security with session variables, not a best practice?

    Hello,
    We are about to implement row level security in our BI project using OBIEE, and the solution we found most convenient for our requirement was to use session variables with initalization blocks.
    The problem is that this method is listed as a "non best practice" in the Oracle documentation.
    Alternative Security Administration Options - 11g Release 1 (11.1.1)
    (This appendix describes alternative security administration options included for backward compatibility with upgraded systems and are not considered a best practice.)
    Managing Session Variables
    System session variables obtain their values from initialization blocks and are used to authenticate Oracle Business Intelligence users against external sources such as LDAP servers or database tables. Every active BI Server session generates session variables and initializes them. Each session variable instance can be initialized to a different value. For more information about how session variable and initialization blocks are used by Oracle Business Intelligence, see "Using Variables in the Oracle BI Repository" in Oracle Fusion Middleware Metadata Repository Builder's Guide for Oracle Business Intelligence Enterprise Edition.
    How confusing... what is the best practice then?
    Thank you for your help.
    Joao Moreira

    authenticating / authorizing part is take care by weblogic and then USER variable initialized and you may use it for any initblocks for security.
    Init block for authenticating / authorizing and session variables are different, i guess you are mixing both.

  • Session variables being lost

    In my onApplicationStart method (which should tell you I'm
    using an Application.cfC, not cfM), I have a cfif loop that passes
    a value to a custom tag and returns a form variable. I'm then
    reassigning that variable to a session variable. In IE, this works
    just fine; in Firefox, though, the session variable is NOT being
    set.
    What might be causing this, and is there a workaround?

    The issue referred to an external CF custom tag, which called
    another demo application to set a testing user. However, after
    further testing, I realize that demo app won't function properly
    with this application, so I've removed it.
    Authentication is being set by an LDAP query; this
    application that I am working on is going to be a sub-application
    of a larger application, and the authenticated user is being set as
    a session variable as well (I think...). However, I'm creating a
    new session variable for this application, and simply passing the
    authenticated user into my app (the outer app uses the variable
    auth_user; I'm using the variable authuser, so there is no name
    conflict).
    Again, it is IE that is not persisting the session. Firefox
    is doing so. I have looked in the advanced settings for IE, and
    there is nothing about persisting session variables to check or
    uncheck. Also, this application will probably be used mostly by
    users using IE 6 with default settings, so I'm going to need to
    find a workaround for IE.
    Your help is most appreciated.

  • Coldfusion session variables being lost

    ok so when my users login I establish session variables. one of these is employee id. in my Application.cfc I have this at the top:
    <cfscript>
    this.name = "My App";
    this.sessiontimeout=CreateTimeSpan("0", "0", "45", "0");
    this.SESSIONMANAGEMENT="YES";
    this.SetClientCookies = "true";
    this.setDomainCookies = "true";
    </cfscript>
    i also set the timeout for sessions at 45 in the CFadmin too.
    after a successfull login i capture their session.employeenumber by authenticating through our corporate LDAP. no problem there. note: this app has run smoothly for 6+ years now but something has recently gone wrong.
    on every page i reference a file in my application directory called "check_session.cfm" like this:
    <cfmodule template="/myApp/Tags/check_session.cfm">
    In that file I have code that checks for the existence of the session.employee_number. if it doesn't exist they either timed out or book-marked a page in the app in which they need to be logged in to view:
    <cflock timeout="30" throwontimeout="Yes" type="READONLY" scope="SESSION">
    <!--- Checks to make sure the user has a session--->
    <CFIF NOT IsDefined("Session.employee_number")>
         <CFLOCATION URL="http://#cgi.HTTP_HOST#/myApp/LoginAgain.cfm">
    </CFIF>
    </cflock>
    every now and then (i'd say on average 5 times per week) i get an error message from a user (i re-direct all errors to my email with diagnostic info). the error reads "Element EMPLOYEE_NUMBER is undefined in SESSION". when i look at the page the error came from i see my call to the check_session.cfm file about 50 lines above where this error happened when i tried to reference session.employee_number. why wouldn't it not find it and re-direct the user to the timeout page? i can never duplicate this error on my machine either... i always get the right result without the error message. its a random, sporadic, intermittent error.

    Here is the diagnostic error information. Where you see [omitted] i've changed the URL for the purposes of displaying this detail in a public forum:
    struct
    Browser
    Mozilla/4.0   (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR   2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0;   InfoPath.2; .NET4.0C; .NET4.0E; MS-RTC LM 8)
    DateTime
    {ts   '2011-02-21 20:59:21'}
    Diagnostics
    Element   EMPLOYEENUMBER is undefined in SESSION. <br>The error occurred on line   162.
    GeneratedContent
    <!DOCTYPE   html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   <html xmlns="http://www.w3.org/1999/xhtml">   <!-- DW6 --> <head> <!-- Copyright 2005 Macromedia, Inc. All   rights reserved. --> <title>My Home</title> <meta   http-equiv="Content-Type" content="text/html;   charset=iso-8859-1" /> <link rel="stylesheet"   href="mm_training.css" type="text/css" /> <link   rel="stylesheet" type="text/css" href="../template/organized.css">   </head> <body bgcolor="#ffffff"   onLoad="onInit()">
    HTTPReferer
    http://[omitted]/mypage/myhome.cfm?CFID=101686&CFTOKEN=53097237
    Mailto
    [empty   string]
    Message
    Element   EMPLOYEENUMBER is undefined in SESSION.
    QueryString
    [empty   string]
    RemoteAddress
    10.x.x.x   [remote address omitted for purposes of this forum]
    RootCause
    struct
    Detail
    [empty     string]
    ErrNumber
    0
    Message
    Element     EMPLOYEENUMBER is undefined in SESSION.
    Resolvedname
    SESSION
    StackTrace
    coldfusion.runtime.UndefinedElementException:     Element EMPLOYEENUMBER is undefined in SESSION. at     coldfusion.runtime.CfJspPage.resolveCanonicalName(CfJspPage.java:1659) at     coldfusion.runtime.CfJspPage._resolve(CfJspPage.java:1612) at     coldfusion.runtime.CfJspPage._resolveAndAutoscalarize(CfJspPage.java:1747)     at     coldfusion.runtime.CfJspPage._resolveAndAutoscalarize(CfJspPage.java:1740)     at cfmyhome2ecfm1641837815._factor14(D:\[path_omitted]\mypage\myhome.cfm:162)     at cfmyhome2ecfm1641837815.runPage(D:\[path_omitted]\mypage\myhome.cfm:1)     at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:196) at     coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:370) at     coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65) at     coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:273) at     coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48)     at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40) at     coldfusion.filter.PathFilter.invoke(PathFilter.java:86) at     coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70) at     coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:2 8)     at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38) at     coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46) at     coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38) at     coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22) at     coldfusion.CfmServlet.service(CfmServlet.java:175) at     coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89) at     jrun.servlet.FilterChain.doFilter(FilterChain.java:86) at     coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42 )     at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46)     at jrun.servlet.FilterChain.doFilter(FilterChain.java:94) at     jrun.servlet.FilterChain.service(FilterChain.java:101) at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106)     at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42) at     jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286)     at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543)     at     jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203)     at     jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPool.java:320)     at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428)     at     jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.java:266)     at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
    TagContext
    array
    1
    struct
    COLUMN
    0
    ID
    LINE
    162
    RAW_TRACE
    at         cfmyhome2ecfm1641837815._factor14(D:\[path_omitted]\mypage\myhome.cfm:162)
    TEMPLATE
    D:\[path_omitted]\mypage\myhome.cfm
    TYPE
    CFML
    2
    struct
    COLUMN
    0
    ID
    CF_MYHOME
    LINE
    1
    RAW_TRACE
    at         cfmyhome2ecfm1641837815.runPage(D:\[path_omitted]\mypage\myhome.cfm:1)
    TEMPLATE
    D:\[path_omitted]\mypage\myhome.cfm
    TYPE
    CFML
    Type
    Expression
    element
    EMPLOYEENUMBER
    objectType
    object of java.lang.Class
    Class       Name
    java.lang.Class
    Methods
    Method
    Return Type
    asSubclass(java.lang.Class)
    java.lang.Class
    cast(java.lang.Object)
    java.lang.Object
    desiredAssertionStatus()
    boolean
    forName(java.lang.String,         boolean, java.lang.ClassLoader)
    java.lang.Class
    forName(java.lang.String)
    java.lang.Class
    getAnnotation(java.lang.Class)
    java.lang.annotation.Annotation
    getAnnotations()
    java.lang.annotation.Annotation[]
    getCanonicalName()
    java.lang.String
    getClassLoader()
    java.lang.ClassLoader
    getClasses()
    java.lang.Class[]
    getComponentType()
    java.lang.Class
    getConstructor(java.lang.Class[])
    java.lang.reflect.Constructor
    getConstructors()
    java.lang.reflect.Constructor[]
    getDeclaredAnnotations()
    java.lang.annotation.Annotation[]
    getDeclaredClasses()
    java.lang.Class[]
    getDeclaredConstructor(java.lang.Class[])
    java.lang.reflect.Constructor
    getDeclaredConstructors()
    java.lang.reflect.Constructor[]
    getDeclaredField(java.lang.String)
    java.lang.reflect.Field
    getDeclaredFields()
    java.lang.reflect.Field[]
    getDeclaredMethod(java.lang.String,         java.lang.Class[])
    java.lang.reflect.Method
    getDeclaredMethods()
    java.lang.reflect.Method[]
    getDeclaringClass()
    java.lang.Class
    getEnclosingClass()
    java.lang.Class
    getEnclosingConstructor()
    java.lang.reflect.Constructor
    getEnclosingMethod()
    java.lang.reflect.Method
    getEnumConstants()
    java.lang.Object[]
    getField(java.lang.String)
    java.lang.reflect.Field
    getFields()
    java.lang.reflect.Field[]
    getGenericInterfaces()
    java.lang.reflect.Type[]
    getGenericSuperclass()
    java.lang.reflect.Type
    getInterfaces()
    java.lang.Class[]
    getMethod(java.lang.String,         java.lang.Class[])
    java.lang.reflect.Method
    getMethods()
    java.lang.reflect.Method[]
    getModifiers()
    int
    getName()
    java.lang.String
    getPackage()
    java.lang.Package
    getProtectionDomain()
    java.security.ProtectionDomain
    getResource(java.lang.String)
    java.net.URL
    getResourceAsStream(java.lang.String)
    java.io.InputStream
    getSigners()
    java.lang.Object[]
    getSimpleName()
    java.lang.String
    getSuperclass()
    java.lang.Class
    getTypeParameters()
    java.lang.reflect.TypeVariable[]
    isAnnotation()
    boolean
    isAnnotationPresent(java.lang.Class)
    boolean
    isAnonymousClass()
    boolean
    isArray()
    boolean
    isAssignableFrom(java.lang.Class)
    boolean
    isEnum()
    boolean
    isInstance(java.lang.Object)
    boolean
    isInterface()
    boolean
    isLocalClass()
    boolean
    isMemberClass()
    boolean
    isPrimitive()
    boolean
    isSynthetic()
    boolean
    newInstance()
    java.lang.Object
    toString()
    java.lang.String
    StackTrace
    coldfusion.runtime.UndefinedElementException:   Element EMPLOYEENUMBER is undefined in SESSION. at coldfusion.runtime.CfJspPage.resolveCanonicalName(CfJspPage.java:1659)   at coldfusion.runtime.CfJspPage._resolve(CfJspPage.java:1612) at   coldfusion.runtime.CfJspPage._resolveAndAutoscalarize(CfJspPage.java:1747) at   coldfusion.runtime.CfJspPage._resolveAndAutoscalarize(CfJspPage.java:1740) at   cfmyhome2ecfm1641837815._factor14(D:\[path_omitted]\mypage\myhome.cfm:162) at   cfmyhome2ecfm1641837815.runPage(D:\[path_omitted]\mypage\myhome.cfm:1) at   coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:196) at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:370)   at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65) at   coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:273) at   coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48)   at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40) at   coldfusion.filter.PathFilter.invoke(PathFilter.java:86) at   coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70) at   coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:2 8)   at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38) at   coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46) at   coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38) at   coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22) at   coldfusion.CfmServlet.service(CfmServlet.java:175) at   coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89) at   jrun.servlet.FilterChain.doFilter(FilterChain.java:86) at   coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42 )   at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46) at   jrun.servlet.FilterChain.doFilter(FilterChain.java:94) at jrun.servlet.FilterChain.service(FilterChain.java:101)   at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106) at   jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42) at   jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286) at   jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543) at   jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203)   at   jrunx.scheduler.ThreadPool$DownstreamMetrics.invokeRunnable(ThreadPool.java:320)   at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428)   at   jrunx.scheduler.ThreadPool$UpstreamMetrics.invokeRunnable(ThreadPool.java:266)   at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
    TagContext
    array
    1
    struct
    COLUMN
    0
    ID
    LINE
    162
    RAW_TRACE
    at       cfmyhome2ecfm1641837815._factor14(D:\[path_omitted]\mypage\myhome.cfm:162)
    TEMPLATE
    D:\[path_omitted]\mypage\myhome.cfm
    TYPE
    CFML
    2
    struct
    COLUMN
    0
    ID
    CF_MYHOME
    LINE
    1
    RAW_TRACE
    at       cfmyhome2ecfm1641837815.runPage(D:\[path_omitted]\mypage\myhome.cfm:1)
    TEMPLATE
    D:\[path_omitted]\mypage\myhome.cfm
    TYPE
    CFML
    Template
    /[omitted]/mypage/myhome.cfm
    Type
    coldfusion.runtime.CfErrorWrapper

  • System session variable USER

    Hi,
    i have setup-ed the action links and used the USER variable for the EBS secuirty context init block as this
    EBS_RESP_ID
    EBS_RESP_APPL_ID
    EBS_SEC_GROUP_ID
    EBS_RESP_NAME
    EBS_USER_ID
    EBS_EMPLOYEE_ID
    USER
    Now for the sso configuration in the RPD i need to use the USER variable again as per the document (section A.1.1 )http://docs.oracle.com/cd/E14571_01/bi.1111/e10543/legacy.htm#BABFJEJF
    "To set up LDAP authentication:
    Create an LDAP Server as follows:
    Select Manage then Identity in the Oracle BI Administration Tool to launch the Security Manager.
    Select Directory Servers from the left pane in Security Manager.
    Right-click in the right pane in Security Manager and select New LDAP Server. The LDAP Server dialog is displayed.
    Create the LDAP server by completing the fields.
    Create an LDAP initialization block and associate it with an LDAP server. For more information. see "Creating Initialization Blocks" in Oracle Fusion Middleware Metadata Repository Builder's Guide for Oracle Business Intelligence Enterprise Edition.
    Define a system variable named *USER* and map the USER variable to an LDAP attribute (uid or sAMAccountName)."
    So how can i use the same user variable and assign it to LDAP init block as well the EBS security context init block.
    can you provide your valuable inputs here.

    Referencing GROUP session variable in initialization blocks for different types of authentication
    http://108obiee.blogspot.com/2009/10/referencing-group-session-variable-in.html
    Users are assigned to multiple groups from external table with semicolons, see example two and three from the post.
    Regards
    Goran
    http://108obiee.blogspot.com

  • How to a session variable in another initialisation block?

    Hello all,
    I think I overlook something. So hope someone please can help me out.
    I have 2 initialisation blocks.
    The first one has as a source a LDAP server.
    Now I fill a session variable called mail by the LDAP server.
    When I click on test I will see my mail address.
    lets say I see [email protected]
    No I want to do something with that subdomain.
    So I made a new initialisation block with the database as the source.
    And made a query
    select case when upper(:mail) like 'subdomain%' then A else 'NO Domain found' END from dual
    but this doesn't work, and really don't understand why!! (and ofcourse I am using the executed precendence option to initialise first the other initaialisation block)
    also when I change the query in:
    select case when upper('[email protected]') like 'SUBDOMAIN%' then A else 'NO Domain found' END from dual
    then it al works fine..
    Hope anyone can help me out!!
    Best regards,
    Remc0

    Does the Init Block really fails? Could you please set the logging level to 2 in that user and review both the NQuery and Presentation Services log files? Can you try with a simply select statement:
    SELECT upper(VALUEOF(NQ_SESSION.MAIL)) FROM DUAL
    to make sure the new variable is getting initialized? It could be that the value from the LDAP server has trailing or leading spaces?
    Also I don't see why you need to put the domain on another session variable, you could do your filter using the case statement directly. Unknown to many a CASE statement can be used in a WHERE clause as well. Sample SQL:
    WHERE COLUMN = (case when upper(VALUEOF(NQ_SESSION.MAIL)) like '%SUBDOMAINY%' then 'SUBDOMAINY' else 'NO Domain found' END)

  • Session variable in obiee 10g

    Hi i have requirement like this i would like to display the Ename, empno, Hiredate, leavedate,salary. Here i would like to pass the session variable for the salary column which returns multiple values and the report should change based on the date i am selecting from the prompt.
    EX: Let's say from the prompt if select hiredate this date should pass into the report and the session should change.
    I have created session intiallization block and for the target i have selected row wise.
    select 'var1', salary from emp where hiredate<='VALUEOF(NQ_SESSION.var1)' .
    But in the answers when i passed this 'var1' for the salary column it says no value for the 'var1'. please let me know how to pass session variable when we have selected the target as row-wise.
    Thank you,
    ch.

    Finally got population of the WEBGROUPS variable work (using row-wise initialization with caching turned off)...
    but now I see that if I remove a group from my table, they are not "unassociated" with the web catalog group. The group still "sticks" there.
    Thoughts?
    -John

  • OBIEE 11g Session variables

    Would anyone know who to setup the USER session variables in the RPD for OBIEE 11g?
    The security setup we have is LDAP Authentication & Default authenticators in Weblogic. Is there a way to retrieve this in the RPD or in answers?
    Lastly, would proxy (act as) functionality configuration differ from 10g because of the above?
    Thanks.

    All,
    Use VALUEOF(NQ_SESSION.USER) whether you are in the front end or .RPD, :USER doesn't work anymore. Also, there is no need to wrap the syntax in quotes, if you do, it won't de-reference the variable.
    Thanks,
    Josh
    Edited by: JFuter on Mar 24, 2011 5:16 PM

  • Add additional session variable on login?

    Hi,
    at first, sorry for my bad englisch. Maybe anyone here can speak german.
    Is there any way to save an additonal session variable on login without it is required to store this variable in a table column.
    A short description:
    I have a member table, that contains the login information (id, password, level) and further information about the member. A second table contains different sportevents.
    Now i would create a login form, which has 3 input fields, one for the member id, one for the password and one select field, who the member can choose the sportevent. For further work, i need the member id, the member level and the sportevent id as a session variable. There is no problem, with the member id and the level id, this both variables i can get with the ADDT login wizard, but how can i safe the event id during the login as session variable?
    Can anybody help me?
    Thanks in advance.
    Rico

    Hi Rico,
    Maybe anyone here can speak german
    na komm, dein Englisch ist ziemlich gut, und ich möchte deine Frage lieber in Englisch beantworten, damit andere ADDT-User auch was davon haben :-)
    There is no problem, with the member id and the level id, this both variables i can get with the ADDT login wizard, but how can i safe the event id during the login as session variable?
    What I´m saying now, is somewhat experimental, because I didn´t try that myself so far -- but I think this should work:
    a) add another numeric (int) column to your ADDT login table that´s going to hold the selected value from your "events" menu -- let´s call this column "current_event_id"
    b) on the login page: create a recordset which retrieves the "event_id " and "event_name" values from your "sportevents" table -- guess that´s what you already did for populating the "events" menu you mentioned
    c) switch the login page to CODE. When scrolling down, you´ll see these 2 lines below the // Add columns comment:
    $loginTransaction->addColumn("kt_login_user", "STRING_TYPE", "POST", "kt_login_user");
    $loginTransaction->addColumn("kt_login_password", "STRING_TYPE", "POST", "kt_login_password");
    below that, add another line like this:
    $loginTransaction->addColumn("current_event_id", "NUMERIC_TYPE", "POST", "events");
    In order to convert the submitted "events" menu - value to a session variable, you should add the new column "current_event_id" to ADDT´s list of default session variables
    (Control Panel)
    Does that work ?
    Cheers,
    Günter Schenk
    Adobe Community Expert, Dreamweaver

  • Session Variable - System/non system

    anybody explain me about the system and non system variables?
    i am very confusing with the documents available in google.
    can you please provide me with small example?
    in which case we use system variable and which case we use non system variable?
    Edited by: user12077461 on Dec 19, 2010 11:48 AM

    Hi,
    System session variables are pre-defined variables which get populated while someone access the system like USER, GROUP,PASSWORD etc. Non-System Session variables can be defined by the user for different purposes.
    Thanks
    DOn

  • IllegalStateException: Internal Servlet Session Process Error Found!

              I keep getting the annoying error as listed, and the server also keeps reporting
              that I can only connect from 0 unique ip addresses. Has anybody else seen these
              type of frustrations on 8.1 sp2, or can explain them.
              With as much detail omitted for simplicity;
              Frustration 1.
              I have a 8sp2 server running all ok, occasionally after a redeploy of an ear file
              I attempt to load a jsp file, and the error below is thrown.
              The JSP has a bean which is session based, and as from following the stack trace
              it is around some weblogic code which tests if my license allows access to the
              http session (on a developer license). I then have to start another server instance
              and do a deployment of a v.simple war, and access this, then deploy the same war
              to the broken server and access that, then the initial jsp works fine. no code
              changes just environment stops, starts and redeploys!
              Frustration 2
              Server runs ok, tray and connect from two machines (I have an ldap server that
              wants to 'broadcast' messages to my server), error of too many connections.
              The ip connection issues can in most cases be removed with a server restart.
              EXCEPTION TRACE
              java.lang.IllegalStateException: Internal Servlet Session Process Error Found!
              With the following stack trace:
              java.lang.IllegalStateException: Internal Servlet Session Process Error Found!
                   at weblogic.servlet.internal.session.SessionData.checkProcess(SessionData.java:1148)
                   at weblogic.servlet.internal.session.SessionData.setAttribute(SessionData.java:501)
                   at jsp_servlet._security.__changeprofile._jspService(__changeprofile.java:135)
                   at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
                   at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:971)
                   at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:402)
                   at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:446)
                   at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
                   at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6350)
                   at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
                   at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
                   at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3635)
                   at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2585)
                   at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
                   at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
              

              I have the same problem. Could any one help us?
              "David" <[email protected]> wrote:
              >
              >I keep getting the annoying error as listed, and the server also keeps
              >reporting
              >that I can only connect from 0 unique ip addresses. Has anybody else
              >seen these
              >type of frustrations on 8.1 sp2, or can explain them.
              >
              >With as much detail omitted for simplicity;
              >
              >Frustration 1.
              >I have a 8sp2 server running all ok, occasionally after a redeploy of
              >an ear file
              >I attempt to load a jsp file, and the error below is thrown.
              >
              >The JSP has a bean which is session based, and as from following the
              >stack trace
              >it is around some weblogic code which tests if my license allows access
              >to the
              >http session (on a developer license). I then have to start another
              >server instance
              >and do a deployment of a v.simple war, and access this, then deploy the
              >same war
              >to the broken server and access that, then the initial jsp works fine.
              > no code
              >changes just environment stops, starts and redeploys!
              >
              >Frustration 2
              >Server runs ok, tray and connect from two machines (I have an ldap server
              >that
              >wants to 'broadcast' messages to my server), error of too many connections.
              >The ip connection issues can in most cases be removed with a server restart.
              >
              >
              >EXCEPTION TRACE
              >
              >java.lang.IllegalStateException: Internal Servlet Session Process Error
              >Found!
              >
              >With the following stack trace:
              >
              >java.lang.IllegalStateException: Internal Servlet Session Process Error
              >Found!
              >     at weblogic.servlet.internal.session.SessionData.checkProcess(SessionData.java:1148)
              >     at weblogic.servlet.internal.session.SessionData.setAttribute(SessionData.java:501)
              >     at jsp_servlet._security.__changeprofile._jspService(__changeprofile.java:135)
              >     at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
              >     at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:971)
              >     at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:402)
              >     at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:446)
              >     at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
              >     at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6350)
              >     at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
              >     at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
              >     at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3635)
              >     at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2585)
              >     at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
              >     at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
              >
              >
              

  • To pass new session variable value to stored proc before running a report.

    Hi,
    Below is summary of the report requirement -
    Database level design
    1. Created a view and a global temporary table (GTT)
    2. Created an Oracle package procedure to accept from and to business dates on basis of which it will fetch, process and populate the GTT.
    Repository level design
    1. Created a business model containing the view and the GTT (mentioned above)
    2. Created two SESSION variables "from_dt" and "to_dt" to be initialized by their respective init blocks. Each of the variable is initialized with a DATE column value (of type DATETIME) from a database lookup table. I have also set the option "Enable that variable to be set by any user" for both variables.
    Query for these variables :
    from_dt = select from_date from <table>
    to_dt = select add_months(from_date,12) from <table>
    Presentation level design
    1. Using a text box, i display the default/initialized values of these variables like this -
    Current business date:@{biServer.variables['NQ_SESSION.from_dt']} Future business dt:@{biServer.variables['NQ_SESSION.to_dt']}
    Dates get displayed in YYYY-MM-DD 00:00:00 format
    The text msg displays these default dates and allows the user to specift different date range for which i create prompts as shown below.
    2. Using any random two columns of date type from the business model, i create two date dashboard prompts with labels "From Dt" and "To Dt".
    i select Calender Controls for both; setting Default To = Report Defaults.
    The Set Variable is set to Presentation variables - such that pv_from_dt maps to "From Dt" and pv_to_dt maps to "To Dt".
    3. i create the report using the business model created above. In the report "Advanced Tab" => "Prefix" field i specify the following -
    SET VARIABLE from_dt='@{pv_from_dt}',to_dt='@{pv_to_dt}';
    Note : The logic here is to display the default dates and allow user to specify different date values which will be stored in presentation variables.
    If the user does specify different "from dt" and "to dt" values, then using the presentation variables, i want to "write" back these new values to the corresponding session variables mentioned above.
    If the user does not specify different date range, then the default/initialized dates must be considered.
    I also display the default and new date values in the report title.
    Back to Repository level design
    To execute the stored procedure that will load the GTT before running the report I need to pass two date parameters to the stored procedure on basis of which it will fetch data, process and populate the GTT.
    In the Connection Pool --> Connection Script Tab --> Execute before query, I wrote the below query using the repository variables FROM_DT and TO_DT to execute the procedure -
    DECLARE
    v_from_dt date;
    v_to_dt date;
    BEGIN
    v_from_dt := VALUEOF(From_Dt);
    v_to_dt := VALUEOF(To_Dt);
    package_name1.package_body(v_from_dt,v_to_dt);
    END;
    Now when i try to run the report i get the following error :
    [nQSError: 10058] A general error has occurred. [nQSError: 23006] The session variable, NQ_SESSION.to_dt, has no value definition. (HY000)..
    Need help on this.
    Is it possible to "write back" a new value to a session variable ?
    Any other alternatives.
    Thanks
    Nusrat
    Edited by: user10309945 on Jan 24, 2011 10:08 PM

    Sandeep, I found a several topics where users describe saving values in DB through stored procedure or function. For example, [How to store OBIEE presentation level variable values in DB |http://forums.oracle.com/forums/thread.jspa?threadID=892006] I tried it and get an error
    *10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 17001] Oracle Error code: 14551, message: ORA-14551: cannot perform a DML operation inside a query ORA-06512*
    It's not a BI error. This error are generated by Oracle DB. If I write next:
    SELECT MyPLSQLFunction(p1,p2) FROM DUAL
    I get the same error.
    Oracle doesn't allow DML operations in SELECT.
    Did you relalize this feature yourself? Where did I mistake?

  • Session variable size limitation (LV Webservices)

    Hi community,
    I read couple dozen email addresses from an XML and trying to write them into a session variable. The email addresses are comma separated and have a total string length of about 1100 characters. When I try to write it into a session variable LabVIEW drops an error message (-67158).
    It is very clearly related to the size of the string as if use lets say only 200 characters I dont receive the error message.
    How can I get rid of this limitation?
    Thanks!

    I am writing a general purpose webpage where I need email notifications. I have the workaround ready (before I send out the emails I dont read the emails from a session, but using the userID stored in the session to read the email from the xml). But generally having this limitation is annoying and unnecessary as normally you easily can store 100kB in one session. (probably even more, but that was the max I have ever did)

Maybe you are looking for

  • Issues With iPad mini after upgrading to iOS 8.1.2......

    WWish I'd checked the forums first, but I upgraded to 8.1.2. A few days ago and have had nothing but issues. FIrst -- it takes twice to three times as long to boot up my device.            After the apple logo disappears, the screen is just black for

  • JDBC URL Error

    I'm creating a connection pool for soademo and having issues setting the JDBC URL to access the database. This is what have:jdbc:oracle:thin:@mydb.com:1521:orcl and this is what I get when the URL is tested: Unable to establish connection. Error mess

  • Why is the image on screen smaller when I insert a clip from a friend, into my short movie?

    Hi, I'm editing a short piece in CS6 using some footage I filmed, and I'd like to insert a clip that someone has sent me. When I do this, it shows up in the playback screen at half the size of the footage I've filmed. I'm new to this so not sure what

  • IPhone to iMac airplay not working?

    I cannot connect from my iPhone to my iMac through airplay, the "mac mini" isn't showing. Thanks -Conor

  • Import contact with photo from google

    How Do I import contact with photos from google to iCloud? I uses iPhone6 , 6+ , iPad Air all iOS8.1 and Mac Air Yosemite I uses google contact with photo all but I need to export all contacts to iCloud but after I imported the photo not have any mor