JSP Multi Row Edits and Struts Validator

Hello,
I followed this howto: http://www.oracle.com/technology/products/jdev/tips/mills/JSP_Multi_Row_Edits.html and implemented multi row editing. Now I'd like to use Struts Validator for validating data in multiple rows. Is there any howto document on this subject?
Thanks,
Anna

I think I will have to look inside the JHeadStart source code that extends DataAction, understand how that code works, and finally get the pieces I'm interested in...

Similar Messages

  • Inserting new rows in a JSP multi-row page

    Hi all.
    I´ve been implementing a JSP multi-row editable page according to the paper:
    http://www.oracle.com/technology/products/jdev/tips/mills/JSP_Multi_Row_Edits.html
    I noted that the code provided in the example just considers handling updates from the multi-row page, by comparing the existing rows in the ControlBinding rangeSet with the ones that came from the page.
    However, I need the ability to handle new rows from the same multi-row form that came from the page. So how can I achieve this task? What code should I include in the processUpdateModel method to handle new inputs?
    regards.
    Denis

    I think I will have to look inside the JHeadStart source code that extends DataAction, understand how that code works, and finally get the pieces I'm interested in...

  • JSF multi row editable detail form -- moving backwards or forward

    Innocently trying to create an intuitive editable master detail JSF form. Similar to what you would want in any application and something that can be done in less than a minute in Oracle Forms
    The master form is a just a simple editable single master form based on the dept table. and the detail is the emp table. I have create the model using the wizard and made sure a link view is created.
    The details form is a multirow form with all the editable columns
    I added two button for the details form (create, remove)
    I entered the master record (no commit yet)
    then i moved the cursor to the details form and created a few records, i found an error in the second row in the detail form, therefore, innocently, i selected that row and pushed the Remove button. shocked to find out that the first row in the details form is deleted regardless of which row is selected. Additionally, when a row is created using the create button, the row is created above the first row of the details form (as if the first row in the details form is always current).
    Such requirement should be easily satisified by a Framework?
    Ammar Sajdi
    Oracle
    Amman

    thank you frank for your response
    Actually, my DETAILS form DOES include the Select Option, and i was really expecting (and accepting) the fact that i need to point to the row i need to delete. Actually, 20 years back i was 8080 assembly language programmer, and used to handle thing at very very low level. However, i do select a row, and i can see the Radio activated for that row, unfortunately though, the seemingly selected item in the DETAILS form is not the one that is removed, it is instead, the first row that is actually removed. It seems as if the form rows are not synchronized with the ROW selector you mentioned,, The first row is somehow internally selected (always)
    This is the interesting part.
    I created another project with a single multi row editable table (without master details) only a master, and guess what, it is working beautifully! exactly as you descirbed. Select a row, press delete and there you go, the record no longer exists
    Ammar Sajdi
    visit me
    www.e-ammar.com/Oracle.htm
    regards

  • Multi row edit without having to use htmldb field

    Hi guys,
    a question: have someone ever implemented a multi-row edit report, like the one on Oracle HTML DB Handbook, without having to use htmldb field?
    If so how? Only describe the steps or provide me some links. I think is enough.
    Other little question:
    When you use the syntax like:
    htmldb_application.g_f05(i) (inside a for loop), can i use another naming style instead of using gf05 ?
    Let's assume that g_f05 is sal, for me would me more clear use a synthax like htmldb_application.sal(i).
    I think would be a good improvement in the future version of APEX.
    I
    thank you very much

    hey,
    i think that what i saw in the sample application / section admin can't work for my needs, such i'have a quite complex query (pl/sql f body ret sqlquery).(infact the demo is based on a simple query, while i need to use a psqlf.b.r.q)
    However what i need is only a row selector, using a report based on a psqlf.b.r.q.
    By me i've to use the htmldb_item.
    Maybe for my purpose a collection can simplify the problems, however this is briefly what i'm trying to do:
    I've 2 set of data.
    D1 and D2.
    D1 is based on complex filter(which i think it can't be managed from a normal query at all / you have to use pfbrq)
    D2 is not(quite simple).
    D1 AND D2 have the same type and nr of columns.
    The user can choose from a radio group this 3 mode of view.
    1 - The user see D1 (UNCHECKED) UNION D2 (CHECKED).
    2 - The user see only D2. CHECKED.
    3 - The user see only D1 UNCHECKED.
    Both D1/D2 can be displayed in the same report.
    If Data of D1 are already in D2 they are checked.
    (i think here a not in select can do quite well the job).
    Hope that somebody understand what i've tried to explain, or maybe has had the same type of problem.
    Thank's a lot
    Message was edited by:
    Marcello Nocito
    Message was edited by:
    Marcello Nocito

  • How To Create Multi Row Edit Forms in a JSP

    Hi, Could someone tell me how can i create multi edit rows in BC4J JSP edit page.
    Thanks
    Sirisha

    Refer to
    BC4J Multi-Row Extension API which provides multiple row operations to BC4J-based web application.
    http://sourceforge.net/docman/display_doc.php?docid=19393&group_id=87369
    http://radio.weblogs.com/0118231/2005/04/20.html#a529

  • Multi Row Delete and then I get a unique contraint violation on my PK

    I have a simple table with 2 columns, one a PK. I have a checkbox style, multi-row delete function setup on this (to be honest, APEX set this up automatically).
    I removed the add/edit functionality to keep just the delete button and delete procedure.
    When I select an item, and then click delete, I get a unique constraint violation that I'm violating my Primary Key.
    How can I fix this, or see what it's doing when it tries to delete the row?

    Hi,
    It sounds as though you haven't properly removed all of the add/edit functionality or that you still have some form of validation and/or computation in place or that you have a trigger that is trying to insert records into, for example, a history table (is the constraint on the table you are deleting from - the error message should tell you this?)
    Check that the only process you have is ApplyMRD and that this is pointing to the correct table and has the correct primary key set. Ensure that this has Conditional Processing set for a Request of "MULTI_ROW_DELETE".
    Check for any validations - there is no need to perform validations if your user can not insert or update data unless you want to check that they've ticked one or more checkboxes.
    Check for processes that could run if the user clicks the Delete button. Validations and processes could be conditional on either the button click or on request = "MULTI_ROW_DELETE".
    Review any triggers that you have on the table to ensure that deletions do not try to insert records into another table where the primary key on that table is not being populated.
    Regards
    Andy

  • Multi Row Form and onload

    Hi,
    I've a wizard based Multi Row Form (MRF) based on a view (on 2 tables) with Instead of triggers to handle the DML. I have an onchange event on one particular Select List based item in each row that simply disables/enables other row items depending on the value. All this is working fine, but I need to repeat the disable/enable of items for each row once the page has loaded.
    My initial thought is to use an onload event in the Page definition, but can and should I be handling this in a Page Process instead (bear in mind that this is a wizard generated MRF)? Also, I need to ensure that new rows (via the Add Row button) are handled correctly. If I go down the onload event route, then is the simplest way just to get an array (getElementsById?) of the items and loop through them? Any thoughts would be most appreciated on the most efficient way to do this.
    Cheers,
    PaulB

    Hi,
    Yes, it appears the same as an onload but, fortunately, doesn't interfere with any existing onload code - you can only have one onload function call for the window object.
    You can loop through the items on the form using something like:
    function disableItems()
    var x = document.getElementsByName("f03");
    var y = document.getElementsByName("f04");
    for (int k = 0; k < x.length; k++)
    if (x(k).value == 'A')
      y(k).disabled = true;
    else
      y(k).disabled = false;
    }This assumes that the select list is in column 3 (which should mean that the SELECT objects should have a name attribute of "f03") and that the item you want to disable/enable is in column 4 ("f04") - so adjust as necessary.
    As you have the same number of items in column 3 and column 4 - the above loops through the ones in column 3, checks the value selected and then disables/enables the item in the same row in column 4.
    Andy

  • Multi Row Edit Forms in BC4J

    How in BC4J JSP can you create a form to edit multiple records at once?
    Using JSP/JDBC its fairly straight forward, but in BC4J it doesn't seem obvious. Does anyone have examples?
    Thanks,
    Matt

    here's what i did while putzing around trying to solve this. it's probably not production quality, but may give you ideas...
    in the BrowseEdit form, i replaced the DataTable tag with my own table (built with RowSetIterate), sequentially (by row) numbering all the input field names just like i'd have had to for a CGI.
    i also changed the jboEvent value.
    <jbo:RowsetIterate datasource="ds" userange="true" >
    <tr>
    <td><%= rwcnt %></td>
    <td>
    <jbo:ShowValue dataitem="Id" />
    </td>
    <td>
    <input value="<jbo:ShowValue dataitem="Site" />" name="Site_<%= rwcnt%>">
    <input value="<jbo:ShowValue dataitem="Site" />" name="_Site_<%= rwcnt%>" type="hidden">
    </td>
    <td>
    <input value="<jbo:ShowValue dataitem="Room" />" name="Room_<%= rwcnt%>">
    <input value="<jbo:ShowValue dataitem="Room" />" name="_Room_<%= rwcnt%>" type="hidden">
    <input value="<jbo:ShowValue dataitem="RowKey" />" name="RowKey_<%= rwcnt%>" type=hidden>
    </td>
    <% rwcnt++; %>
    </tr>
    </jbo:RowsetIterate>
    <input VALUE="TableUpdate" TYPE="HIDDEN" NAME="jboEvent">
    i then modified the DataHandler.jsp to add my new jboEvent. the handler loops thru the rows of data and does a SetAttribute on anything that's changed.
    <jbo:OnEvent name="tableupdate">
    <% String rowcntParam = params.getParameter("RowCount");
    int RowCount = 0;
    if (rowcntParam != null)
    try { RowCount = Integer.parseInt(rowcntParam); }
    catch (Exception ex) { }
    %>
    <% for (int index=1; index < RowCount; index++)
    String RKvar = "RowKey_" + index;
    %>
    <jbo:Row id="csbrow" datasource="ds" action="update" rowkeyparam="<%= RKvar %>" >
    <jbo:AttributeIterate id="atts" datasource="ds" >
    <% // atts is an AttributeDef object....
    String oldVal = params.getParameter("_" + atts.getName() + "_" + index );
    String newVal = params.getParameter(atts.getName() + "_" + index );
    if (oldVal != null && newVal != null && !oldVal.equals(newVal)) {
    %>
    <jbo:SetAttribute datasource="ds" value="<%= newVal %>" />
    <%
    %>
    </jbo:AttributeIterate>
    </jbo:Row>
    <%
    } // end row loop
    %>
    </jbo:OnEvent>
    YMMV,
    cb

  • Multi-row "Drag and Drop" works for some users, not others

          Background: We are working on Win7 SP1 clients, Project Prof. 2010, SP2
          A couple of users have reported that they cannot move ("drag") multiple selected rows in a task sheet, only a single row at a time. Other MS Project users around them (and myself) can move multiple rows with the "Drag"
    feature. "Drag and Drop" is selected in the "Options/Advanced" section of both their local global template and the Enterprise Global.
         To my knowledge, the multiple row selections contain no collapsed summary tasks, in case that might be an issue.
         I'm suspecting some Windows setting is amiss on the offending clients, but wanted to see if anyone else had seen this behavior before in Project Prof. 2010.
         Thanks!
    JTC
    JAckson T. Cole, PMP, MCITP

        Thanks for the response, Shiva!
        User community is on MS Project 2010 (14.0.7011.1000) SP2, MSO (14.0.7128.1000)
        To reproduce the problem, MS Project user will select multiple task rows by selecting first row, then holding MB1, and "sliding" to the last row desired. The problem manifests itself by NOT turning the cursor into the "four-arrow cross"
    after selection is accomplished. If only one row is selected, the ability to move that row alone is available.
         Again, only a couple of users (that have called me!) are seeing it. Their officemates are not having an issue.
         FYI ...
    JTC
    JAckson T. Cole, PMP, MCITP

  • Multi-row editable Detail Component on the same Page as Master (WSG)

    Hello. There was a trick to place editable (with Update button and Delete? checkboxes) Detail Component on the same Page as Master. Something about a Creation of Detail Component in Property Palette Mode (against of Dialog). Can anyone point me please to those hint?
    great thanks,
    Wit.

    Look at the page branches. There will be one or more which goes to the first page. Change it to go to the current page instead of the first page.

  • Multi-Row Form Validations - Cannot Re-Use Phone Nos from select LOV

    1) I need some help with a "Multi-Row" data-entry form (page 9)...I have a select list of phone-no's that user picks from the drop-down lov list on a page multi-row select list-drop down - P9_PHONE_ID (has built in lov). The data form is built on 'site_phone_assign' table.
    However, I need to put a page-level validation where the user CANNOT select a pre-assigned phone id (reuse a phone) that's already been assigned (used) and a record exists in the site_phone_assign table. I built the following page level validation on the multi-row edit form which is built on 'site_phone_assign' table...NOT WORKING!
    PLEASE HELP WITH THE BEST WAY TO DO THIS..Thanks!
    --validation type: Function returning boolean
    <code>
    DECLARE
    v_count pls_integer default 1;
    BEGIN
    IF (:P9_PHONE_ID IS NOT NULL) THEN
    select count(*)
    into v_count
    from datahub.site_phone_assign s
    where s.phone_id = :P9_PHONE_ID
    and s.ASSIGN_START_DATE <= SYSDATE
    AND NVL(s.ASSIGN_END_DATE,SYSDATE+1) >= SYSDATE;
    END IF;
    IF (v_count) > 0 THEN
    RETURN (FALSE);
    ELSE
    RETURN (TRUE);
    END IF;
    END;
    </code>
    2) How can I apply validations on a multi-row edit form page where say - start_date is always less than end_date? Both start/end dates are date-picker type of items.
    3) Can ITEM NOT NULL validation be applied on a multi-row edit page? I guess its page-level validation right? Please advice.
    Edited by: Shravanv on Feb 18, 2010 1:50 PM

    Hello,
    In a Tabular Form you need to loop through the records on the screen, so doing a check on :P9_PHONE_ID doesn't work...
    Patrick Wolf made a general solution for this problem, you can read about it here: http://www.inside-oracle-apex.com/plug-play-tabular-form-handling/
    Regards,
    Dimitri
    http://dgielis.blogspot.com/
    http://www.sumneva.com/

  • How to use same jsp for edit and add form

    Hi,
    I would like to use the same .jsp file for edit and add. I just want to change a few controls based on edit/add mode. How do I configure this in the jsp?

    In the environment I currently have access to do not have similar setup.
    Let say you setup the DFF1 default value to $HEADER.customer_name, the name of the DFF is CUSTOMER_NAME, description can be anything.
    In DFF2, default value should be a SQL, where you can reference the DFF1. For example, SELECT DECODE($FLEX.CUSTOMER_NAME, 'ABC', 1, 'DEF', 2, NULL) FROM dual
    In this case, you can reference the DFF1.

  • Make only the new row in a table editable and other rows display mode.

    Hiii all,
    I am working on the component GSWISET, there is a table view for substitutes, the requirement is to show all the rows in the table view in display mode. Whenever the user clicks the button (Add employee), a search popup triggers and the user selects an employee from that and it will come as a new row in the table view. Here I need to be able to make only the new row editable and all the other rows in display mode.
    Could you please suggest a way to achieve this. Thanks for your time..

    Hi,
    Try with  the code below in.htm page
    data: lv_displaymode  TYPE string.
      IF controller->view_group_context->is_view_in_display_mode( controller ) = abap_true.
        lv_displaymode = 'X'.
      ELSE.
        lv_displaymode = ' '.
      ENDIF.
    if lv_displaymode = 'X'.
    <chtmlb:tableExtension tableId = "Substitutes"
                           layout  = "FIXED" >
      <chtmlb:configTable actions               = "<%= controller->gt_button %>"
                          id                    = "Substitutes"
                          onRowSelection        = "select"
                          selectedRowIndex      = "<%= substitutes->SELECTED_INDEX %>"
                          selectedRowIndexTable = "<%= substitutes->SELECTION_TAB %>"
                          table                 = "//Substitutes/Table"
                          width                 = "100%"
                          selectionMode         = "<%= substitutes->selection_mode %>"                    
                          visibleFirstRow       = "<%= substitutes->VISIBLE_FIRST_ROW_INDEX %>"
                          usage                 = "ASSIGNMENTBLOCK"
                          headerText            = "<%= controller->gv_header_text %>" />
    </chtmlb:tableExtension>
    else.
    <chtmlb:tableExtension tableId = "Substitutes"
                           layout  = "FIXED" >
      <chtmlb:configTable actions               = "<%= controller->gt_button %>"
                          id                    = "Substitutes"
                          onRowSelection        = "select"
                          selectedRowIndex      = "<%= substitutes->SELECTED_INDEX %>"
                          selectedRowIndexTable = "<%= substitutes->SELECTION_TAB %>"
                          table                 = "//Substitutes/Table"
                          width                 = "100%"
                          selectionMode         = "<%= substitutes->selection_mode %>"
                          allRowsEditable       = "TRUE"
                          visibleFirstRow       = "<%= substitutes->VISIBLE_FIRST_ROW_INDEX %>"
                          usage                 = "EDITLIST"
                          headerText            = "<%= controller->gv_header_text %>" />
    </chtmlb:tableExtension>
    endif.
    Regards,
    Gangadhar.S
    Edited by: gangadhar rao on Dec 24, 2010 12:49 PM

  • 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
    ------------------------------------------------------------------------------

  • Report with Row Edit capability

    When creating a report, what are the components that enable row edit capability. A few basic reports I generate do not have this capability. How would I change an existing report to allow row edits and then linking to a form to edit content.
    Thanks,
    BT

    <p>BT,</p>
    <p>If you're looking for reports which contain for every row an extra column with a link to a form to edit content, you will find an example in the Demonstration Application ( look for About the Customers Page). If you're looking for a report with editable fields then you'll need collections, see the following example Taking up Collections.</p>
    <p>If you're changing existing reports, adding an extra column is an easy solution but you will have to build forms if they not exists already. In the case of collections you'll have to rewrite all you're reports queries and build separate DML processes as well.
    Unfortunately, making a report editable is not just a toggle.</p>
    <p>With kind regards,</p>
    <p>Jornica</p>

Maybe you are looking for