Query values in Multi Select form field

I have a table and one of the fields is a multiple select box. It is currently working fine
What I now need to do is create a report based on the individual elements in that field: (This report will really just do a count of the events for ownership purposes)
Example:
Table simplified:
Name     | Teams Involved
One     | TeamA:TeamB:TeamC:TeamD
Two | TeamC
Three | TeamB:TeamD
Four | TeamA:TeamD
Five | TeamD
Six | TeamA
Seven | TeamA
Eight | TeamB
The Teams Involved are populated from a Multiple Select LOV so the Data will always remain constant in spelling etc...
TeamA
TeamB
TeamC
TeamD
I am trying to create a report that will show me the number of times a team is selected in the Teams Involved column and the results would look like:
TeamA 4
TeamB 3
TeamC 2
TeamD 4
I am not very good with PL/SQL but assuming I might need to do a foreach loop type using the values in the LOV and the LIKE %LOVVALUE% but just not really sure
any assistance would be appreciated.
Thanks in advance
wfsteadman

As Prabodh pointed out, I'm placing a colon at the beginning and end of the value list before doing the LIKE, so every value in the list is guaranteed to have a colon before and after it.
Of course, this could be a performance issue if your dataset becomes large--you're not going to be able to use an index on this column--in which case you'll want to go to a more normalized solution (a table for your teams, a table for your projects [or whatever], and a reference table in the middle), but then you'll need to worry about parsing your multi-select values via a view with an instead of insert trigger. I do this on my blog for assigning tags to posts; it's not difficult, but APEX--for whatever reason--doesn't expose triggers on views as easily as on tables.
-David

Similar Messages

  • How to maintain state in multi select form. ( ASP classic )

    I have a mutli select form fields e.g.:
    <select name="Location" multiple="multiple" >
    <option value="8">Anglesey</option>
    <option value="11">Cheshire</option>
    <option value="5">Conwy</option>
    </select>
    say i select the first 2 of the 3 options and submit my page
    e.g. :
    mypage.asp?Location=8&Location=11
    how would i then set the state of the options to selected
    e.g. :
    <option value="8"
    selected="selected">Anglesey</option>
    <option value="11"
    selected="selected">Cheshire</option>
    <option value="5">Conwy</option>
    help and suggestions appreciated

    Hi Arvind, your best bet might be to pass the filter value via a QueryString and then apply a QueryString filter to those other pages. Overview of QueryString Filters:
    http://office.microsoft.com/en-us/sharepoint-server-help/connect-a-query-string-url-filter-web-part-to-another-web-part-HA010250999.aspx (I know it's for 2007, but the same applies to 2013).
    Dimitri Ayrapetov (MCSE: SharePoint)

  • Get all values from multi select in a servlet

    Hello,
    I have a multi <select> element in a HTML form and I need to retrieve the values of ALL selected options of this <select> element in a servlet.
    HTML code snippet
    <select name="elName" id="elName" multiple="multiple">
    Servlet code snippet
    response.setContentType("text/html");
    PrintWriter out = null;
    out = response.getWriter();
    String output = "";
    String[] str = request.getParameterValues("elName");
    for(String s : str) {
    output += s + ":";
    output = output.substring(0, output.length()-1); // cut off last deliminator
    out.println(output);But even when selecting multiple options, the returned text only ever contains the value of the first selected option in the <select>
    What am I doing wrong? I'm fairly new to servlets
    Edited by: Irish_Fred on Feb 4, 2010 12:43 PM
    Edited by: Irish_Fred on Feb 4, 2010 12:44 PM
    Edited by: Irish_Fred on Feb 4, 2010 2:14 PM
    Edited by: Irish_Fred on Feb 4, 2010 2:26 PM
    Edited by: Irish_Fred on Feb 4, 2010 2:26 PM
    Edited by: Irish_Fred on Feb 4, 2010 2:32 PM

    I am using AJAX.
    I will show you how I'm submitting the <select> values by showing you the flow of code:
    This is the HTML code for the <select> tag and the button that sends the form data:
    <form name="formMain" id="formMain" method="POST">
         <input type="button" id="addOpts" name="addOpts" value="Add Options" style="width:auto; visibility:hidden" onClick="jsObj.addOptions('servletName', document.getElementById('elName'))">
         <br>
         <select name="elName" id="elName" multiple="multiple" size="1" onChange="jsObj.checkSelected()">
              <option value="0"> - - - - - - - - - - - - - - - - </option>
         </select>
    </form>Note that the "visibility:hidden" part of the button style is set to "visible" when at least one option is selected
    Note that "jsObj" relates to a java script object that has been created when the web app starts ( The .js file is included in the .jsp <head> tag )
    The following code is taken from the file: "jsObj.js"
    jsObj = new jsObj();
    function jsObj() {
    //=================================================
         this.addOptions = function(url, elName) {
              var theForm = document.getElementById('formMain');          
              if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
                   xmlhttp=new XMLHttpRequest();
              } else { // code for IE6, IE5
                   xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
              url += this.buildQueryString(theForm.name);
              xmlhttp.open("POST",url,true);
              xmlhttp.send(null);
              xmlhttp.onreadystatechange=function() {
                   if(xmlhttp.readyState==4) { // 4 = The request is complete
                        alert(xmlhttp.responseText);
    //=================================================
    this.buildQueryString = function(formName) {
              var theForm = document.forms[formName];
              var qs = '';
              for (var i=0; i<theForm.elements.length; i++) {
                   if (theForm.elements.name!='') {
                        qs+=(qs=='')? '?' : '&';
                        qs+=theForm.elements[i].name+'='+escape(theForm.elements[i].value);
              return qs;
         //=================================================
    }And this is a code snippet from the "servletName" servlet:public synchronized void doGet(HttpServletRequest request,
              HttpServletResponse response) throws ServletException,IOException {
              PrintWriter out = null;
              try {
                   response.setContentType("text/html");
                   out = response.getWriter();
                   String output = "";
                   String[] values = request.getParameterValues("elName");
                   for(String s : values) {
                        output += s + ":";
                   output = output.substring(0, output.length()-1); // cut off last delimitor
                   out.println(output);
                   } catch (Exception e) {
         }So anyway, everthing compiles / works, except for the fact that I'm only getting back the first selected <option> in the 'elName' <select> tag whenever I select multiple options
    Edited by: Irish_Fred on Feb 7, 2010 10:53 AM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Multi select date field

    Hi,
    Is there any idea how to combine multi select DATE field in the check-in screen?
    Thanks, eran.

    Dates are stored using a DATE field in the database in a database date format. As such, multiple values can not be stored in the same field, only single values.
    What's the use case?

  • How to Select More then 1000 values in Multi-Select prompt!!!

    Hello Users,
    I have Scenario where i have to pass all the values from prompt to report and the values in the prompt are coming from session variable, so whatever value access user has the report will run with that only...
    Now the question is that Multi-Select Prompt is not able to take more then certain values, so is there any way that we can increase the limit for selected values??
    in-short how to increase the limit for selected values in multi-select prompt??
    Thanks In Advance!!!

    Hey David,
    The Scenario is like, we have data level security on "Unit" attribute. now based on the user selection when user logs in he should able to see the report only for those units which he/she has access.
    in total we have 1800 units available, now for 5-10 units access is fine, but the question will arise when user will not have only some units access from 1800 units.
    because report will not take those values from the multi-select prompt reason is that multi-select prompt is not able to take more then certain values in selected side.
    now in multi-select until-unless u have data coming in selected side those values will not pass. so i have kept the sql in default for that prompt.
    so when user logs in he will able to see those values in selected side for the multi-select prompt, but when values increase from some level it's going automatically in un-selected side.
    i want everything on selected side of multi-select prompt.
    Let me know if you need any further details.

  • Show selected value from multi-selected parameter in crystal report

    Dear Experts!
         i would like to ask how to catch selected value from multi-selected parameter to show in report header section.
    Thanks in advance.

    Hi Dara,
    If this is a string prompt then you could simply create a formula with this code and place it on the report header:
    Join({?Prompt name},", ")
    -Abhilash

  • Limitation for values in Multi Select in prompts?

    Hi all...I have a dashboard with a report and a prompt .
    I have multi select enabled in prompt. I defaulted that prompt to a single value.
    I have 1700 values in multi select. The user wants to select all. When user selected all and hit GO on prompt,
    it is not taking all values but still getting defaulted value output of report.
    How do I fix this?

    Try doing this. Instead of using a dashboard prompt, do this:
    1) Add a pivot table to your Compound Layout view (if you already have one, then just modify it as follows.)
    2) Duplicate the layer of the "prompt" column and put it in the Pages section.
    3) Left click the "sigma sign" in the Pages section of the pivot table and select either "Before" or "After." This will add the "All Pages" option either "before" or "after" the individual values. I recommend "Before" since you have 1700 values.
    4) Once more, left click the "sigma sign" in the Pages section of the pivot table, but this time, select "Format Labels." Now you can rename "All Pages" to "All Choices" or whatever you want to call it.

  • Filtering a sharepoint 2010 list using Multiple values from Multi-Select Filtering In Infopath 2010 form

    I am creating a browser based InfoPath 2010 form Calendar Filtering
    using SharePoint 2010 Calendar List (All Events) and InfoPath 2010.  This form has data connection to the Calendar list. Goal is to
    compare Calendar Events from Current Year to Previous Year. I have 2 columns called - Previous Year and Current Year. I have 2 drop-down controls in each columns called
    Select Year  and Select Week. I also have common drop down called
    Select Category which holds category of the events such as weather, power outages and so on. I wish to display specific events on specific date and specific week on both columns.
    I am able to filter the list based upon Year and Week
    on both these columns by applying rules in the InfoPath 2010 form. The real issue is that I want to apply category filter on the search result of
    Year and Week. Or it needs to show all the values if I
    select Category value as All. So I wish to apply filter on Search results using Category drop-down list selection.
    Hope I could explain this better but I tried to do the best here. Any suggestions, hint, or pointers
    Thanks
    Snehal H Rana
    Thanks Snehal H.Rana SharePoint Consultant

    I am creating a browser based InfoPath 2010 form Calendar Filtering
    using SharePoint 2010 Calendar List (All Events) and InfoPath 2010.  This form has data connection to the Calendar list. Goal is to
    compare Calendar Events from Current Year to Previous Year. I have 2 columns called - Previous Year and Current Year. I have 2 drop-down controls in each columns called
    Select Year  and Select Week. I also have common drop down called
    Select Category which holds category of the events such as weather, power outages and so on. I wish to display specific events on specific date and specific week on both columns.
    I am able to filter the list based upon Year and Week
    on both these columns by applying rules in the InfoPath 2010 form. The real issue is that I want to apply category filter on the search result of
    Year and Week. Or it needs to show all the values if I
    select Category value as All. So I wish to apply filter on Search results using Category drop-down list selection.
    Hope I could explain this better but I tried to do the best here. Any suggestions, hint, or pointers
    Thanks
    Snehal H Rana
    Thanks Snehal H.Rana SharePoint Consultant

  • Reporting on a Multi-Select list field X:Y:Z

    I'm sure someone must have come across this problem but I can't find a reference to it on the forum.
    PROBLEM
    I have a data entry form with multi-select lists. Users choose a number of display values and the return values are stored in the field in the format
    20:30:50
    When I create an SQL report on a row, there is no option to Display the column as a "multi-select list" like there is with a standard List of Values.
    How do I report the display lookup values rather than the return code?
    Is it possible to display the selected values in a report for example
    red
    orange JOHN 10-JAN-07
    green
    red
    orange MARY 12-FEB-07
    orange
    green MARK 13-JUL-07
    regards
    Paul P

    Paul,
    I have several examples on this topic:
    http://htmldb.oracle.com/pls/otn/f?p=31517:87
    http://htmldb.oracle.com/pls/otn/f?p=31517:84
    http://htmldb.oracle.com/pls/otn/f?p=31517:75
    Basically, you will need to create a table out of your colon separated values and then
    join this table with other tables to be able to display it however you want.
    What just comes to my mind is that Dietmar presented a nice workarround for a similar
    problem here:
    Nested report howto?
    Denes Kubicek

  • How to query on a Multi-Select Picklist?

    With the Oracle Web Service, I'm having trouble trying to figure out why I am unable to query for a Lead using only a Custom MultiSelect Picklist that I have.
    The Multi-Select Picklist has 3 values:
    - Picklist 1 (ID: <No Values>)
    - Picklist 2 (ID: Picklist 2)
    - Picklist 3 (ID: Picklist 3)
    I have leads with selected values
    - Picklist 3
    - Picklist 2 and Picklist 3
    Whether I query for any leads with a single value or multiple values, I'm getting nothing in return.
    ~= 'Picklist 3' (Returned Nothing but results do exist in the CRM UI)
    ~= 'Picklist 2;Picklist 3' (Returned Nothing but results do exist in the CRM UI)
    ~= 'Picklist 2,Picklist 3' (Returned Nothing but results do exist in the CRM UI)
    When I query using LIKE though, I get results....one of the results being a lead with just "Picklist 3" as the value for the Multi Select Picklist
    ~LIKE '*Picklist 3*' (25 Leads are returned with values of both Picklist 3 and Picklist 2, Picklist 3)
    And as a side note, I'm able to successfully insert/update values into this Multi select picklist as
    Picklist 2;Picklist 3
    Any help would be greatly appreciated!

    Kishore
    Thank you for the reply. Unfortunately, I have already specified the fields I do want returned...I just didn't post them as they are irrelevant to my question. What my question is attempting to say is that if I were to run my actual query on a database the query would look like this:
    select LeadEmail from Lead where CustomMultiPicklist1 = 'Picklist 3' (Using the API: ~= 'Picklist 3')
    This returns 0 results even though I have a Lead with CustomMultiPicklist1 = 'Picklist 3'
    On the other hand if I were to do the following query....results are returned.
    select LeadEmail from Lead where CustomMultiPicklist1 like '%Picklist 3%' (Using the API: ~LIKE '*Picklist 3*')
    So pretty much I'm trying to figure out what the correct syntax is for querying CustomMultiSelectPicklists only.
    Thanks
    Edited by: tyler m on May 5, 2010 7:17 AM

  • Set Default Value of Multi-select list item

    I have a multi-select list item I want to default the value of to '%' (which is really '%null%') and have it selected. I tried setting default value of item, but it doesn't take '%null%'. I also tried a computation with a static of
    :P507_ITEM := '%null%'; How do you get the default value set and selected?

    Hi
    Shijesh is right, you need to change your null return value and use that return value as your default. Try and use something of the same datatype as your real return values if you plan to use '%' to display all as it will make your queries simpler. eg.
    Company A returns 1
    Company B return 2
    % returns 0
    Then your query would be...
    SELECT ...
    FROM ...
    WHERE company_id = DECODE(:P_COMPANY,1,1,2,2,0,company_id)
    Hope this makes sense.
    Cheers
    Ben

  • Passing Multiple Values from Multi Select

    Hi,
    My requirement is simple. I have created a simple Multi Select Option in parameter form and i want to send multiple selected values from the multi select option (in parameter form) to reports.
    eg:
    I want to send multiple countries code as input .........'US', 'CA', 'IND', 'UK'
    Can i do it in Oracle 6i reports, Thanks in Advance.
    Regards,
    Asgar

    Hi Thanks Again,
    For such a nice response. I got the Lexical Where condition properly running but still getting problems in catching the multiple values to be passed from form. just i will give u an insight of wat i have done:
    SQL:
    SELECT ALL FROM EMPLOYEES &cond_1* -- Working FIne
    in my Html Parameter Form i have an Multi Select component (the Problem is here) it is not passing more than i value from the form once i am accessing it from web or running it in paper report. In paper report layout it is not allowing me to select more than one value. but in HTML it is allowing to select multiple values but at the server end (After Parameter Form Trigger) it is giving a single value not multiple values.
    In PL/SQL when i checking the length of country_id i m getting it as one.
    Here is my SQL code
    srw.message(10, LENGTH(:country_id_1));
    :cond_1 := 'where country_id = '''|| :country_id_1 ||'''';
    This is passing the condition properly to SQL but only with single value but i want to pass multiple values
    I am struck in this+_
    WHERE CONTRY_COLUMN IN ('USA','UAE') -- This variable you have to pass from you form...
    Here as you said you gave multiple selection in your parameter form to generate report. So before generation report just prepare variable like this as it is bold above.
    and pass parameter through your runtime form to the report as you pass the normal parameter...liket this i gave you example...
    ADD_PARAMETER(PARAMETER_LIST_NAME,'P_CONT_PARAM',TEXT_PARAMETER,vString);
    Sorry for troubling you for a small thing but please help me to solve this issue.
    Thanks Again............
    Asgar.

  • How to make Multi Select Picklist Field Required Based on another field

    Hi,
    I want to make one filed which is Multi select Required(mandatory) based on certain value in another filed.
    I tried putting IIf([<FieldNAme>]> 1000 AND [<FiledNAme1>] IS NULL,"Invalid",[<FieldNAme>]) in the Field validatation as but it is not working.
    Please suggest any workaround available.
    Warm Regards
    Pramod
    Edited by: user11361975 on Jun 3, 2011 5:03 AM

    I guess FieldName1 is the multiselect picklist you are referring to?
    Where did you get the ITAG from? I don't see any multiselect picklists available in Expression Builder. I doubt whether you can set validations on multi select picklists at all.
    If anyone has achieved this please let me know as well.
    Regards,
    Udaya

  • Select multiple values in mult-select list

    I have the following query as the source for a multi-select page item:
    SELECT person.person_id
    FROM person, pers_proj_task
    WHERE pers_proj_task.person_id = person.person_id
    AND pers_proj_task.project_id = :P3_PROJECT_ID
    The query returns two records and the page item's session value is 4:3, but only the value 4 is highlighted in the mulit-select list. How can I get both values to be highlighted?

    Got it to work for a multi-select item by following Dimitri's post which uses a shuttle example. It was still only highlighting one value, but I tried Patrick Wolf's suggestion from the comments on Dimitri's post to put the pl/sql block in the source of the item rather than as a computation and it worked.
    So I now have a multi-select list which has default values pulled from a LOV. The items that are highlighted by default are selected by using the following pl/sql block in the "source/value or expression" of the :P3_PERSON_ID multi-select item:
    declare
    person_list apex_application_global.vc_arr2;
    i number := 1;
    begin
    for r in ( SELECT person.person_id
    FROM person, pers_proj_task
    WHERE pers_proj_task.person_id = person.person_id
    AND pers_proj_task.project_id = :P3_PROJECT_ID)
    loop
    person_list(i) := r.person_id;
    i := i + 1;
    end loop;
    return APEX_UTIL.TABLE_TO_STRING(person_list,':');
    end;
    Thanks to Amanda, ArtS, Dimitri and Patrick.
    Jeremy

  • How  to get the value of multi-select in the   Dashboard Prompt

    I have a multi-select prompt in the Dashboard Prompt,  what I want is,   how do I know that user has choose one value,
    for examle,  for some reasons,  if user didn't choose any value,  then I will set one column in answer as "customer office" , if user choose one value, then the column in answer will be "customer name". 
    any comments, thanks.

    Hi,
    first define the presentation variable for the required column prompt. ex: PV
    Then in report level set the filter for that column = @{PV}{customer office}. here u have to give default value as "customer office", so by default the report in dashboard will show customer office even though the user does not select any value from dashboard prompt.
    Mark If Helpful/correct.
    Thanks.

Maybe you are looking for