Select on queue table

Hi,
A Queue Table has been defined with payload type as SYS.AQ$_JMS_MESSAGE.
In java a property has been defined using setStringProperty("AdditionalMsgID",'123456').
Requirement is to get this property using sql SELECT statement.
Question is how can this be achieved.
By this "Requirement is to get this property using sql SELECT statement. "
what I mean is that this property can be used in selecting or sorting the messages by using it in "WHERE" clause or "ORDER BY" clause of sql "SELECT" statement.
I should be able to fire a SELECT statement from java using this property in the "ORDER BY" clause.
For Example:- SELECT * FROM MsgTable ORDER BY UserMsgID;
(where UserMsgID is a property defined in java for the message using setStringProperty() method.)
I should not have to dequeue or browse the message as that would mean getting the Message Body as well which can be very huge.
If I did not use JMS and instead I defined a simple type (structure) for holding the header and body of the message I am able to use that header in select statement. Similarly I wish if I could use the header or property defined in JMS as JMS payload is also built using type and type body.
Hoping for a concrete solution as our lots of problem would be solved if this works out.
Thanks & regards
Sanjeev
P.S. : I have posted a similar query in Advance queuing also but have not received any reply so I am posting it here hope one doesn't mind.
Message was edited by:
user453374

Hello
I've not used JMS myself but I've been having a dig round and I think you should be able to do what you're wanting to. This very simple example shows the principal:
CREATE OR REPLACE TYPE ot_Test_Type IS OBJECT
(     id     number,
     MEMBER FUNCTION GetProp(prop_name     IN VARCHAR2) RETURN NUMBER
CREATE OR REPLACE TYPE BODY ot_Test_Type
AS
     MEMBER FUNCTION GetProp(prop_name     IN VARCHAR2) RETURN NUMBER
     IS
          ln_Ret     NUMBER;
     BEGIN
          RETURN ASCII(prop_name);
     END;
END;
SQL> create table dt_test_ot_tab of ot_test_type;
Table created.
SQL> insert into dt_test_ot_tab values(ot_test_type(1));
1 row created.
SQL> select a.id from dt_test_ot_tab a where a.getprop('a') = 97;
        ID
         1
SQL> select a.id from dt_test_ot_tab a where a.getprop('b') = 97;
no rows selected
SQL> select a.id from dt_test_ot_tab a where a.getprop('b') = 98;
        ID
         1So from the documentation for AQ$_JMS_MESSAGE, there are member functions
MEMBER FUNCTION get_boolean_property (property_name   IN   VARCHAR)
RETURN   BOOLEAN,
MEMBER FUNCTION get_byte_property    (property_name   IN   VARCHAR)
RETURN   INT,
MEMBER FUNCTION get_short_property   (property_name   IN   VARCHAR)
RETURN   INT,
MEMBER FUNCTION get_int_property     (property_name   IN   VARCHAR)
RETURN   INT,
MEMBER FUNCTION get_long_property    (property_name   IN   VARCHAR)
RETURN   NUMBER,
MEMBER FUNCTION get_float_property   (property_name   IN   VARCHAR)
RETURN   FLOAT,
MEMBER FUNCTION get_double_property  (property_name   IN   VARCHAR)
RETURN   DOUBLE PRECISION,
MEMBER FUNCTION get_string_property  (property_name   IN   VARCHAR)
RETURN   VARCHAR);Which you should be able to call in the where caluse of a select on that table in a similar way to the example above. The main thing I found is that you need to alias the table to be able to call the function.
HTH
David
Message was edited by:
david_tyler
Oops! Forgot to put in the create table bit :-)

Similar Messages

  • Select from a queue table with SYS.AQ$_JMS_MAP_MESSAGE type

    We are using the SYS.AQ$_JMS_MAP_MESSAGE type for our queue so that we can access the queue using plsql as well as java (via jms). The queue table that gets created contains a column user_data that is of the above type. This type has two columns BYTES_RAW and BYTES_LOB which I assume contains the data. Is there a way in sql (or in plsql) to get access to the data. Also, we are retaining the messages after they have been consumed (from an audit standpoint) and might need access to the data.
    Thank you
    Navin

    yes, i understand how to describe something...
    my question is how to get a list of properties.
    this data type has get functions that take the name of a property. now how do i know that property name to get it?

  • ORA-22913 while creating a QUEUE TABLE of a "Typed type"

    Hi guys:
    I'm trying to recreate an [AskTom's post|http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:8760267539329], but with a single difference. My Oracle Type contains a field that is another Oracle Type and when I try to create a QUEUE_TABLE, I got the ORA-22913.
    Here are my steps:
    create or replace TYPE PODTL_TYPE AS OBJECT
    item varchar2(25),
    ref_item varchar2(25),
    physical_location_type varchar2(1),
    physical_location number(10),
    physical_qty_ordered number(12,4),
    unit_cost number(20,4),
    origin_country_id varchar2(3),
    supp_pack_size number(12,4),
    earliest_ship_date date,
    latest_ship_date date,
    pickup_loc varchar2(250),
    pickup_no varchar2(25),
    packing_method varchar2(6),
    round_lvl varchar2(6),
    door_ind varchar2(1),
    priority_level number(1),
    new_item varchar2(1),
    quarantine varchar2(1),
    rcvd_unit_qty number(12,4),
    tsf_po_link_id number(10),
    cost_source varchar2(4),
    est_in_stock_date date
    create or replace TYPE PODtl_coll as table of PODTL_TYPE;
    create or replace TYPE PODesc AS OBJECT
    doc_type varchar2(1),
    order_no varchar2(10),
    order_type varchar2(9),
    order_type_desc varchar2(250),
    dept number(4),
    dept_name varchar2(120),
    buyer number(4),
    buyer_name varchar2(120),
    supplier varchar2(10),
    promotion number(10),
    prom_desc varchar2(160),
    qc_ind varchar2(1),
    not_before_date date,
    not_after_date date,
    otb_eow_date date,
    earliest_ship_date date,
    latest_ship_date date,
    close_date date,
    terms varchar2(15),
    terms_code varchar2(50),
    freight_terms varchar2(30),
    cust_order varchar2(1),
    payment_method varchar2(6),
    payment_method_desc varchar2(40),
    backhaul_type varchar2(6),
    backhaul_type_desc varchar2(40),
    backhaul_allowance number(20,4),
    ship_method varchar2(6),
    ship_method_desc varchar2(40),
    purchase_type varchar2(6),
    purchase_type_desc varchar2(40),
    status varchar2(1),
    ship_pay_method varchar2(2),
    ship_pay_method_desc varchar2(40),
    fob_trans_res varchar2(2),
    fob_trans_res_code_desc varchar2(40),
    fob_trans_res_desc varchar2(250),
    fob_title_pass varchar2(2),
    fob_title_pass_code_desc varchar2(40),
    fob_title_pass_desc varchar2(250),
    vendor_order_no varchar2(15),
    exchange_rate number(20,10),
    factory varchar2(10),
    factory_desc varchar2(240),
    agent varchar2(10),
    agent_desc varchar2(240),
    discharge_port varchar2(5),
    discharge_port_desc varchar2(150),
    lading_port varchar2(5),
    lading_port_desc varchar2(150),
    bill_to_id varchar2(5),
    freight_contract_no varchar2(10),
    po_type varchar2(4),
    po_type_desc varchar2(120),
    pre_mark_ind varchar2(1),
    currency_code varchar2(3),
    contract_no number(6),
    pickup_loc varchar2(250),
    pickup_no varchar2(25),
    pickup_date date,
    app_datetime date,
    comment_desc varchar2(2000),
    PODtl PODtl_coll
    These are my 3 Oracle types. When I try to create the QUEUE TABLE:
    DBMS_AQADM.CREATE_QUEUE_TABLE(
    Queue_table => 'PODESC_QUEUE_TABLE',
    Queue_payload_type => 'PODesc',
    Multiple_consumers => TRUE);
    END;
    I got the following error:
    22913. 00000 - "must specify table name for nested table column or attribute"
    *Cause:    The storage clause is not specified for a nested table column
    or attribute.
    *Action:   Specify the nested table storage clause for the nested table
    column or attribute.
    How can I solve this?

    Here is the syntax used by Oracle in one of their internal tables.
    orabase> select dbms_metadata.get_ddl('TABLE', 'ORDERS_QUEUETABLE', 'IX') from dual;
    DBMS_METADATA.GET_DDL('TABLE','ORDERS_QUEUETABLE','IX')
      CREATE TABLE "IX"."ORDERS_QUEUETABLE"
       (    "Q_NAME" VARCHAR2(30),
            "MSGID" RAW(16),
            "CORRID" VARCHAR2(128),
            "PRIORITY" NUMBER,
            "STATE" NUMBER,
            "DELAY" TIMESTAMP (6),
            "EXPIRATION" NUMBER,
            "TIME_MANAGER_INFO" TIMESTAMP (6),
            "LOCAL_ORDER_NO" NUMBER,
            "CHAIN_NO" NUMBER,
            "CSCN" NUMBER,
            "DSCN" NUMBER,
            "ENQ_TIME" TIMESTAMP (6),
            "ENQ_UID" VARCHAR2(30),
            "ENQ_TID" VARCHAR2(30),
            "DEQ_TIME" TIMESTAMP (6),
            "DEQ_UID" VARCHAR2(30),
            "DEQ_TID" VARCHAR2(30),
            "RETRY_COUNT" NUMBER,
            "EXCEPTION_QSCHEMA" VARCHAR2(30),
            "EXCEPTION_QUEUE" VARCHAR2(30),
            "STEP_NO" NUMBER,
            "RECIPIENT_KEY" NUMBER,
            "DEQUEUE_MSGID" RAW(16),
            "SENDER_NAME" VARCHAR2(30),
            "SENDER_ADDRESS" VARCHAR2(1024),
            "SENDER_PROTOCOL" NUMBER,
            "USER_DATA" "IX"."ORDER_EVENT_TYP" ,   <---------------------- seems analogous to what you are trying to do
            "USER_PROP" "SYS"."ANYDATA" ,
             PRIMARY KEY ("MSGID")
      USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS NOLOGGING
      STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
      PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
      TABLESPACE "EXAMPLE"  ENABLE
       ) USAGE QUEUE PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS NOLOGGING
      STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
      PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
      TABLESPACE "EXAMPLE"
    OPAQUE TYPE "USER_PROP" STORE AS BASICFILE LOB (
      ENABLE STORAGE IN ROW CHUNK 8192 RETENTION
      CACHE
      STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
      PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT))Spend some time looking in directories under $ORACLE_HOME and you may well find the DDL that built it.

  • Messages remain in Queue Table

    Hello,
    I work as a dba in a company where my colleagues are developing an application that uses AQ.
    The application is installed on multiple databases but we have a problem in a particular one:
    the processed messages are not deleted from table by Oracle.
    DBMS_AQADM.CREATE_QUEUE( Queue_name => 'my_AQ', Queue_table => 'AQT', Queue_type => 0, Max_retries => 65535, Retry_delay => 0, Retention_time => 2592000, dependency_tracking => FALSE);
    SELECT msg_state, count(*) FROM AQT GROUP BY msg_state;
    PROCESSED     830548
    SELECT min(enq_time),max(enq_time) FROM AQT
    07-OCT-10      01-AUG-12
    SELECT value FROM v$parameter WHERE name='aq_tm_processes'
    10
    thanks,

    Hi,
    I didn't notice this in your first post:
    DBMS_AQADM.CREATE_QUEUE(
        Queue_name => 'my_AQ',
        Queue_table => 'AQT',
        Queue_type => 0,
        Max_retries => 65535,
        Retry_delay => 0,
        Retention_time => 2592000,      <<<<<<<<<< why are you specifying such a high value for this?
        dependency_tracking => FALSE
    );Retention_time: See doc for this value: http://docs.oracle.com/cd/E11882_01/server.112/e11013/aq_admin.htm#i1006091
    This parameter specifies the number of seconds a message is retained in the queue table after being dequeued from the queue. When retention_time expires, messages are removed by the time manager process. INFINITE means the message is retained forever. The default is 0, no retention.
    You are asking for messages to be retained for 30 days, now looking at the min/max enq_time you have messages which are much older than this, but did you check when they were actually DQ'd (DEQ_TIME)?
    Also, from my previous post, did you check out that MOS note ? Did you check what the Q00 processes are doing in the database?
    Thanks
    Paul

  • Passing sequence number to queue table

    Hi anyone,
    I am very new to the advance queue. Have a user_info table. I would like to pass the userid sequence to the queuence table up on insert or update on to the usere_info table.. Here is the step I did so far.
    create type user_id as object(userid number, login varchar2(100));
    execute dbms_aqadm.create_queue_table(queue_tale => 'user_fque_tab', queue_payload_type => 'user_id');
    execute dbms_aqadm.create_queue(queue_name => 'user_que', queue_table => 'user_que');
    execute dbms_aqadm.start_queue(queue_nama => 'user_que');
    Now I am trying to create the trigger on the user_info table to pass the next sequence id to the queue table but not sure what to do.
    so far I created on the trigger
    create or replace trigger user_infor_queue after insert on user_info
    for each row
    declare
    p_userid number;
    enqueue_options dbms_aq.enquue_options_t;
    message_properties dbms_aq.message_properties_t;
    login varchar2(100);
    v_message userdata.user_id;
    begin
    v_message:= userdata.user_id( p_userid =>new.id, login =>:new.login)
    Please help on the creating the trigger...
    thanks

    Hi Bob,
    In TestStand 3.0 and later you can pass the sequence context as a CAObjHandle in CVI. The easiest way to get an example of this is to create a blank sequence and insert an Action step. Right-click on the step and select specify module. On the module tab specify a name for the function. Next on the Source Code tab click Create Code... This will prompt you for a location and name for a project file and a c file. It will then create code for you that demonstrates how to pass the sequence context and use it.
    If you're using an older version of TestStand then the parameters you can pass are fixed. I would suggest looking at one of the shipping examples. The Register step in the following example demonstates how to pass the sequence context and use it: C:
    \Program Files\National Instruments\TestStand 3.1\Examples\Demo\C\cpu.seq
    (This path will be different depending on your version of TestStand.)
    I hope this helps!!
    Regards,
    Sarah Miracle
    National Instruments

  • Problem Creating JMS Queue Tables

    Oracle 9.2.0.1
    Help Please.
    I'm running into problems trying to create a JMS message queue table. following an example in the Oracle9ias containers for j2ee guide chapter 7. i've created a user and granted execute on sys.dbms_aqadm, sys.dbms_aq,
    sys.dbms_aqin and sys.dbms_aqjms.
    I log into SQL Plus as system with sysbda privilege.
    and attempt to create a table using
    DBMS_AQADM.CREATE_QUEUE_TABLE(
    Queue_table          => 'QTque',
    Queue_payload_type     => 'SYS.AQ$_JMS_STREAM_MESSAGE',
    multiple_consumers     => false);
    but SQL Plus responds with an error saying: unknown command beginning 'DBMS_AQADM...' rest of line ignored.
    is this a problem with my system administrator privileges
    I've given it DBA and AQ_ADMINISTRATOR_ROLE.
    In searching for a way around my problem I discovered you can easily create queue tables in the Advanced Queues section of enterprise manager. Problem doing it this way is a can't figure out how to specify payload type. If I select object I can't see how I can then specify the
    SYS.AQ$_JMS_STREAM_MESSAGE type I require.
    Any Tips appreciated.
    Gary.

    try to execute:
    BEGIN
    DBMS_AQADM.CREATE_QUEUE_TABLE(
    Queue_table => 'QTque',
    Queue_payload_type => 'SYS.AQ$_JMS_STREAM_MESSAGE',
    multiple_consumers => false);
    END;
    Regards,
    Alexei

  • Queue table recreation - How to backup data

    Hi All,
    I need to recreate queue table because of the incorrect sort_list.
    I have the script prepared, it is working fine.
    The problem is that I have about 200.000 records in that table.
    What is the best approach to preserve this data while a table queue being recreated?
    Thanks in advance
    Daniil Dukat

    Assuming both databases are on the same server...
    First backup the data...
    Select *
    Into products_bkp
    FROM products
    --WHERE (if any filter condition)
    Insert the data into another database.
    USE DB2
    GO
    INSERT INTO products(column_names)
    SELECT column_Names
    FROM DB1.schemaname.products_bkp
    GO
    Hope that helps.. Please mark as answer, if this has helped you solve your problem.
    Good Luck :) .. Visit www.sqlsaga.com for more t-sql code snippets and bi related how to articles.

  • Dropping queue table

    hi
    I am tryin to drop a schema devj2ee with the following command:
    SQL> drop user devj2ee cascade;
    drop user devj2ee cascade
    ERROR at line 1:
    ORA-00604: error occurred at recursive SQL level 1
    ORA-24005: must use DBMS_AQADM.DROP_QUEUE_TABLE to drop queue tables
    Now if try to see which queue tables exist for devj2ee it returns no rows.
    SQL> select count(*) FROM DBA_QUEUE_TABLES WHERE owner ='DEVJ2EE';
    COUNT(*)
    0
    The DBA_QUEUE_TABLES has all the sys/system queue tables as find below;
    select owner, queue_table from dba_queue_tables;
    OWNER QUEUE_TABLE
    SYS ALERT_QT
    SYS AQ$_MEM_MC
    SYS AQ_EVENT_TABLE
    SYS AQ_SRVNTFN_TABLE
    SYS KUPC$DATAPUMP_QUETAB
    SYS SCHEDULER$_EVENT_QTAB
    SYS SCHEDULER$_JOBQTAB
    SYS SYS$SERVICE_METRICS_TAB
    SYSMAN MGMT_NOTIFY_QTABLE
    SYSTEM DEF$_AQCALL
    SYSTEM DEF$_AQERROR
    11 rows selected.
    Please advice how to remove the user DEVJ2EE.
    My db is 10gR2 on solaris10 box.

    SQL> select object_name,object_type from dba_objects where owner='DEVJ2EE' and object_name like '%AQ%';
    OBJECT_NAME OBJECT_TYPE
    CMN_AQ_MESSAGE_TYPE TYPE
    DLS_AQ_QUEUE TABLE
    Now if I try to drop this table i get the following error:
    SQL> begin
    2 DBMS_AQADM.DROP_QUEUE_TABLE('DLS_AQ_QUEUE');
    3 end;
    4 /
    DBMS_AQADM.DROP_QUEUE_TABLE('DLS_AQ_QUEUE');
    ERROR at line 2:
    ORA-06550: line 2, column 1:
    PLS-00201: identifier 'DBMS_AQADM' must be declared
    ORA-06550: line 2, column 1:
    PL/SQL: Statement ignored
    SQL> EXECUTE DBMS_AQADM.DROP_QUEUE_TABLE (queue_table => 'DLS_AQ_QUEUE');
    BEGIN DBMS_AQADM.DROP_QUEUE_TABLE (queue_table => 'DLS_AQ_QUEUE'); END;
    ERROR at line 1:
    ORA-06550: line 1, column 7:
    PLS-00201: identifier 'DBMS_AQADM' must be declared
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    So, i thought this is a privelege issue.
    SQL> conn sys@dbklsdev as sysdba
    Enter password:
    Connected.
    SQL> begin
    2 DBMS_AQADM.DROP_QUEUE_TABLE('DEVJ2EE.DLS_AQ_QUEUE');
    3 end;
    4 /
    begin
    ERROR at line 1:
    ORA-24002: QUEUE_TABLE DEVJ2EE.DLS_AQ_QUEUE does not exist
    ORA-06512: at "SYS.DBMS_AQADM_SYS", line 4084
    ORA-06512: at "SYS.DBMS_AQADM", line 197
    ORA-06512: at line 2
    Alternatively, I tried granting privs to devj2ee and tried to drop the table from this user but the result was same.
    SQL> GRANT RESOURCE TO devj2ee;
    GRANT CONNECT TO devj2ee;
    GRANT EXECUTE ANY PROCEDURE TO devj2ee;
    GRANT aq_administrator_role TO devj2ee;
    GRANT aq_user_role TO devj2ee;
    GRANT EXECUTE ON dbms_aqadm TO devj2ee;
    GRANT EXECUTE ON dbms_aq TO devj2ee;
    GRANT EXECUTE ON dbms_aqin TO devj2ee;
    Grant succeeded.
    SQL>
    Grant succeeded.
    SQL>
    Grant succeeded.
    SQL>
    Grant succeeded.
    SQL>
    Grant succeeded.
    SQL>
    Grant succeeded.
    SQL>
    Grant succeeded.
    SQL>
    Grant succeeded.
    SQL> conn devj2ee/devj2ee@dbklsdev
    Connected.
    SQL> begin
    2 DBMS_AQADM.DROP_QUEUE_TABLE('DLS_AQ_QUEUE');
    3 end;
    4 /
    begin
    ERROR at line 1:
    ORA-24002: QUEUE_TABLE DEVJ2EE.DLS_AQ_QUEUE does not exist
    ORA-06512: at "SYS.DBMS_AQADM_SYS", line 4084
    ORA-06512: at "SYS.DBMS_AQADM", line 197
    ORA-06512: at line 2
    At this point I tried the same old query again to find out if the queue table really exist:
    SQL> select object_name,object_type from user_objects where object_name like '%AQ%';
    OBJECT_NAME OBJECT_TYPE
    CMN_AQ_MESSAGE_TYPE TYPE
    DLS_AQ_QUEUE TABLE
    I hope you have any further tricks to try on this.

  • ORA-00902 on trying to Select a Nested Table

    I have created a Table having Nested Table as below:
    create type INT_ARRAY as table of INTEGER;
    create table test1 (
    id number not null,
    name varchar2(500),
    prot_NT int_array,
    constraint test1_pk primary key(id))
    STORAGE (INITIAL 512K
    NEXT 512K
    MINEXTENTS 1
    MAXEXTENTS UNLIMITED
    PCTINCREASE 0)
    nested table prot_NT store as prot_NT_TAB ;
    And I am doing following select using an executeQuery on a PreparedStatement (I am not using any oracle extensions. I am using JDK1.2.2 on Solaris with Weblogic 5.1 appServer. jdbc driver is oracle.jdbc.driver.OracleDriver version 8.1.6.0.0):
    Select id, name, prot_nt from test1
    Some times this executeQuery works fine. But some times I get SQLException with "ORA-00902: invalid datatype". Same tables and same query behaves differently at different times.
    Is there any problem with this usage?? Is there any known problem? I am trying to get Nested Table to a int[]. What is recommended procedure for doing this? Please help me out! Thanks in advance!

    By this point you've probably either solved the problem, or just dropped the database, but for anyone else interested, here's something you can do.
    You can drop the queue table by setting event 10851 with the following steps:
    1. Log into SQL*Plus or Server Manager as a user with DBA privileges.
    2. Issue command: alter session set events '10851 trace name context forever, level 2'; Statement Processed.
    3. Drop table <queue_table>; Statement Processed.
    Solution Explanation: =====================
    Event 10851 disables error 24005 when attempting to manually drop a queue table. It should be noted that this is the "Hard Way" of dropping queue tables, and should only be practiced after all formal procedures, i.e., using the "DBMS_AQADM.DROP_QUEUE_TABLE" procedure, has failed to drop the table.
    Cheers,
    Doug

  • Queue or Queue Table getting hanged

    Hi. I am having an interesting issue. The problem goes as below
    I have a queue table QT_PROMO_QUEUE and the associated queue Q_PROMO_QUEUE. This Queue has two agents QUEUE_AGENT1 and QUEUE_AGENT2.
    Suppose say i have enqueued one message into the this Q_PROMO_QUEUE, then if i have manually deleted(not purging) that message from the queue table QT_PROMO_QUEUE, then the queue is getting hanged. I am not able to perform any operations on the queue except enqueuing the new messages.
    I am not able to do below operations
    dequeuing the messages from the queue, stopping the queue, removing the subscribers from the queue, dropping the queue, or even purging the queue table, and dropping the queue table.
    Early replies are appreciated...Thanks in advance.

    when the Init is sucessfull in BW it initializes the DS in Delta Queue(RSA7) and if any of the documents gets posted they will come to update tables/extraction queue depends on the update mode you have selected in LO Cokpit. when you schedule the job control on LBWE - it transfer the delta records to RSA7

  • How to dynamically display the data from a table base on row selection of another table in ADF

    Hi ,
    I have a requirement in ADF. I need to change the data of a table  based on row selection of another Table . Both the table have a Parent Child relationship between them. They have a common attribute say department_id.
                                                                                         For this I created bind variable in view object of employees table and wrote a where clause in the sql query using that bind variable. Then I created method for selection listener of department Table in java bean.
    My method is following
        public void onrowselection(SelectionEvent selectionEvent) {
            RichTable richTable = (RichTable)selectionEvent.getSource();
                            CollectionModel tableModel = (CollectionModel)richTable.getValue();
                            JUCtrlHierBinding adfTableBinding = (JUCtrlHierBinding)tableModel.getWrappedData();
                            Object selectedRowData = richTable.getSelectedRowData();
                            JUCtrlHierNodeBinding nodeBinding = (JUCtrlHierNodeBinding)selectedRowData;
                    oracle.jbo.domain.Number newVal = (oracle.jbo.domain.Number) nodeBinding.getAttribute("DepartmentId");
                    Number pallet = newVal.bigDecimalValue();
                    System.out.println("Selected values " + pallet);
            BindingContext bindingctx = BindingContext.getCurrent();
                          BindingContainer bindings = bindingctx.getCurrentBindingsEntry();
                          DCBindingContainer bindingsImpl = (DCBindingContainer) bindings;
                  DCIteratorBinding dciter = bindingsImpl.findIteratorBinding("EmployeesView1Iterator");//access the iterator by its ID value in the PageDef file
                          ViewObject vo =dciter.getViewObject();
                          vo.setNamedWhereClauseParam("DepartmentId", pallet);//enter your value
                          vo.executeQuery();
    It is printing the selected value of department id from department table in the log. But it is not able to pass the value to employees view. It is showing the following error in the log
    "Definition DepartmentId of type Variable is not found in EmployeesView1."
    I will be very thankful if someone helps me to solve this errror or is there any other way to achieve the same requirement.
    Thanks
    Nilesh

    Note quite sure why you simply wont create a viewlink for the viewobject the tables are based on..
    The viewlink attribute will be based on the departmentId and it's a simple master detail relationship which automatically uses ppr.
    However, if both tables are on the same page; using your hack about;
    On the underlying viewobject, define a viewcriteria e.g. "listById" and set your bind variable here.
    I would bind table two to a RichTable component:
    RichTable t2;
    public void onrowselection(SelectionEvent selectionEvent) {
            RichTable richTable = (RichTable)selectionEvent.getSource();
                            CollectionModel tableModel = (CollectionModel)richTable.getValue();
                            JUCtrlHierBinding adfTableBinding = (JUCtrlHierBinding)tableModel.getWrappedData();
                            Object selectedRowData = richTable.getSelectedRowData();
                            JUCtrlHierNodeBinding nodeBinding = (JUCtrlHierNodeBinding)selectedRowData;
                    oracle.jbo.domain.Number newVal = (oracle.jbo.domain.Number) nodeBinding.getAttribute("DepartmentId");
                    Number pallet = newVal.bigDecimalValue();
                    System.out.println("Selected values " + pallet);
                   refreshTable2(pallet);
            BindingContext bindingctx = BindingContext.getCurrent();
                          BindingContainer bindings = bindingctx.getCurrentBindingsEntry();
                          DCBindingContainer bindingsImpl = (DCBindingContainer) bindings;
                  DCIteratorBinding dciter = bindingsImpl.findIteratorBinding("EmployeesView1Iterator");//access the iterator by its ID value in the PageDef file
                          ViewObject vo =dciter.getViewObject();
                          vo.setNamedWhereClauseParam("DepartmentId", pallet);//enter your value
                          vo.executeQuery();
    private void refreshTable2(Number pallet){
    RichTable x=getT2();
    CollectionModel cm=(CollectionModel)x.getValue();
    JUCtrlHierBinding jcb=(JUCtrlHierBinding)cm.getWrappedData();
    BindingContainer bindings = bindingctx.getCurrentBindingsEntry();
    DCBindingContainer bindingsImpl = (DCBindingContainer) bindings;
    DCIteratorBinding dciter = bindingsImpl.findIteratorBinding(jcb.getName()+"Iterator");
    ViewObject vo =dciter.getViewObject();
    ViewCriteriaManager vcm=vo.getViewCriteriaManager();
    ViewCriteria vc=vcm.getViewCriteria("listById");
    vo.applyViewCriteria(vc);
    vo.setNamedWhereClauseParam("DepartmentId",pallet);
    vo.executeQuery();
    AdfFacesContext.getCurrentInstance().addPartialTarget(getT2());

  • Error while dropping/creating new queue table

    Hi,
    I am trying to modify an existing AQ setup. In the process, I had to remove a queue and redirect all its subscriptions to another queue.
    I get an oracle "sequence does not exist" while trying to drop the queue table. The sequence of operations that I am carrying out is:
    disable propagation schedule
    unschedule propagation
    stop queue
    drop queue
    drop queue table
    The error occurs when the drop statement is executed.
    I tried restoring the existing configuration, but got the same error message while trying to add a subscription.
    Could you help me with this problem? What am I missing here?
    Thanks,
    Anupama

    In what version of Oracle?
    I see a couple of problems assuming you are working with a currently supported version:
    1. Never grant CONNECT to anyone: Ever. Grant CREATE SESSION.
    2. GRANT CREATE TABLE to AQ;
    Go to Morgan's Library at www.psoug.org and look at AQ Demo 1. You should have no problem cutting and pasting your way to where you are trying to go.

  • While selecting Frame for Table in Smartform

    hi
      While i am selecting Frame for Table in Smartform , it displaying very Bold frame.
    wat is the reason,
    guide me

    hi,
    do this steps,
    ->first in the shading of the table select white color
    ->provide the saturation as 100
    ->select the pattern and select any one of the pattern
    ->and then check the output
    you will get the required do this in the same fashion i explained
    Thanks,
    Nethaji.

  • Problem with Queue Table while dropping schema

    Hi,
    I want to DROP a schema, but it gives the following error while trying to drop it:
    ORA-00604: error occurred at recursive SQL level 1
    ORA-24005: must use DBMS_AQADM.DROP_QUEUE_TABLE to drop queue tables
    From TOAD, I found that no queue or queue_table exists in the database presently.
    I'm using 10.2.0.2 RAC database.
    Can anyone help me to drop the schema?
    Thanks in advance..
    Regards,
    Anjan

    I have followed the doc 203225.1..
    Now getting the following error:
    ORA-00081: address range [0x60000000000A89A0, 0x60000000000A89A4) is not readable
    ORA-00600: internal error code, arguments: [kzdukl3], [24], [], [], [], [], [], []

  • How to have both Single and Mutilple Selection in a table?

    Hi ,
    I have a page with an advanced, there is a multiple selection for the table for deleting row. Now I want to have a single selection column for other purpose. But it does not seem that we can have both in a table.
    If I implement SingleSelection myself by using OAMessageRadioButton, from dev guide, I need to programmatically assign radio btton all the same
    name by calling setName() for each radio button and also assign an identifying value for each bean. I can radio for radio button, but how can I assign value for each radio button bean when they are in a table? Will it possible to use View Attribute of radio button bean property?
    thanks
    Lei

    Lei, its possible to have both in ur table! You can add a single selection child to your table. Then u can add messagecheckbox as last column of table, which can be attached to a transient VO attribute.
    --Mukul                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

Maybe you are looking for