Count of Prompts in OBIEE11G

Hello Experts,
How to calculate Count of distinct Prompt in OBIEE 11G Application.
Regards,

select count distinct col1 from SA
rest is yours
Btw: try to give more details about your issue if not you may not get any suggestions or else get as above

Similar Messages

  • Hierarchical prompts in OBIEE11g

    Hi,
    I have face a strange behaviour while implementing hierarchical prompt in obiee11g. I am using 11.1.1.6 version.
    I hav 6 levels in my hierarchical prompt, and while previewing the data for column.
    Till 3rd level its dispalying all child values under that parent but at 4th level while clicking sign its displaying a single value and then 'more' which is fine. But clicking 'more' on single click is not fetching me the child values,I have to click 'more' atleast 3-4 times to get the child values ,sometimes that also wont work.
    Note: This works fine in report but having above issue in Dashboard prompt.
    Please help. Are there any settings to make it work?

    If you have this, normally that means that the hierarchy leverl keys are not properly unique and the SQL just goes haywire with the UNIONS as a result.

  • How to disable cache for the Dashbaord Prompt in OBIEE11G

    Hi Friends,
    I have a write back table with column a,b,c,d in the OBIEE. I am using column c as dashboard prompt for this report. I want to by pass the cache for the report as well as Prompt. I followed the following blog
    http://tipsonobiee.blogspot.com/2009/06/step-by-step-to-bypass-all-caches.html
    I was successful in bypassing the report cache...
    Its not working for dashbaord prompt... Let me know if you have any other ways to achieve this.
    Thanks
    Venkat

    Try to convert the prompt as SQL and use the same
    set variable DISABLE_CACHE_HIT=1 followed by your prompt query at 2nd line.
    ex: SET VARIABLE DISABLE_CACHE_HIT=1;SELECT Year FROM Day
    If helps mark
    Edited by: Srini VEERAVALLI on Apr 8, 2013 11:20 AM

  • Seachable field prompt in OBIEE11g

    Hi Frnds,
    i have a inline prompt in my analysis and my req is like
    Ex: i have Countryname as inline prompt in my analysis.
    when user type IN in search field in prompt it should display whichever countryname starts with IN
    like  india
          indiana
    something like this.
    any help is appreciated.
    Thanks,
    Kumar

    Hi frends,
    step1) I have created presentation variable called Prompt and its and text field.
    step2)Default selection % i have given.
    step3)put a filter on that column and select convert this filter to SQL: enter the below formula
                                  =UPPER('Countryname') like upper('@{Prompt}')
    it works fine..

  • Count the number of values selected in a Dashboard prompt

    Hi,
    I have a requirement to show the count of the number of values selected in a Dashboard prompt. How to do that?
    Thanks in advance.

    Hi,
    Please follow below steps;
    1. create a report(which will show the number of value selected)-
    Pull the dimension column in criteria on which the prompt is created, make this column as IS PROMPTED. Edit the FX and put the expresion as; Count(*)2. In report pull narrative view add your custom text like "Number of prompt selected are @1". (@1 is nothing but he count of prompt selected.)
    3. Put this report on the dashboard which has prompt.
    Mark correct/helpful if it helps.
    Regards,
    Kashi
    Edited by: K N Yadav on 28 May, 2013 2:01 AM

  • Help needed in prompt

    Hello,
    I would like to ask 2 questions on prompts in obiee11g.
    I have a dashboard prompt with 3 column prompt
    1->How to allow third column prompt to take value depending upon the first 2 column prompt value.
    i.e. if i selct the value as A in the column prompt then if i select the value as B in the second then
    i wnat the third col prompt to take value depending upon the first 2 column values.
    I know we can select from based on one column prompt but i would like to know how to select from more then one col prompt?
    2->In the same prompt if we want the col prompt to appear in just 2 diff rows.Is it possible if we have around 10 col prompts with one single Apply button.
    Thanks

    Hi,
    1. If you are having three columns and want to filter third column prompt based on first two column prompt then,
    Edit the third column properties in the filter creation window and expand the option properties and check 'Limit Values by'-> Select 'All Prompts'
    2. In OBIEE 11g we are having separation option called 'New Row'. So check the option so that all the prompt column will be displayed in the separate row.
    Hope it helps!
    Regards,
    Pandian

  • Scheduling Webi with Prompts

    Hello,
    I am trying to schedule a Webi report with Prompts through the .NET sdk.  I get the report, set the prompts and then schedule the report.  Unfortunately when i look at the report in InfoView it is not filtered by the parameters.  They show up as instance parameters, but don't seem to have any effect on the report.  When i run the report in InfoView and set the prompts to the same values the report comes out correctly.  I have read several places that I need to Refresh the report, but I don't see any methods that would allow me to do that.  My code is below.  Any help would greatly be appreciated.
    Thanks!
    Pat
    var query = string.Format(@"SELECT SI_ID, SI_NAME, SI_PROCESSINFO FROM CI_INFOOBJECTS WHERE SI_ID=''", reportId);
    infoObjects = _infoStore.Query(query);
    var infoObject = (Webi)infoObjects[1];
    var schedulingInfo = infoObject.SchedulingInfo;
    schedulingInfo.Type = CeScheduleType.ceScheduleTypeOnce;
    schedulingInfo.RightNow = true;
    var formatOptions = infoObject.WebiFormatOptions;
    formatOptions.Format = CeWebiFormat.ceWebiFormatPDF;
    if(infoObject.HasPrompts)
            var prompts = infoObject.Prompts
            for (var i = 0; i < prompts.Count; i++)
                 prompt<i>.Values.Clear();
                 prompt<i>.Values.Add(value);
    _infoStore.Schedule(infoObjects);

    Open WebI using ReportEngine.NET, Refresh, set the prompts, then copy the prompts over to the InfoObject using ReportParameterUtility.PopulateWebiPrompts, then schedule the InfoObject.
    [NET-CS2005_Enterprise_BE12_Schedule_Multi-Value-Parameter-Webi|http://www.sdn.sap.com/irj/scn/index;jsessionid=%28J2EE3417500%29ID1375977850DB21110242120609333586End?rid=/library/uuid/20c5615a-4353-2c10-5986-958a7e074cd3]
    Sincerely,
    Ted Ueda

  • Creation of object in universe to show the count in report

    Hi,
    I am trying to create an object in universe.
    I had a table called projects in which there are projectid and managers and now i want to show in report as below.
    15 PMu2019s assigned to 1-3 Projects
    10 PMu2019s assigned to 4 Projects
    20 PMu2019s assigned to > 5 Projects
    The count of managers assigned to the number of projects. Could any one pls explain in detail how i can do this in universe.
    Thanks,
    Eswar

    Hi,
    Here is the syntax:
    SELECT CAST(SUM(a.nb_Mgr) AS VARCHAR) + ' Managers: 1-2 projects' as Nb_Mgr FROM  
    (SELECT Count(distinct Manager) as nb_Mgr from ISL.dbo.Projects group by Manager having count(Project) <= 2) a
    UNION
    SELECT CAST(SUM(a.nb_Mgr) AS VARCHAR) + ' Managers: 3-5 projects' FROM  
    (SELECT Count(distinct Manager) as nb_Mgr from ISL.dbo.Projects group by Manager having count(Project) > 2 and count(Project) <= 5) a
    UNION
    SELECT CAST(SUM(a.nb_Mgr) AS VARCHAR) + ' Managers: > 5 projects' FROM  
    (SELECT Count(distinct Manager) as nb_Mgr from ISL.dbo.Projects group by Manager having count(Project) > 5) a
    By the way you can create a more sophisticated derived table that let users choosing tha values for the number of projects:
    SELECT CAST(SUM(a.nb_Mgr) AS VARCHAR) + ' Managers < ' + @Prompt('Min threshold','A',,mono,free) +  ' projects' as Nb_Mgr FROM  
    (SELECT Count(distinct Manager) as nb_Mgr from ISL.dbo.Projects group by Manager having count(Project) < @Prompt('Min threshold','N',,mono,free)) a
    UNION
    SELECT CAST(SUM(a.nb_Mgr) AS VARCHAR) + ' Managers between ' + @Prompt('Min threshold','A',,mono,free) + ' and '  + @Prompt('Max threshold','A',,mono,free) +   ' projects' FROM  
    (SELECT Count(distinct Manager) as nb_Mgr from ISL.dbo.Projects group by Manager having count(Project) >= @Prompt('Min threshold','N',,mono,free) and count(Project) <= @Prompt('Max threshold','N',,mono,free)) a
    UNION
    SELECT CAST(SUM(a.nb_Mgr) AS VARCHAR) + ' Managers > '  + @Prompt('Max threshold','A',,mono,free) +  ' projects' FROM  
    (SELECT Count(distinct Manager) as nb_Mgr from ISL.dbo.Projects group by Manager having count(Project) > @Prompt('Max threshold','N',,mono,free)) a
    Regards
    Didier

  • How to set values to unniverse prompts through java

    Hi
    I am using JAVA -BOSDK to access reports from infoview. I have a problem when any universe level prompt is present in the report. I am able to retrieve it through java when i say documentInstance.getPrompts() and when i set values to this prompt by Prompt.enterValues(String[] parameters) and then either save the report or saveAs another report , my new values dont get applied to the prompt. Only previous values get applied to the prompt. I checked doing prompt.getPreviousValues and prompt.getCurrentValues but when i save the doc then new values are not set.
    here is a part of code iam using: the filterlist contains the ConditionFilterDataItems objects which contain the operands,operator and queryObjectName .I have added multiple prompt.getPrevious and current values for debug purpose.
    private static void applyValuesToUniversePrompt( final DocumentInstance doc, final List filterList )
            final DataProviders dps = doc.getDataProviders() ;
            final DataProvider dataProvider = dps.getItem( 0 ) ;
            final Query query = dataProvider.getQuery() ;
            Prompts newPrompts = doc.getPrompts();
            Prompt newprompt = newPrompts.getItem( 0 );
            newprompt.getPreviousValues();
            newprompt.getCurrentValues();
            final ConditionContainer conditioncont = (OMConditionContainer) query.getCondition() ;
            ConditionFilterDataItem conditionFilterDataItem = null ;
            final Map promptMap = generateInstanceMap( doc ) ;
            //Prompt [] promptArr ;
            for( int i = 0 ; i < filterList.size() ; i++ )
                conditionFilterDataItem = (ConditionFilterDataItem) filterList.get( i ) ;
                final String [] operands = conditionFilterDataItem.getFilterOperand() ;
                PromptsImpl univPrompts = (PromptsImpl)doc.getPrompts();
                Prompt [] promptArr = new Prompt[univPrompts.getCount()];
                for(int k= 0;k< univPrompts.getCount();k++)
                     promptArr[k] =(Prompt) univPrompts.getItem( k );
                if(univPrompts.getCount()==0)
                    promptArr=null;
              if(promptArr!=null)
                for( int j = 0 ; j < promptArr.length ; j++ )
                    final Prompt prompt = promptArr [j] ;
                    final String promptName = prompt.getName() ;
                    final Prompt currentPrompt = (Prompt) promptMap.get( promptName ) ;
                    if( operands [j] != null )
                        currentPrompt.getPreviousValues();
                        currentPrompt.getCurrentValues();
                        currentPrompt.removeValues( currentPrompt.getPreviousValues() );
                        currentPrompt.enterValues( convertStringToArray( operands [j] ) ) ;
                        currentPrompt.getPreviousValues();
                        currentPrompt.getCurrentValues();
                        doc.setPrompts();
                        newPrompts = doc.getPrompts();
                        newprompt = newPrompts.getItem( 0 );
                        newprompt.getPreviousValues();
                        newprompt.getCurrentValues();
            //doc.setPrompts() ;
            doc.refresh();
            doc.save();
            newPrompts = doc.getPrompts();
            newprompt = newPrompts.getItem( 0 );
            newprompt.getPreviousValues();
            newprompt.getCurrentValues();
           // dataProvider.runQuery() ;
            doc.refresh();
            doc.saveAs( "universePrompt2",7148,null,null ) ;
             doc.closeDocument() ;
    private static Map generateInstanceMap( final DocumentInstance document )
            final Map promptMap = new HashMap() ;
            final Prompts prompts = document.getPrompts() ;
            int count ;
            if( prompts != null )
                count = prompts.getCount() ;
                for( int i = 0 ; i < count ; i++ )
                    final Prompt prompt = prompts.getItem( i ) ;
                    promptMap.put( prompt.getName(), prompt ) ;
            return promptMap ;

    Hi Shruti,
    Can U kindly refer this [thread|BusinessObjects Enterprise Java Software Development Kit (SDK) ??; and reply back.
    Would appreciate your efforts !!!

  • Multiple values in prompt not working..

    I am able to create prompts using Java/ BO-SDK and i am also able to set values to these prompts; but the values in the report in Infoview are not getting refreshed. for e.g if a single value for city prompt is entered the code works fine but if i set multiple ";" separated values to this city prompt the values are not getting refreshed.
    Here is my code for prompts:
    function to set filter conditions
    public static void setFilterConditions ( final DocumentInstance doc,final List<ConditionFilterDataItem> filterList )
            final DataProviders dps = doc.getDataProviders();
            final DataProvider dp = dps.getItem(0);
            final Query q = dp.getQuery();
            ConditionContainer conditioncont = (OMConditionContainer)q.getCondition();
            if(conditioncont!=null)
                 conditioncont.removeAllChildren();
                   createPrompt(doc, filterList);
                 applyValuesToPrompt(doc, filterList);
              doc.setPrompts();
              dp.runQuery ();
              doc.refresh();
    function to create prompts.
    public static void createPrompt( final DocumentInstance doc,final List<ConditionFilterDataItem> filterList)
            System.out.println("Inside create Prompt method ");
            final ReportDictionary reportDict = doc.getDictionary();
            final DataProviders dps = doc.getDataProviders();
            final DataProvider dp = dps.getItem(0);
            final Query q = dp.getQuery();
            ConditionContainer conditioncont = (OMConditionContainer)q.getCondition();
            ConditionFilterDataItem conditionFilterDataItem = null;
            conditioncont = q.createCondition(LogicalOperator.AND);
              for(int i=0;i<filterList.size ();i++)
                      conditionFilterDataItem = filterList.get ( i );
                      final String[] operands =  conditionFilterDataItem.getFilterOperand ();
                      final ReportExpression reportExpression = reportDict.getChild
                            ( reportDict.getChildByName ( conditionFilterDataItem.getQueryObject ()).getID () );
                      final String objectName = conditionFilterDataItem.getQueryObject();
                      final DataSourceObject dataSourceObject = reportExpression.getDataSourceObject ();
                      ConditionObject conditionObject = null;
                      conditionObject = conditioncont.createConditionObject ( dataSourceObject );
                      final FilterCondition fc = conditionObject.createFilterCondition
                            (Operator.fromInt ( conditionFilterDataItem.getOperator ()-1));
                      ConditionPrompt condPrompt = fc.createConditionPrompt("Enter value of "+objectName+":");
                      condPrompt.setConstrained(false);
                      condPrompt.setMonoValue(false);
                      System.out.println("Prompt created for object name ::"+objectName);
                     if( operands.length > 1 && operands[1]!=null)
                          ConditionPrompt secondPrompt = fc.createConditionPrompt("Enter another value of "+objectName+":");
                          secondPrompt.setConstrained(false);
                          secondPrompt.setMonoValue(false);
                          System.out.println("Another Prompt created for object name ::"+objectName);
                      doc.applyFormat();
                 dp.runQuery();
                  doc.refresh();
                  doc.save();  
    function to set values to prompt
    public static void applyValuesToPrompt(final DocumentInstance doc,final List<ConditionFilterDataItem> filterList)
            final DataProviders dps = doc.getDataProviders();
            final DataProvider dp = dps.getItem(0);
            final Query q = dp.getQuery();
            ConditionContainer conditioncont = (OMConditionContainer)q.getCondition();
            ConditionFilterDataItem conditionFilterDataItem = null;
            Map promptMap = generateInstanceMap(doc);
            OMFilterPrompt[] promptArr;
            if(filterList.size()==conditioncont.getChildCount())
                      System.out.println("conditioncont.getChildCount() "+conditioncont.getChildCount());
                      for(int i=0;i<filterList.size();i++)
                           System.out.println("FilterLsit size is "+filterList.size());
                           System.out.println("current value of i is "+i);
                                conditionFilterDataItem = filterList.get ( i );
                            final OMFilterSimple filter = (OMFilterSimple)conditioncont.getChildAt(i);
                            System.out.println( conditionFilterDataItem.getOperator ()+"  conditionFilterDataItem.getOperator ()");
                               System.out.println(conditionFilterDataItem.getQueryObject()+" conditionFilterDataItem.getQueryObject()");
                            final String[] operands = conditionFilterDataItem.getFilterOperand();
                            System.out.println("operands for "+conditionFilterDataItem.getQueryObject()+" is "+operands.length);
                            System.out.println(filter.getID());
                            promptArr=filter.findPrompts();
                               for(int j=0;j<promptArr.length;j++)
                                    OMFilterPrompt prompt= promptArr[j];
                                    System.out.println(prompt.getDisplayName());
                                    String promptName=prompt.getDisplayName();
                                    Prompt currentPrompt = (Prompt)promptMap.get(promptName);
                                    if(operands[j]!=null)
                                    currentPrompt.enterValues(convertStringToArray(operands[j]));
                                    System.out.println("value set is ::"+operands[j]);
              doc.setPrompts();        
              //dp.runQuery ();
              doc.refresh();
        * Converts String to a string array.
        * @param values -
        *            string to be converted.
        * @return - String Array
       private static String[] convertStringToArray(String values) {
           StringTokenizer promptval = new StringTokenizer(values, "=");
           int loop = 0;
           int size = promptval.countTokens();
           String[] newArr = new String[size];
           while (promptval.hasMoreTokens()) {
               newArr[loop++] = new String(promptval.nextElement().toString()
                       .trim());
           return newArr;
    function to create map for prompts
      private static Map generateInstanceMap(DocumentInstance document)
            Map<String, Prompt> promptMap = new HashMap<String,Prompt>();
            Prompts prompts = document.getPrompts();
            int count;
            if(prompts!=null)
                 count= prompts.getCount();
                 for(int i=0;i<count;i++)
                      Prompt prompt= prompts.getItem(i);
                      promptMap.put(prompt.getName(),prompt);
            return promptMap;
    i first remove all filter conditions the create prompts and then sets values to these prompts.
    the values are set correctly to the report when viewed in Infoview but the values are not refreshed ; so i see a blank report.
    Can anyone help with a code snippet at the earliest.

    All replies so far have focused on solving multiple form issues. I have no problem with multiple forms per page but exactly like the original poster I can not get my h:commandLinks to work when embedded in a h:datatable.
    I have command buttons before and after the data table working great, but for whatever reason command links just do a post back to the backing bean.
    At this point I am not even trying to process data, just verify the action method is being executed.
    Another item of note, the links will always post to the same bean regardless of what bean is referenced in action="...."
    Any ideas?
    Message was edited by:
    jasontc
    It appears once the page is rendered for the first time any future rendering will display the link(s) but the link(s) will be junk.
    I ran a test with a pre populated ArrayList for my datatable, link worked. I then reload the datatable with a different ArrayList and the link is still referencing the original item in the list. So the action method I want to call is called but the .getRowData is incorrect. In addition of the number of items in my list grows the links become junk beyond the original size of the list.

  • About Check box Prompt in OBIEE 11g

    Hi All,
    I really wonder about strange behaviour of check box prompt in OBIEE11g.
    I have created a check box prompt and associate it with my report. Now when i tried to view result with select any of check box, report run properly, But when i deselect check box and re run report, the check box automatically select again and result of report filtered.
    Any one have any Idea about this, as this seems a BUG in OBIEE11g...
    Many Thanks.

    Hi Archie,
    Are you saying, when you deselect a prompt and try to run the report, it still selects the prompts from the first selection and filters the same again?
    -Amith.

  • Quick question about my output

    I am trying to write a project to calculate 5 birthdays. There are no errors and it calclates the first 4 birthdays fine but when i type in the 5 birthday it comes up with the wrong birthday. Or if i enter the same brithday 5 times it come up wrong
    here are the bdays i have to enter
    1/1/90, 9/25/90, 9/30/90, 10/15/90, 11/1/90
    thanks in advance
    package cmpproject2;
    import chapter2.MyInput;
    public class Project2Class
    public static void main(String[] args)
    { //declare variables
    int year, myyear, month, mymonth, day, myday, age, count, otherbdays;
    //prompt user to enter today's year
    System.out.println("Please enter today's year: example 2002");
    year = MyInput.readInt();
    if(year < 1)
    System.out.println("invalid year, please enter a positive number");
    year = MyInput.readInt();
    //prompt user to enter today's month
    System.out.println("Please enter today's month example 1-12");
    month = MyInput.readInt();
    if(month < 1 || month > 12)
    System.out.println("invalid month, please enter again(1 to 12)");
    month = MyInput.readInt();
    //prompt user to enter today's day
    System.out.println("Please enter today's day");
    day = MyInput.readInt();
    if (day < 1 || day > 31)
    System.out.println("Please enter again (1 to 31)");
    day = MyInput.readInt();
    //ask how many birthdays
    System.out.println("Enter # of birthdays you wish to calculate");
    otherbdays=MyInput.readInt();
    count=0;
    while(count<otherbdays)//this will loop once for each bday
    //prompt user to enter your birthday's year
    System.out.println("Please enter your birthday's year example yyyy");
    myyear = MyInput.readInt();
    if(myyear < 1)
    System.out.println("invalid year, please enter a positive number");
    myyear = MyInput.readInt();
    //prompt user to enter your birthday's month
    System.out.println("Please enter your birthday's month");
    mymonth = MyInput.readInt();
    if(mymonth < 1 || mymonth > 12)
    System.out.println("invalid month, please enter again(1 to 12)");
    mymonth = MyInput.readInt();
    //prompt user to enter your birthday's day
    System.out.println("Please enter your birthday's day # 1-31");
    myday = MyInput.readInt();
    if (myday < 1 || myday > 31)
    System.out.println("Please enter again (1 to 31)");
    myday = MyInput.readInt();
    if (myday > day)
    month = month - 1;
    if (mymonth > month)
    year = year -1;
    //calculate the user age
    age = year - myyear;
    //Display results
    System.out.println(" Your age is: " + age);
    //get next bday
    count++;
    System.out.println();
    System.out.println("Programmer: Brian Jacoviello");
    }//end main method
    }//end Project2

    I compiled your program and tested it, heres all in and output:
    Please enter today's year: example 2002
    2002
    Please enter today's month example 1-12
    10
    Please enter today's day
    15
    Enter # of birthdays you wish to calculate
    5
    Please enter your birthday's year example yyyy
    1990
    Please enter your birthday's month
    1
    Please enter your birthday's day # 1-31
    1
    Your age is: 12
    Please enter your birthday's year example yyyy
    1990
    Please enter your birthday's month
    9
    Please enter your birthday's day # 1-31
    25
    Your age is: 12
    Please enter your birthday's year example yyyy
    1990
    Please enter your birthday's month
    9
    Please enter your birthday's day # 1-31
    30
    Your age is: 11
    Please enter your birthday's year example yyyy
    1990
    Please enter your birthday's month
    10
    Please enter your birthday's day # 1-31
    15
    Your age is: 10
    Please enter your birthday's year example yyyy
    1990
    Please enter your birthday's month
    11
    Please enter your birthday's day # 1-31
    1
    Your age is: 9
    Programmer: Brian Jacoviello
    So, the error isn't that hard to find. Look at this:
    if (myday > day)
    month = month - 1;
    if (mymonth > month)
    year = year -1;You change the current date. Your first birthday is always correct, but what happens if you first type in 9/25/90 and after that 10/15/90?
    The first if statement is true, because 25>15 so you decrease the current date by one. The age for the first birthday is correct, but now you type in the second (10/15/90) I can assure you that a guy with this birthday is exactly 12 years old!
    But remember, you decreased the month of the current date by 1, so the variable month holds the value 9 (10-1). Now the second if statement is true, and the year of the date is decreased by 1. So your program would show an age of 11.
    It's really simple to correct the mistake just concentrate on these lines:
    if (myday > day)
    month = month - 1;
    if (mymonth > month)
    year = year -1;If you can't correct it post again, you will get more help.

  • Is there a way to communicate with a GPIB device and receive the response?

    Does anyone know if there's a function that I can use to issue a command to an instrument such as a query on its status and receive its response. I've tried GPIB Write, but it just writes the command and doesn't receive the automatic response. If I use a GPIB Read right after the GPIB Write, it doesn't work! I think I'm looking for a function that sends the command to the GPIB device and then waits for the response and is capable of outputing it. Thanks for any help!
    - Jon

    I know what commands to send, I just don't know what function or vi or whatever in LabView to use in order to receive the response right after I send the command. For instance, I want to know what count the counter is currently on, and so I send the command "NN" to the counter, which tells me what count it's currently counting on. I can send the command, I just don't know how to retrieve the information of what count it's on because I don't know how to send a command and receive the response that the counter is prompted to send immediately after. Thanks for the help though!
    - Jon

  • "esbapin" function in Excel Macro stopped working in essbase 11 plugin

    Hello All,
    We have an excel file with essbase macros that has been working fine in office 2007/essbase 7 client environment. We recently upgraded to essbase 11 and the file started crashing.
    Here is the line where it is crashing.
    Function EssbaseConnectAPI(strUserName As String, strPassword As String, strServer As String, _
    strApplication As String, strDatabase As String) As Boolean
    '## Function to log into Essbase server using API. Part of port cueing routine. Pass in username, password, server, _
    application and database. If first login, API function ESBInit is called to create a context handle. Using context _
    handle EsbAutoLogin is called. Return value on 0 is successful, other values unsuccessful. Error codes 1051027 and 1051080 _
    are trapped to allow port cueing until port frees up. Defined counter to prompt user if port congestion is extreme. Failure _
    returns a long integer. ##
    On Error GoTo errH
    Dim Init As ESB_INIT_T
    Dim intpAccess As Integer
    Dim intCounter As Integer
    Dim intResponse As Integer
    Dim intMultiplier As Integer
    Dim intRetryCounter As Integer
    intRetryCounter = ListVars.Range("LoginRetryCounter").Value
    If blnNew = True Then
    lngSts = EsbInit(Init, lngHInst)
    If lngSts = 1051027 Then lngSts = 0
    If lngSts <> 0 Then GoTo errH
    ListVars.Range("APIInst").Value = lngHInst
    End If
    lngHInst = ListVars.Range("APIInst").Value
    RetryLogin:
    lngSts = EsbAutoLogin(lngHInst, strServer, strUserName, strPassword, strApplication, strDatabase, ESBAUTO_NODIALOG, intpAccess, lnghCtx) _*
    If lngSts = 1051080 Or lngSts = 1051027 Then
    intCounter = intCounter + 1
    If intCounter = intRetryCounter Then
    application.ScreenUpdating = True
    intResponse = MsgBox("System is temporarily busy, Retry?", vbYesNo)
    If intResponse = vbYes Then
    intMultiplier = intMultiplier + 1
    intCounter = 1
    GoTo RetryLogin
    Else
    GoTo errH
    End If
    End If
    application.StatusBar = "Login Atttempted " & (intCounter + 1) + intRetryCounter * (intMultiplier) & " Times"
    GoTo RetryLogin
    ElseIf lngSts <> 0 Then GoTo errH
    MsgBox "Connection Failed", vbOKOnly
    GoTo errH
    End If
    application.StatusBar = ""
    EssbaseConnectAPI = True
    Exit Function
    errH:
    application.StatusBar = ""
    frmLogin.tbPassword.Text = ""
    frmLogin.tbPassword.SetFocus
    End Function
    The function "esbautologin" is delcared as:
    Declare Function EsbAutoLogin Lib "esbapin" (ByVal hInst As Long, ByVal Server As String, ByVal User As String, ByVal Password As String, ByVal AppName As String, ByVal DbName As String, ByVal opt As Integer, pAccess As Integer, phCtx As Long) As Long
    Edited by: user8762894 on Nov 16, 2009 1:39 PM
    Edited by: user8762894 on Nov 16, 2009 5:04 PM

    Just wondering if you have updated the Function definitions found in the esb32.bas file (found in Hyperion\products\essbase\essbaseclient\api\include)? if the definitions are wrong or you have the wrong version it is likely to crash

  • Applications / Security Group Membership

    I have a few tasks i would like to automate in my task sequence on MDT 2010 update 1. Any feedback or recomendations would be helpful...
    Applications
    I have a set of applications which are common to both laptops and desktops. These are deployed using an application bundle. I would like to be able, to do one of two things
    Have the ability to choose additional application as part of the wizard
    If possible, have MDT detect the machine is a laptop, either by WMI or computer name (all laptop names end with the letter "L"), and deploy a set of applications if these conditions are met
    Security Groups
    We also have a couple of security groups that desktops and laptop needs to be a member of, this is currently a manual task and therefor prone to be missed. As above, is it possible for MDT to recognice the machine is a laptop or desktop then add the computer
    account to a pre determined list of security groups

    Thanks for the feedback, i got this working with a power shell script that adds the computer account to specified security groups then use "
    PS Script as follows :-
    Run as follows :- powershell.exe -executionPolicy RemoteSigned "%SCRIPTROOT%\ADSecurityGroupAdd.ps1 "[security group name to add machine account to]""
    # Function Find Distinguished Name
    function find-dn { param([string]$adfindtype, [string]$cName)
        # Create A New ADSI Call
        $root = [ADSI]''
        # Create a New DirectorySearcher Object
        $searcher = new-object System.DirectoryServices.DirectorySearcher($root)
        # Set the filter to search for a specific CNAME
        $searcher.filter = "(&(objectClass=$adfindtype) (CN=$cName))"
        # Set results in $adfind variable
        $adfind = $searcher.findall()
        # If Search has Multiple Answers
        if ($adfind.count -gt 1) {
            $count = 0
            foreach($i in $adfind)
                # Write Answers On Screen
                write-host $count ": " $i.path
                $count += 1
            # Prompt User For Selection
            $selection = Read-Host "Please select item: "
            # Return the Selection
            return $adfind[$selection].path
        # Return The Answer
        return $adfind[0].path
    $GroupName = $args[0]
    #write-host $GroupName
    $Computer = get-wmiobject win32_computersystem
    $ComputerDN = find-dn "computer" $Computer.name
    $ADSecGroupDN = find-dn "group" $GroupName
    #write-host $computerdn
    #write-host $ADSecGroupDN
    $Group = [ADSI]($ADSecGroupDN)
    $Group.Add($ComputerDN)
    #Members = $Group.member
    #Group.member = $Members+$ComputerDN
    $Group.Setinfo()

Maybe you are looking for

  • Windows Server 2012 Essentials Connection Software not working

    This comes in response to a ticket I got great help from a user on but I'm still stuck on the connection software bit. Original Thread: http://social.technet.microsoft.com/Forums/windowsserver/en-US/0a7e6d91-98c7-42f2-9cdd-66117df91d76/win-2012-essen

  • Acrobat X Pro suddenly no Adobe PDF printer available within applications

    I have been using X Pro for 2 months following installation of CS5.5 Premium. I used to be able to print-to-file using the Adobe PDF printer in the print dialog box from within apps such as Word and Finale. Suddenly that option is absent from my prin

  • Printing in InDesign CS5

    I just purchased CS5 for my Windows 7 computer and am printing for the first time to my Epson RX595 printer.  I go into the print settings in InDesign and go to the printer settings to select Best Photo.  When I say OK, go out of the printer settings

  • A Portal Application IView (again)

    Hi! This Portal Application 'create' an HTML document with a Form: this Form may contain 1 or 2 Tables. IPageContext context = PageContextFactory.createPageContext(request, response); Form form = context.createFormDocument("xxxxxxxxxxxxx"); FormLayou

  • Re: Runing Forte Runtime Clients using a Firewall

    Kamran, There is an environment variable, FORTE_LOCATIONS, that controls which port a partition connects over. David ----Original Message Follows---- Has anybody had to deal with have Forte runtime clients use a firewall? Who did you configure the fi