See "Setting Administration Tool Options" for more information. If you select Database as the data source type for an initialization block, the values returned by the database for the columns in your SQL statement are assigned to variables that you associate with the initialization block. By clicking Accept all cookies, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy. To add a Default Initializer value, type the value in the Default Initializer box, or click the Expression Builder button to use Expression Builder. Select this option to set session variables after the initialization block has populated the value (at user login) by calling the ODBC stored procedure NQSSetSessionValue(). Contains the global unique identifier (GUID) of the user, typically populated from the LDAP profile of the user. Not the answer you're looking for? Enable any user to set the value. CREATE TABLE OBIEE_PROXY_USER ( PROXYID VARCHAR2 (100) NOT NULL, TARGETID VARCHAR2 (100) NOT NULL, PROXYLEVEL VARCHAR2 (100) NOT NULL) Insert some data : Create Session Variables for Proxy Functionality (inside the repository) Modify the instanceconfig.xml File for Proxy Functionality Here comes the more tricky parts Discrete You cannot use variables to represent columns or other repository objects. Logical Data Modeling When a user belongs to multiple roles, include the role names in the same column, separated by semicolons (for example, RoleA;RoleB;RoleC). Scripting on this page enhances content navigation, but does not change the content in any way. File System I have tried using the Variable Expression option to set the default values in the prompts, but it only uses the values of the session variables, not the temporary values in the request variables. The next step is to select the data source and connection pool. Holds the Oracle BI Presentation Services user interface display language. You do not need to set up the PASSWORD variable, and you can use this variable in a database connection pool to allow passthrough login using the user ID and password of the user. To add a Default initializer value, type the value in the Default initializer box, or click the Expression Builder button to use Expression Builder. Data Concurrency, Data Science I try to display the variable by define it in column formula as VALUEOF (NQ_SESSION."ABC") but error message "The session variable, NQ_SESSION.ABC, has no value definition." was shown. Otherwise, the default initialization SQL for the database type is used. For this example, you would provide the following SQL statement for the initialization string: Note that NQ_SESSION.USERID has already been initialized using another initialization block. For static repository variables, the value you specify in the Default initializer window persists. This variable is typically populated from the LDAP profile of the user. The icon for an initialization block is a cube labeled i. This variable has a possible value of 0 or 1. You can edit repository initialization blocks, or session initialization blocks. The value is case-insensitive. Otherwise, a default initialization SQL string is used. Used to enable or disable Oracle BI Server result cache hits. In other words, users are denied access to Oracle Business Intelligence if the initialization block fails to execute. The obiee logical sql request doesn't contain any filter : The logical request doesn't contain any filter : But the final query, send in the database, contains one. Dynamic repository variables are useful for defining the content of logical table sources. The Oracle BI Server can also provide functions (such as PI) that might not be available in the data source, and the SQL statement will work with other data sources supported by the Oracle BI Server (for example, ADF, SQL Server, Oracle, and XML files). For example, using the table values in the previous example, you would type the following SQL statement for the initialization string: This SQL statement populates the variable LIST_OF_USERS with a list, separated by colons, of the values JOHN and JANE (for example, JOHN:JANE). This is another system variable whose presence is always assumed when the USER system session variable is used. In the [Repository|Session] Variable Initialization Block Execution Precedence dialog, click Add. This option is for session variable initialization blocks only. If you do not select a connection pool before typing the initialization string, you receive a message prompting you to select the connection pool. variables is plural. "USER"), the syntax works. Data (State) Used for Oracle BI Presentation Services. Select the type of variable: Static or Dynamic. Nominal Monitoring If you selected Use database specific SQL, then in the Database pane, expand and select the database. In previous releases, the Administration Tool did not limit the values of default initializers for static repository variables. For example, here are dates as set by the default values in the prompt. For example, to filter a column on the value of the variable LOGLEVEL, set the filter to the variable NQ_SESSION.LOGLEVEL. In the Browse dialog, select the blocks that should be initialized before the block that you have open, and then click OK. To remove a block, in the [Repository|Session] Variable Initialization Block Execution Precedence dialog, select the block you want to remove and click Remove. Each query can refresh several variables: one variable for each column in the query. This can reduce session startup time. Another suggested use for dynamic repository values is in WHERE clause filters of logical table sources, defined on the Content tab of the Logical Table Source dialog. Initialization blocks are used to initialize dynamic repository variables, system session variables, and nonsystem session variables. You should test this SQL using the Test button in the [Repository|Session] Variable Initialization Block Data Source dialog. This variable has a possible value of 0 or 1. Please abide by the Oracle Community guidelines and refrain from posting any customer or personally identifiable information (PI/CI). By clicking Post Your Answer, you agree to our terms of service, privacy policy and cookie policy. This tells Oracle BI Presentation Services that these users have identical content filters and security in the Oracle BI Server. Relational Modeling Time Testing Sharing Oracle BI Presentation Services cache entries is a way to minimize unnecessary communication with the Oracle BI Server. Expression Builder pastes it into the expression at the active cursor insertion point. Select this option to identify the variable as sensitive to security when using a row-level database security strategy, such as a Virtual Private Database (VPD). Legacy groups are mapped to application roles automatically. Learn about session variables and how to create them. The SKIN variable points to an Oracle BI Presentation Services folder that contains the nonalterable elements (for example, figures such as GIF files). COLUMN1 is having values VARIABLE1 , VARIABLE2 etc . Quick question, a colleague of mine was telling me that the session variable, NQ_SESSION.GROUP, only shows groups which are assigned at the presentation >> level (or passed in from LDAP or other data source) but it does not show any of the group assignments made within the RPD itself. Database: For repository and session variables. Select Row-wise initialization. Used to enable or disable Oracle BI Server subrequest cache hits and seeding. I need to create a Dashboard, where I can fill out one Dashboard prompt and set some request variables, and then have the default values in another dashboard prompt, or the prompt for an analysis be based on the variables set in the first prompt. You can use a variable to specify the names of catalog and schema objects. Select this option to identify the variable as sensitive to security when using a row-level database security strategy, such as a Virtual Private Database (VPD). If a SQL initialization string for that database type has been defined when the initialization block is instantiated, this string is used. Debugging The SQL statement you use to refresh the variable might be written for a specific database. To create a multi-source session variable, you first create row-wise initialization blocks for each source. Kurt Wolff, You can change this behavior so that the first connection pool is available for selection by selecting Allow first Connection Pool for Init Blocks in the Options dialog, although this is not recommended. "ABC") but error message "The session variable, NQ_SESSION.ABC, has no value definition." Time Close the Variable Manager and save the repository. Used to enable or disable Oracle BI Server plan cache seeding. Instead, the connection pool is blacklisted and subsequent initialization blocks for that connection pool are skipped. The intent is to filter that data just for that retailer. Used for Oracle BI Presentation Services. See "When Execution of Session Variable Initialization Blocks Cannot Be Deferred" for more information. Is Koestler's The Sleepwalkers still well regarded? Collection You can find an example of a dynamic essbase connection pool in this post of christian berg: In the bookshel Version 10.1.3.2, it's written that Only repository variables can be used in the definition. To use row-wise initialization, create an initialization block and select the Row-wise initialization option (refer to "Creating Initialization Blocks"). The variables receive their values from the initialization string that you type in the Initialization Block dialog. Create a second session variable called MVCOUNTRY____ORCL, making sure to include four underscores between the variable name and the source name. OBIEE 11g - The session variable, NQ_SESSION.VARIABLE, has no value definition user11173172 Feb 20 2015 edited Feb 27 2015 Hello, I am seeing a strange issue when using SESSION variable in OBIEE 11g RPD for data level security. See "Creating Repository Variables" or "Creating Session Variables" for information about creating variables. Launching the CI/CD and R Collectives and community editing features for OBIEE 12C: dashboard prompt auto fill when selection is sql result, dashboard prompt doesn't work in obiee 11g when using javascript, Oracle gives error Message on prompt refresh, OBIEE 11 - How to export a multipage dashboard in excel without prompt, Using table function in OBIEE RPD (physical layer) and pass parameter from dashboard prompt to it, obiee12c dashboard prompts running before analysis filters. Graph StartDate)', 1, 3) = '201' then to_date(substr('valueof(NQ_SESSION.StartDate)',1,10), 'yyyy-mm-dd')else to_date('valueof(NQ_SESSION.StartDate)', 'mm/dd/yyyy') end AND case when substr('valueof(NQ_SESSION.EndDate)', 1, 3) = '200' or substr('valueof(NQ_SESSION.EndDate)', 1, 3) = '201' then to_date(substr('valueof(NQ_SESSION.EndDate)',1,10), 'yyyy-mm-dd')else to_date('valueof(NQ_SESSION.EndDate)', 'mm/dd/yyyy') end, Tags: Tree In Expression Builder, click the Repository Variables folder in the left pane to display all repository variables (both static and dynamic) in the middle pane by name. Status, to include it in a where clause of the content tab of a logical table source, to create a dashboard prompt to set up this session variable, and to test it on a little answer with only the year as column, click on the node : Session/Variables/Non System, and create a session variable MyYear with for instance this default initialization string for the oracle database, Set Variable : Request Variable and the value MyYear, Server Presentation Service Installed On Two Machines. For example, to filter a column on the value of the variable SalesRegion, set the filter to the variable NQ_SESSION.SalesRegion. So what *is* the Latin word for chocolate? This system session variable overrides a variable defined in the Users object in the Administration Tool. SELECT 'VALUEOF(NQ_SESSION.WEBLANGUAGE)' FROM DUAL I have set up a session variable initialization block to read in the variable names and values from my translated strings table with this SQL: select session_variable,translation from W_LOCALIZED_STRING_G where lang_id='VALUEOF(NQ_SESSION.LOCALE)' You can edit Repository initialization blocks, or Session initialization blocks. You should test the SQL statement using the Test button or a SQL tool such as the Oracle BI Client utility. Not correct. vegan) just to try it, does this inconvenience the caterers and staff? I try to display the variable by define it in column formula as VALUEOF(NQ_SESSION. Business Intelligence Server Enterprise Edition - Version 12.2.1.0.0 to 12.2.1.4.200414 [Release 12g]: OBIEE 12c - case sensitivity of USER session variable name OBIEE 12c - case sensitivity of . Don't forget the quotes which enclose the Variable Name. There are three cases to consider, depending on whether the session variable is intended to filter a column that has a numeric, varchar, or date data type. If a semicolon must be included as part of a role name, precede the semicolon with a backslash character (\). There are two classes of variables: repository variables and session variables. Visit our Welcome Center, Answers/Dashboards (Presentation Services). (HY000) SQL Issued: SELECT VALUEOF(NQ_SESSION.user) FROM "Sample . When you check in the initialization block, the value of the dynamic variables is reset to the values shown in the Default initializer. Initializing Dynamic Repository Variables. Order You can use them to provide event-driven alerting, scheduled content publishing and conditional event-driven action execution. Is there a reason you can't use user variable? Mathematics SELECT DISTINCT 'PRODUCT', product_id FROM BI_SECURITY WHERE UPPER(USER_ID) = UPPER(':USER'), #business-intelligence-suite-enterprise-edition-obiee. When Jane connects to the Oracle BI Server, her session contains three session variables from row-wise initialization: LEVEL, containing the value 8; STATUS, containing the value FULL-TIME; and GRADE, containing the value AAA. For repository variable initialization blocks, when you open a repository in online mode, the value shown in the Default initialization string field of the Initialization Block dialog is the current value of that variable as known to the Oracle BI Server. There are two "flavors" of system variables: System session variables: User ID, the user's data security groups, and the user's web catalog group(s) are all examples of system . GUIDs for application roles are the same as the application role names. Data Type OBIEE - How to set a server variable with the session type via a dashboard prompt (with a request variable) ? Linear Algebra However, if you select Use OBI EE Server, the query is rewritten by the Oracle BI Server for the appropriate database. The approach Ive used, which is not ideal but has worked for me, is to hedge your bets in the Select statements. There seems to be a glitch in the way obiee (11.1.1.6.0) interprets server variables when using them as default values for a dashboard prompt: only when the variable name is in uppercase and contains no underscores will it be recognised. This automatically creates a single multi-source session variable, named: The component session variable names (____