Cascade LOV for Multi Row Report

Hi,
Is there a way to support cascaded LOV's in a report, where there are multiple rows?
Thanks

Why don't you try this
SELECT    apex_item.hidden (10, tr.seq)
       || apex_item.checkbox (20,
                              tr.seq,
                              'onchange="spCheckChange(this);"',
                              :f500_request_list,
                              'f20_' || '#ROWNUM#'
                             ) "Is Requested?",
       apex_item.select_list_from_lov_xl (30,
                                          to_room_seq,
                                          'ROOMS_LOV',
                                          'NO',
                                          NULL,
                                          NULL,
                                          'f30_' || '#ROWNUM#',
                                          NULL,
                                          'NO'
  FROM ts_assets ta, ts_reqs tr?
Denes Kubicek
http://deneskubicek.blogspot.com/
http://www.opal-consulting.de/training
http://apex.oracle.com/pls/otn/f?p=31517:1
------------------------------------------------------------------------------

Similar Messages

  • Handling cascading LOV (having Multi-Select parent LOV)

    Hi,
    I am using cascading LOV.
    P1_PARENT - Parent LOV (which is multi-select)
    P1_CHILD - Child LOV
    since Parent LOV is multi-select, so it will have the following vallues... P1_PARENT = AA:BB:CC
    and the where clause in the cascading LOV should be like
           where col1 in (:P1_PARENT)
       - So how to convert item value for P1_PARENT from AA:BB:CC to 'AA','BB','CC'
    - Is there is any other way to handle cascading LOV (for Multi-Select parent LOV).
    select list for P1_CHILD
        select d, r
      from test
    where col1 = :P1_PARENT
    where col1 in (:P1_PARENT) Thanks,
    Deepak

    Hi Deepak,
    In the where clause for the child LOV, you can use instr function as:
    (instr(':'||:P1_PARENT||':',':'||col1||':',1) > 0 ) To access the individual elements in the multi-select :P1_PARENT, you can use:
    DECLARE
    l_selected HTMLDB_APPLICATION_GLOBAL.VC_ARR2;
    BEGIN
      l_selected := HTMLDB_UTIL.STRING_TO_TABLE(:P1_PARENT);
      FOR i IN 1..l_selected.count
      LOOP
            //  your code here...access individual elements using  l_selected(i)
      END LOOP;
    END;Thanks,
    Rohit

  • How to have cascading lov for a single column in tabular form

    Hi,
    How to have a cascading lov for a single column in tabular form
    ie i have one employee name column
    in tabular form if v pressed add row then one row ll be added
    In my scenario based on first row value
    the second row value to be displayed
    To achieve this what i have to do ..
    Regards,
    Pavan

    READ Cascading select list on tabular form  and
    Oracle APEX 4.0: Cascading LOVs/Select Lists | Inside Oracle APEX by Patrick Wolf BLOG
    helps you,
    Pars.

  • Creating a Cascading LOV in an Interactive Report

    version 4.1.1.00.23
    Hello,
    Would someone help me with creating a Cascading LOV in an Interactive Report?
    I'm not finding much help searching Google or the forum.
    Thanks,
    Joe

    I used this example but I cant show picture in my region using this procedure. It displays simbol for broken image. Any help. I even added grants for procedure, but it just does't work. This is how I call procedure in html region:<img src="#OWNER#.display_thumb?p_photo_id=3084374128401555434" />

  • Select_list_from_lov in multi row report: Help

    Oracle 10g, apex 3.2
    On windows XP client, Firefox 3.5.2
    I have a multi row editable report region, defined as below: I have a check box item for the row being selected and one of the columns in the row is a select_list_from_lov_xl. Once the user checks a particular row, using the check box, he/she will choose a particular value from that row's select list. How do I capture the value of the select_list returned value specific for that row? As you see from the highlighted code to render select_list,the value for the apex_item that I am assigning is 30. But when I look in the firebug->inspect element, the apex renders the name as 'f01'..??. What am I missing here??
    Also if user checks all rows, my code picks up the correct corresponding values picked for the select list. If user selects a row in the middle or any random row, the value selected is always the first item returned by the first orw's select_list (though this was not checked!!)
    I am confused and need help on capturing select list return values in a multi row reports.
    Thanks for all your time and expertise...
    Here's the simplified version of my query, that includes the culprits:
    SELECT APEX_ITEM.HIDDEN(10,TR.SEQ) || APEX_ITEM.CHECKBOX(20, tr.seq,'onchange="spCheckChange(this);"',:F500_REQUEST_LIST,':') "Is Requested?",
    +APEX_ITEM.SELECT_LIST_FROM_LOV_XL(30,TO_ROOM_SEQ, 'ROOMS_LOV') "To Room"*_+
    FROM TS_ASSETS TA, TS_REQS TR where <some condition>
    Here is part of my code that extracts the values picked
    -- this should pick only checked rows...
    for i in 1..apex_application.g_f20.count
    loop
    some_checked_value(i) := apex_item.g_f20(i);
    -- the below is coded thus, as thats the value that I see being set, when I inspect this element in firebug. Not sure how this came by, as I had set this item to 30 in my query...???
    some_select_list_val(i) := apex_item.g_f01(i);
    end loop;

    Why don't you try this
    SELECT    apex_item.hidden (10, tr.seq)
           || apex_item.checkbox (20,
                                  tr.seq,
                                  'onchange="spCheckChange(this);"',
                                  :f500_request_list,
                                  'f20_' || '#ROWNUM#'
                                 ) "Is Requested?",
           apex_item.select_list_from_lov_xl (30,
                                              to_room_seq,
                                              'ROOMS_LOV',
                                              'NO',
                                              NULL,
                                              NULL,
                                              'f30_' || '#ROWNUM#',
                                              NULL,
                                              'NO'
      FROM ts_assets ta, ts_reqs tr?
    Denes Kubicek
    http://deneskubicek.blogspot.com/
    http://www.opal-consulting.de/training
    http://apex.oracle.com/pls/otn/f?p=31517:1
    ------------------------------------------------------------------------------

  • Custom Popup on a Tabular Form for Multi Row Operation

    I am trying to implement a custom popup on a tabular form that I can pass a value typed in to a text item like “Name” to the popup so it can filter a list of names on what was already typed in.
    Once a selection is made I need to have the selected name passed back to the text item.
    This is easily done when not using a Tabular Form. Any ideas would be great?

    Can someone please help me with this?
    I've read the Thread:
    "Custom Popup on a Tabular Form for Multi Row Operation",
    and have tried following the instructions provided by Willi Firulais.
    I've also tried to integrate the instructions provided by RWeide in response within the same Thread.
    I cannot get the passBack function to Pass the value to the Calling Page.
    (I've tried to organize the pertinent information as it pertains to my application,
    and have included it here below:)
    A. Calling Page (Page# 141)
    1. HTML Header: (Page# 141)
    <script> function callMyPopup(item) { var url;
    url = 'f?p=&APP_ID.:143:&APP_SESSION.::::P143_ITEM:'+ item;
    w = open(url,"winLov","Scrollbars=1,resizable=1,width=800,height=600");
    if (w.opener == null) w.opener = self; w.focus(); }
    </script>
    2. Region Definition: (Orders) - SQL Query (Updateable Report)
    a. Query:
    select
    'f01_'||to_char(rownum ,'FM0999') ITEM,
    "ID",
    "ID" ID_DISPLAY,
    "ID_PROJECT",
    "ID_SUPPLIER",
    "DESCRIPTION",
    "JOB_NO",
    "QUANTITY",
    "UNIT_PRICE",
    "EXTENDED_PRICE",
    "MANUFACTURER",
    "SUPPLIER",
    "PART_NO",
    "GROUP_LIST",
    "BILLED_PRICE",
    "DATE_NEEDED",
    "DATE_DELIVERED",
    "SUPPLIER_TYPE",
    rownum
    from "#OWNER#"."OAX_MAT_ORDER_ITEMS07"
    where job_no = :P141_JOB_NO
    3. Report Attributes: (ITEM) - URL
    javascript:callMyPopup('#ITEM#');
    B. PopUp Page (Page# 143)
    1. HTML Header: (Page# 143)
    <script language="JavaScript"> function passBack(passItem1, passVal1)
    { opener.document.forms["wwv_flow"].SUPPLIER[&P143_ITEM.].value = passVal1;
    close(); }
    </script>
    2. ITEMS:
    P143_ITEM
    3. Region Definition: (Suppliers) - SQL Query(Structured Query)
    OAX_SUPPLIERS.ID
    OAX_SUPPLIERS.NAME
    4. Report Attributes: (NAME) - URL
    javascript:passBack('&P143_ITEM.','#NAME#');
    Thank you in advance for you help!

  • Different LOV for different rows

    Hi,
    Imagine a tabular report with a number of rows, and a select list for each row populated based on data in that row.
    I've seen a solution for this in a few threads, but I've tried to replicate it in 4.2.1.00.08 with no success
    Select list filter in a tabular form problem
    Tabular form - Different LOV for different rows
    my query includes this as a column
    APEX_UTIL.SAVEKEY_NUM(duration) durationwith another column defined as "Select List (query based on LOV)" using
    select apex_util.keyval_num d,  apex_util.keyval_num r from dualand while the duration varies, the LOV is always stagnant.
    This occurs in both classic & updateable reports (tabular forms).
    I was skeptical that it would work anyway, since I'm sure the query is resolved/bound before rendering each LOV - but that's just assuming background process logic.
    Is the only alternative solutions to use APEX_ITEM.SELECT_LIST_FROM_QUERY() ?
    Scott

    Ahh, I had only tried that on my classic report example. It only seems to have that effect on the tabular form.
    Makes me hesitant to use it with that kind of behaviour.
    When comparing normal tabular form, one set to generic, and another changed back - I saw no differences in the metadata that I would think have some form of impact on rendering behaviour
    APEX_APPLICATION_PAGE_RPT
    APEX_APPLICATION_PAGE_REGIONS -- customization/timeout_cache_after changed, component_signature had trailing 0
    APEX_APPLICATION_PAGE_RPT_COLS -- lost tabular form attributes, region had lost selector column, in fact I'm having trouble bringing it back to a point where it actually saves data.
    Scott

  • Tabular form - Different LOV for different rows

    In a tabular form column, is it possible to have a select list whose values depend on some other column in the row? There doesn't appear to be a way to use #COL# notation to refer to current row values in the LOV query definition.
    Ideas? Thanks

    Hi Scott,
    Thanks ..I formed some idea about APEX_UTIL.KEYVAL_NUM. I have a problem where I am not able to decide if I can make use of this package and solve..
    Can you please have a look at this thread.. Re: Tabular form - Different LOV for different rows
    I have a SQL which populates a tabular form on the page.Coulmn1 some text, Column 2 is to show a drop down as YES and NO. i am trying to freeze the option for rows 2,3,4 as NO, if the Option choosen in first is NO.
    So, what I am trying to ask is..can I save my first selection in a global variable and use it in where clause of [select list query] the second drop down..Not sure how I can do this..Appreciate if you can show me a direction.
    Thanks,
    Chaitu.

  • Creating Named lov for each row..........

    How to create Named LOV for each row in a field.
    i have a tabular in a page. In that tabular i have three fields service_code,*service_name* and No_units.
    i have to create lov for service_code for all rows.
    how to do this?
    plz help...

    Hi Frank,
    This is the method i wrote in the managed Bean. It works when I hard code the department value to some value(like 10).
    public List<SelectItem> getEmployeeList() {
    int Deptid = 10;
    ArrayList<SelectItem> employees = new ArrayList<SelectItem>();
    employees.add(new SelectItem("0", "--Select Employee---"));
    try {
    Connection con = getConnection();
    PreparedStatement ps =
    con.prepareStatement("select name from employees where department_id = ?");
    ps.setInt(1, Deptid);
    ResultSet rs = ps.executeQuery();
    while (rs.next()) {
    employees.add(new SelectItem(rs.getString("name")));
    rs.close();
    ps.close();
    con.close();
    } catch (Exception ex) {
    System.out.println(ex.getMessage());
    return employees;
    How can I pass the row Department Id to this method in the f:selectItems?
    I really appreciate your help in resolving this issue.
    Thanks

  • Custom tabular form for multi-row not saving data

    Ok, before anyone asks, yes, I did read the how-to:-)
    I have a custom tabular form, which I did cause I need to use popups and the popups that you can use in the wizard tabular form does not display the text but rather the value underneath it.
    It returns data rather nicely and when I go and update values I can tell it is changing the fields underneath. I put a process in that will display the values in text fields on the form (for one row only) and I see them changing from what is already there and with the proper values.
    However, when I do that the data that is displayed then gets reverted back to what it was previous to the update but reports that the process was successful.
    I have also tried to insert but that is basically doing the same thing. Can anyone guide me.
    SQL to generate the tablular form...
    SELECT x.sak_release_db
    , x.sak_object
    , x.sak_release
    , x.sak_participant
    , x.sak_csr
    FROM
    (SELECT htmldb_item.hidden(1,sak_release_db) sak_release_db
    , htmldb_item.popupkey_from_query(2, sak_object,
    'SELECT b.nam_schema||''.''||a.nam_technical as table_name , b.sak_object
    FROM system_object a
    , database_table b
    WHERE a.sak_object = b.sak_object') as sak_object
    , htmldb_item.hidden(4,sak_release) sak_release
    , htmldb_item.popupkey_from_query(5, sak_participant,
    'SELECT nam_first || '' '' || nam_last as name, sak_participant FROM co_participant') sak_participant
    , htmldb_item.popupkey_from_query(7, sak_csr,
    'SELECT external_id|| ''-''||id_split as co, sak_csr FROM co') sak_csr
    FROM release_db_xref
    UNION ALL
    SELECT htmldb_item.hidden(1,NULL) sak_release_db
    , htmldb_item.popupkey_from_query(2, NULL,
    'SELECT b.nam_schema||''.''||a.nam_technical as table_name , b.sak_object
    FROM system_object a
    , database_table b
    WHERE a.sak_object = b.sak_object') as sak_object
    , htmldb_item.hidden(4,NULL) sak_release
    , htmldb_item.popupkey_from_query(5, NULL,
    'SELECT nam_first || '' '' || nam_last as name, sak_participant FROM co_participant') sak_participant
    , htmldb_item.popupkey_from_query(7, NULL,
    'SELECT external_id|| ''-''||id_split as co, sak_csr FROM co') sak_csr
    FROM dual) x
    Process to verify that I have the correct global fields: (Type: PL/SQL anonymous block, Process Point: On Submit - After Computations and Validations)
    begin
    :P3_2 := replace(htmldb_application.g_f02(1),'%'||'null%',NULL);
    :P3_5 := replace(htmldb_application.g_f05(1),'%'||'null%',NULL);
    :P3_7 := replace(htmldb_application.g_f07(1),'%'||'null%',NULL);
    end;
    Process to do the insert/update. Note, I hardcoded the value in the where clause but I was originally using the global value for g_f01 (i also tried putting a commit in there for fun) (Type: PL/SQL anonymous block, Process Point: On Submit - After Computations and Validations):
    -- Update the RELEASE_DB_XREF table
    FOR i IN 1..htmldb_application.g_f01.count
    LOOP
    IF htmldb_application.g_f01(i) IS NOT NULL THEN
    UPDATE release_db_xref
    SET sak_object = replace(htmldb_application.g_f02(i),'%'||'null%',NULL)
    , sak_participant = replace(htmldb_application.g_f05(i),'%'||'null%',NULL)
    , sak_csr = replace(htmldb_application.g_f07(i),'%'||'null%',NULL)
    WHERE sak_release_db = 22;
    ELSE
    IF htmldb_application.g_f02(i) IS NOT NULL THEN
    INSERT INTO release_db_xref
    (sak_object
    ,sak_release
    ,sak_participant
    ,sak_csr)
    VALUES
    (replace(htmldb_application.g_f02(i),'%'||'null%',NULL)
    ,htmldb_application.g_f04(i)
    ,replace(htmldb_application.g_f05(i),'%'||'null%',NULL)
    ,replace(htmldb_application.g_f07(i),'%'||'null%',NULL));
    END IF;
    END IF;
    END LOOP;

    Florian,
    Checkboxes are different from other HTML form items. When you have a text box for example, there's always a value send to the server when submitting. Even if that value is NULL. When you have a checkbox however, you only get the value if the checkbox is checked. It's not posted to the server when it is not checked. That's the general behavior of HTML forms and not specific to Oracle HTML DB.
    When working with tabular forms in HTML DB, you can access your form values using the htmldb_application.g_f0x arrays. Now if you have for example 10 rows in your form, then you'll get ten elements in your array for text boxes, select lists, etc. For checkboxes however you'll only get as many elements as you have rows checked. If I read your update and insert code correctly, you're trying to use the checkbox arrays the same way you use the arrays based on other item types. My recommendation would be to use Yes/No select lists instead of checkboxes or at least use select lists initially to get it working and then work on properly processing the checkboxes.
    Some general information about working with checkboxes in tabuar forms can be found here:
    http://www.oracle.com/technology/products/database/htmldb/howtos/checkbox.html#CHECKBOX_IN_REPORT
    Hope this helps,
    Marc

  • Dynamically Changing Labels for Multi Row Block Buttons

    Forms [32 Bit] Version 9.0.4.1.0 (Production)
    Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
    On my local: Windows 7 OS
    I am having a difficult time in doing the following in forms, and not sure if it can be done?
    I have a multi row block,based on DB table, which displays filename and another column from the table.
    It also has a push button on each row, which opens and displays the physical file from its source, when clicked. The filename thus can have 3 diff statuses depending on its sources and accordingly corresponding button should display appropriate label:
    a) View Image (its is in content server and successfully imaged. In this case I display the file in the browser, from the content server, when the button is clicked)
    b) View File (Display the file from file system)
    c) View Error (Display imaging error message from the table, as file failed to make it to the imaging server)
    I have this logic currently coded in the post query trigger, at the block level, and tried using set_item_property(button_id, label, <button_lable>), where I programmatically set the button lable, based on the file status (imaged, not imaged or has error) in that row. This wroks well, only if all the files in the multi row block have the same status. If each of them have diff statuses, then only last processed files's status gets reflected into the button label. For eg: The file in the first row of the block is imaged, and one in the second row has an imaging error. The button label for the first row should say 'View Image' and button for the second row should say 'View Error'. But now buttons for both the rows display 'View Error', as thats what got processed last!
    I __can not use set_item_instance property for 'label'__ (which lets us dynamically change the label on the push buttons).
    Is there any way to do this for ORacle forms? I am now playing with having 3 diff button items in that block, laying them on top of each other and showing only those that are appropriate and hiding the others... But I am not sure it is going to give me what I need? I think I am going to end up facing the same issues as in above case!!
    Any expert advice is highly appreciated.
    Thanks in advance for your time:
    Libran_Girl
    Edited by: libran on Aug 30, 2011 8:04 AM
    Edited by: libran on Aug 30, 2011 8:05 AM

    <p>I have just updated this existing PJC, that was originally constructed to handle Text Fields. You can, now, also handle buttons with it.
    Set the Button's Implementation Class property to : oracle.forms.fd.MultiButton.
    </p>
    This is the code you have to put one triggers of your based block:
    When-New-Record-Instance trigger: (based on the EMP table)
    declare
         LN$Pos  pls_integer ;
         LN$Rec  pls_integer := Get_Block_Property('EMP', CURRENT_RECORD) ;
         LN$Max  pls_integer := Get_Block_Property('EMP', RECORDS_DISPLAYED) ;
         LC$C    Varchar2(15) ;
    Begin     
         LN$Pos :=  LN$Rec - (trunc(LN$Rec/LN$Max) * LN$Max) ;
         If LN$Pos = 0 Then LN$Pos := LN$Max ; End if ;
         If LN$Pos > 0 Then
              Set_Custom_Property('EMP.BT', LN$Pos, 'SET_LOG', 'true' );
              -- Add the new item --
              Set_Custom_Property('EMP.BT', LN$Pos, 'SET_NEW_REC', to_char(LN$Rec) );
              -- Set some properties --
              Set_Custom_Property('EMP.BT', LN$Pos, 'SET_LABEL', to_char(LN$Rec) || ',' || :EMP.ENAME );
              If :EMP.JOB = 'MANAGER' Then
                Set_Custom_Property('EMP.BT', LN$Pos, 'SET_FONT', to_char(LN$Rec) || ',Arial,bold,14' );
                Set_Custom_Property('EMP.BT', LN$Pos, 'SET_FGCOLOR', to_char(LN$Rec) || ',0,0,255' );
              End if ;
              If :GLOBAL.I > 250 Then :GLOBAL.I := 5 ;
              Else  :GLOBAL.I := :GLOBAL.I + 5 ;
              End if ;     
              LC$C := To_Char(LN$Rec) || ','
                   || To_Char(255) || ','
                   || To_Char(255-:GLOBAL.I) || ','
                   || To_Char(255-:GLOBAL.I) ;    
              Set_Custom_Property('EMP.BT', LN$Pos, 'SET_BGCOLOR', LC$C );
              Synchronize;
         End if ;
    end;When-Create-Record trigger:
    declare
         LN$N    pls_integer ;
         LN$Rec  pls_integer := :system.cursor_record ;
         LC$C    Varchar2(15) ;
    Begin     
         if get_block_property('EMP',TOP_RECORD) > 1 Then
              LN$n := :system.cursor_record - get_block_property('EMP',TOP_RECORD) + 1 ;
         else
              LN$N := :system.cursor_record ;
         end if;
         If LN$N > 0 Then
              Set_Custom_Property('EMP.BT', LN$n, 'SET_LOG', 'true' );
              -- Add the new item --
              Set_Custom_Property('EMP.BT', LN$n, 'SET_NEW_REC', to_char(LN$Rec) );
         End if ;
    end;Post-Query trigger:
    declare
         LN$Pos  pls_integer ;
         LN$Rec  pls_integer := Get_Block_Property('EMP', CURRENT_RECORD) ;
         LN$Max  pls_integer := Get_Block_Property('EMP', RECORDS_DISPLAYED) ;
         LC$C    Varchar2(15) ;
    Begin     
         LN$Pos :=  LN$Rec - (trunc(LN$Rec/LN$Max) * LN$Max) ;
         If LN$Pos = 0 Then LN$Pos := LN$Max ; End if ;
         If LN$Pos > 0 Then
              Set_Custom_Property('EMP.BT', LN$Pos, 'SET_LOG', 'true' );
              -- Add the new item --
              Set_Custom_Property('EMP.BT', LN$Pos, 'SET_NEW_REC', to_char(LN$Rec) );
              -- Set some properties --
              Set_Custom_Property('EMP.BT', LN$Pos, 'SET_LABEL', to_char(LN$Rec) || ',' || :EMP.ENAME );
              If :EMP.JOB = 'MANAGER' Then
                Set_Custom_Property('EMP.BT', LN$Pos, 'SET_FONT', to_char(LN$Rec) || ',Arial,bold,14' );
                Set_Custom_Property('EMP.BT', LN$Pos, 'SET_FGCOLOR', to_char(LN$Rec) || ',0,0,255' );
              End if ;
              If :GLOBAL.I > 250 Then :GLOBAL.I := 5 ;
              Else  :GLOBAL.I := :GLOBAL.I + 5 ;
              End if ;     
              LC$C := To_Char(LN$Rec) || ','
                   || To_Char(255) || ','
                   || To_Char(255-:GLOBAL.I) || ','
                   || To_Char(255-:GLOBAL.I) ;    
              Set_Custom_Property('EMP.BT', LN$Pos, 'SET_BGCOLOR', LC$C );
              Synchronize;
         End if ;
    end;Don't forget to copy the multirecord.jar file in your /forms/java folder, then add it to the archive and archive_jini tags of your /forms/server/formsweb.cfg file.
    Enjoy it,
    Francois

  • "1) it takes TOOOOOO LONG for multi-row tabs to close when i click "close all/other tabs" and 2) it takes TOO long for Firefox to appear after i click the icon on the desktop"

    1) When many tabs are opened in multiple rows (say 50 or 100) it may take an enternity for them to close after I click the appropriate command
    2)MOre often than not, it takes the browser too long to appear (open) after I initiat it by clicking the desktop or start menu icon.
    NB: My first question is PRIMARY (critcally important) and second is additional (would very much like to receive an answer but it's not critical).
    Thanks a lot in advance!
    Best regards, Dmitry.

    Sorry about the bookmarks misread, I installed a Multi-Row Tab style, not for me but it in use deleted 126 of 130 tabs in about 3 seconds and then the last 4, no idea why that happens with the with the multi-row style.
    Did those 100 pages have web forms in them that you filled in an Firefox may be saving data along with the session.
    Here is a test page that you can quickly load up to 120 tabs at a time with an extension such as "Linky". See it if it takes an eternity to close them with the Multi Row tabs extension you are using, then try the same with the extension disabled. Works fast for me all tabs are on one row.
    * 001 '''Tab Capacity Test'''<br>http://dmcritchie.mvps.org/firefox/tab_capacity/001_with_underscore.htm
    Two Extensions to Help -- you may already have one or both
    * '''Stylish-Custom''' :: Add-ons for Firefox<br>https://addons.mozilla.org/en-US/firefox/addon/stylish-custom/
    * '''Linky''' :: Add-ons for Firefox<br>https://addons.mozilla.org/en-US/firefox/addon/linky/
    Style that can be installed after installing "Stylish" extension, style will show two rows of tabs you have to scroll up/down. '''This style does not recognize app-tabs formatting, new in Firefox 4.'''
    * '''App: Multi-Row Tab Bar''' - Themes and Skins for Browser <br>http://userstyles.org/styles/10930
    I put all my tabs on one row you probably would not like it, but you might like the one with the tab borders, which almost works again using multi-row tabs:
    * Tabs Bar Minimal Size - Themes and Skins for Browser <br>http://userstyles.org/styles/9043
    * '''Tab Color Underscoring active/read/unread''' - Themes and Skins for Browser<br>http://userstyles.org/styles/9023

  • Cascading LOV's in a multi row report

    Some while ago there was a great post about dependant LOV's, for ref. its this one:
    http://forums.oracle.com/forums/thread.jspa?messageID=1222153?
    I've been trying to do something very similar, but i'd like the code to work with display and return values, where the return val. is an ID, rather than in the old example it being the same as the displayed value, so looking at the original example, instead of:
    select val d, val r from manufacturer order by 1
    If we modified the table definition to this:
    CREATE TABLE MANUFACTURER
    ID NUMBER,
    VAL VARCHAR2(200 BYTE)
    we would have something like
    select val, id from manufacturer order by 1
    Not being a javascript guru, can anyone advise if the code can be modified to cater for this? I have had partial success in that the second LOV updates based upon the value in the first LOV, but when changes are saved, it still stores the displayed value rather than the return ID.
    For reference, i've modified the on demand process to this:
    begin owa_util.mime_header('text/xml', FALSE );
    htp.p('Cache-Control: no-cache');
    htp.p('Pragma: no-cache');
    owa_util.http_header_close;
    htp.prn('<select>');
    for rec in (select cpc_name, cpc_id from ct_product_categories cpp, ct_page cp
    where cpp.cc_id = cp.cp_id
    and cp.cp_id = :TEMPORARY_ITEM) loop
    htp.prn('<option value="' || rec.cpc_name|| '">' || rec.cpc_name|| '</option>');
    end loop;
    htp.prn('</select>');
    end;
    I have 2 LOV's rather than the original examples 3, the first of which is defined as a simple query thus:
    select cp_name nm, cp_id id from CT_page order by 1
    This first query triggers the ondemand process defined above. The second query is simply:
    select cpc_name nm2, cpc_id id2 from ct_product_categories
    The javascript used in the region header is:
    <script type="text/javascript">
    function appendToSelect(pSelect, pValue, pContent) {
         var l_Opt = document.createElement("option");
         l_Opt.value = pValue;
         if(document.all){/* why is ie different ask bill */
              pSelect.options.add(l_Opt);
              l_Opt.innerText = pContent;
              else
              {l_Opt.appendChild(document.createTextNode(pContent));
              pSelect.appendChild(l_Opt);
    var g_subj_area=new Object;
    //var g_sales_reps=new Object;
    function replace_select_list(pSelect,pXML){
         var l_Count = pXML.getElementsByTagName("option").length;
         pSelect.length = 0;
         for(var j=0;j<l_Count;j++){
              var l_Opt_Xml = pXML.getElementsByTagName("option")[j];
              appendToSelect(pSelect, l_Opt_Xml.getAttribute('value'), l_Opt_Xml.firstChild.nodeValue)
    function get_ajax_select_xml(pThis)
    var l_Return = null;
    var l_td=$x_UpTill(pThis,'TD');
    var l_subj_area_2=l_td.nextSibling.getElementsByTagName('select')[0];
    var old_subj_area_2;
    if (l_subj_area_2.options.length>0) old_subj_area_2=html_SelectValue(l_subj_area_2);
    if (g_subj_area[pThis.value] && l_subj_area_2) {
    replace_select_list(l_subj_area_2,g_subj_area[pThis.value]);
    if (old_subj_area_2) html_SetSelectValue(l_subj_area_2,old_subj_area_2);
    else {
    var get = new htmldb_Get(null,html_GetElement('pFlowId').value,'APPLICATION_PROCESS=GET_SUBJ_AREA',html_GetElement('pFlowStepId').value);
    get.add('TEMPORARY_ITEM',pThis.value);
    gReturn = get.get('XML');
    if(gReturn && l_subj_area_2) { replace_select_list(l_subj_area_2,gReturn); if (old_subj_area_2) html_SetSelectValue(l_subj_area_2,old_subj_area_2);}
    g_subj_area[pThis.value]=gReturn;
    get=null;
    </script>
    And the javascript used in the region footer is:
    <script type="text/javascript">
    function getCellIndex(pRow,pCell){
         if (document.all){
              for(var i=0;i<pRow.cells.length;i++){
                   if(pRow.cells[i] == pCell){l_Count = i}
         }else{
              l_Count = pCell.cellIndex;
    return l_Count;
    function fire_onchange(){
         var td_subj_area_1=$x('SUBJECT_AREA_1');
         var l_cellindex=getCellIndex(td_subj_area_1.parentNode,td_subj_area_1);
         var l_table=$x_UpTill(td_subj_area_1,'TABLE');
         for (var j=1;j<l_table.rows.length-2;j++) {   
              var l_cell=l_table.rows[j].cells[l_cellindex];
              var l_select=l_cell.getElementsByTagName('select')[0];
              if (l_select && l_select.onchange) l_select.onchange();
    fire_onchange();
    </script>

    User478832,
    I didn't look thru all the code but I have a feeling your problem is the 9th line in the On Demand process. (the 9th line in this post anyway)...
    htp.prn('<option value="' || rec.cpc_name|| '">' || rec.cpc_name|| '</option>');
    You modified your query to get a different column but your returning the same column later: rec.cpc_name x2
    I assume you want to display NAME and return ID so change it like this...
    htp.prn('<option value="' || rec.cpc_id || '">' || rec.cpc_name|| '</option>');
    Let me know if that helps...
    Dan

  • SSRS & Report Viewer control - Show the print button and fire print for multi page report in Mozilla & Chrome

    I have reports in SSRS. I am using remote reports. Reports have multiple pages.
    In IE, the print button displays, but in Firefox and Chrome, it does not display.
    Below links shows how to display the print button for mozilla and chrome. These solutions only fire the print for the
    current page in the report viewer-
    http://stackoverflow.com/questions/951009/sql-reporting-services-print-button-not-shown-in-mozilla
    http://stackoverflow.com/questions/4208457/ssrs-print-button-in-chrome-and-firefox
    I need to be able to issue a print command for all
    pages in one go from the reportviewer.

    Hello,
    The common workaround about print button on ReportViewer control for non-IE browsers is add ActiveX print control or create Print function. It has pros and cons.
    I am not good at programming. But you can try to disable page breaks by setting InteractiveHeight to 0 so that the report will rendering in single page with Report Viewer control.
    Regards,
    Fanny Liu
    Fanny Liu
    TechNet Community Support

  • SelectBooleanCheckbox not working for mult rows, Attn: Shay, Simon, Frank

    I converted some input texts my detail table to selectBooleanCheckBox. Input texts have "y" or "n". However, my selectCheckBox showed no checkboxes for either "y" or "n". Anything special about this?

    Here is a snippet of my code. Actually, it works as long as I have a single row. It starts failing on multiple rows.
    Let us say, I have two fields "Create" and "Read" (values "y" or "n" in the database table).
    When I have one row, I have the checkboxes checked fine (A "y" is shown as a checked field). If, however, I have two rows, the selection for the first row shown on the page seems to be propagating to all rows. It is almost like it dioes not understand there are two rows. However, all the inputtexts corresponding to the rows have correct values. I made sure I selected the correct field from Data Controls and drooped them in the details column area. If I replace the selectBooleanCheckBox with "inputText", the values are shown fine on the page even if there are multiple rows.
    <af:table value="#{bindings.SecPagePermissionView1.collectionModel}"
    <af:panelHorizontal binding="# {backing_PagePermissions.panelHorizontal1}"
    id="panelHorizontal1">
    <af:selectBooleanCheckbox value="#{bindings.SecPagePermissionView1Cr.inputValue}"
    label="#{bindings.SecPagePermissionView1Cr.label}"
    binding="#{backing_PagePermissions.selectBooleanCheckbox3}"
    id="selectBooleanCheckbox3"/>
    <af:selectBooleanCheckbox value="#{bindings.SecPagePermissionView1Read.inputValue}"
    label="#{bindings.SecPagePermissionView1Read.label}"
    binding="#{backing_PagePermissions.selectBooleanCheckbox4}"
    id="selectBooleanCheckbox4"/>
    </af:panelHorizontal>
    <af:panelHorizontal binding="#{backing_PagePermissions.panelHorizontal3}"
    id="panelHorizontal3">
    </af:panelHorizontal>
    </af:column>
    </af:table>

Maybe you are looking for