Using @variable('BOLanguage') prompts in webi documents

Hello,
I am using @variable('BOLanguage') in the universe to handle multilinguism.
Unfortunately, when running my webi document, the variable prompts whereas it is a BO variable.
On top of that, let us suppose, I enter "test" as a value for this variable, when it is evaluated, the variable is evaluated as 'fr' or 'en' but not as 'test' which proves that this variable should not prompt.
Does anyone have any idea about how to prevent 'BOLanguage' from prompting.
Thanks in Advanced
Sylvie

Oh, ok that's interesting. I went back to find the documentation but couldn't find anything specific to BOLANGUAGE, just to @Variable in the Universe designers guide.
http://help.sap.com/businessobject/product_guides/boexir31SP2/en/xi31_sp2_designer_en.pdf
It mentions entering -var parameter at the command line when starting BO to get access to other variables, and the syntax to use for @variable. It also mentions language variables like 'Preferred Viewing Locale', but nothing about 'BOLanguage'. Anyway, looks like you have answered your own question.
Thanks

Similar Messages

  • Using API to download the webi document in the XML format

    I am just trying to use this API to download the webi document in the XML format. I need a sample XSL file which we can use to download the XML in a formatted output.
    http://devlibrary.businessobjects.com/BusinessObjectsXIR2/en/en/RE_SDK/resdk_java_doc/doc/resdk_java_apiRef/com/businessobjects/rebean/wi/XMLView.html
    getReader
    public java.io.Reader getReader(java.net.URL xsl)
                             throws REException
    Return the result of the XSL transformation applied to the XML report output stream.
    Parameters:
    xsl - URL to an XSL file used to transform report XML.
    Since:
    11.5
    See Also:
    getReader()

    If the same content of file already thr in the Internal table as 1 STRING/LINE then you can loop the internal table count the entries which one you want like
    Kanagaraja L

  • Using variable in prompt label

    Hi,
    Does anybody now if/how you can use a session variable in a prompt label? I want to make a multiligual prompt.
    regards
    John
    Edited by: John Minkjan on Apr 15, 2009 4:28 AM

    Stijn,
    That did the trick!
    I will put it on the blog ASAP.
    EDIT: http://obiee101.blogspot.com/2009/04/obiee-multi-lingual-prompt.html
    regards
    John
    http://obiee101.blogspot.com/
    Edited by: John Minkjan on Apr 15, 2009 10:44 AM

  • Default value of BeX customer Exit variable not Displayed in WeBI??

    Hello Experts,
    We are stuck with a problem where WeBI report is created on top of BeX query and we are not able to see the default value of Bex Customer exit variable in WeBI run. Here is the complete scenario:
    1. One restricted KF is created in BeX, restricted with Customer exit variable on net Due date. And this variable is mandatory, ready for input, and Default value in calculated is user exit as current Week's Monday.
    2. So, by default KF data should be restricted to Monday of current week, if user does not change this value.
    3. Now, WeBI report is created on top of this Bex query, and all is working fine, i.e. we are getting variable as Prompt in WeBI, but Default value is not shown while Running the Webi Report.
    So, need your inputs on the same, if default values from BeX in WeBI is supported or not? If yes, why this is happening, and how to resolve it?
    Please notice, the restrcition is in KF only, it is not a separate restrcition on Net Due date in Filter area or in Defualt area of BeX
    and we are on SAP BW 7.1 and BOXI 3.1 SP4.
    Regards,
    Vipul
    Edited by: VIPUL GOYAL on Nov 23, 2011 9:44 PM

    Hi,
    See 1285993 - Support of Customer Exit Variables from BEx query into WebIntelligence via OLAP universe
    WebI will prompt when executed, but the default values calculated by the user exit  - do not appear.
    Note: If the BEx variable has property 'ready for input' set / enabled, then its WebI prompt shows ok, but no default value appears.
    Cause
    This behaviour expected 'by design' (in the context of the product's current limitations) as explained in the online guide below:
    Please refer to Chapter 7, page 44, document link here: http://help.sap.com/businessobject/product_guides/boexir3/en/xi3_sap_olap_universes_en.pdf
    Characteristic variable > processing type > Customer Exit  is "Supported, without user entry"                                                                               
    -->  This should be understood as meaning "User will not be shown a prompt"
    regards,
    H

  • WEB Application / Dynamic variable input / Prompts

    I've defined a variable on characteristic Currency with the following definition:
    Processing by              : User Entry/ Default Value
    Variable represents        : Single Value
    Variable entry is          : Optional
    Ready for input            : yes
    Can be changed in query nav: yes
    Default Value              : EUR
    This variable ist used in "Currency Translation" as "Target currency" (variables entry: yes)
    The query is used in a Web-Report that performs the following command by selecting currencies from a checkbox:
    url=SAP_BW_URL_Get() +"&CMD=PROCESS_VARIABLES&SUBCMD=VAR_SUBMIT&VAR_NAME_1=SL_CURR&VAR_VALUE_EXT_1=";
    url=url+value;
    (value is the code of the selected currency)
    Everything works pretty good, but opening the web-report I get a prompt window for the variable. How can I avoid this ?
    Changing the variable property <Ready for input : no> causes the effect that the dynamically changing of the variable doesn't work anymore. It seems that in this case always the default value of the variable is taken.
    The application should use the default value while opening the report, afterwards it should be possible to set the variable dynamically.
    Thank you very much for your ideas !!

    Hi Stefan,
    you can activate/deactivate the variable screen with parameter "Force Variable Screen" in your web template.
    bye

  • Webi document prompts order from Java SDK does not refresh correctly?

    Hi
    I'm developping a standalone command-line Java program which will schedule a report with custom prompt values.
    I am having a problem with Webi prompts ordering acquired from the SDK.
    We are running BO XI R2 SP4 under Windows on Tomcat servers.
    Here is the problem:
    I have a Webi report called "Articles Racines" in a "Tests SDK" directory.
    This report uses two prompts named "Type Article :" and "Code Marque :" (in this order).
    Java SDK (code below) returns the right prompts in the right order.
    Now, in Infoview, I modify the report in order to change the order of the prompts (in the "Properties" tab) making "Code Marque :" the first and "Type Article :" the second one and save the changes.
    When I run the report, prompt order has changed but the prompts retrieved from the Java SDK are still in the old order.
    I noticed that if I update the name of both prompts, the prompts retrieved from the SDK now are in the right order (with the updated names).
    Am I doing something wrong? Is it a known issue?
    Thanks in advance.
    Guillaume
    PS : I am aware that "select *" are very bad but I am still in research stage of developpment.
    TestsScheduler.java:
    import java.util.Iterator;
    import java.util.List;
    import java.util.StringTokenizer;
    import com.businessobjects.sdk.plugin.desktop.webi.IWebi;
    import com.businessobjects.sdk.plugin.desktop.webi.IWebiPrompt;
    import com.crystaldecisions.sdk.exception.SDKException;
    import com.crystaldecisions.sdk.framework.CrystalEnterprise;
    import com.crystaldecisions.sdk.framework.IEnterpriseSession;
    import com.crystaldecisions.sdk.framework.ISessionMgr;
    import com.crystaldecisions.sdk.occa.infostore.IInfoObject;
    import com.crystaldecisions.sdk.occa.infostore.IInfoObjects;
    import com.crystaldecisions.sdk.occa.infostore.IInfoStore;
    public class TestsScheduler {
         public static void main(String[] args) {
              String cms = "XXX";
              String username = "XXX";
              String password = "XXX";
              String authentification = "secEnterprise";
              String reportPath = "/Tests SDK/Liste des racines";
              try {
                   ISessionMgr sessionManager = CrystalEnterprise.getSessionMgr();
                   IInfoObjects objects;
                   // Connexion
                   System.out.println("Connexion à "+ username +"@"+ cms +" ("+ authentification +") en cours...");
                   IEnterpriseSession session = sessionManager.logon(username, password, cms, authentification);
                   System.out.println("Connecté à "+ session.getCMSName());
                   // Récupération de l'infoStore
                   IInfoStore infoStore = (IInfoStore) session.getService("InfoStore");
                   // Récupération des informations d'un report
                   StringTokenizer st = new StringTokenizer(reportPath, "/");
                   int reportID = 0; // Le dossier "Dossiers Publics" est la racine (/)
                   IInfoObjects infoObjects;
                   IInfoObject infoObject;
                   do {
                        String token = st.nextToken();
                        System.out.println("Recherche de l'objet '"+ token +"' en cours...");
                        infoObjects = infoStore.query("select * from CI_INFOOBJECTS where SI_NAME = '"+ token +"' and SI_PARENTID = '"+ reportID +"'");
                        if(infoObjects.size() != 1) {
                             throw new Error("Le dossier SI_ID='"+ reportID +"' possède "+ infoObjects.size() + " fils nommés '"+ token +"'.");
                        infoObject = (IInfoObject) infoObjects.get(0);
                        reportID = infoObject.getID();
                        System.out.println("Trouvé l'objet SI_ID='"+ reportID +"' nommé '"+ infoObject.getTitle() +"'.");
                   } while(st.hasMoreTokens());
                   if(infoObject instanceof IWebi) {
                        IWebi webi = (IWebi) infoObject;
                        List prompts = webi.getPrompts();
                        System.out.println("Le rapport Webi possède "+ prompts.size() +" invite(s).");
                        for(Iterator itPrompts = prompts.iterator(); itPrompts.hasNext();) {
                             IWebiPrompt prompt = (IWebiPrompt) itPrompts.next();
                             List values = prompt.getValues();
                             System.out.println("     L'invite '"+ prompt.getName() +"' possède "+ values.size() +"' valeur(s).");
                             for(Iterator itValues = values.iterator(); itValues.hasNext();) {
                                  Object value = itValues.next();
                                  System.out.println("          Valeur='"+ value +"'.");
                   // Déconnexion
                   System.out.println("Déconnexion en cours...");
                   session.logoff();
                   System.out.println("Déconnecté");
              } catch(SDKException e) {
                   throw new Error("Erreur lors de la connexion : "+ e.getMessage());
    Edited by: Guillaume L on Dec 10, 2008 3:22 PM

    Here's the reason why:
    Web Intelligence document prompting is handled properly if you open the doc using the ReportEngine Java (REBean) SDK.
    When you set prompts and schedule, you'd first open the doc using REBean, set the prompts, then copy over the prompt values you've set to the IWebi you're scheduling using the PromptsUtil.populateWebiPrompts(...,...) helper method.
    So the InfoObject IWebi doesn't know about the actual ordering of the prompts in the document itself - it's just receiving the prompts in order as it's fed from PromptsUtil.
    It's not recommended to assume that the IWebi.getPrompts() will return a non-empty collection.  The Web Intellligence document must be first opened in ReportEngine and the prompting values set using PromptsUtil to fill the collection.
    Sincerely,
    Ted Ueda

  • Webi report would NOT refresh even after setting prompts and refreshing document instance.

    I am a .NET developer and a newbie to the world of BO I have just written a simple application in C# making use of the BO.NET Enterprise SDK and the ReportEngine.NET SDK to open a WEBI document and export it to Excel.  I have got the whole thing working - starting from establishing the EnterpriseSession, obtaining the reportEngine instance and also opneing the Webi document and exporting it to Excel. 
    The problem is the even after setting a different value for the prompts I ALWAYS get the same report  - for example if I set the Country prompt to India I always get the previous one that was set in the universe (Brazil).  These are not optional prompts and I do refresh the documentInstance after calling "SetPrompts"  Did anyone elase have the same problem with caching?.  Any help would be greatly appreciated.  Please find the snipped of the code attached.

    The link is correct, however you need access to SAP Service Market Place (SMP), which you should have since you are using BOE / BI. If not, ask your BOE / BI administrator to set you up with logon to SMP.
    - Ludek
    Senior Support Engineer AGS Product Support, Global Support Center Canada
    Follow us on Twitter
    Got Enhancement ideas? Try the SAP Idea Place
    Share Your Knowledge in SCN Topic Spaces

  • How to schedule Webi Documents with Prompts with RESTful Web Services

    Hello,
    I am trying to schedule Webi Documents with Prompts using RESTful Web Services with prompts. I am using Simple Rest Client app provided by Google Chrome. We have Business Objects SP6 Patch 1.
    However the documentation for RESTful Web Services has only examples for the following
    1. Schedule Documents without any Prompts to various destinations and recurrences.
    2. Refresh Documents with Prompts.
    Is there any example for scheduling documents with prompts? Please advise
    Thanks in advance

    Hi Peter,
    With Rest Client, on BI4.0 SP6, you can schedule Webi documents with prompts using the following:
    URL: http://<servername>:6405/biprws/raylight/v1/documents/<docid>/schedules
    Method:POST
    Request Body:
    <schedule>
    <name>Enter values for City:</name>
    <format type="webi"/>
    <destination>
    <inbox/>
    </destination>
    <once retriesAllowed="2" retryIntervalInSeconds="60">
    <startdate>2013-08-26T15:58:51.000+02:00</startdate>
    <enddate>2013-08-27T15:58:51.000+02:00</enddate>
    </once>
    <parameters>
    <parameter optional="false" type="prompt" dpId="DP0">
    <id>0</id>
    <technicalName>Enter values for City:</technicalName>
    <answer constrained="false" type="Text">
    <values>
    <value>Austin</value>
    </values>
    </answer>
    </parameter>
    </parameters>
    </schedule>
    Using the above request you can schedule the Webi document with prompts to inbox destination  and set for once.
    The schedule can be sent in different formats to several destinations and set just for once, daily,
    hourly or monthly.
    You can also check the example for this on page 275 of SAP Webi RESTful SDK user guide for BI4.0 SP6 below:
    http://help.sap.com/businessobject/product_guides/boexir4/en/xi4sp6_webi_restful_ws_en.pdf
    Regards,
    Swati
    Message was edited by: Swati Ikhe

  • Extracting SQL statement from a Webi document's data provider using SDK.

    Hi all,
    Is it possible to extract the SQL statement from an existing Webi document's data provider using BO SDK?  I've searched through the class library but haven't found any information on this yet.  If you have done it, could you provide some guidance.  Many thanks.

    I found the following Java code that might be of some help to you. I realize you are using .NET but this might push you down the right path.
    The trick here is to use the Report Engine SDK to get the DataProvider of the DocumentInstance. Then, look at the SQLDataProvider to get your SQLContainer.
    My apologies for the poor formatting. This didn't copy and paste over to the forums very well. I've cleaned up as much as I could.
    <%@ page import="com.crystaldecisions.sdk.framework.*" %>
    <%@ page import="com.crystaldecisions.sdk.exception.SDKException" %>
    <%@ page import="com.crystaldecisions.sdk.occa.infostore.*" %>
    <%@ page import="com.businessobjects.rebean.wi.*" %>
    <%
    boolean loginSuccessful = false;
    IEnterpriseSession oEnterpriseSession = null;
    String username = "username";
    String password = "password";
    String cmsname  = "cms_name";
    String authenticationType = "secEnterprise";
    try
    //Log in. oEnterpriseSession = CrystalEnterprise.getSessionMgr().logon( username, password, cmsname, authenticationType);
    if (oEnterpriseSession == null)
    out.print("<FONT COLOR=RED><B>Unable to login.</B></FONT>");
    else
    {  loginSuccessful = true;
    catch (SDKException sdkEx)
    { out.print("<FONT COLOR=RED><B>ERROR ENCOUNTERED</B><BR>" + sdkEx + "</FONT>");}
    if (loginSuccessful) { IInfoObject oInfoObject = null;
    String docname = "WebI document name";
    //Grab the InfoStore from the httpsession IInfoStore oInfoStore = (IInfoStore) oEnterpriseSession.getService("", "InfoStore");  //Query for the report object in the CMS.  See the Developer Reference guide for more information the query language.   String query = "SELECT TOP 1 * " +        "FROM CI_INFOOBJECTS " +        "WHERE SI_INSTANCE = 0 And SI_Kind = 'Webi' " +        "AND SI_NAME='" + docname + "'";
    IInfoObjects oInfoObjects = (IInfoObjects) oInfoStore.query(query);
    if (oInfoObjects.size() > 0)
    //Retrieve the latest instance of the report  oInfoObject = (IInfoObject) oInfoObjects.get(0);
      // Initialize the Report Engine  ReportEngines oReportEngines = (ReportEngines)
    oEnterpriseSession.getService("ReportEngines"); 
    ReportEngine oReportEngine = (ReportEngine) oReportEngines.getService(ReportEngines.ReportEngineType.WI_REPORT_ENGINE);
      // Openning the document  DocumentInstance oDocumentInstance = oReportEngine.openDocument(oInfoObject.getID());   
    DataProvider oDataProvider = null; 
    SQLDataProvider oSQLDataProvider = null; 
    SQLContainer oSQLContainer_root = null; 
    SQLNode oSQLNode = null;
    SQLSelectStatement oSQLSelectStatement = null; 
    String sqlStatement = null;
      out.print("<TABLE BORDER=1>");
    for (int i=0; i<oDocumentInstance.getDataProviders().getCount(); i++)
    oDataProvider = oDocumentInstance.getDataProviders().getItem(i);
      out.print("<TR><TD COLSPAN=2 BGCOLOR=KHAKI>Data Provider Name: " + oDataProvider.getName() + "</TD></TR>");
       if (oDataProvider instanceof SQLDataProvider)
    oSQLDataProvider = (SQLDataProvider) oDataProvider;
        oSQLContainer_root = oSQLDataProvider.getSQLContainer();
        if (oSQLContainer_root != null)
    for (int j=0; j<oSQLContainer_root.getChildCount(); j++)
    oSQLNode = (SQLNode) oSQLContainer_root.getChildAt(j);
          oSQLSelectStatement = (SQLSelectStatement) oSQLNode;             
    sqlStatement = oSQLSelectStatement.getSQL();     
    out.print("<TR><TD>" + (j+1) + "</TD><TD>" + sqlStatement + "</TD></TR>");   
    else
    out.print("<TR><TD COLSPAN=2>Data Provider is not a SQLDataProvider.  SQL Statement can not be retrieved.</TD></TR>");   }  }  out.print("</TABLE>");
      oDocumentInstance.closeDocument(); }
    oEnterpriseSession.logoff();}%>

  • How to get the filters of Webi document/Report using Java code in XI SDK.

    Hi All,
       I have a requirement where i have to extrcat filters from the Webi Document.using java SDK.
    I am trying to find the class called "filterable"but not able to use in my java code and will get always
    "java.lang.ClassCastException  com.businessobjects.wp.om.OMDocument cannot be cast to com.businessobjects.rebean.wi.Filterable"
    I am using the below java code like
    ReportElement re=document.getStructure()
    FilterContainer flt=((Filterable) re).getFilter()
    I am stuck and need this in uregent.
    Please help.

    Hi Rajeev,
    To retrieve a FilterContainer you will need to traverse the report structure:
    ReportStructure boReportStructure = boDocumentInstance.getStructure();
    ReportContainer boReportContainer = (ReportContainer) boReportStructure.getReportElement(0);
    FilterContainer boFilterContainer = null;
    if (boReportContainer.hasFilter()) {
         boFilterContainer = boReportContainer.getFilter();
    } else {
         boFilterContainer = boReportContainer.createFilter(LogicalOperator.AND);
    Calling boDocumentInstance.getStructure() will retrieve the entire structure for the document.
    Calling boReportStructure.getReportElement(0) will retrieve the structure for the first report of the document.
    Hope this helps.
    Regards,
    Dan

  • Using Variable in Web.xml/ Override value in web.xml

    Environment : JBOSS 4.2 / Web application in java/jsp
    *==============================================================*
    Iam using a servelet in application, and paremeters is configured in web.xml at run time I need to change the value. A variable
    see web.xml
    {color:#ff0000}<param-value>C:/FILE_ATTACHMENTS{color}</param-value>
    Instead of using a static folder name I need to use a variable, this veriable either i define in config.properties or ineed to pass through application
    Web.Xml file
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app id="WebApp_ID" version="2.4" xmlns="[http://java.sun.com/xml/ns/j2ee]" xmlns:xsi="[http://www.w3.org/2001/XMLSchema-instance]" xsi:schemaLocation="[http://java.sun.com/xml/ns/j2ee] [http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd]">
    <display-name>VyasaWeb</display-name>
    <servlet>
    <servlet-name>VyasaServlet</servlet-name>
    <servlet-class>com.jsos.download.VyasaServlet</servlet-class>
    <init-param>
    <param-name>dir</param-name>
    param-value>C:/FILE_ATTACHMENTS</param-value>
    </init-param>
    </servlet>
    <servlet-mapping>
    <servlet-name>VyasaServlet</servlet-name>
    <url-pattern>/servlet/VyasaServlet</url-pattern>
    </servlet-mapping>
    </web-app>
    Is any way to use variable in web.xml or override the value ?
    Please help
    Vince
    Edited by: VINCEJOHNSON on Jul 30, 2010 3:30 PM

    If nothing else, why not just have your servlet load a configuration file on startup?

  • How to hide prompts panel for WebI documents opened in PDF via openDocument

    I am linking to a WebI document via openDocument call with sOutputFormat=P. The report opens in PDF format but within another browser window with top panel and left prompts panel.  I tried to set different Web Intelligence Interactive settings in CMC to hide the left prompts panel but to no avail.  We are linking to this WebI report from an Xcelsius dashboard via openDocument and are passing parameters so that the user doesn't have to interact with the report.  Once the results are displayed, user should not be allowed to either Refresh the report or see the parameter panel in the left pane.  Is this possible either via CMC security settings or viewer customization?

    Thanks, posted. The forum was a bit hard to find

  • Visualize Filter prompts in Web Intelligence documents

    Hi !  I need to know how to visualize the content of a Filter prompt within the document. (i.e. a date entered by the user as a parameter required).  Does exist some manner to do it ?  Thanks

    yes UserResponse()  is what you are looking for
    say that you have a paramter called "Enter Date:"
    user this function in a variable =UserResponse("Enter Date:")
    it will show whatever the user put into the parameter

  • Find Webi documents that use merged dimensions

    I would like to be able to locate Webi documents that use merged dimensions.  I have looked through the Java ReportEngine SDK and did not see anything that would help.
    I am running BOXI R2 SP5 FP5.5

    Where do you originally merge the dimensions, is this done on the Webi level, or the Universe level?  If it is done at the Universe level, Webi will just see it as a dimension, you would need to be able to know which dimensions were merged and just look for that object by name not be any specific property.

  • Delete variables in WEBI Documents

    Hi,
    We are creating WEBI documents on top of BW queries(Query-Universe-WEBI) and BW query variables automatically flows into WEBI and we don't want to show all variables to the user while he is creating his own WEBI documents so we wanted to delete variables in WEBI instead of Universe. Is there any way to achieve this functionality?
    Cheers,
    Preetham

    Hi,
    but keep in mind that even when you do hide them the underlying BI query still requires values as input for the BI query to be executed.
    you mentioned that you want to hide the variables from the user - so why do the variables exist in the BI query ?
    Ingo

Maybe you are looking for

  • Seeburger Message Tracking - File Store Dinamic variables

    Hello, I dont have to much information about FileStore Module. I will appreciate if someone have information of this or If someone knows how to use dinamic variables with File Store.... Thanks & Regards, lpbuff

  • Failed in checking n/wing configuration requirements--- oracle 10g

    Hi I got an error in the beginging of installation.It is failed in checking n/wing config requirements The install has detected that the primary IP address of the system is DHCP-assigned. Recommendation: Oracle supports installations on systems with

  • Downloading and installing Java

    I recently got a new computer with Win XP Pro with SP 2, and I tried to run my old jdk 1.2.1 apps (like appletviewer and javac), but none of them work. For example, if I run "appletviewer drawTest.html" from my command line like I've always done it,

  • Setting Out Of Office from Outlook not working with exchange 2010

    Hi  We have an exchange 2010  server with 2 load balanced CAS server and Mailbox servers in a DAG.  We have a few domain names accepted (will call it firstdomain.com and seconddomain.com)  but only one is in certificate (firstdomain.com). The issue i

  • ISub sub-woofer - what's the name of the driver(s) ?

    The iSub I have doesn't work with my new iMac & OS 10.6.5. Apple doesn't include the drivers required to operate the device - not since OS 10.3.*. My Flat Panel iMac running OS 10.4.11 still operated the device. If I knew what the driver name was, I'