Webi Prompt Order

I am trying to use the Rebean SDK to set the order of prompts in a XI3.1 SP3 Webi document.  This document does contain universe prompts, i.e. a table has a self join with @Prompt().  Looking through the Javadocs, I see a PromptOrder class, but it only seems to be accessible through DataProvider.getPromptOrder().  My goal is to set the prompt order for the document, not the data provider.  Is this possible?

If u have prompts at the universe level then u can follow the below prompt declaration .
In the @prompt declaration at the universe level @Prompt('Enter Product Family','A','Product Hierarchy\Product Family',multi,free,Not_Persistent,{'Kiwi','Guava'},User:0).  In this prompt declaration i had used an additional parameter at the end named User :0; so this will ensure that this will be coming first. But this will work only if you use that user:1 for the other prompt as well. if u do not use user:  definition for all the prompts of that report then it will not work again.

Similar Messages

  • 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

  • Can we toggle the display of Key/Text in Webi prompt?

    Gurus,
    We have a BOBJ 4.0 and BW 7.1 system. We have developed a webi report on top of BW BEx query. We have created 3 variables in BW BEx Query and they appear as prompts in webi. The prompt variables in webi display both the key and text when the list of values are refreshed. The business wants to see the key first and the text later on the webi prompt. I have tried modifying the BEx query to say just 'Key' or 'Key and Text' but none seems to have any effect on webi.
    I have attached the screenshot from our webi prompt which displays all the material text first and the material number (key) next to it. Is there any option of bringing the key first and the text later in the webi prompt? Creating a universe or creating the prompts directly on the webi report is not an option at this time.
    Any help is greatly appreciated! Points will be rewarded!
    Thanks,
    G.

    Hi Nirupa,
    I am sorry if I wasn't clear in my requirement. The requirement is to have the Key display first and then the text next to it. If you see the attached screenshot, in the highlighted area, we have the text first and then the key next to it.
    I tried making many changes to the BEx variable and the BEx Query but this order of text first and key next in the prompts does not seem to change. Is there a way to change this behavior of the webi prompts? Again, all the 3 prompts are created on BEx query designer as variables and there are no variables created on webi.

  • Webi 3.1 - Making Webi Prompts appear on top of the Universe Prompts

    Hi,
    I have a report which uses some of the objects that are coded with @Prompt code  ( CPrmp1, FPrmp2, APrmp3 ...) at the universe level as well as some of the Webi prompts like a dimension Name is dragged into the query filter and is of type prompt.
    When the report is run the prompts appear in the below order -
    APrmp3
    CPrmp1
    FPrmp2
    Name        ( --- > Webi report filter  )
    Also as above the universe level prompts appear in the alphabetically order, but I do not want them to appear in aplhabetically order.
    I want the Name filter to appear first and then all the Universe level prompts below it in the below order -
    Name
    CPrmp1
    FPrmp2
    APrmp3
    Any inputs are appreciated
    Also when the report is open in the web mode i.e html, how can I make the Prompts appear on the left tab, like the Input Controls. I can see the Prompt on the left tab, but if opened on a collegues IE it does not appear and we have to select the Prompt option at the bottom from among the various options. So its there anyy specific setting, I am missing here .
    Thanks for the input's.
    Dipti

    Let meexplain you whole scenario.:
    Refer below snapshot:
    Here i placed report level prompt at the top.
    And once you run this report:
    Ordering has been changed in the report because always  it will take universe prompts first and then report level prompt.
    Resolution : As i meantioned earlier , create two different query in the report.
    Regards,
    Pranay

  • All LOV's for Currency prompt not showing in Webi prompts

    Hello Experts,
    I have a scenario. My BW systems are undergoing upgrade. SO one is on 7.1 and the other on 7.3
    I have Business Objects BI 4.0,SP2 environments on top of both and MDX universes based on top of Bex queries. When i point my universe to BW 7.1 system, all the currency values(#,USD,NSD etc.) in the Currency prompt come up which are shown similar to BW currency prompt values in RSRT.
    When i point the same BOBJ universe to BW 7.3 environment to the same Bex query, some of the currency values at webi prompt level like USD,NZD are missing and dont show up whereas they show as it is in RSRT in the BW prompts.
    Any suggestions or ideas with this ?
    Thanks and regards,
    Abhishek

    HI,
    it doesn't look like an SAP Integration Kit issue to me, but instead an issue in regards to the Business Views. I would suggest you post the question into the Crystal REports forum.
    regards
    Ingo

  • WEBI Prompt [Report Filter] Vs Query Filter

    Universe : OLAP Universe on BW Query BI 7.0 SP 15
    Bobj xi-3.0
    We have a BW variable for Plant on a webi report and if I use it the webi report runs in 10 seconds like BW query
    We have a webi prompt for plant [used to drill down from another report] and when passed with the same plant key as above, the webi report runs in 160 seconds.
    We are not able to use the BW variables a.k.a. yellow query filters for interactive webi reports and we are forced to use webi prompt filters. However, the performance hit is a huge concern.
    Any ideas on improving performance for webi prompt filters?
    Thanks
    Gopal

    Hi,
      If you have many dimensions and some of the are attributes in SAP BW try to convert those attributes in Dimension detail and then build a master data qry for those detals, delete from the data query the dimensions thata are details now and megre both queries.
    I hope this help you.
       Best regards.

  • Timestamp for Week LOV in WebI Prompt Screen

    Hi,
    I have Week Ending Date prompt in my report where I display all the Saturday dates .
    When the report is refreshed, in the prompt screen the week data shows the timestamp as below.
    12/10/2011 12:00:00 AM
    12/3/2011 12:00:00 AM
    11/26/2011 12:00:00 AM
    11/19/2011 12:00:00 AM
    But in the universe, the same LOV does not show any timestamp, only the date is displayed. I tried using Cast(WEEK.WK_DESC as Date) in the universe but still in the WebI the timestamp is coming.
    Also in TD, this week column is defined as Date data type only.
    Can any one please help why this timestamp is coming in the WebI prompt screen and how to remove it?
    Thanks in advance.

    Hi Lavanya
    The sample time stamp 12:00:00am which is coming with the date object LOV in webi even if there is no time stamp in the database, is the default by design behaviour of businessobjetcs.
    You can use formatdate() or Todate() to change the format like dd/mm/yyyy
    And also this below link  will help for universe level
    http://www.forumtopics.com/busobj/viewtopic.php?t=17156
    hope this helps u
    Sunil
    Edited by: K.sunil on Dec 13, 2011 12:27 PM
    Edited by: K.sunil on Dec 13, 2011 12:39 PM

  • Prompt Order when opening Report - And order in List Of Values

    I guess this is a fearly easy question... But I thought easier to ask you guys than struggling all night.
    1 -  I have a report with some prompts.  How do I change the order they appear in ?
    2 - For some List Of Values I have really a strange order. How come ? And What should I do to fix it ?
    Hoping on some good answers in the weekend
    Best Regards
    Ingrid

    Hi Ingrid,
    You can set the "Prompt Order" in "Properties" tab in the Query Panel.
    1.Make sure that you are in the Query Panel.  Make sure that "Edit Query" button is pressed.
    2.Click on the "Properties" tab, just beside "Data" Tab
    3.Scroll down to see the "Prompt Order" option. Select the prompt and use " UP or DOWN" arrows (not the keyboard arrows. Expand the "properties" tab window, if you don't see the arrows) to change the prompt order.
    Thanks,
    Raveendra

  • Adding a new field extension on CRM Order Item tab in the web shop order

    Hi CRM E-Commerce Gurus,
    I want to add a extension field on any web site product such as "zz...." in order to use this data in order's item tab. What shoul I do on J2EE Stack-.jsp method and ABAP Stack at the BADI implementations.
    Could you please help me in order to add a new field extension on CRM Order Item tab in the web shop order ?
    Thanks,
    Kind Regards,
    Fahrettin

    Hi Arshi,
    We have could not find any java action class such as Maintainb2csaveorderaction in config.xml folder and also there is no available threads and clue on SDN, google etc. Therefore we are got stucked on this issue. In SAP_ISA_60 Development and Extension Guide of SAP E-Commerce there is no sample java action class code such as Maintainb2csaveorderaction but some ABAP codes are available for the extension structure.
    Do you suggest any java action class such as Maintainb2csaveorderaction codes like in your B2B scenarios etc.?
    ls_header is a local structure with header data
      ls_extension-ref_guid = ls_header-guid.   
      ls_extension-alt_handle = ls_header-handle.
    extension are name value pairs
      ls_extension-name = u2018Z_CUSTOMER1u2019          u2018 name
      ls_extension-value = ls_header-zcustomer1. u2018 value
      APPEND ls_extension to extension_header_out
    now adding extensions to the items
      LOOP AT lt_items INTO ls_item.
        ls_extension-ref_guid = ls_item-guid.
        ls_extension-alt_handle = ls_item-handle.
        ls_extension-name = u2018Z_CUSTOMER2u2019          u2018name
        ls_extension-value = ls_item-zcustomer2.   u2018value
        APPEND ls_extension to extension_item_out 
      ENDLOOP.
    ls_header is a local structure with header data
      LOOP AT extension_header_in INTO ls_extension.
    check the name to find the according field
          IF ls_extension-name = u2018Z_CUSTOMER1u2019.
            ls_header-zcustomer1 = ls_extension-value.
          ENDIF.
      ENDLOOP.
    sort the extension table by ref_guid and handle to obtain a better access
    with binary search.
      SORT extension_item_in BY ref_guid, alt_handle.
      LOOP AT lt_items INTO ls_item.
    find the starting point for a loop over extensions
    use guid and handle as one logical key to access the extension
        READ TABLE extension_item_in
          WITH KEY ref_guid = ls_item-guid
                   alt_handle = ls_item-handle
                   BINARY SEARCH.
        IF SY-SUBRC = 0.
          LOOP AT extension_item_in INTO ls_extension
            FROM SY-TABIX.
    check, if the entry is relevant
            IF NOT    ls_extension-ref_guid = ls_item-guid
               OR NOT ls_extension-alt_handle = ls_item-handle.
               BREAK.
            ENDIF.  
            IF ls_extension-key = u2018Z_CUSTOMER2u2019.
              ls_item-zcustomer2 = ls_extension-value.
            ENDIF.
          ENDLOOP.
        ENDIF.     
      ENDLOOP.
    Thanks
    Kind Regards,
    Fahrettin

  • Issue with retrieving WebI prompts through VBA SDK

    Hello,
    I am having difficulty retrieving WebI prompt values through my VBA code.  I've noticed that the HasPrompts method works correctly, but when I try to retrieve the actual Prompt name / values, the collection is always empty.
    If (DocumentItem.PluginInterface.hasprompts = True) Then
                    msgbox ("prompts found")
                    msgbox (DocumentItem.PluginInterface.Prompts.Item(1))
                 Else
                    msgbox ("no prompts found")
                 End If
    Any ideas as to why I am never able to see a populated collection of prompts, even when HasPrompts = True ?
    Any ideas appreciated...
    Thanks

    Hi Brian
    It seems that you are having issue with Visual Basic application
    Post your question at the following place:
    Expert Forums » Business Objects SDK Application Development » .NET Development - BusinessObjects Enterprise, BusinessObjects Edge, Crystal Reports Server
    That forum is monitored by qualified technicians and you will get a faster response there. Also, all .NET SDK queries remain in one place and thus can be easily searched in one place.
    Thanks
    Soni

  • My query prompts does not appear in the Query prompt order list!

    Dear colleagues,
    All of my query prompts does not appear in the Query prompt order list in properties of the query. It seems random which of them that appears there and not.
    This makes it impossible for me to control or change the order of prompts, instead they order themselves alphabetically.
    Is this some kind of bug? Is there a fix for this problem?
    Regards
    Silje

    Hi Stratos,
    We use Edge.
    Correction- we use Enterprise, changed a few months ago!
    By the way, we heard about a bug that probarly causes the problem.
    If the query has ever had a prompt containing 'Between', all prompts created afterwards will not appear in the prompt order list! Even if the between-prompt is deleted.. We still havent heard about a fix for this, please contact me if you hear anyting. It is not an option to create all the queries from scratch again!
    Silje
    Edited by: Silje Mari Sunde on Oct 22, 2009 9:24 AM

  • Runtime prompts order in webforms

    Hi,
    i want to know why the runtime prompts order vary to businessrules in webforms, when i'm looking in smartview the order is same for all the brs but when comes to webforms the order is changing though i have fixed the members in the same order in all the business rules.
    the order is very much confusing me.please provide your suggestion to fix this
    thanks in advance

    Hi,
    I'm not entirely about Smartview, it might be ordering the prompts alphabetically or based on dimension orders in the outline. However, you normally set the order within calc manager. Edit the rule and click on "Begin" block and variables tab. Move the variables up and down to set the order. The same applies to aas rules as well.
    Cheers,
    Alp

  • WEBI prompt based on bex variable suppress not assigned hashtag value in LOV

    Hi,
    is it possible to suppress the "Not assigned (#)" value from the list of values in a webi prompt based on a bex variable?
    This "Not assigned" value is something BW specific, BW adds this to each characteristic automatically?!
    WEBI:
    RSRT:
    It needs to work in WEBI, not only in RSRT, and the filtering of data still needs to work.
    For rsrt it works, when you exclude the not assigned value in "Filter > Characteristic Restrictions" and use the bex variable in/through "Filter > Default Values", but this does not work in WEBI, because the BEX Query Data is not filtered on the in the prompt selected value.
    Thanks.
    Regards
    David

    Thanks David for a quick reply !
    I could manage to avoid # values in WebI prompt using BAdI implementation, here is the brief:
    Problem:
    WebI report prompt (which shows BEx variable) list of values shows blanks or # . Rrequirement was to avoid these blanks or #
    Environment:
    BW 7.3
    BO 4.0
    BW Cube > BEx Query > OLAP Connection > WebI report
    Solution:
    InfoObject Level1 in BW had # values in masterdata, this could not be deleted since it was in use with other Cubes.
    Vaurable Var_Level1 displays # when pressed F4 running BEx query and in list of values in WebI report prompt.
    I implemented BAdI on Level1 info object and variable Var_Level1.
    Steps to implement BAdI are as in following link
    BEx Query - Control the values which are shown on F4
    Used following code to elimitate #.
    METHOD IF_RSR_VARIABLE_F4_RESTRICT~GET_RESTRICTION_FLAT.
    DATA: l_s_range     LIKE LINE OF c_t_range.
    DATA: l_var_range   LIKE LINE OF i_t_var_range.
    DATA: IT_MZLEVELS TYPE TABLE OF /BIC/MZLEVELS,
    WA_MZLEVELS LIKE LINE OF IT_MZLEVELS.
    DATA: L_ZLEVEL1     TYPE /BIC/OIZEVEL1.
      IF i_vnam EQ 'ZV_LEVEL1'.
    SELECT /BIC/ZLEVEL1
    FROM /BIC/MZLEVELS
    INTO CORRESPONDING FIELDS OF TABLE IT_MZLEVELS
    WHERE OBJVERS       = 'A'.
    IF SY-SUBRC NE 0.
    EXIT.
    ENDIF.
    SORT IT_MZLEVELS BY /BIC/ZLEVEL1.
    DELETE ADJACENT DUPLICATES FROM IT_MZLEVELS COMPARING /BIC/ZCLV1GP.
    DELETE IT_MZLEVELS WHERE /BIC/ZLEVEL1 = ''.
    l_s_range-iobjnm = i_iobjnm.
    l_s_range-sign   = 'I'.
    l_s_range-option = 'EQ'.
    LOOP AT IT_MZLEVELS INTO WA_MZLEVELS.
    l_s_range-low    =  WA_MZLEVELS-/BIC/ZLEVEL1.
    APPEND l_s_range TO c_t_range.
    ENDLOOP.
    ENDIF.
    ENDMETHOD.

  • BW-Query with hierarchy variable and webi-prompt

    Hi,
    I think I've got a quite simple question.
    I've got a SAP-BW-Query and a hierarchy variable, and some none hierarchy variables.
    All Variables work in the webi-prompt.
    For the none hierarchy variables I've got the chance to search for values in the LOV, but I can't search for
    values in the hierarchies.Can I enable this function to search?
    Kind regards
    Lars

    Hi
    I post the error once again. I made an easier query and i saw that last time the forum did some strange things.
    A database error occured. The database error text is: Die MDX-Abfrage
    SELECT { [Measures].[DC59N8GR349ETCCV3ZHIFFWGC] } ON COLUMNS
    FROM [ZTESTM01/Z_ZTESTM01_TEST5_VARIABLE]
    SAP VARIABLES [!V000002] INCLUDING [0FISCPER].[V62009001]
    konnte nicht ausgeführt werden. Fehler Specify a value for variable
    MMEP_FISCPER. (WIS 10901)
    The query runs perfect in RSRT.
    When i put the statement
    SELECT
    { [Measures].[DC59N8GR349ETCCV3ZHIFFWGC] } ON COLUMNS
    FROM [ZTESTM01/Z_ZTESTM01_TEST5_VARIABLE]
    SAP VARIABLES [!V000002] INCLUDING [0FISCPER].[V62009001]
    in MDXTEST, it gives a result.
    Best regards,
    Florian

  • How to detect how many LOV values user selects on a WEBI Prompt

    Hello Gurus,
    Is there a way to identify how many LOV Values the user selects on a Webi prompt that allows multiple value selection?
    For EG: If I have a webi and there's a prompt called State on the WEBI and the user selects "Utah", "Ohio" and "Texas" from the LOV and runs the query; is there a formula I can use to get the value as 3 (no.of selections)? If that's not possible, is there a way to find out if the user has selected more than 1 value?
    Thanks,
    RC

    Hello,
    From what I know there is no direct way of figuring it out. But here is a little trick.
    Create a variable to capture the user response. Lets call it - State Prompt
    It should display the values like this: Utah;Ohio;Texas
    Next, get the length of the response string by using the length function.
    =Length([State Prompt]). It should give you 15 in our above example.
    Now, create another variable [let's call it - Replaced State Prompt] where you use Replace function, to replace/remove the ";" from the response string.
    =Replace([State Prompt];";";"")
    Next, get the new length of the new response string by using the length function.
    =Length([Replaced State Prompt]). It should give you 13 as it removed two ";".
    Now, do a subtraction and add 1 to get the count.
    Overall it should be something like this-
    =Length(UserResponse("Enter State")) - Length(Replace(UserResponse("Enter State");";";""))+1
    Hope this helps.
    Gaurav

Maybe you are looking for

  • Automatic BD20 execution after creating IDoc

    Hi,   I am working on an inbound IDoc.When I execute my report if the data that I pass for IDoc creation is valid IDOc will be generated .   There is an additional requirement after the creation of IDoc ,the user should be taken to a screen like BD20

  • Printing of Purchase Order

    Hello All, My client has a requirement that Purchase Orders should not be printed till after all Approvals has been done. Please, How do I got about it. URGENT HELP NEEDED.

  • Connection mode between SAP and PI

    Hi Experts, i now have the below question. we know normally there are three ways of connection between SAP ECC and PI. 1. proxy 2. RFC 3. IDoc then what is the connection mode for these three connections? eg. ABAP connection, HTTP connection, TCP/IP

  • Find movie dimensions with Automator?

    I need to go through 300+ mp4 files to determine if their dimensions are correct to be viewed on my AppleTV. Is there a way to: 1. Point Automator to a directory of MP4 files 2. Automator to inspect each file's dimension attribute 3. Automator to com

  • How to uninstall lion 10.7.4

    how to uninstall lion 10.7.4