Need to perform multi-row update/delete

Gday,
I have a request to have one update button for a multi-row form. Also needed will be a checkbox as part of the row.
The check boxes only purpose is to signify the record should be deleted. Thus I am assuming I cannot use default
apex functionality and must manually build the multi-row form. I guess I would loop through and check to see if a
record is checked delete otherwise loop through and update all columns for that record? I am assuming I should
use the examples in http://www.oracle.com/technology/products/database/application_express/howtos/tabular_form.html
is that all still valid for apex 3.2.1?
Cheers

Hello:
You could also do the following
Generate the tabular form page using the wizard
Delete or not display the 'Delete' button
Delete or not execute the 'ApplyMRD' process
Create a new page process with a sequence higher than the standard MRU processes. Make this process conditional on the 'Submit' button. Use code similar to the one below for this page processfor i in 1..apex_application.g_f01.count loop   --- f01 is the selector checbox, f02 is the hidden column with the table's PK
  delete from emp where empno=apex_application.g_f02(apex_application.g_f01(i));
end loop;Now, when you click 'Submit' records with their selector checkbox checked will be deleted by the newly added page process. The rest of the functionality of the tabular form remains the same.
varad

Similar Messages

  • Conditional Select List in a Report maintained using a Multi Row Update

    I have a SQL Report that is maintained with a "Multi Row Update" process. One of the columns needs to be ether a "Select List" based on a named LOV or just "Text" (Read Only) based on the value in the column. I have the UI working using a case statement and apex_items in me SQL but the Report Column is not marked "Edit" and the "Multi Row Update" process just ignores changes.
    Any help would be great!

    Just curious, why is the first parameter to in third TEXT_FROM_ITEM invocation NULL instead of 20? Also check your first parameter in your ELSE. Shouldn't it be a global number as well?
    Did you try adding a hidden item to your SELECT statement? Something like:
    (case
    when CSSN.KTTR_BILL_STAT_UID = KT_UTIL_PKG.get_kttr_uid_from_ref_val('SESSION_BILL_STAT','SESSION_BILL_STAT_1') then
    apex_item.select_list_from_lov(20,CSSN.KTTR_BILL_STAT_UID,'KTTR_SESSION_BILL_STAT_PRPR','','NO')
    when CSSN.KTTR_BILL_STAT_UID = KT_UTIL_PKG.get_kttr_uid_from_ref_val('SESSION_BILL_STAT','SESSION_BILL_STAT_2') then
    apex_item.select_list_from_lov(20,CSSN.KTTR_BILL_STAT_UID,'KTTR_SESSION_BILL_STAT_PRPR','','NO')
    when CSSN.KTTR_BILL_STAT_UID is null then
    apex_item.text_from_lov(20,'KTTR_SESSION_BILL_STAT')
    else
    apex_item.text_from_lov(20,CSSN.KTTR_BILL_STAT_UID,'KTTR_SESSION_BILL_STAT')
    end) as KTTR_BILL_STAT_DISP,
    apex_item.hidden(30,CSSN.KTTR_BILL_STAT_UID) MIRRORThen in either an Javascript onBlur event on KTTR_BILL_STAT_DISP or in a Page Process assign the value of KTTR_BILL_STAT_DISP to MIRROR.
    Mike

  • Multi Row Update for Tabular Form

    1) I'm trying to understand how the built-in MRU works for tabular forms: While running through every row, does it check for changes before issuing an UPDATE or does it blindly UPDATE every row in the current pagination range?
    2) If I need to write my own Multi Row Update process for tabular forms, could someone give me some tips on how to do that?
    Thanks,
    Pavel

    1) It stored a checksum for each row that it renders. It calculates the checksum again before processing the rows. The UPDATE statement it issues has a predicate like where old_checksum!=new_checksumSo, it only updates the rows that have at least 1 column value that is different (causing the row checksum to be different)
    2) See the howto at http://www.oracle.com/technology/products/database/application_express/howtos/tabular_form.html

  • Z database table needs to have field creation/update/deletion tracked

    Hi,
    I have a Z database table.
    I have a program that gets data from an excel file and uploads the content to the Z database table.
    I need to track the creation/update/deletion of the records in the Z database table.
    The Z database table can also have records changed/updated/deleted manually thru table maintenance. These changes also need to be tracked.
    How do I do this?
    ~ Eric

    Hi
    For a my z-table (called ZFAGTD01), I created the object for change documents, this is the log after generating it:
    Change documents: Display information about generated sources                                                                               
    Change doc. object Z_PROAGE_PRV                                                                               
    Generation on      23.07.2004 11:51:28                                 
                of     SVIL01                                                                               
    Include programs and function modules                                  
    Data declaration, TOP...................... FZAGPCDT                   
    Consisting of............................. FZAGPCDF                   
    and....................................... FZAGPCDV                   
    Update function module..................... Z_PROAGE_PRV_WRITE_DOCUMENT
    Call update function module................ FZAGPCDC                                                                               
    Dictionary structures                                                  
    VZFAGTD01
    Just as you see, the system has created the fm and some includes containing all data it needs to call the fm.
    So u need only to use those includes, just only u need to consider before calling the fm u need to fill:
    - The change flag: usually called UPD_<Z table>;
    - Fill the header Y<ZTABLE> of z-table with old data;
    - Fill the header X<ZTABLE> of z-table with new data;
    - Fill the variables   TCODE, UTIME,  UDATE,  USERNAME,
    - Fill the variable OBJECTID with the key of Z-table
    For example my object is used in my program in this way:
    FORM INSERT_CHANGE_DOCUMENT.
      CHECK FL_CHANGE_DOC = 'X'.
      CHECK SY-SUBRC = 0.
      CONCATENATE XZFAGTD01-MANDT XZFAGTD01-BUKRS XZFAGTD01-GJAHR
                                              XZFAGTD01-BELNR INTO OBJECTID.
      TCODE = SY-TCODE.
      UTIME = SY-UZEIT.
      UDATE = SY-DATUM.
      USERNAME = SY-UNAME.
    * Load old data: header
      IF ZFAGTD0K IS INITIAL.
        CLEAR YZFAGTD0K.
      ELSE.
        SELECT SINGLE * INTO YZFAGTD0K
                        FROM ZFAGTD0K WHERE BUKRS   = XZFAGTD01-BUKRS
                                        AND GJAHR   = XZFAGTD01-GJAHR
                                        AND BELNR   = XZFAGTD01-BELNR.
      ENDIF.
    * Load old data: items
      SELECT * INTO TABLE YZFAGTD01 FROM ZFAGTD01
                                FOR ALL ENTRIES IN XZFAGTD01
                                       WHERE BUKRS   = XZFAGTD01-BUKRS
                                          AND GJAHR   = XZFAGTD01-GJAHR
                                          AND BELNR   = XZFAGTD01-BELNR
                                          AND POSNR_P = XZFAGTD01-POSNR_P.
      SORT: XZFAGTD01 BY POSNR_P,
            YZFAGTD01 BY POSNR_P.
    * Check if heade was changed
      IF YZFAGTD0K <> ZFAGTD0K.
        UPD_ZFAGTD0K = 'U'.
      ELSE.
        CLEAR UPD_ZFAGTD0K.
      ENDIF.
      UPD_ZFAGTD01 = 'U'.
      PERFORM CD_CALL_Z_PROAGE_PRV.
      REFRESH XZFAGTD01.
    ENDFORM.                    " INSERT_CHANGE_DOCUMENT
    Max

  • Multi Row update using pl/sql anonymous block process

    Does anyone have an example of multi row update using a pl/sql anonymous block process?
    The reason I can not use the apex mru process is that the table in questions has a five field key.
    My attempts have failed with a bad number.
    Thanks,
    Gary

    Hi Gary,
    can y<ou pls send the definition of thet table and the UPDATE sql.
    It is a littel difficult like this.
    We need more info.
    BR,
    Lutz
    =;-)

  • Multi Row Update Error

    Hello Everyone
    I get the following error when attempting to perform a multi row update. Is anyone able to advise what the issue is?
    Error in mru internal routine: ORA-20001: Error in MRU: row= 1, ORA-20001: ORA-20001: Current version of data in database has changed since user initiated update process. current checksum = "F71A42E70B86E7C8A14343633169264E", item checksum = "43A7146FE322237B683C4139D66E4DC5"., update "CSS_PRODUCTIVITY"."CENTREDATAASSOCIATIONS_TEST" set "MONTH" = :b1, "TM1_PREMISE_NAME" = :b2,

    hi oolite
    i can't help you with your problem
    but i have one suggestion
    i don't know whether you created your tabular form with the wizard or manually
    when you use the wizard
    i would suggest that you try to build a tabular form manully
    in fact it is a little bit more work but i think all what you have done by yourself
    is more transparent and errors should be found easier
    other suggestions take a look
    Error in mru internal routine: Error in MRU
    Error in mru internal routine
    or search for error on mru
    sorry that i can't tell you more

  • Multiple Users - Tabular Forms - Multi Row Update.....

    Greetings All,
    Any comments, assistance, links, or even answers on the following situation would be much appreciated....
    I have a Application Express 4.0 (Could upgrade to 4.1 if it would help this issue)
    I have a wizard generated tabular form on a table, the form will show up to 600 records (rows) on a page.
    Part 1:
    The situation:
    User 1: Opens the form and brings up latest data set.
    User 2: Opens the form and brings up the latest data set.
    User 1: Changes data for record 1
    User 1: Hits submit. The data is saved.
    User 2: Changes data for record 1
    User 2: Changes data for record 2
    User 2: Hits submit. The following error is produced:
    Error in mru internal routine: ORA-20001: Error in MRU: row= 1, ORA-20001: ORA-20001: Current version of data in database has changed since user initiated update process. current checksum = "3EE15D666E9DBDC59D34CE4CFB3950C0", item checksum = "922DA12AE1E3D8856695745C4D2830D2"., update "<Removed> Error Unable to process update.
    When this error occurs no updates get made to the table.
    I understand that row 1 can not be updated, however I would like row 2 (and all other rows where there is no conflict) to be updated. I would then like to be able to highlight in the form the rows that failed to update (And reload the data in them from the DB).
    Is this something I can achieve using my own MRU procedure, or in another way?
    Can anyone point me to a good example, tutorial or book showing how to do this.
    Thanks!

    Thanks for the comments guys.
    I have solved my issue in two different ways. Way one was not so clever, but worked, involving writing my own process for handling multi-row updates and would allow a user to fill in data for multiple rows (say 10) and have only the row with changed data rejected. V2 takes a very different approach, it uses Javascript, AJAX and the DOM model of the form to check when data is changed / updated by the user. Essentially, when a user enters an updateable form element, a AJAX request checks if the data has been changed. If it has, the value in the form is updated, and the color changed to blue to alert the user. When the user updates the data item, and AJAX request posts the new value to the database, where it is inserted. I had to build a bit of a framework to make this useable, and have to use dynamic sql in the database packages, but it work really well for what my users need! There are limitations (Currently it only supports date fields, text fields and drop down lists) but it works for me. It also involves traffic back and forth with the server each time a user moves the focus to a new form element, but it is a very light request and the work to do the select / updates in oracle is all based on a primary ke, so is ver quick.
    Solution 1: (Would need to be made much more elegant):
    1: Create a new text Item called P5_MESSAGE (To display error / success messages)
    2: Create a new process:
    DECLARE
    l_cks wwv_flow_global.vc_arr2;
    j pls_integer := 1;
    vUpdatedCount number := 0;
    vErrorCount number:=0;
    vMessage varchar2(4000):='';
    BEGIN
    select wwv_flow_item.md5(firstname,lastname,age) cks
    BULK COLLECT INTO
    l_cks
    from VA_TEST1 ;
    for i in 1..l_cks.count
    loop
    if htmldb_application.g_fcs(i) != l_cks(i) then
    -- Log error
    vErrorCount:=vErrorCount+1;
    vMessage:=vMessage||'Could not update row with ID:' || htmldb_application.g_f01(i) || '. This data has been updated by another user since you retrieved the data.<br>';
    else
    -- Do insert
    vUpdatedCount:=vUpdatedCount+1;
    update VA_TEST1
    set
    FIRSTNAME = replace(htmldb_application.g_f02(i),'%'||'null%',NULL)
    ,LASTNAME = replace(htmldb_application.g_f03(i),'%'||'null%',NULL)
    ,AGE = replace(htmldb_application.g_f04(i),'%'||'null%',NULL)
    where ID = htmldb_application.g_f01(i);
    end if;
    end loop;
    :P5_MESSAGE := vMessage;
    end;
    Note, this currently updates every row, even if the data is unchanged, this could be fixed by comparing the checksum of the data to be inserted with the checksum of the data in the table, if the same then no need to insert.
    Solution 2:
    Too complex to explain in detail here, if you need to implement this then let me know.

  • More than one multi row update region on one page - how ?

    Hi.
    I have a page on which i want to use two multi row update regions ( updateable report with three buttons like new/delete/save ).
    But i do not find a setting for the MRU-Process oder "Add-New-Line" Process that lets me reference this process to a specific region.
    The problemm is, that after adding the second region to the page, the "Add-New-Line" - process only adds the new line to the second region and not to the first region anymore.
    How can i make two processes where one adds a line to region1 and the second adds to region2. Same question is with updates too. How can i say that process on updates the changes in region1 and the other process updates the changes in region2 ?
    Thanks for help.
    greetings
    bernd

    Unfortunately, the builtin MRU process supports only 1 updatable region per page.

  • Multi row update not occuring

    I have created a tabular form using the wizard. This form will show three columns (and in addition a checkbox). I would like this form to be updateable in only certain instances. Because of that, I select the columns twice. I make one of them updateable, and the other read-only. Then I have a conditional display for the columns, so that the updateable columns are shown if a status variable in my page is 'EDIT' and the read-only columns are shown otherwise.
    The problem is that the multi row update does not occur. If I show one of the read-only columns when in the edit mode, the update is done. Also it is executed if I show one of the editable fields when the page is not in edit mode. But when I show only the editable fields in edit mode, and only the read-only fields when in read-only mode, the process is not run.
    What can I do about this? Why doesn't the multi row update occur?

    An alternative is to control the updates by controlling the buttons. Only show the submit/update button if the status on the page is "EDIT".

  • Multi-Row Update form with wrapped fields

    Hi,
    I have a multi-row update form with too many fields to fit on the screen without having to scroll. Is it possible to wrap the extra fields onto a 2nd line.
    So each DB record will actually span 2 srceen rows and fit nicely into my browser ??
    Thanks for any help,
    Brandon

    It is possible, but would require some serious work on the report template, to create a custom row template.
    I started to do this at http://htmldb.oracle.com/pls/otn/f?p=24317:191 but realized that it is hard work. Also, where would you show the headings for the second part of the row (split onto the next line)?
    Instead, I would use the Show/Hide columns technique (client-side scripting) to reduce the number of columns shown. Search for it on this forum. Carl and I have some good examples out there.

  • Multi-row updates

    Why is it necessary to include the if statement in the below multi-row update process?
    I spent a large amount of time puzzling over this.
    Thanks!
    Bill
    for i in 1..htmldb_application.g_f01.count loop
    if htmldb_application.g_f01(i) is not null then
    update my_table
    set
    column_1 = (replace(htmldb_application.g_f02(i),'%'||'null%',NULL))
    where id = htmldb_application.g_f01(i);
    end if;
    end loop;

    Hi Marc,
    Here's my query with the key items in bold. There are no null values in the g.grid field (it's the primary key). Thanks.
    Bill
    select g.GRID,
    g.FAANUM,
    '<a href="javascript:submitDate(''' || g.grid || '''); ">' ||
    decode(decode(g.date_sub_3, null, 1, null),
    1, decode(g.date_sub_4, null, '-', to_char(g.date_sub_4, 'fmMM/fmDD/YY')),
    decode(g.date_sub_4, null, decode(g.date_rec_3, null, '-',
    (30 - trunc(sysdate - g.date_rec_3))
    || '&nbsp' || decode(trunc((32 - trunc(sysdate - g.date_rec_3))/6),
    6, '<img src="#FLOW_IMAGES#greenN.gif" alt="You must submit this by: ' ||
    to_char(g.date_rec_3 + 30,'fmMM/fmDD/YY') || '">',
    5, '<img src="#FLOW_IMAGES#greenN.gif" alt="You must submit this by: ' ||
    to_char(g.date_rec_3 + 30,'fmMM/fmDD/YY') || '">',
    4, '<img src="#FLOW_IMAGES#greenN.gif" alt="You must submit this by: ' ||
    to_char(g.date_rec_3 + 30,'fmMM/fmDD/YY') || '">',
    3, '<img src="#FLOW_IMAGES#greenN.gif" alt="You must submit this by: ' ||
    to_char(g.date_rec_3 + 30,'fmMM/fmDD/YY') || '">',
    2, '<img src="#FLOW_IMAGES#yellowN.gif" alt="You must submit this by: ' ||
    to_char(g.date_rec_3 + 30,'fmMM/fmDD/YY') || '">',
    1, '<img src="#FLOW_IMAGES#redN.gif" alt="You must submit this by: ' ||
    to_char(g.date_rec_3 + 30,'fmMM/fmDD/YY') || '">',
    '<img src="#FLOW_IMAGES#past.gif" alt="You failed to submit this by: ' ||
    to_char(g.date_rec_3 + 30,'fmMM/fmDD/YY') || '">')),
    to_char(g.date_sub_4,'fmMM/fmDD/YY'))) || '</a>' "DATE_SUB",
    g.DATE_REC,
    g.REC_BY,
    g.GRIEVANT "Grievant",
    '<a href="f?p=&APP_ID.:9:' || :APP_SESSION || '::::P9_GRID:' || g.GRID || ' target="_blank">'||substr(g.topic,1,20)||'..</a>' "Topic",
    y.word,
    '<a href="f?p=&APP_ID.:9:' || :APP_SESSION || '::::P9_GRID:' || g.GRID || ' target="_blank"><img src="#FLOW_IMAGES#view2.gif" border="0"></a>' "VIEW",
    g.reply_by,
    g.natca,
    trunc(g.reply_by-sysdate + 1,0) "Days",
    g.grid "Notes",
    null "Withdraw",
    (select count(*) from gr_blob_intersect where grid = g.grid) "NumAtt",
    decode(g.article, 0, 'E', 1, 'U') "Type_2",
    '<a href="f?p=&APP_ID.:29:' || :APP_SESSION || '::::P29_GRID:' || g.GRID || ' target="_blank"><img src="#FLOW_IMAGES#xxx.gif" border="0"></a>' "VIEW/XXX",
    htmldb_item.hidden(1,g.grid) || htmldb_item.text(2,g.arb_no,6) "Arb No",
    htmldb_item.select_list_from_query(3, g.approval, 'select distinct text d, aid r from gr_approval order by aid',null,'NO') "Approval",
    htmldb_item.text(4,g.advocate,6) "Advocate",
    htmldb_item.date_popup(5,null,g.date_arb_sched,'DD-MON-YY',8) "Arb Date"
    from GRIEVANCE g, yesno y
    where y.id = nvl(g.ORAL,0)
    and g.gr_status = 4
    and (g.facility_id in (select id from gr_facility_lookup where region_id = (select f.region_id from gr_emp g, gr_facility_lookup f where upper(username) = :APP_USER and g.facility_id = f.id)) or g.facility_id = 3)
    and g.status_id = 1
    order by g.reply_by_4

  • About Multi Row Update...

    APEX support Multi Row Update, but it is only support have two or fewer columns making up the primary key. now i want to use 3 columns as primary key to update datas, i how to implement it in APEX? thanks
    · Table Owner: The schema name for the owner of the table.
    · Table Name: Enter the table name or view. MRD’s and MRU’s can only dynamically build SQL statements for a single table or view.
    · Primary Key Column: This is the first column of the primary key for the table. It is used for building the WHERE clause for the dynamic statement.
    · Second Key Column: This is the column name for the second database column making up the primary key for the table. The MRU and MRD processes can only be used for tables that have two or fewer columns making up the primary key.
    Edited by: user8016603 on 2011-3-14 上午1:51

    check {message:id=9369070}

  • Multi Row Update

    I have a tabular form for multi row inserts, updates and deletes on one table.
    I have a trigger that inserts the user name and sysdate when a new line is inserted. I am trying to do the same when a line is updated, but all lines are being updated.
    Any pointers
    Gus

    Gus,
    you will need to retrieve the primary key as a hidden field in your tabular form. you then use this promary key in your update triggers where clause to restrict to the current row.

  • Number of Rows Updated/Deleted/Inserted

    Hi
    To audit what rows inserted , deleted and updated in a particular table i am using the below code . However is there a way i can just get the count of rows inserted , updated and deleted based on date or user . Also please tell me how can i get the terminal and machine name of the USER.
    PACKAGE:
    CREATE OR REPLACE package audit_pkg
    as
    procedure check_val( l_tname in varchar2,
    l_cname in varchar2,
    l_new in varchar2,
    l_old in varchar2 , action in varchar2);
    procedure check_val( l_tname in varchar2,
    l_cname in varchar2,
    l_new in date,
    l_old in date , action in varchar2);
    procedure check_val( l_tname in varchar2,
    l_cname in varchar2,
    l_new in number,
    l_old in number , action in varchar2 );
    end;
    PACKAGE BODY
    CREATE OR REPLACE package audit_pkg
    as
    procedure check_val( l_tname in varchar2,
    l_cname in varchar2,
    l_new in varchar2,
    l_old in varchar2 , action in varchar2);
    procedure check_val( l_tname in varchar2,
    l_cname in varchar2,
    l_new in date,
    l_old in date , action in varchar2);
    procedure check_val( l_tname in varchar2,
    l_cname in varchar2,
    l_new in number,
    l_old in number , action in varchar2 );
    end;
    TRIGGER :
    /* Formatted on 2010/03/21 01:04 (Formatter Plus v4.8.8) */
    CREATE OR REPLACE TRIGGER trigger_emp_up
    AFTER UPDATE
    ON emp
    FOR EACH ROW
    BEGIN
    audit_pkg.check_val ('EMP', 'EMPNO', :NEW.empno, :OLD.empno, 'UPDATE' );
    audit_pkg.check_val ('EMP', 'ENAME', :NEW.ename, :OLD.ename, 'UPDATE');
    audit_pkg.check_val ('EMP', 'JOB', :NEW.job, :OLD.job, 'UPDATE');
    audit_pkg.check_val ('EMP', 'MGR', :NEW.mgr, :OLD.mgr, 'UPDATE');
    audit_pkg.check_val ('EMP', 'HIREDATE', :NEW.hiredate, :OLD.hiredate, 'UPDATE');
    audit_pkg.check_val ('EMP', 'SAL', :NEW.sal, :OLD.sal, 'UPDATE');
    audit_pkg.check_val ('EMP', 'COMM', :NEW.comm, :OLD.comm, 'UPDATE');
    audit_pkg.check_val ('EMP', 'DEPTNO', :NEW.deptno, :OLD.deptno, 'UPDATE');
    END;
    /* Formatted on 2010/03/21 01:04 (Formatter Plus v4.8.8) */
    CREATE OR REPLACE TRIGGER trigger_emp_in
    AFTER INSERT
    ON EMP
    FOR EACH ROW
    BEGIN
    audit_pkg.check_val ('EMP', 'EMPNO', :NEW.empno, :OLD.empno, 'INSERT');
    audit_pkg.check_val ('EMP', 'ENAME', :NEW.ename, :OLD.ename, 'INSERT');
    audit_pkg.check_val ('EMP', 'JOB', :NEW.job, :OLD.job, 'INSERT');
    audit_pkg.check_val ('EMP', 'MGR', :NEW.mgr, :OLD.mgr, 'INSERT');
    audit_pkg.check_val ('EMP', 'HIREDATE', :NEW.hiredate, :OLD.hiredate, 'INSERT');
    audit_pkg.check_val ('EMP', 'SAL', :NEW.sal, :OLD.sal, 'INSERT');
    audit_pkg.check_val ('EMP', 'COMM', :NEW.comm, :OLD.comm, 'INSERT');
    audit_pkg.check_val ('EMP', 'DEPTNO', :NEW.deptno, :OLD.deptno, 'INSERT');
    END;
    /* Formatted on 2010/03/21 01:03 (Formatter Plus v4.8.8) */
    CREATE OR REPLACE TRIGGER trigger_emp_de
    AFTER DELETE
    ON EMP
    FOR EACH ROW
    BEGIN
    audit_pkg.check_val ('EMP', 'EMPNO', :NEW.empno, :OLD.empno, 'DELETE');
    --audit_pkg.check_val ('EMP', 'ENAME', :NEW.ename, :OLD.ename);
    --audit_pkg.check_val ('EMP', 'JOB', :NEW.job, :OLD.job);
    --audit_pkg.check_val ('EMP', 'MGR', :NEW.mgr, :OLD.mgr);
    --audit_pkg.check_val ('EMP', 'HIREDATE', :NEW.hiredate, :OLD.hiredate);
    --audit_pkg.check_val ('EMP', 'SAL', :NEW.sal, :OLD.sal);
    --audit_pkg.check_val ('EMP', 'COMM', :NEW.comm, :OLD.comm);
    --audit_pkg.check_val ('EMP', 'DEPTNO', :NEW.deptno, :OLD.deptno);
    END;
    Thanks

    Hi
    I'm not sure but i don't see that you are "auditing" time of the change and user to. You should expand your audit table ( and package )
    with time and user atribut .
    User , terminal , machine and much other things you can retrieve with sys_context function. For time you can use systimestamp function for example ..
    http://www.psoug.org/reference/sys_context.html ( quite good reference )
    For auditing things like machine you should be careful , if you are accesing your app through some http server you wil get the machine on which the server runs
    and not the "client machine" from which the client has access the application throug that server .
    T

  • Multi Row Update set fields disabled

    Hi
    I have a multi-row table and the functionality I need is when the user changes a value in a drop down list it either enables or disables certain fields.
    I have set the depends on value for my fields to the drop down list and checked the clear/refresh box. On each field I have tried
    #{bindings.dropdown.inputValue=='codeA'} and also
    #{row.dropdown=='codeA'}
    Each of these work as when the form is first loaded and the first row selected, the correct fields are disabled. However if I add a new row or change the dropdown, nothing happens.
    Any ideas?
    Thanks
    Rich

    Steven,
    I have tried this. It simply adds in row.MyList. Here is the field that in generates
    <af:selectOneChoice id="MinimumEntryFtTerritoryCode" value="#{row.FtTerritoryCode}"
    partialTriggers = "MinimumEntryMetCode" required="#{(bindings.MinimumEntryFtTerritoryCode.mandatory) and (!MinimumEntryCollectionModel.newRow)}" readOnly="#{!(data.StudentsPageDef.StudentsCustomerStatus.inputValue=='ACTIVE')}" disabled="#{row.MetCode!='PRE_ASS'}" valign="top">
    <af:selectItem value="" label="" rendered="#{!((bindings.MinimumEntryFtTerritoryCode.mandatory) and (!MinimumEntryCollectionModel.newRow))}" />
    <!-- DEBUG:BEGIN:DYNAMIC_DOMAIN_OPTIONS : default/item/dynamicDomainOptions.vm -->
    <af:forEach var="row2" items="#{bindings.FndTerritoriesVOLookup.rangeSet}" >
    <af:selectItem label="#{row2.TerritoryShortName}" value="#{row2.TerritoryCode}"/>
    </af:forEach>
    <!-- DEBUG:END:DYNAMIC_DOMAIN_OPTIONS : default/item/dynamicDomainOptions.vm-->
    </af:selectOneChoice>
    It all looks like it should work but when I change MetCode in the list, everything stays disabled.
    Cheers
    Rich

Maybe you are looking for

  • MD04 - How to create a requirement in MD04 for a scheduling agreement

    Hi, Pls advice How to create a requirement in MD04 for a scheduling agreement. pls mention the steps and t codes. thanks in advance.

  • Can't get TP-Link Tl-WN321G Wlan-USB-Stick to work.

    I've recenetly bought the mentioned USB-Wlan-Stick as I thought that it was well supported in Linux, however, I can't get it to work. Any help would be appreciated I've installed rt73-cvs from the AUR, rt2x00-rt71w-fw form Core (rt73-cvs depends on t

  • Photo booth/Skype on ipad2 keeps on crashing.

    Whenever I tried to open them the application ether crashes or just jammed. I dont know why !!! Kindly note that I  have the latest update on it V 4.3.2 Thanks,

  • InDesign Welcome Screen

    When I open CS3 InDesign, a blank Welcome screen pops up and will not go away. When I manually close it, my InDesign tool menu is grayed out across top. Unusable. Has been happening last two weeks. Was fine before.  I've reinstalled my CS3 two times

  • HT2292 computer/itunes does not recognize device any longer, why?

    i had no issues before updating my iphone 4s and itunes this week 05/26/13-05/31/13 now my computer doesn't recognize my iphone nor does itunes, can't even charge the phone on a computer,  have been trying to fix this with all these steps, nothing wo