Init Block for Dynamic Repository Variables

I have defined an Init Block in the RPD. I see that you can set the refresh intervals via a schedule that is a set time. I want to be able to trigger this Init Block once my ETL process has completed. Is there a way to externally trigger the Init Blocks ?

We faced the same problem and I am sorry to say that OBIEE does not support this feature. There is no way to trigger a repository variable refresh from outside OBIEE. In the end we decided to set the refresh interval to 2 mins. This means that when new data is loaded then at most the variables will take 2 mins to refresh. We use repository variables to to store the latest business date our DWH has data for to drive dashboard and reports. Our Init Block query is very quick and while are constantly asking the DB the same query Oracle caches it's results so the bverhead is near to nothing.

Similar Messages

  • Problem with a initialization block for a repository variable

    This is a very strange problem, some queryies which are issued on behalf of a Repository Variable give a succesfull completion but with 0 rows selected where it should select 1 row.
    I have a query like this
    select var1, var2, var3, var4 from table1
    where var1 = (select max(var1) from table2);
    When i test the query it gives nicely a result 1 row and the repository variables are filled correctly. The initialization block has a schedule so it will run once an hour.
    In the logfile I can see that the query is fired on behalf of my repository variable with a result of 0 rows.
    I thougt i could work around the problem by puttting the query in a view, import this view in my physical layer and do a simpel select var1, var2, var3, var4 from view in the initialization block.
    This still had the same result, testing it works fine I get nicely one record, when it is fired as a result of a schedule it gets a result of 0 rows selected.
    I've tried the query in different formats, the query that i started with was this (see below). When that didn't work i started testing with simplere query's like above
    select var1, var2, var3 , var4 from (
         select var1
         from table2
         where type='x'
    and datum = (select max(var1) from table2 where type='x')
    ) join table2 using (var1)
    Other init blocks work fine. Those init block differ from the one with the problem, they have no join between two tables. The only join I have in one of the working blocks is a join with something from dual.
    The other point is, this init block did work on a previous version of obiee, but after an upgrade it doesn't work anymore.
    The OBIEE version is 10.1.3.4.1.090414.1900
    The database is version 10.2.0.1.0
    I was able to test it myself on a 10.2 database with a 10.1.3.4.0 obiee there it worked fine. Also with 10.1.3.4.1 with a 11g database and that worked ok to.
    Has anybody else stumbeled on this problem and how can i solve it. Also workarounds are welcome. Preferably not changing to a session variable cause in that case i have to change all the reports that use this variable.
    Kind regards,
    Yvon

    Have your DBA put a trace on your OBIEE sessions to see what SQL is OBIEE firing and to confirm the rows do exist. Are you sure this data is always there?

  • Multiple dynamic repository variable using one initialization block

    I am trying to declare three dynamic repository variables var1, var2, var3. I want to have only one intialization block for all three.
    The point I am confused at is when declaring vraibles, I can normally do
    select x, y, z from table where expr1=expr2
    and then x, y, z can give values to my three variables.
    But in the above case the query is selecting three different things (different columns) from the same row in the database.
    But in my case I want to select the same column from different rows.
    for example
    var1 will be
    select x from table where expr1=expr2
    var2
    select x from table where expr1=expr3
    and var 3
    select x from table where expr1=expr4
    1. Is it possible to do that.
    2. Is it possible to dynamically name a dynamic repository varibale?
    I use OBIEE-11g
    Thank you
    Edited by: user6287828 on Jan 26, 2012 9:41 AM

    Hi,
    I think the primary advantage of WITH clause is to resolve complex sub queries (I am sorry, I am mistaken here). But as per my readings and the BI Server too generating queries using WITH clauses, I think this is an optimized option to choose from in your case (I think there might be other queries too that can get your requirement solved though).
    You may want to refer to http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:524736300346304074 for some info. The database experts say the usage is case-by-case and hence probably in your case if you want to populate 20 variables at one shot you in BI using this kind of query, you have to further evaluate the time taken by the sql etc or break it down again.
    However, I think this certainly is an option here.
    Hope this helps.
    Thank you,
    Dhar

  • Dynamic Repository Variables are not Refreshing in OBIEE 11.1.1.6

    Hi Experts,
    As of sudden the dynamic repository variables are not refreshing.
    The same rpd is working fine in Test Environment.
    If any change in the query of initialization block, it is fetching old result.
    Even after refreshing in Analytics page, still it is showing old value.
    Please help me in regarding this.
    Regards,
    Kallu.

    Make sure init block is pointing to right connection pool.
    whats the status in NQServer.log and NQQuery.log files?
    If helps pls mark

  • Regarding dynamic repository variable

    Hi Experts,
    I have made one dynamic repository variable. this variable calculates start date of week.
    i am using this variable in prompt as default value.
    the problem i am geeting its value is not getting refreshed. it shows static value that i have given in default initializer in
    rpd.i want its value gets changed in every week but it is not changing,its shows always default value that have
    given in rpd.
    Please share any solution to resolve this problem.

    Hi,
    Kindly use the below SQL syntax in the default selection of the dashboard prompt.
    SELECT CASE WHEN 1=0 THEN date_column else TIMESTAMPADD(SQL_TSI_DAY, -0, CURRENT_DATE) END FROM SH
    Regards
    MuRam
    NOTE: Please mention if this resolved your problem/still facing and close the thread.

  • Retriving a cookie variable in a init block

    Hello
    I configured obiee for sso.
    Here is my instance config:
    <Auth>
    <SSO enabled="false">
    <ParamList>
    <!--IMPERSONATE param is used to get the authenticated user's username and is required -->
    <Param name="IMPERSONATE" source="cookie" nameInSource="SSOUSERNAME"/>
    <Param name="NQ_SESSION.TICKETID" source="cookie" nameInSource="TICKETID"/>
    </ParamList>
    </SSO>
    </Auth>
    Here is my init block in the repository
    SELECT ':USER' FROM dual where obiee_auth_api.validate_and_expire_ticket(':USER', ':NQ_SESSION.TICKETID') = 'Y'
    When I run that, I dont get logged in.
    If I replaced ':NQ_SESSION.TICKETID' by a hard-coded ticket id like 'xxx-xxx-xxx-xxx' it works and I'm logged in.
    So I guess I'm not retrieving the variable value correctly.
    Does someone know how to do that?
    Thanks

    Do the cookie names match exactly with the cookie generated on your system? It is case sensitive.

  • Stupid question: getting sysdate into repository variable (11g)

    Hi, I'm having a complete brain fade and can't figure out how to select current sysdate into a dynamic repository variable. I've done the following:
    1. Created init block
    2. Set data source to the connection pool from one of my Oracle databases
    3. Set the default database string to "select trunc(sysdate) from dual"
    4. Created a dynamic variable STP_TODAY with default initializer of DATE '1900-01-01'
    5. Check in and save the RPD
    When I go into answers, I can see the variable, but it's always getting the 1900-01-01 date. Obviously I'm doing something dumb - can someone help?
    Thanks!
    Scott

    This is related to presentation server Cache.
    Bypass the Presentation server Cache with the following steps:
    1. In Answers go to Advanced tab and select the "Bypass Oracle BI Presentation Services Cache" box for the report.
    2. At the lower end of the page, you have a box name "prefix", add the below text in it,
    "SET VARIABLE DISABLE_CACHE_HIT=1;"
    3. Save the report.
    Check now, this hopefully should help..
    Regards,
    Kiran

  • XML Init Blocks

    Hello,
    Does anyone know how to use XML as a source for a dynamic repository variable? In the init block data source dialog, there is an XML option in the type dropdown. When I select this and point to an XML connection pool (which works correctly for accessing data through the RPD layers) and try to run a query I get one of the following errors, depending on the syntax I try:
    [nQSError: 59112] Operation is not supported for data source connectivity type: NQSXML.
    [nQSError: 27024]The EXECUTE PHYSICAL statement must specify a physical SQL statement to execute.
    I've tried submitting normal SQL, X-Path expressions and a mixture of the two, but nothing works. Has anyone had any luck implementing this?
    Thanks.

    It can't be done. Oracle has disabled the ability to do this due to a bug. You can only read from connection pools that are ODBC or database-based.

  • How to pass the prompt value to repository variable in obiee 11.1.1.7

    Hi All,
    I am given a tabular report to build in OBIEE 11.1.1.7 version using insurance data.
    I have to show different types of claim names and their corresponding count in the table. One of the calculations require me to use the total no of claims(i.e sum of all the claims).
    Example:
    Total No of claims: 600
    Total No of Auto Claim: 60
    I have to create a table on Auto Claim like:
                   claim types       count
                        X                    10
                        Y                    20
                        Z                    30
    I was calculating total no of claims by using dynamic repository variable as it was a constant value. Example: repository_variable1: select count(claim ID) from Insurance; In report I was just using value of (repository_variable1)
    Now client has asked us to give date prompt so the total no of claims (assumed as 600) will change with respect to period. I can calculate total no of claims with respect to different claim type (as shown in the table above) with respect to period filter in the report.
    The problem I am facing now is, I need the count of all the claims on a partucular period too. Repository variable is giving always calculating the count as 600. But the count should change with respect to period selected. How to get this value?
    Can I create a presentation variable in the prompt and pass this value as an argument for repository variable?
    Please help. I am in urgent need of the solution.
    Thank you.

    Hi Srini,
    I tried creating it as metric. But the problem is my pivot table is on Auto Claims.
    Let me try to make myself a bit more clear.
    Total No of claims in fact table: 600
    Total No of Auto Claims in fact table: 60
                    claim types(auto claims)       count        Calculation
                        X                                        10             10/600
                        Y                                        20             20/600
                        Z                                        30             30/600
    So I need to access total no of claims to calculate. I cant use a metric as the count will take group by with respect to auto claim type and give value only for X claim.

  • Row wise init block problem

    Hi experts,
    We have row wise init block for project1(Connected to db1).
    and there are other project2(Connected to DB2) in single rpd.
    When db1 is down then we got the error in obiee appication.
    Requirement is if db1 is down only project1 should be down not the project2.
    is there any suggestion.
    Thanks,

    Thanks for your help !
    I created a session variable UNAME
    SELECT 'VALUEOF(NQ_SESSION.USER)' FROM DUAL
    Then I created the second variable with row wise init block.
    SELECT DISTINCT 'Department', Department_name FROM Department A WHERE A.LOGIN_ID= 'VALUEOF(NQ_SESSION.UNAME)'
    in second init block i.e. for department i added the init block(Uname) in execute precedence.
    Still I am getting the same issue..any help pls?
    Thanks.

  • How to initialize a Prompt drop-down list using a Repository Variable.

    Hi,
    the aim is to fill a drop-down list of a Year prompt only with year values that can provide data.
    This Show list SQL statement works:
    SELECT Time."Year" FROM "AnalysisCatalog"
    WHERE Time."Year" <= 2007
    Using the maxYear Repository Variable does not work:
    SELECT Time."Year" FROM "AnalysisCatalog"
    WHERE Time."Year" <= @{biServer.variables[’maxYear’]}
    Error Codes: G689FFB3:SDKE4UTF
    Expression: biServer.variables[’maxYear’]
    How can I achive the result without hardcoding the Year 2007?
    Mny thx Thomas

    Hi,
    Actually this error does not cause any harm except a presentation inconvenience. In my multi-select prompt I am using variable expression with dynamic repository variable. Dashboard results are correct. Just variable's value does not appear on page (error Error Codes: G689FFB3:SDKE4UTF
    Expression: @{biServer.variables['CUR_CAL_PER_MONTH_NAME']}). Pushing "GO" button on the prompt fixing the error but it's actually second execution of the dashboard.
    Any ideas ??

  • Repository Variables in Dashboard prompt.

    I am still learning how to use variables in Dashboard. I have created one Dynamic Repository Variable. I want to use this variable as Default in Dashboard prompt.
    Please help me resolve this issue.
    Thanks,
    Pooja

    Hello,
    This post get help you.
    http://bischool.wordpress.com/2009/06/17/set-yesterday-or-some-date-value-as-default-in-obiee-dashboard-prompt/
    Regards,
    Luko

  • Without exceeding the credit limit sales order is blocked for credit check.

    Dear Experts,
    In my production server as well as quality server sales order is blocked for dynamic credit check.But the fact is that the credit limit is not exceeded.only 18% of the credit limit is used by the cutomer.The same problem is there in quality server also.
    Kindly help.
    Best Regards
    Biju

    Dear Biju,
    Check whether the customer code has exceeded credit limit in any other credit control area.
    Run the following programs.
    RVKRED77 , RVKRED88 , F.28
    After credit re-organisation, please check again and revert back.
    Also would like to ask you whether you have made any recent changes in the credit master data [FD32].
    Thanks & Regards,
    Hegal K Charles

  • 11.1.1.6.11  /  Essbase Substitution Variables / RPD Init Block / Dynamic Variables

    11.1.1.6.11  /  Essbase Substitution Variables / RPD Init Block / Dynamic Variables
    How do I update the Init Block which is populated with the Essbase Substitution variables.   This is dynamically created the first time I import an Essbase cube and is populated with the Substitution variables when it is first imported into the RPD.   If later on new Substitution variables are added, they are not being reflected in the Init Block or its dynamic variables.  I have done the re-import of the data source with no change to the Init Block Dynamic Variables.   How do I get these new Substitution variables imported?
    It appears that the only way is to delete it from the Physical Layer, however this deletes any changes I have made to Cube in the physical layer.

    So delete it from the Physical Layer, change the Substitution Variables associated with the cube.   Import it back into the physical layer.   It does NOT delete existing Init Block Dynamic variables that no longer exist as Substitution variables.  

  • Repository variable and Init block

    I created an Init block that is based off of a sql command in which the command is designed to give me the max date a table was updated after a data load.  Well the variable I created based off of this has a timestamp of today's date.  I want to create a report on the front end (actually just a column) that updates when a load has been completed.  I use this (TIMESTAMPDIFF ( SQL_TSI_MINUTE, VALUEOF(“LAST_UPDATE_DATE”)), CURRENT_TIMESTAMP)) for the column formula but I'm either running into errors or getting nothing at all.
    OBIEE 11.1.1.5
    Please Advise

    Hey......long time but here it is.   So I created an init block called Last_update_date and had it query a db table that automatically updates when a data load is complete.  I set a variable with the current timestamp.  Well When the table loads the variable locks in that time of the load.   On the front end I referenced the table in an expression and created a report around it.  I did a timestamp diff b/t current time and the time the init block locked in for the load, and called it ETL update column.  I created an agent that starts a purging/caching cascade with the ETL update report as the condition.
    Thanks

Maybe you are looking for

  • Modify control behavior in sub-vi

    I'm using a dual-slide control in several places to select a range of values. I've added behavior to the slider by forcing the value of the second slider to be greater than or equal to the first slider. I'm doing the limit calculations in a sub-vi by

  • Best practice for BI-BO 4.0 data model

    Dear all, we are planning to upgrade BOXI 3.1 to BO 4.0 next year and would like to know if Best Practice exists for BI data model. We find out some general BO 4.0 presentations and it seems that enhancements and changes have been implemented: our go

  • How to Send Html Email using JavaMail?

    I want to send email message body as html. as some news sites send.What will easiest way of doing that?

  • Please translate this VB code to Java. I promise duke dollar

    �P�O�@�d�r�b�����b�g�q���i���g�P�a�j �Q�O�@�n�o�d�m�@�g�b�n�l�P�F�X�U�O�O�C�m�C�W�C�P�C�q�r�C�a�h�m�h�@�e�n�q�@�n�t�s�o�t�s�@�`�r�@���P �R�O�@�o�q�h�m�s�@���P�C�d�r�b���G�g�`�h�G �S�O�@�o�q�h�m�s�@���P�C�d�r�b���G�g�u�P�O�O�h�G�d�r�b���G�g�g�Q�O�O�h�

  • HT204088 I have purchases on my bank statement from Itunes that I did not make. who do I contact?

    I tried calling the number on my bank statement and that number just referred me to the iTunes website. No help at all. Any way I can get a phone number to call a live person?