Urgent..AQ Queue tables!!!

Hi All,
We have a scenario where we need to use AQ queues other than the predefined queues.
So, I have the following doubts..
Can i create more than one queue using the IP_QTAB as the Queue Table?
Or is it a good idea to have a dedicated Queue Table created for a Queue?
Any help is highly appreciated.
Thanks,
Deepti

Hi Deepti,
You might be interested in these threads -
How to create a CUSTOM AQ internal delivery channel.
Creating connection for AQ using JMS protocol
Regards,
Anuj

Similar Messages

  • Note:304522.1 How to Move Queue Tables without using export import

    Trying to use the pkg available in Metalink "Note:304522.1 How to Move Queue Tables without using export import"
    Using the 10.1.0.x and upwards Package, I'm getting the following error on a single consumer queue table with an xmltype payload:
    SQL> exec move_aqt.move('XFORM_TEST_INT','INTERFACE_XML_QUEUE','SMALLBLOCK');
    BEGIN move_aqt.move('XFORM_TEST_INT','INTERFACE_XML_QUEUE','SMALLBLOCK'); END;
    ERROR at line 1:
    ORA-20000: ORA-06502: PL/SQL: numeric or value error
    ORA-06512: at "SYS.MOVE_AQT", line 652
    ORA-06512: at line 1
    We've tried in multiple environments, always with the same results.
    Trace file shows:
    *** 2006-11-08 10:06:47.154
    *** SERVICE NAME:(SYS$USERS) 2006-11-08 10:06:47.147
    *** SESSION ID:(379.954) 2006-11-08 10:06:47.147
    qtable move procedure starting execution at 08-11-2006 10:06:47 for queue table XFORM_TEST_INT.INTERFACE_XML_QUEUE
    qtable move procedure experienced an exception at 08-11-2006 10:06:47
    qtable move error message ORA-06502: PL/SQL: numeric or value error
    qtable move procedure ended execution at 08-11-2006 10:06:47
    Can anyone help with this? Has anyone used this before successfully (or not successfully). We urgently need this working today to test moving our queue table into a tablespace with a smaller block size for performance reasons in production.
    Thanks for the help!
    Tony

    Thank you,
    Yes we've done that. They've confirmed a problem with the links/scripts on the note. The 10.1 and up version was not really 10.1 and up.
    As they would not have a new version available in time for the move we needed to perform, we switched our approach to using dbms_redefinition instead.
    Thanks for the reply,
    Tony

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

  • 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], [], [], [], [], [], []

  • Unable to drop queue table

    Hi,
    I have the streams admin user as "stradmin" and i have a queue table called "STREAMS_CAPTURE_QT"
    I am not able to drop the streams user because i am not able to drop the queue table.
    I tried the following.....
    begin
    DBMS_AQADM.DROP_QUEUE_TABLE(
    queue_table => 'STREAMS_CAPTURE_QT',
    force => TRUE);
    end;
    but i get below error....
    begin
    ERROR at line 1:
    ORA-04031: unable to allocate 112 bytes of shared memory ("streams
    pool","unknown object","streams pool","qulptr_kwqbscc")
    ORA-06512: at "SYS.DBMS_AQADM_SYS", line 4102
    ORA-06512: at "SYS.DBMS_AQADM", line 197
    ORA-06512: at line 2
    I checked my init.ora parameter file and i do have...
    *.aq_tm_processes=0
    *.shared_pool_size=500M
    *.streams_pool_size=16777216
    *.event='10298 trace name context forever, level 32'
    Can someone help me to drop the queue table as well as the streams admin user.
    Thanks in advance.

    Have you tried increasing the SGA size?

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

  • Creating a new Queue table

    Hi All
    Does any one knows how to create a queue table in the tablespace of the Oracle 10g database?

    Hi
    I used the command
    begin
    sys.dbms_aqadm.create_queue_table(
    queue_table => 'JMS_ABC_QUEUETABLE',
    queue_payload_type => 'SYS.AQ$_JMS_MESSAGE',
    sort_list => 'PRIORITY, ENQ_TIME',
    compatible => '10.0.0',
    primary_instance => 0,
    secondary_instance => 0,
    storage_clause => 'tablespace system pctfree 10 initrans 1 maxtrans 255
    storage ( initial 64K minextents 1 maxextents unlimited )');
    end;
    and it shows
    ORA-01950: no privileges on tablespace 'SYSTEM'

  • Problems in creating Queue tables

    Hi I'm trying to create a Queue table. For that I'm creating a new Object, and then a table type of the same Object and then a Queue table of the payload type of the created table type, for which I'm getting an error. I'm using the following list of Queries:
    create or replace type CRM_TO_UMS_USR_DATA_TAB as object
    PROVISION_ID varchar2(25)
    PROVISION_DATE date
    ERROR_CODE varchar2(20)
    ERROR_MSG varchar2(50)
    STATUS char
    COMMENTS varchar2(50)
    Result => no Error
    create or replace type CRM_TO_UMS_USR_DATA_TYP as TABLE of CRM_TO_UMS_USR_DATA_TAB
    Result => no Error
    begin
    dbms_aqadm.create_queue_table(queue_table => 'CRM_TO_UMS_DATA_QUE_TAB',queue_payload_type => 'CRM_TO_UMS_USR_DATA_TAB');
    end;
    Result =>
    Error report:
    ORA-00902: invalid datatype
    ORA-06512: at "SYS.DBMS_AQADM_SYS", line 2830
    ORA-06512: at "SYS.DBMS_AQADM", line 58
    ORA-06512: at line 2
    00902. 00000 - "invalid datatype"
    I've given the following Grants for my schema user, for the purpose.
    Grant aq_administrator_role to siebel;
    GRANT EXECUTE ON dbms_aq TO siebel;
    GRANT RESOURCE TO siebel;
    GRANT CONNECT TO siebel;
    GRANT EXECUTE ANY PROCEDURE TO siebel;
    GRANT aq_administrator_role TO siebel;
    GRANT aq_user_role TO siebel;
    GRANT EXECUTE ON dbms_aqadm TO siebel;
    GRANT EXECUTE ON dbms_aqin TO siebel;
    Actually I've successfully created Queues with the above set of Queries in my other Development and UAT environments successfully, but when I'm trying to implement it with Prod I'm getting the Error. Anybody please help.
    Thanks & Regards,
    Srivathan, T.

    The type CRM_TO_UMS_USR_DATA_TAB is invalid because the syntax you're using is incorrect:
    SQL> create or replace type CRM_TO_UMS_USR_DATA_TAB as object
      2  (
      3  PROVISION_ID varchar2(25)
      4  PROVISION_DATE date
      5  ERROR_CODE varchar2(20)
      6  ERROR_MSG varchar2(50)
      7  STATUS char
      8  COMMENTS varchar2(50)
      9  );
    10  /
    Warning: Type created with compilation errors.
    SQL> begin
      2  dbms_aqadm.create_queue_table(queue_table => 'CRM_TO_UMS_DATA_QUE_TAB',queue_payload_type => 'CRM_TO_UMS_USR_DATA_TAB');
      3  end;
      4  /
    begin
    ERROR at line 1:
    ORA-00902: invalid datatype
    ORA-06512: at "SYS.DBMS_AQADM_SYS", line 2822
    ORA-06512: at "SYS.DBMS_AQADM", line 58
    ORA-06512: at line 2
    SQL> create or replace type CRM_TO_UMS_USR_DATA_TAB as object
      2  (
      3  PROVISION_ID varchar2(25),
      4  PROVISION_DATE date ,
      5  ERROR_CODE varchar2(20),
      6  ERROR_MSG varchar2(50),
      7  STATUS char(1),
      8  COMMENTS varchar2(50)
      9  );
    10  /
    Type created.
    SQL> begin
      2  dbms_aqadm.create_queue_table(queue_table => 'CRM_TO_UMS_DATA_QUE_TAB',queue_payload_type => 'CRM_TO_UMS_USR_DATA_TAB');
      3  end;
      4  /
    PL/SQL procedure successfully completed.Max
    http://oracleitalia.wordpress.com

  • 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

  • Messages are in READY state in QUEUE TABLE but in AQ$ QUEUE TABLE messages are in PROCESSED State

    HI All,
       We create a brand new oracle multi-consumer queue. We have en-queued the messages into the queue and are processed successfully.
       But when we checked the STATE Column  of the messages in the queue table it was showing as "0". But it is showing as "PROCESSED" in the
       AQ$<QUEUE_TABLE> msg_state column.
      We are unable to figure out why there is a mismatch. Can any one help us ?
    Regards,
    Hari P.

    Hello,
    the column value AQ$<QUEUE_TABLE>.MSG_STATE = 'PROCESSED' corresponds to column value <QUEUE_TABLE>.STATE = 2
    (see definition of view AQ$<QUEUE_TABLE for the DECODE statement).
    In your case you see a value of STATE = 0 instead of STATE = 2. Is this correct ? The value 0 corresponds to a state "READY" (the delay
    is gone and the message is ready for dequeuing).
    The AQ documentation says: "After the specified delay, the message is in the READY state and available for dequeuing."
    Normally, you cannot see the processed data in your AQ because the enqueued data will be deleted after
    successful dequeuing. You wrote that they were processed successfully.
    Kind regards,
    WoG

  • Replace message payload object without remove queue table

    hi,
    i want to replace message payload object without remove queue table but i have got the "ORA-02303: cannot drop or replace a type with type or table dependents" error.
    is there any way to replace message payload object without remove queue table?
    Click to link below to find a demo which is explain the problem clearly
    Replace message payload object without remove queue table
    Regards.

    Hi
    I answered this in Re: Replace message payload object without remove queue table forum.
    Cheers, APC

  • Edit message payload object without remove queue table

    Hi, need ur help again,
    Known that if we want to modify a message payload attribute (add,edit or delete), we will fail to do so if the message payload is used by existing AQ's queue table.
    How to change the message payload object without remove the queue table?
    Thanks!

    Hi
    I answered this in Re: Replace message payload object without remove queue table forum.
    Cheers, APC

  • Issue - data is not inserting into queue table

    Hi friends....i created a queue table & queue , started queue. while inserting number into queue, it is going fine. but , while browsing queue table, there is no data inserted into table. table is empty. i executed same script in another machine, it is working fine there.but, it is not working in my machine. i don't know why?.
    can anybody please help me to find out what will be the issue.
    these are the scripts i created........
    BEGIN
    DBMS_AQADM.CREATE_QUEUE_TABLE (
    queue_table => 'put_queue_table',
    queue_payload_type => 'sys.aq$_jms_text_message'
    END;
    anonymous block completed
    BEGIN
    DBMS_AQADM.CREATE_QUEUE (
    queue_name => 'QUALTY_QUEUE',
    queue_table => 'put_queue_table'
    DBMS_AQADM.START_QUEUE (
    queue_name => 'QUALTY_QUEUE'
    END;
    anonymous block completed
    DECLARE
    v_payload SYS.AQ$_JMS_TEXT_MESSAGE;
    v_enqueue_options dbms_aq.enqueue_options_t;
    v_message_properties dbms_aq.message_properties_t;
    v_message_handle RAW(16);
    v_text VARCHAR2(37);
    BEGIN
    v_text := to_char('157');
    v_payload := SYS.AQ$_JMS_TEXT_MESSAGE.construct;
    v_payload.set_text(v_text);
    DBMS_AQ.ENQUEUE(
    queue_name => 'QUALTY_QUEUE',
    enqueue_options => v_enqueue_options,
    message_properties => v_message_properties,
    payload => v_payload,
    msgid => v_message_handle
    COMMIT;
    END;
    anonymous block completed

    Please define what you mean by "when browsing [the] queue table" and why you think what you are doing should be inserting new rows in the table. Also please post full version information.

  • Full Export/Import Errors with Queue tables and ApEx

    I'm trying to take a full export of an existing database in order to build an identical copy in another database instance, but the import is failing each time and causing problems with queue tables and Apex tables.
    I have used both the export utility and Data Pump (both with partial and full exports) and the same problems are occurring.
    After import, queue tables in my schema are unstable. They cannot be dropped using the queue admin packages as they throw ORA-24002: QUEUE_TABLE <table> does not exist exceptions. Trying to drop the tables causes the ORA-24005: must use DBMS_AQADM.DROP_QUEUE_TABLE to drop queue tables error
    As a result, the schema cannot be dropped at all unless manual data dictionary clean up steps (as per metalink) are done.
    The Apex import fails when creating foreign keys to WWV_FLOW_FILE_OBJECTS$PART. It creates the table ok, but for some reason the characters after the $ are missing so the referencing tables try to refer to WWV_FLOW_FILE_OBJECTS$ only.
    I am exporting from Enterprise Edition 10.2.0.1 and importing into Standard edition 10.2.0.1, but we are not using any of the features not available in standard, and I doubt this would cause the issues I'm getting.
    Can anyone offer any advice on how I can resolve these problems so a full import will work reliably?

    Thanks for the lead!
    After digging around MetaLink some more, it sounds like I'm running into Bug 5875568 (MetaLink Note:5875568.8) which is in fact related to the multibyte character set. The bug is fixed in the server patch set 10.2.0.4 or release 11.1.0.6.

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

Maybe you are looking for

  • Files stored in wrong place...

    Media files should be stored on my F: drive as I specified in advanced settings. My ebooks are stored there correctly. But apps, album art, and .itl/.xml file are in My Documents taking up too much space on my root drive. No I see that external drive

  • Access Message ID in graphical mapping

    Hi, I could not find a solution: How do I access the Message ID in the graphical mapping? During Runtime, I need to get the Message ID in graphical mapping and map it to a field in the target rfc. Can I do this either direct in mapping or is there a

  • Planed delivery cost- account is not picking in MIRO?

    Hi, Here in pricing procedure even though for the planned delivery costs condition type - account key and account is assigned in obyc & even then the relevant GL is not picking, instead only manual account assigned GL only picked up always kindly let

  • Re-write 32bit chroot daemon in systemd service format?

    I followed the Arch wiki instructions quite successfully and have been using the daemon script to use a 32bit chroot. I just switched over fully to systemd (at least I think so) and no longer have the ability to start it since rc.conf no longer exist

  • Managed metadata columns in document information panel with multiple content types

    Hi everyone, The problem I have is that for custom content types not all managed metadata columns are displayed in Document Information Panel (DIP) for the document in the Office client application.  However, everything works fine with 1 specific con