Oracle Analytics Cloud and Server

Welcome to the Oracle Analytics Community: Please complete your User Profile and upload your Profile Picture

Shuffling values in presentation variable for multiple filters

Received Response
41
Views
11
Comments
Wolfrm
Wolfrm Rank 4 - Community Specialist

Hello,

I'd like to do the following but haven't been successful so far:

I want to create a prompt for searching addresses. The users enter the COUNTRY and STREET.

For the street variable, I would like the user to enter the value any way they like. For example, they should be able to find "Hudson square 5", if they enter "hudson 5" or "5 hudson".

For this I would need to take the value from the STREET variable, split it into several parts, and then run several OR filters with the various combinations, I think.

My problem is I don't know how to manipulate the STREET variable in this way or how to replace the spaces that the users would enter with '%'.

If the way I see this is wrong, and there is a better way to do this please do mention it.

Many thanks!

«1

Answers

  • [Deleted User]
    [Deleted User] Rank 2 - Community Beginner

    Not 100% what you desire but have you had a look at auto-completing prompts already?

    https://docs.oracle.com/cd/E23943_01/bi.1111/e10541/answersconfigset.htm#BIESG3734

  • ae6888f0-bbbc-49f3-ba0b-8a06d5f6301f wrote:
    
     should be able to find "Hudson square 5", if they enter "hudson 5" or "5 hudson".
    
    For this I would need to take the value from the STREET variable, split it into several parts, and then run several OR filters with the various combinations, I think.
    

    Hi,

    This one isn't really something OBIEE can do ...

    Just because the number of pieces in your filter is variable, it's not like if you say that your users will always enter exactly 2 words separated by a space, so to write that filter in an analysis .... well ... good luck (you will have to decide how many "pieces" maximum you want to split the input and code the filters based on that number. Not really dynamic ....

  • Manoj Dixit
    Manoj Dixit Rank 6 - Analytics Lead

    Sorry little curious and do not offer a direct solution. But, aren't they all different addresses? Hudson 5 or 5 Hudson may not be Square, but could be street, road, bay, river, hill, lodge, b&b, corner, villa, mount, etc..

    Would it be a better idea to have two prompts, for example, one for house number and another for a house location and then search for them together or either of the two? So in your example, you search for 5 and Hudson and they could appear anywhere on the address line.

    Just a thought.

    Regards.

    Edit: Would it be a possible idea ....

  • [Deleted User]
    [Deleted User] Rank 2 - Community Beginner

    I think the issue is that people expect anything+dog nowadays to react like google or any other search engine. Hence my idea with the prompt autocomplete since that turns the problem upside down: Help people the most with making a specific selection before even applying that selection as a filter to a query.

  • Manoj Dixit
    Manoj Dixit Rank 6 - Analytics Lead

    Yes, I agree with the above.

  • Wolfrm
    Wolfrm Rank 4 - Community Specialist

    This is true. It might indeed be a better idea to prompt for the country, city, street number and street name separately and then create my own filters. I'm trying to do this now but my next issue is how to ignore those prompt fields that the user leaves blank.

    The database has columns for each of the pieces of info: country, city, postal code, street name, street name 2, street number.

    So, if the user leaves the street # blank, the filter for the street number column should not run. Otherwise, the filter runs selects all records which are not null. Grateful for any help you can offer.

  • It's all about boolean conditions ...

    '@{your_variable}{zz##zz} like 'zz##zz' OR <your original condition>

    If you planned to join all the conditions by OR with that kind of logic the blank will return TRUE and so all blank fields = all data.

    Work around that

  • Wolfrm
    Wolfrm Rank 4 - Community Specialist

    Is there a way for me to actually test if the user entered a value for the presentation variable (at the prompt) before I pass it on to the filter?

    That would make filter logic much simpler, if I could just not use those column filters where the user did not input a value.

  • Not really ....

    It would be UI hacking with JS in all directions and it will be a lot worse than some logic in your filters.

  • [Deleted User]
    [Deleted User] Rank 2 - Community Beginner

    Just force the user to input a value?

    pastedImage_0.png