12633 LCRs  equal 12633 rows ?

Hi Experts,
I found info from alert. messags as
Fri Dec 26 10:59:25 2008
C001: large txn detected (12633 LCRs), xid: 0x000d.019.0002ef86
Fri Dec 26 11:19:55 2008
C001: large txn detected (15030 LCRs), xid: 0x0012.01b.00038092
Fri Dec 26 11:50:22 2008
C001: large txn detected (15115 LCRs), xid: 0x000c.014.00035d92
After above message , I got lots of error message as Propagation Schedule for (STRMADMIN.STREAMS_CAPTURE, "STRMADMIN"."STREAMS_APPLY"@sale.net) encountered following error: ORA-23603: STREAMS enqueue aborted due to low SGA and stop propagation.
It means 12633 LCRs( equal 12633 rows ?) is big block of transtaction and need to divided inot small block from front application?
we use oracle 10g R4 in window 2003 32 bit. we alreset 2.5 G for SGA. our bi-direction support a from application.
From advisor, we got " The SGA was adequately sized." if there are no big dataload, we see this message as Metrics "Database Time Spent Waiting (%)" is at 98.86491 for event class "other" or "Configuration"
What do we need to do?
Oracle support states that Avoid large transactions with Streams. I want to know how much size transaction is supported by oracle stream in window 2003 32 bit.
such 12633 LCRs is it OK?
Thanks for help!!
Jim
Edited by: user589812 on Dec 26, 2008 10:30 AM
Edited by: user589812 on Dec 27, 2008 5:31 PM

same problem, data not replicated.
its captured,propagated from source,but not applied.
also no apply errors in DBA_APPLY_ERROR. Looks like the problem is that LCRs propagated from source db do not reach target queue.can i get any help on this?
queried results are as under:
1.at source(capture process)
Capture Session Total
Process Session Serial Redo Entries LCRs
Number ID Number State Scanned Enqueued
CP01 16 7 CAPTURING CHANGES 1010143 72
2. data propagated from source
Total Time Executing
in Seconds Total Events Propagated Total Bytes Propagated
7 13 6731
3. Apply at target(nothing is applied)
Coordinator Session Total Total Total
Process Session Serial Trans Trans Apply
Name ID Number State Received Applied Errors
A001 154 33 APPLYING 0 0 0
4. At target:(nothing in buffer)
Total Captured LCRs
Queue Owner Queue Name LCRs in Memory Spilled LCRs in Buffered Queue
STRMADMIN STREAMS_QUEUE 0 0 0

Similar Messages

  • To count  no of rows returned into ResultSet

    How to count the no of rows of a resultset

    Try this way
    rs = stmt.executeQuery(query);
    rs.last(); //move to the last row
    numRows = rs.getRow(); // equal to row count
    rs.beforeFirst(); // set the position of the cursor before the the first record for processing

  • Storing rows returned back in Memory.Urgent Help please

    I have a method is thats all information from the Database and I need to hold this data
    in a HashMap of some sort of data structure
    Lets suppose this result set returns 5 rows.I need to hold all 5 rows in a datastructure.
    The variable f_OrderID is the principal and this should return back all values associated with it.
    I cant use HashMap as the key:f_OrderID is always the same,
    Key f_orderID
    Value :f_EffTs,f_ClrAcct f_MsgSeqNum
    Please can anyone help me how to store this in memory,
    using the same f_OrderID but with different values?
    public void getAcctChgDataFromDB(String orderNo,String indicator){
         if((rs == null) ){
                       logger.equals("No rows returned for Order No " + orderNo);
                       throw new AcctChgException("No rows returned for Order No " + orderNo );
                  }else
                                 while(rs.next()){
                                      f_OrderID  = rs.getString("FixOrderID");
                                      f_EffTs    = rs.getString("EffTs");
                                      f_ClrAcct  = rs.getString("ClrAcct");
                                      f_MsgSeqNum = rs.getString("FixMsgSeqNum");
             } catch (Exception e) {
                   e.printStackTrace();
       

    well i fell
    List<Map<String,Object>> or
    List<CustomDTOBean>could be a specific data structure which you can look for.
    where List would have reference to 5 Objects(Row) and each object could be a Map or a CustomDTO.If we consider map it would be like structure something like
    key=TABLE_COLUMN_NAME
    value=TABLE_COLUMN_VALUE

  • Row level ppr in advanced table

    Hi,
    my requirement is as follows...
    for example
    One dept lov is there, and two more fields are there, one is LOV and another one is Message text input.
    if I select 10 in DEPT lov need t show lov field and hide text field if i select 20 need tod show text field and hide lov field.
    for this i wrote code, but problem is this effecting for every row.
    requirement need to effect for that current row only.
    pls check below code and advice
    in CO at PFR
    if (pageContext.isLovEvent())
    OAApplicationModule oa=(OAApplicationModule)pageContext.getApplicationModule(webBean);
    String rowReference =
    pageContext.getParameter(OAWebBeanConstants.EVENT_SOURCE_ROW_REFERENCE);
    Serializable[] parameters = { rowReference };
    // Pass the rowReference to a "handler" method in the application module.
    oa.invokeMethod("initPPRevent", parameters);
    at AM
    public void initPPRevent(String rowReference)
    OARow row1 = (OARow)findRowByRef(rowReference);
    if (row1 != null)
    String Action=(String)row1.getAttribute("Action");
    System.out.println("reserveMethod"+Action);
    xxpdpVORowImpl row = (xxpdpVORowImpl)findRowByRef(rowReference);
    // String jname = (String)row.getName2();
    // xxpdpVORowImpl invViewVO= (xxpdpVORowImpl)getxxpdpVO1();
    if(Action.equals("10"))
    row.setAttribute("attrb1", Boolean.TRUE);
    row.setAttribute("attrb2", Boolean.FALSE);
    else
    row.setAttribute("attrb1", Boolean.FALSE);
    row.setAttribute("attrb2", Boolean.TRUE);
    }

    Hi ,
    when value selected from LOV ,fire some action ,
    then redirect to same page ,
    in process request get the value of LOV which is selected
    based on value hide or show the fields .
    Thanks
    Raju

  • Error while fetching lcr.get_logon_user in dml handler.

    Hi all,
    beacuse of lcr.get_logon_user am getting error in executing this procedure.
    CREATE OR REPLACE PROCEDURE history_dml(in_any IN SYS.ANYDATA) 
    IS
      lcr   SYS.LCR$_ROW_RECORD;
      rc    PLS_INTEGER;
    BEGIN
      -- Access the LCR
      rc := in_any.GETOBJECT(lcr);
      -- Insert information about the LCR into the history_row_lcrs table
      INSERT INTO strmadmin.history_row_lcrs VALUES
       (SYSDATE, lcr.GET_SOURCE_DATABASE_NAME(), lcr.GET_COMMAND_TYPE(),  
        lcr.GET_OBJECT_OWNER(), lcr.GET_OBJECT_NAME(), lcr.GET_TAG(),
        lcr.GET_TRANSACTION_ID(), lcr.GET_SCN(), lcr.GET_COMMIT_SCN,
        lcr.GET_VALUES('old'), lcr.GET_VALUES('new', 'n'),lcr.GET_LOGON_USER() );
      --  Apply row LCR
      lcr.EXECUTE(true);
    END;I need the "logon user" also in my log table while doing the dml, but when i add "lcr.GET_LOGON_USER() " into my procedure, it gives me an error saying "PLS-00302: component 'GET_LOGON_USER' must be declared".
    Please help.
    Kapil

    Hi Kapil,
    There are two types of stream objects..
    1.SYS.LCR$_DDL_RECORD
    2.SYS.LCR$_ROW_RECORD
    Summary of LCR$_ROW_RECORD Subprograms     
    Subprogram     Description
    "GET_COMMAND_TYPE Member Function"     Returns the command type of the LCR
    "GET_OBJECT_NAME Member Function"     Returns the name of the object that is changed by the LCR
    "GET_OBJECT_OWNER Member Function"     Returns the owner of the object that is changed by the LCR
    "GET_SCN Member Function"     Returns the system change number (SCN) of the LCR
    "GET_SOURCE_DATABASE_NAME Member Function"     Returns the source database name.
    "GET_TAG Member Function"     Returns the tag for the LCR
    "GET_TRANSACTION_ID Member Function"     Returns the transaction identifier of the LCR
    "IS_NULL_TAG Member Function"     Returns Y if the tag for the LCR is NULL, or returns N if the tag for the LCR is not NULL
    "SET_COMMAND_TYPE Member Procedure"     Sets the command type
    "SET_OBJECT_NAME Member Procedure"     Sets the name of the object that is changed by the LCR
    "SET_OBJECT_OWNER Member Procedure"     Sets the owner of the object that is changed by the LCR
    "SET_SOURCE_DATABASE_NAME Member Procedure"     Sets the source database name of the object that is changed by the LCR
    "SET_TAG Member Procedure"     Sets the tag for the LCR
    Summary of LCR$_DDL_RECORD Subprograms     
    Subprogram     Description
    "EXECUTE Member Procedure"     Executes the LCR under the security domain of the current user
    "GET_BASE_TABLE_NAME Member Function"     Returns the base (dependent) table name
    "GET_BASE_TABLE_OWNER Member Function"     Returns the base (dependent) table owner
    "GET_CURRENT_SCHEMA Member Function"     Returns the default schema (user) name
    "GET_DDL_TEXT Member Procedure"     Gets the DDL text in a CLOB
    "GET_LOGON_USER Member Function"     Returns the logon user name
    "GET_OBJECT_TYPE Member Function"     Returns the type of the object involved for the DDL
    "SET_BASE_TABLE_NAME Member Procedure"     Sets the base (dependent) table name
    "SET_BASE_TABLE_OWNER Member Procedure"     Sets the base (dependent) table owner
    "SET_CURRENT_SCHEMA Member Procedure"     Sets the default schema (user) name
    "SET_DDL_TEXT Member Procedure"     Sets the DDL text
    "SET_LOGON_USER Member Procedure"     Sets the logon user name
    "SET_OBJECT_TYPE Member Procedure"     Sets the object typeYou are refering wrong object for your get function.
    Thanks...

  • JTable:  Howto: Row color depending on value

    Hi all
    I would like to write a cell renderer that changes the background color of a row (or indivicual cells) depending on the value in one of the table columns. For example, if the value in column 'recursive' of a given row is 'true' then make the row (cell) backgroundd grey. if 'false' make white.
    I ve been able to write a simple cell renderer:
    public class colorTableCellRenderer extends DefaultTableCellRenderer
    java.awt.Color recursiveBG = new java.awt.Color(240, 240,240);
    public colorTableCellRenderer()
    super();
    public void setValue(Object value)
    String text = (String)value;
    this.setBackground(recursiveBG);
    this.setText(text);
    But i am lost on how to actually check the value of the other column so I can determine which color to choose.
    Help is greately appreciated.
    Cheers,
    michael

    Hi Laszlo
    Ok, I think this needs an explanation. Here is what I want to do:
    1. Depending on the value of column 0 compared to an external value (referenced), I want to mark a row by setting the background of the row to recursiveBG. All others should have a white background.
            if(selectedPerson.equals(sourceID)) // row is not recursive
              this.setBackground(Color.white);
            else // row IS recursive
              this.setBackground(recursiveBG);
              }This should just set the background color of the cell. If I select the row, the 'normal' behaviour should mark the row blue (or whatever is standard). Your counting is right, these states should be accomodated for.
    Current full code is below:
    public class colorTableCellRenderer extends DefaultTableCellRenderer
      java.awt.Color recursiveBG = new java.awt.Color(240, 240,240);
      int recursiveColumn = 4;
      String recursiveID = null;
      Connect connectRef = null;
      public colorTableCellRenderer(Connect connectRef)
        super();
        this.connectRef = connectRef;
      public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column)
            java.awt.Color recursiveColor = new java.awt.Color(240,240,240);
            String myVal = (String)value;
            this.setText(myVal);
            recursiveID = (String)table.getValueAt(row, recursiveColumn);
            String selectedPerson = connectRef.getSelectedPersonPID();
            String sourceID = (String)table.getValueAt(row, 6);
            if(selectedPerson.equals(sourceID)) // row is not recursive
              this.setBackground(Color.white);
            else // row IS recursive
              this.setBackground(recursiveBG);
              return this;
    [/CODE]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Need Help  in converting LCR to UPDATE when ORA-0001 received during apply

    Currently I have streams (one-way) set up between two sites (Site A and B).
    Data is inserted at Site A from an application. There is a possibility that the row already exists at Site B with another set of values resulting in Apply getting failed with ORA-0001 error. I have the folllowing DML_HANDLER to update the row at Site B when a row exists in Site B.
    ++++++++++++++++++++++++
    create or replace procedure dept_ora_001 ( in_any sys.anydata)
    is
    lcr sys.lcr$_row_record;
    old_val sys.lcr$_row_list;
    new_val sys.lcr$_row_list;
    rc pls_integer;
    cmd_type varchar2(100);
    v_col_deptno sys.anydata;
    v_val_deptno number ;
    v_col_lastmodified sys.anydata;
    v_val_lastmodified date;
    v_curr_val_lastmodified date;
    pExist number;
    begin
    rc := in_any.GetObject(lcr);
    cmd_type := lcr.get_command_type();
    v_col_deptno := lcr.get_value('NEW','DEPTNO');
    v_col_lastmodified := lcr.get_value('NEW','LASTMODIFIED');
    rc := v_col_deptno.getnumber(v_val_deptno);
    rc := v_col_lastmodified.getdate(v_val_lastmodified);
    if cmd_type = 'INSERT' then
    select count(*) into pExist from scott.dept where deptno = v_val_deptno;
    -- Row does not exist.. execute lcr to insert row
    if pExist = 0 then
    lcr.execute(true);
    else
    -- Row existis.. compare values of lastmodifed and change the lcr to UPDATE if New DEPT created at source.
    select lastmodified into v_curr_val_lastmodified
    from nbkl8xk.dept where deptno = v_val_deptno;
    if (v_curr_val_lastmodified is null or
    v_val_lastmodified > v_curr_val_lastmodified ) then
    lcr.set_command_type('UPDATE');
    lcr.set_values('OLD',lcr.get_values('NEW'));
    lcr.execute(true);
    end if;
    end if;
    end if;
    end;
    begin
    dbms_apply_adm.set_dml_handler
    ( object_name => 'SCOTT.DEPT',
    object_type => 'TABLE',
    operation_name => 'INSERT',
    error_handler => false,
    user_procedure => 'STRMADMIN.DEPT_ORA_001'
    end;
    ++++++++++++++++++++++++++++
    The DML handler is getting fired correctly and it is changing the LCR into UPDATE. Now, I am receiving ora-1403 (no data found). This is because the OLD values do not match with the row at Site B. ( I am setting OLD_Values to New_Values in the DML_HANDLER)
    To address this I created the following update_conflict_handler.
    ++++++++++++++++++
    declare
    v_cols dbms_utility.name_array;
    begin
    v_cols(1) := 'DEPTNO';
    v_cols(2) := 'DNAME';
    v_cols(3) := 'LOC';
    v_cols(4) := 'LASTMODIFIED';
    dbms_apply_adm.set_update_conflict_handler(
    object_name => SCOTT.DEPT',
    method_name => 'MAXIMUM',
    resolution_column => 'LASTMODIFIED',
    column_list => v_cols
    end;
    +++++++++++++++++++++
    I am not getting any 1403 errors now. However, the row at Site B is not getting updated with the values at Site A.
    Any help is appreciated.
    Thanks

    I fired the query, am not getting any output from dbms_output.put_line('..|USER_COUNTRY..');
    Is that no data is reading or may be any reason else..
    in this table store_id is the primary key ..
    SQL> set serveroutput on
    SQL> CREATE OR REPLACE PROCEDURE test(in_any sys.anydata) IS
    2 lcr sys.lcr$_row_record;
    3 rc pls_integer;
    4 v_type varchar2(20);
    5 col_1 sys.anydata;
    6 col_2 sys.anydata;
    7 lcr_usercountry varchar2(20);
    8 lcr_storeid number;
    9 TRANS varchar2(20);
    10 store_id number;
    11 USER_COUNTRY varchar2(20);
    12
    13 BEGIN
    14 rc:=in_any.GetObject(lcr);
    15 v_type:=lcr.get_command_type();
    16 col_1:=lcr.get_value('NEW','USER_COUNTRY');
    17 rc:=col_1.GetVarchar2(lcr_usercountry);
    18 col_2:=lcr.get_value('NEW','STORE_ID');
    19 rc:=col_2.getnumber(lcr_storeid);
    20 select user_country into user_country from dev03.testrep1 where user_country=lcr_usercountry and store_id=lcr_storeid;
    21 dbms_output.put_line('---------||USER_COUNTRY ||-----------');
    22 END;
    23 /
    Procedure created.
    Thanks for your help ....

  • Modify response of a SQL function to return a single row

    I have a table with a html content column What i needed is to select all the present href content from it like
    ect 'href="MyFirstPAge.aspx" <table><tr><td> href="http://www.test.com/2009/05/aa-bb.html" </td></tr></table> href="MySecondPage.aspx"' as content
    i needed the result as
    MyFirstPage.aspx,http://www.test.com/2009/05/aa-bb.html,href="MySecondPage.aspx"
    Any idea what should i do?
    Have tried with a function below, but it returns a table. I want it comma seperated so that I can get the output from a sql subquery
    create function [dbo].[GetLinks] (@t nvarchar(max))
    returns @Links table (link nvarchar(max))
    as
    begin
    declare @strtpos int
    set @strtpos=100
    declare @endpos int
    declare @lnk nvarchar(max)
    while @strtpos > 6
    begin
    set @strtpos = PATINDEX('%href="%', @t)+6
    if @strtpos>6 begin
    set @endpos = CHARINDEX ('"',@t,@strtpos+1)
    if @endpos>0 begin
    set @lnk = substring(@t ,@strtpos, @endpos - @strtpos)
    set @t= RIGHT (@t, len(@t) - @endpos)
    insert @Links values(@lnk )
    end
    end
    end
    return
    end

    Rachana,
    Try the below:
    create table stagingcontentnodetest(id int,name varchar(50),ParentContentNodeId int ,Overview nvarchar(MAX))
    Insert into stagingcontentnodetest values
    (1,'',NULL,'href="MyFirstPAge.aspx" <table><tr><td> href="http://www.test.com/2009/05/aa-bb.html"
    </td></tr></table> href="MySecondPage.aspx"'),
    (2,'firstmenu',1,'href="MyMenuPAge.aspx" <table><tr><td> href="http://www.test.com/2009/05/bb-cc.html"
    </td></tr></table> href="MythirdPage.aspx"')
    ;WITH menus AS (
    -- get the first row (ie the menu whose parent is 0)
    SELECT
    Id,
    Name,
    Overview,
    --(Select * from dbo.GetLinks(Overview)) as links,
    CAST('Top' AS varchar(100)) AS Breadcrumb
    FROM
    [dbo].stagingcontentnodetest
    WHERE
    ParentContentNodeId IS NULL
    -- linked to all of those rows whose parent menu id
    -- equals this row's menu id
    UNION ALL
    SELECT
    submenus.Id,
    submenus.Name,
    submenus.Overview,
    --(Select * from dbo.GetLinks(submenus.Overview)) as links,
    CAST((m.Breadcrumb + ' > ' + m.Name) AS varchar(100)) AS Breadcrumb
    FROM
    [dbo].stagingcontentnodetest AS submenus
    INNER JOIN menus AS m
    ON submenus.ParentContentNodeId = m.Id
    SELECT
    Id,
    Name,
    Overview,
    --(Select * from dbo.GetLinks(Overview)) as links,
    link,
    Breadcrumb + ' > ' + Name AS Breadcrumbs
    FROM
    menus
    cross apply dbo.getLinks(overview) B
    where Overview like ('%href%')
    OPTION (MAXRECURSION 4)
    Drop table stagingcontentnodetest

  • I want to know the difference between row.REFRESH_UNDO_CHANGES | row.REFRES

    I want to under stand this statement
    row.refresh(row.REFRESH_UNDO_CHANGES | row.REFRESH_FORGET_NEW_ROWS);I know that refresh method take int
    I want to know what is the meaning of this int
    and what if I used
    row.refresh(row.REFRESH_UNDO_CHANGES);Or
    row.refresh(row.REFRESH_FORGET_NEW_ROWS);and When I use the Both what is the meaning of this and how this is executed.

    When I searched for Java Bitwise OR " |" I Found that
    a | b >>     Means 1 if either bit is 1.
    This means this is like boolean operations and 0 means false and 1 means true and it makes logical or.I don't know if this true or no.
    but when I tried to make
    system.out.println();
    I found that
            System.out.println("row.REFRESH_UNDO_CHANGES> "+row.REFRESH_UNDO_CHANGES);
            the result is > 10
            System.out.println("row.REFRESH_FORGET_NEW_ROWS> "+row.REFRESH_FORGET_NEW_ROWS);
            the result is >> 8192
            System.out.println("(row.REFRESH_UNDO_CHANGES | row.REFRESH_FORGET_NEW_ROWS)> "+(row.REFRESH_UNDO_CHANGES | row.REFRESH_FORGET_NEW_ROWS));
            the result is >> 8202
            this means this makes addition operation
    If I make something like this
            row.refresh(8202);
            is this will make the same operation like
            row.refresh("(row.REFRESH_UNDO_CHANGES | row.REFRESH_FORGET_NEW_ROWS)> "+(row.REFRESH_UNDO_CHANGES | row.REFRESH_FORGET_NEW_ROWS));and is it takes the number and make the operation depends on this number. like 10 means row.REFRESH_UNDO_CHANGES.
    and is this statement
    row.refresh(row.REFRESH_UNDO_CHANGES | row.REFRESH_FORGET_NEW_ROWS);equals to
    row.refresh(row.REFRESH_UNDO_CHANGES);
    row.refresh(row.REFRESH_FORGET_NEW_ROWS);

  • Fields not getting rendered based on fire partial action

    Dear Friends
    I have req like based on the selected value in message choice input (UOM), the other values(BOX,EACH,VOLUME) in page sholud render .
    These are my codes in AM and CO.
    ******************************AM***********************
        public void xxcreaterow() {
            OAViewObject vo = getuomVO1();
            System.out.println("am is getting executed");
            //Number=null;
             Number val = 1;
                if (vo != null)
                  if (vo.getFetchedRowCount() == 0)
                   vo.setMaxFetchSize(0);
                   vo.executeQuery();
                   vo.insertRow(vo.createRow());
                   OARow row = (OARow)vo.first(); 
                    //  row.setAttribute("RowKey", new Number(1));
                      row.setAttribute("RowKey", val);
                      row.setAttribute("BoxAttr", Boolean.FALSE);
                      row.setAttribute("EachAttr", Boolean.FALSE);
                      row.setAttribute("VolumeAttr", Boolean.FALSE);
    ************************   CO *********************************
      public void processRequest(OAPageContext pageContext, OAWebBean webBean)
        super.processRequest(pageContext, webBean);
          OAApplicationModule am = pageContext.getApplicationModule(webBean);
          OAViewObject vo = (OAViewObject)am.findViewObject("uomVO");
          am.invokeMethod("xxcreaterow");
       * Procedure to handle form submissions for form elements in
       * a region.
       * @param pageContext the current OA page context
       * @param webBean the web bean corresponding to the region
      public void processFormRequest(OAPageContext pageContext, OAWebBean webBean)
        super.processFormRequest(pageContext, webBean);
         OAApplicationModule am = pageContext.getApplicationModule(webBean);
         OAViewObject vo = (OAViewObject)am.findViewObject("uomVO1");
                 OARow row = (OARow)vo.getCurrentRow();
                      if ("HandleUom".equals(pageContext.getParameter(EVENT_PARAM)))
            if (pageContext.getParameter("UnitOfMeasure").equals("Box"))
             row.setAttribute("BoxAttr", Boolean.TRUE);
                row.setAttribute("EachAttr", Boolean.FALSE);
                row.setAttribute("VolumeAttr", Boolean.FALSE);
               else
                     row.setAttribute("BoxAttr", Boolean.FALSE);
               if (pageContext.getParameter("UnitOfMeasure").equals("Each"))
                row.setAttribute("BoxAttr", Boolean.FALSE);
                   row.setAttribute("EachAttr", Boolean.TRUE);
                   row.setAttribute("VolumeAttr", Boolean.FALSE);
               else
                     row.setAttribute("EachAttr", Boolean.FALSE);
               if (pageContext.getParameter("UnitOfMeasure").equals("Gallon"))
                row.setAttribute("BoxAttr", Boolean.FALSE);
                   row.setAttribute("EachAttr", Boolean.FALSE);
                   row.setAttribute("VolumeAttr", Boolean.TRUE);
               else
                     row.setAttribute("VolumeAttr", Boolean.FALSE);
    How to resolve this plz help.
    Thanks
    Aravinda

    Have a fire partial action event enabled on text field 2, capture the event in processFormRequest of CO, throw an exception using throw OAException when textfield1 < textfield 2 or your required condition is met. You don't need javascript for this. I don't recommend using javascript in OAF. You have most of the features available in OAF (except popup alerts though which can be achieved as mentioned above but no popup window).
    Thanks
    Shree

  • Enable/Disable a radio button

    Hi All,
    We have a requirement as below:
    Freezing the radio buttons:Ex: Q.No.6 has 2 radio buttons as "Yes" and "No" and has a sub question say Q.NO# 6A.
    Q.NO# 6A also has 2 radio button as "Yes" and "No" and these should be freezed when ans---"NO" is selected for Q.No.6 and should get unfreezed when ans--> "YES" is selected for Q.No.6.
    For this I am created a VO with a transient variable of type Boolean.
    and using SPEL approach to disable radio buttons of Q.NO# 6A.
    Setting FirePartialAction on radio buttons of Q.NO# 6.
    I am facing some problem in coding:
    My CO is as below:
    In PR:
    DisableradBtnVOImpl vo_radio =(DisableradBtnVOImpl)am.findViewObject("DisableradBtnVO1");
    //vo_radio.executeQuery(); getting NUll pointer exception here as there is no query
    // Row requestRow_radio = vo.createRow();
    // vo.insertRow(requestRow_radio);
    requestRow_radio.setNewRowState(Row.STATUS_INITIALIZED);
    requestRow_radio.setAttribute("disableRadioButton5",Boolean.TRUE);
    OAMessageRadioButtonBean radio6= (OAMessageRadioButtonBean)pageContext.getPageLayoutBean ().findChildRecursive("rad61");
    oracle.cabo.ui.action.FirePartialAction FireAction_radio = new oracle.cabo.ui.action.FirePartialAction ();
    FireAction_radio.setEvent("enable6");
    FireAction_radio.setUnvalidated(true);
    radio6.setPrimaryClientAction(FireAction_radio);
    how will I use setAttribute().
    please guide me.
    Akshata

    Hi Prince,
    My PR code is below:
    public void processRequest(OAPageContext pageContext, OAWebBean webBean)
    super.processRequest(pageContext, webBean);
    System.out.println("****Wel come Page 2******");
    boolean isLoggingEnabled = pageContext.isLoggingEnabled(OAFwkConstants.STATEMENT);
    String custName = pageContext.getParameter("customerName");
    String custNumber = pageContext.getParameter("customerNumber");
    String custId = pageContext.getParameter("customerId");
    Number numValue=null;
    try
    numValue = new Number(custId);
    catch(SQLException e)
    e.printStackTrace();
    OAApplicationModule am = pageContext.getApplicationModule(webBean);
    checkListVOImpl vo =(checkListVOImpl)am.findViewObject("checkListVO1");
    if(!vo.isPreparedForExecution())
    vo.executeQuery();
    // DisableradBtnVOImpl vo_radio =(DisableradBtnVOImpl)am.findViewObject("DisableradBtnVO1");
    OAMessageRadioButtonBean radio6= (OAMessageRadioButtonBean)pageContext.getPageLayoutBean().findChildRecursive("rad61");
    oracle.cabo.ui.action.FirePartialAction FireAction_radio = new oracle.cabo.ui.action.FirePartialAction ();
    FireAction_radio.setEvent("enable6");
    FireAction_radio.setUnvalidated(true);
    radio6.setPrimaryClientAction(FireAction_radio);
    String pageSave=pageContext.getParameter("OnClickSave");
    if((pageSave== null)|| "".equals(pageSave))
    Row requestRow = vo.createRow();
    vo.insertRow(requestRow);
    requestRow.setNewRowState(Row.STATUS_INITIALIZED);
    requestRow.setAttribute("CustomerName", custName);
    requestRow.setAttribute("CustomerNumber", custNumber);
    requestRow.setAttribute("CustomerId", numValue);
    requestRow.setAttribute("EnableRadio6",Boolean.TRUE);
    System.out.println("**************r1**********************");
    OAMessageRadioButtonBean yesRadio1 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad11");
    yesRadio1.setName("Resp1");
    yesRadio1.setValue("Y");
    OAMessageRadioButtonBean noRadio1 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad12");
    noRadio1.setName("Resp1");
    noRadio1.setValue("N");
    noRadio1.setSelected(true);
    System.out.println("**************r2**********************");
    OAMessageRadioButtonBean yesRadio2 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad21");
    yesRadio2.setName("Resp2");
    yesRadio2.setValue("Y");
    OAMessageRadioButtonBean noRadio2 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad22");
    noRadio2.setName("Resp2");
    noRadio2.setValue("N");
    noRadio2.setSelected(true);
    System.out.println("**************r3**********************");
    OAMessageRadioButtonBean yesRadio3 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad31");
    yesRadio3.setName("Resp3");
    yesRadio3.setValue("Y");
    OAMessageRadioButtonBean noRadio3 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad32");
    noRadio3.setName("Resp3");
    noRadio3.setValue("N");
    noRadio3.setSelected(true);
    System.out.println("**************r4**********************");
    OAMessageRadioButtonBean yesRadio4 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad41");
    yesRadio4.setName("Resp4");
    yesRadio4.setValue("Y");
    OAMessageRadioButtonBean noRadio4 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad42");
    noRadio4.setName("Resp4");
    noRadio4.setValue("N");
    noRadio4.setSelected(true);
    System.out.println("**************r5**********************");
    OAMessageRadioButtonBean yesRadio5 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad51");
    yesRadio5.setName("Resp5");
    yesRadio5.setValue("Y");
    OAMessageRadioButtonBean noRadio5 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad52");
    noRadio5.setName("Resp5");
    noRadio5.setValue("N");
    noRadio5.setSelected(true);
    OAMessageRadioButtonBean yesRadio5A = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad5A1");
    yesRadio5A.setName("Resp5A");
    yesRadio5A.setValue("Y");
    OAMessageRadioButtonBean noRadio5A = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad5A2");
    noRadio5A.setName("Resp5A");
    noRadio5A.setValue("N");
    noRadio5A.setSelected(true);
    OAMessageRadioButtonBean yesRadio5B = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad5B1");
    yesRadio5B.setName("Resp5B");
    yesRadio5B.setValue("Y");
    OAMessageRadioButtonBean noRadio5B = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad5B2");
    noRadio5B.setName("Resp5B");
    noRadio5B.setValue("N");
    noRadio5B.setSelected(true);
    OAMessageRadioButtonBean yesRadio5C = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad5C1");
    yesRadio5C.setName("Resp5C");
    yesRadio5C.setValue("Y");
    OAMessageRadioButtonBean noRadio5C = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad5C2");
    noRadio5C.setName("Resp5C");
    noRadio5C.setValue("N");
    noRadio5C.setSelected(true);
    OAMessageRadioButtonBean yesRadio5D = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad5D1");
    yesRadio5D.setName("Resp5D");
    yesRadio5D.setValue("Y");
    OAMessageRadioButtonBean noRadio5D = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad5D2");
    noRadio5D.setName("Resp5D");
    noRadio5D.setValue("N");
    noRadio5D.setSelected(true);
    // requestRow_radio.setAttribute("disableRadioButton5",Boolean.TRUE);
    System.out.println("**************r6**********************");
    OAMessageRadioButtonBean yesRadio6 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad61");
    yesRadio6.setName("Resp6");
    yesRadio6.setValue("Y");
    OAMessageRadioButtonBean noRadio6 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad62");
    noRadio6.setName("Resp6");
    noRadio6.setValue("N");
    noRadio6.setSelected(true);
    OAMessageRadioButtonBean yesRadio6A = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad6A1");
    yesRadio6A.setName("Resp6A");
    yesRadio6A.setValue("Y");
    OAMessageRadioButtonBean noRadio6A = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad6A2");
    noRadio6A.setName("Resp6A");
    noRadio6A.setValue("N");
    noRadio6A.setSelected(true);
    System.out.println("**************r7**********************");
    OAMessageRadioButtonBean yesRadio7 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad71");
    yesRadio7.setName("Resp7");
    yesRadio7.setValue("Y");
    OAMessageRadioButtonBean noRadio7 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad72");
    noRadio7.setName("Resp7");
    noRadio7.setValue("N");
    noRadio7.setSelected(true);
    System.out.println("**************r8**********************");
    OAMessageRadioButtonBean yesRadio8 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad81");
    yesRadio8.setName("Resp8");
    yesRadio8.setValue("Y");
    OAMessageRadioButtonBean noRadio8 = (OAMessageRadioButtonBean)webBean.findChildRecursive("rad82");
    noRadio8.setName("Resp8");
    noRadio8.setValue("N");
    noRadio8.setSelected(true);
    if (isLoggingEnabled)
    pageContext.writeDiagnostics(numValue, "customerId", OAFwkConstants.STATEMENT);
    if (isLoggingEnabled)
    pageContext.writeDiagnostics(custName, "customerName", OAFwkConstants.STATEMENT);
    if (isLoggingEnabled)
    pageContext.writeDiagnostics(custNumber, "customerNumber", OAFwkConstants.STATEMENT);
    }

  • Read any XML File Elements using SAX Parser in J2se

    Hi All
    I can able to parsed one structured XML file using SAX
    Sample code :
    // ===========================================================
         // SAX DocumentHandler methods
         // ===========================================================
         public void startDocument() throws SAXException {
              logger.info("Start of document");
         public void endDocument() throws SAXException {
              logger.info("End of document");
         public void startElement(String namespaceURI, String localName, // local
                   // name
                   String qualName, // qualified name
                   Attributes attrs) throws SAXException {
              elemName = new String(localName); // element name
              if (elemName.equals(""))
                   elemName = new String(qualName); // namespaceAware = false
              tagPosition = TAG_START;
              // Set the string for accumulating the text in a tag to empty
              elemChars = "";
              // If the element name is "row", create a new row instance
              // If the element is "indexxid", "ModelPrice", or "ModelSpread",
              // the value will be read in the method "characters" and stored.
              if (elemName.equals("row")) {
                   row = new IndexRow();
                   numRows++;
              // logger.info("Number of numRow:"+numRows);
         } // end method startElement
         public void endElement(String namespaceURI, String simpleName, // simple
                   // name
                   String qualName // qualified name
         ) throws SAXException {
              elemName = new String(simpleName);
              if (elemName.equals(""))
                   elemName = new String(qualName); // namespaceAware = false
              tagPosition = TAG_END;
              String indexId = new String();
              Double dblVal = new Double(0);
              // If element name is "row", put the current row in the map for row
              // instances
              if (elemName.equals("row")) {
                   if (numRows <= 5) { logger.info("Row is: " + row.toString()); }
                   //ABX
                   //indexRows.put(row.getIndexxId(), row);
                   if (family.equals("ABX.HE")){
                   indexRows.put(row.getIndexREDId(), row);
                   else {
                        //CDX ITRXX
                             indexRows.put(row.getIndexxId(), row);
              } else if (elemName.equals("IndexID")) {
                   row.setIndexxId(elemChars);
                   // Leave double value at default of zero if there are no chars
                   if (elemChars.trim().length() != 0) {
                        dblVal = new Double(elemChars);
                        row.setCompositeSpread(dblVal);
                        indexId = row.getIndexxId();
              } else if (elemName.equals("REDCode")) {
                   row.setRedCode(elemChars);
              else if (elemName.equals("Name")) {
                   row.setRowName(elemChars);
              } else if (elemName.equals("Series")) {
                   row.setSeries(elemChars);
              } else if (elemName.equals("Version")) {
                   row.setVersion(elemChars);
              } else if (elemName.equals("Term")) {
                   row.setTerm(elemChars);
              } else if (elemName.equals("Maturity")) {
                   row.setMaturity(elemChars);
              } else if (elemName.equals("OnTheRun")) {
                   row.setOnTheRun(elemChars);
              } else if (elemName.equals("Date")) {
                   row.setRowDate(elemChars);
              } else if (elemName.equals("Depth")) {
                   row.setDepth(elemChars);
              else if (elemName.equals("Heat")) {
                   // logger.info("Chars for element " + elemName + " are '" +
                   // elemChars + "'");
                   // Leave double value at default of zero if there are no chars
                   if (elemChars.trim().length() != 0) {
                        dblVal = new Double(elemChars);
                        row.setHeat(dblVal);
                        indexId = row.getIndexxId();
    //          ABX.HE
              else if (elemName.equals("IndexREDId")){
                   row.setIndexREDId(elemChars);
              else if (elemName.equals("Coupon")){
                   row.setCoupon(elemChars);
              if (elemName.equals("Ontherun")) {
                   row.setOnTheRun(elemChars);
         } // end method endElement
         public void characters(char buf[], int offset, int len) throws SAXException {
              // If at end of element, there will be no characters
              if (tagPosition == TAG_END) {
                   return;
              // The characteres method may be called more than once
              // for an element if the internal buffer fills up.
              // Append the characters until the end of the element.
              String strVal = new String(buf, offset, len);
              elemChars = elemChars + strVal;
         } // end method characters
    } // end class MarkItIndexLoader
    but the problem is i want to read (parse) any XML file means any Elemets would be change any time using SAX .In the above example
    else if (elemName.equals("Heat")) {
    else if (elemName.equals("IndexREDId")){
    } else if (elemName.equals("Maturity")) {
    like above I am doing hard code Elements names and reading the values so i don't want hard coding the elements names I want to read any element name and value dynamically.
    If i give any one below XML file i want to read the Elements and displaying to console without changing any code i want to read the XML document.
    EX:
    Student.XML: <root>..</StName>..</StAge>...</root>
    Employee.XML: <root>..</EmpName>..</EmpAge>...</root>
    CdCatalog.XML: <root>..</Cdtitle>...</CdNumber>...</root>
    I need one java program can ready any type of XML file elements and send to the Database table.
    Please any one done like this task please suggest some reference links or books or sample snippet which can help me to develop program in my requirement.
    Thanks in advance
    Regards
    satish

    You should ask in the Java forum.
    Regards
    Stefan

  • How to display the fields dynamically in OAF

    Hi All,
    I have developed a OAF Page and it has one table region and has 5 rows on it.One of the field on the table is Message Choice.
    The requirement is,If I select "Parts" then Lov Field should be displayed and If I select "Services" then one text field should be appear on that perticular table row.
    I have created a PPR on Message Choice and done the coding as follows,but it is not working;
    Please help me to achive it.
    if("lineChange".equals(pageContext.getParameter(OAWebBeanConstants.EVENT_PARAM)))
    String rowReference =pageContext.getParameter(OAWebBeanConstants.EVENT_SOURCE_ROW_REFERENCE);
    OARow row = (OARow)am.findRowByRef(rowReference);
    String claimCategory = (String)row.getAttribute("ClaimLineType");
    if ("Parts".equals(claimCategory))
    row.setAttribute("ClaimPartNoLovRender", Boolean.TRUE);
    row.setAttribute("ClaimPartNoRender", Boolean.FALSE);
    else
    row.setAttribute("ClaimPartNoRender", Boolean.TRUE);
    row.setAttribute("ClaimPartNoLovRender", Boolean.FALSE);
    Please let me know if there are any other ways to achive the same.
    Thanks in Advance..

    You might have the wrong forum. This forum is on IOP.

  • Stuck with these methods

    Hello everyone.
    the reason of this post is that I am a bit stuck with this class where I need to implement two methods and it is not working so far.
    The class in question is:
    public class MyPuzzle
        public static final int GRIDSIZE = 5;
        private int[][] squares;
        private String[][] rowConstraints;
        private String[][] columnConstraints;
        public MyPuzzle()
            squares = new int[GRIDSIZE][GRIDSIZE];
            rowConstraints = new String[GRIDSIZE][GRIDSIZE - 1];
            columnConstraints = new String[GRIDSIZE][GRIDSIZE - 1];
            for (int row = 0; row < GRIDSIZE; row++) {
                for (int column = 0; column < GRIDSIZE - 1; column++) {
                    rowConstraints[row][column] = " ";
            for (int column = 0; column < GRIDSIZE; column++) {
                for (int row = 0; row < GRIDSIZE - 1; row++) {
                    columnConstraints[column][row] = " ";
        public void setSquare(int row, int column, int val)
            if ((1 <= val) && (val <= GRIDSIZE)) {
                squares[row][column] = val;
            else {
                System.out.println("Error - Illegal value " + val);
        public void setRowConstraint(int row, int col, String relation)
            if (relation.equals("<") || relation.equals(">")) {
                rowConstraints[row][col] = relation;
        public void setColumnConstraint(int col, int row, String relation)
            if (relation.equals("<") || relation.equals(">")) {
                columnConstraints[col][row] = relation;
        public void fillPuzzle()
           setColumnConstraint(0, 1, ">");
           setRowConstraint(4, 0, "<");
           setRowConstraint(4, 2, "<");
           setColumnConstraint(4, 3, "<");
           setColumnConstraint(4, 2, "<");
           setRowConstraint(3, 1, "<");
           setRowConstraint(1, 3, ">");
           setSquare(4, 0, 4);
        public void printPuzzle()
            for (int row = 0; row < GRIDSIZE - 1; row++) {
                drawRow(row);
                drawColumnConstraints(row);
            drawRow(GRIDSIZE - 1);
        private void printTopBottom()
            for (int col = 0; col < GRIDSIZE; col++) {
                System.out.print("---   ");
            System.out.println();
        private void drawColumnConstraints(int row)
            for (int col = 0; col < GRIDSIZE; col++) {
                String symbol = " ";
                if (columnConstraints[col][row].equals("<")) {
                    symbol = "^";
                else if (columnConstraints[col][row].equals(">")) {
                    symbol = "V";
                System.out.print(" " + symbol + "    ");
            System.out.println();
        private void drawRow(int row)
            printTopBottom();
            for (int col = 0; col < GRIDSIZE; col++) {
                String symbol;
                if (squares[row][col] > 0) {
                    System.out.print("|" + squares[row][col] + "|");
                else {
                    System.out.print("| |");
                if (col < GRIDSIZE - 1) {
                    System.out.print(" " + rowConstraints[row][col] + " ");
            System.out.println();
            printTopBottom();
    [/code]
    The two methods I am trying to implement are:
    -isLegal should return a boolean value that tells us whether the puzzle configuration is legal or not. That is, if there is a repeated value in any row or column, or if there is an incorrect value (the number 1024 for instance) anywhere, or if any of the constraints is violated isLegal should return false; otherwise it should return true.
    -if the puzzle is not legal, getProblems should return a String describing all the things that are wrong with the configuration.
    If anyone may help, I will be eternally gratefull.
    Thanks.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

    Hello everyone.
    the reason of this post is that I am a bit stuck with this class where I need to implement two methods and it is not working so far.
    The class in question is:
    public class MyPuzzle
    public static final int GRIDSIZE = 5;
    private int[][] squares;
    private String[][] rowConstraints;
    private String[][] columnConstraints;
    public MyPuzzle()
    squares = new int[GRIDSIZE][GRIDSIZE];
    rowConstraints = new String[GRIDSIZE][GRIDSIZE - 1];
    columnConstraints = new String[GRIDSIZE][GRIDSIZE - 1];
    for (int row = 0; row < GRIDSIZE; row++) {
    for (int column = 0; column < GRIDSIZE - 1; column++) {
    rowConstraints[row][column] = " ";
    for (int column = 0; column < GRIDSIZE; column++) {
    for (int row = 0; row < GRIDSIZE - 1; row++) {
    columnConstraints[column][row] = " ";
    public void setSquare(int row, int column, int val)
    if ((1 <= val) && (val <= GRIDSIZE)) {
    squares[row][column] = val;
    else {
    System.out.println("Error - Illegal value " + val);
    public void setRowConstraint(int row, int col, String relation)
    if (relation.equals("<") || relation.equals(">")) {
    rowConstraints[row][col] = relation;
    public void setColumnConstraint(int col, int row, String relation)
    if (relation.equals("<") || relation.equals(">")) {
    columnConstraints[col][row] = relation;
    public void fillPuzzle()
    setColumnConstraint(0, 1, ">");
    setRowConstraint(4, 0, "<");
    setRowConstraint(4, 2, "<");
    setColumnConstraint(4, 3, "<");
    setColumnConstraint(4, 2, "<");
    setRowConstraint(3, 1, "<");
    setRowConstraint(1, 3, ">");
    setSquare(4, 0, 4);
    public void printPuzzle()
    for (int row = 0; row < GRIDSIZE - 1; row++) {
    drawRow(row);
    drawColumnConstraints(row);
    drawRow(GRIDSIZE - 1);
    private void printTopBottom()
    for (int col = 0; col < GRIDSIZE; col++) {
    System.out.print("--- ");
    System.out.println();
    private void drawColumnConstraints(int row)
    for (int col = 0; col < GRIDSIZE; col++) {
    String symbol = " ";
    if (columnConstraints[col][row].equals("<")) {
    symbol = "^";
    else if (columnConstraints[col][row].equals(">")) {
    symbol = "V";
    System.out.print(" " + symbol + " ");
    System.out.println();
    private void drawRow(int row)
    printTopBottom();
    for (int col = 0; col < GRIDSIZE; col++) {
    String symbol;
    if (squares[row][col] > 0) {
    System.out.print("|" + squares[row][col] + "|");
    else {
    System.out.print("| |");
    if (col < GRIDSIZE - 1) {
    System.out.print(" " + rowConstraints[row][col] + " ");
    System.out.println();
    printTopBottom();
    }The two methods I am trying to implement are:
    -isLegal should return a boolean value that tells us whether the puzzle configuration is legal or not. That is, if there is a repeated value in any row or column, or if there is an incorrect value (the number 1024 for instance) anywhere, or if any of the constraints is violated isLegal should return false; otherwise it should return true.
    -if the puzzle is not legal, getProblems should return a String describing all the things that are wrong with the configuration.
    If anyone may help, I will be eternally gratefull.
    Thanks.

  • Download link of IR, conditional field output means filters are ignored

    Hi All,
    I need to have a report on screen where the user applies filters, then when they've finished, they extract a subset of the on-screen fields to csv.
    The current application uses some on-screen selection lists/text items, a classic report underneath that, then an extract button to run another screen (passing in the filter values) which runs the query again to extract to the external csv file based on the filter values.
    I really want to change this to an interactive report, so the users can filter on anything they want to (and not have to request more filters to be added to the screen as we change the schema), then either hit an extract button or better: use the Download capability of the IR.
    I have tried:
    1. IR with a hidden field to collect an ID, create a collection then loop through the collection contents in a separate screen to output to csv.
    problem: the rows have to be on-screen for the hidden item to have a value, so unless the users are showing All rows, I don't get the full data set in the collection (apex_application.g_f01.COUNT just equals the rows on screen)
    2. IR, then use the built-in Download capabilities to output to csv.
    problem: I don't want all fields downloaded. I may have 20 fields on screen, the user has applied filters to many of them, but the csv needs 3 fields. I can make the output of every field I don't want outputted, conditional on :REQUEST != CSV and leave the others I do want downloaded, unconditional, but then the filters aren't respected (I assume because the field is not available to Apex due to the condition) and I get more rows than I was expecting.
    Is there a way of achieving this by using an IR? Is JavaScript the only way by accessing the current filtered query of an IR?
    regards,
    Malcolm.

    Using APEX_APPLICATION_PAGE_IR, APEX_APPLICATION_PAGE_IR_RPT, APEX_APPLICATION_PAGE_IR_COND is the answer.

Maybe you are looking for

  • How do I convert a pdf to excel?

    I am having trouble converting a pdf to an excel file. Help!

  • Want to do PhD in SAP /ERP System / Managment Information System

    I want to Full time PhD in SAP / ERP System / Management Information System in SAP Related Area with scholarships.I have done Master of technology in Information technology from Jadavpur University ( india).I have 2 years I.T experience in I.T and Ac

  • 6 Step Signed Applet for IE

    last week I have the problem for Signed Applet, and I hope this will Help You. but, I am sorry for Netscape, it's not done yet. So, here are the Step for IE 1. Create you java code (takepic.java)      in your code write the securiy permission      if

  • How to find grey exclamation mark pics?

    Hi gang, I have noticed when going back over some old pics that some have the thumbnail, but when I hit space to view the photo close up, I get a grey exclamation mark.  When using Reveal in Finder, the original pic file is present and looks fine.  T

  • How can I turn off an alert for each txt when message app is open?

    I think this is a simple problem but I can't find a solution! I want to receive an alert (either vibration or sound, depending on the position of the silence switch) when I get a new txt. This is how I am set up now. However, once I open the messages