Schedule propagation doubt

Hi,
My propagation is not working. What am I doing wrong?
I have two users in the same database and they have separate queues for them. They are able to dequeue and enqueue with their respecive queues.
But I want user2 to dequeue message from his own queue( which is que2) which user1 enqueue in his queue(which is que1).
I have scheduled propagation like this
execute dbms_aqadm.schedule_propagation(queue_name => 'user1.que');
when I check the user1 quetable there are the enqueued messages but in user2 queuetable there are no messages at all.
What am I doing wrong?

This code works:
create database link LoopBack connect to bradym identified by password using 'ccg10gd';
CREATE or replace type Message_typ as object(subject VARCHAR2(30), text VARCHAR2(80));
begin
-- Make Source Queue and Table
DBMS_AQADM.CREATE_QUEUE_TABLE(queue_table => 'xtest_mqt', queue_payload_type => 'Message_typ', multiple_consumers => TRUE);
DBMS_AQADM.CREATE_QUEUE(queue_name => 'MSG_QUEUE', queue_table => 'xtest_mqt');
DBMS_AQADM.START_QUEUE(queue_name => 'MSG_QUEUE');
-- Make destination Queue and Table
DBMS_AQADM.CREATE_QUEUE_TABLE(queue_table => 'xdest_mqt', queue_payload_type => 'Message_typ', multiple_consumers => TRUE);
DBMS_AQADM.CREATE_QUEUE(queue_name => 'MSG_QUEUEX', queue_table => 'xdest_mqt');
DBMS_AQADM.START_QUEUE(queue_name => 'MSG_QUEUEX');
end;
create or replace procedure enqueue_msg(p_msg in varchar2,
p_add in varchar2 default null)
as
enqueue_options dbms_aq.enqueue_options_t;
message_properties dbms_aq.message_properties_t;
message_handle RAW(16);
message message_typ;
recipients DBMS_AQ.aq$_recipient_list_t;
BEGIN
-- ADDED
-- SMD: here's where the parameter is used
recipients(1) := SYS.aq$_agent('RECIPIENT', p_add, null);
message_properties.recipient_list := recipients;
message := message_typ('NORMAL MESSAGE', p_msg );
dbms_aq.enqueue(queue_name => 'msg_queue',
enqueue_options => enqueue_options,
message_properties => message_properties,
payload => message,
msgid => message_handle);
end;
-- SMD: this msgs is meant for THIS queue and will not be propagated.
begin enqueue_msg('This is a test....'); commit; end;
-- ADDED: Setup scheduling for messages
begin DBMS_AQADM.Schedule_Propagation(Queue_Name => 'MSG_QUEUE',
Destination => 'LoopBack',
Start_Time => sysdate,
Latency => 0);
end;
-- SMD: this msgs is meant for the MSG_QUEUEX queue and WILL BE propagated.
begin enqueue_msg('This should be propagated.', 'MSG_QUEUEX@LoopBack'); commit; end;
One thing I don't understand is why do I have to create a dblink just to get this to work. If I change the Schedule_prop call to set the DESTINATION_QUEUE to MSG_QUEUEX and change the ENQUEUE_MSG call to pass MSG_QUEUEX as the second arg it doesn't work.
So obviously this is without a subscriber but with an addressed message.
Ok, so the docs for the schd_prop command says "destination_queue == Name of the target queue to which messages are to be propagated in the form of a dblink" so i suppose the silly loopback dblink is unavoidable
But my alterations to the working cod break it. In summary, I set up the destination queue as a subscriber and enqueue the message without a recipient list
create database link LoopBack connect to bradym identified by password using 'ccg10gd';
CREATE or replace type Message_typ as object(subject VARCHAR2(30), text VARCHAR2(80));
begin
-- Make Source Queue and Table
DBMS_AQADM.CREATE_QUEUE_TABLE(queue_table => 'xtest_mqt', queue_payload_type => 'Message_typ', multiple_consumers => TRUE);
DBMS_AQADM.CREATE_QUEUE(queue_name => 'MSG_QUEUE', queue_table => 'xtest_mqt');
DBMS_AQADM.START_QUEUE(queue_name => 'MSG_QUEUE');
-- Make destination Queue and Table
DBMS_AQADM.CREATE_QUEUE_TABLE(queue_table => 'xdest_mqt', queue_payload_type => 'Message_typ', multiple_consumers => TRUE);
DBMS_AQADM.CREATE_QUEUE(queue_name => 'MSG_QUEUEX', queue_table => 'xdest_mqt');
DBMS_AQADM.START_QUEUE(queue_name => 'MSG_QUEUEX');
end;
-- NEW section to working code
DECLARE
subscriber sys.aq$_agent;
BEGIN
subscriber := sys.aq$_agent(NULL,'MSG_QUEUEX@LOOPBACK',0); -- <--- again docs show dblink as optional...
DBMS_AQADM.ADD_SUBSCRIBER(queue_name => 'MSG_QUEUE', subscriber => subscriber, queue_to_queue => TRUE);
END;
create or replace procedure enqueue_msg(p_msg in varchar2) -- removed the recip list param
as
enqueue_options dbms_aq.enqueue_options_t;
message_properties dbms_aq.message_properties_t;
message_handle RAW(16);
message message_typ;
BEGIN
message := message_typ('NORMAL MESSAGE', p_msg );
dbms_aq.enqueue(queue_name => 'msg_queue',
     enqueue_options => enqueue_options,
     message_properties => message_properties,
     payload => message,
     msgid => message_handle);
end;
begin enqueue_msg('This is a test....'); commit; end;
-- ADDED: Setup scheduling for messages
begin DBMS_AQADM.Schedule_Propagation(Queue_Name => 'MSG_QUEUE',
Destination => 'LoopBack',
Start_Time => sysdate,
Latency => 0);
end;
begin enqueue_msg('This should be propagated.'); commit; end;
Edited by: skipjacker on Oct 20, 2008 5:13 PM

Similar Messages

  • Oracle Streams 10gR2 Schedule Propagation or Application

    Hi all,
    Is there a way to schedule the propagation and application when configuring Oracle Streams?, I mean, I don't want to execute online replication because I have other object outside Oracle that need to replicate withing the db to have my aplication (red only) in sync.
    So, where I can do that.
    BEGIN
    DBMS_STREAMS_ADM.ADD_SCHEMA_RULES(
    schema_name => 'shm',
    streams_type => 'apply',
    streams_name => 'apply_from_db1',
    queue_name => 'strmadmin.from_db1',
    include_dml => true,
    include_ddl => true,
    source_database => 'db1.world',
    inclusion_rule => true);
    END;
    BEGIN
    DBMS_STREAMS_ADM.ADD_SCHEMA_PROPAGATION_RULES(
    schema_name => 'shm',
    streams_name => 'db1_to_db2',
    source_queue_name => 'strmadmin.captured_db1',
    destination_queue_name => '[email protected]',
    include_dml => true,
    include_ddl => true,
    source_database => 'db1.world',
    inclusion_rule => true,
    queue_to_queue => true);
    END;
    /

    Hello, Am I not being clear with my question?. Or maybe I'm doing everything in the wrong way about Stream propagation and application processes?.
    I looked into all documentation available and I can't find how to schedule the processes ... what's the part I'm missundertanding?.
    AS long I have other non Oracle objects (file system objects, we say some ECM file system objects) to replicate with the data schema, I can't replicate (automatically) all the changes occurred at source table's schema to the destiny database schema. So, I'm replicating ECM file systems objects within other external tool, and It has Windows schedule integration ... but how I can schedule propagation and/or application processes in the a 2-way Streams environment.
    Please, I need a hint from somebody.
    Thanks.

  • Re-scheduling Propagation following an error

    Hi,
    Im currently testing how streams perform when there are problems at the remote database. I've shutdown the mate database and then run traffic. OEM, under the propagation tab shows that there are errors and that the propagation job will start running at xxxxxx".
    How can I change the prop. process so that it starts processing immediately following a problem?
    Which table holds information about the errors. i.e. how can I determine that there are errors without using OEM?
    Many thanks,
    Warren

    If you use the functions you mention to change the schedule will the propagation process stick to this schedule? If the errors remain will the time between retries automatically increase (and at an exponential rate) irrespective of what i've set the schedule to?
    The view is DBA_QUEUE_SCHEDULES. You will need to
    use the DBMS_AQADM package to manipulate the schedule
    with the following procedures:
    ENABLE_PROPAGATION_SCHEDULE/DISABLE_PROPAGATION_SCHEDU
    E
    SCHEDULE_PROPAGATION/UNSCHEDULE_PROPAGATION

  • Error Propagation Doubt

    Hi,
    I work with WorkSpace Studio 1.1.
    In our project we have a few proxies linked, and I'd like to know if it's possible to have an error generated in the "last" proxy not propagated to the others, from which the message came.
    I'd like that the error generated in the PS4 was not propagated to the PS3,PS2 and PS1. Is that possible?
    PS1-->PS2-->PS3-->PS4
    Thanks

    Yes, it's possible. Just add Error Handler to PS4 and use Resume action or Reply with success in it.
    http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/userguide/modelingmessageflow.html#wp1125471

  • Oracle AQ: Message not removed from source queue after propagation

    Hi.
    I have been playing around with a test setup for a "fanning out"-propagation system.
    I have created three queues, SRC_Q, DEST_Q and DEST2_Q.
    The propagation seems to work fine, the messages that I put on the SRC_Q get propagated to the destination queues. However, after propagation the message does not get removed from the source queue. Could anyone tell me why?
    I am using Oracle 10g.
    Here is my setup:
    --Test payload
    CREATE OR REPLACE TYPE test_payload AS OBJECT(
    test_id NUMBER,
    test_dt DATE);
    commit;
    DECLARE
    subscriber SYS.aq$_agent;
    BEGIN
    --- Create Originating Queue and start it
    DBMS_AQADM.create_queue_table( queue_table => 'SRC_MQT', queue_payload_type => 'Test_Payload',
    multiple_consumers => TRUE );
    DBMS_AQADM.create_queue( 'SRC_Q', 'SRC_MQT' );
    DBMS_AQADM.start_queue( queue_name => 'SRC_Q' );
    --- Create Destination Queue and start it
    DBMS_AQADM.create_queue_table( queue_table => 'Dest_MQT', queue_payload_type => 'Test_Payload',
    multiple_consumers => TRUE );
    DBMS_AQADM.create_queue( 'Dest_Q', 'Dest_MQT' );
    DBMS_AQADM.start_queue( queue_name => 'Dest_Q' );
    --- Create Destination Queue2 and start it
    DBMS_AQADM.create_queue_table( queue_table => 'Dest2_MQT', queue_payload_type => 'Test_Payload',
    multiple_consumers => TRUE );
    DBMS_AQADM.create_queue( 'Dest2_Q', 'Dest2_MQT' );
    DBMS_AQADM.start_queue( queue_name => 'Dest2_Q' );
    --- Add Subscribers and schedule propagation
    subscriber := SYS.aq$_agent( 'test_sub', 'Dest_Q', NULL );
    DBMS_AQADM.add_subscriber( queue_name => 'SRC_Q', subscriber => subscriber , queue_to_queue=> TRUE);
    subscriber := SYS.aq$_agent( 'test_sub2', 'Dest2_Q', NULL );
    DBMS_AQADM.add_subscriber( queue_name => 'SRC_Q', subscriber => subscriber , queue_to_queue=> TRUE );
    --Propagation to queues
    DBMS_AQADM.schedule_propagation( queue_name => 'SRC_Q', destination_queue => 'Dest_Q' );
    DBMS_AQADM.schedule_propagation( queue_name => 'SRC_Q', destination_queue => 'Dest2_Q' );
    commit;
    END;
    --Put something on the queue
    DECLARE
    message_handle RAW( 16 );
    MESSAGE test_payload;
    nq_opt dbms_aq.enqueue_options_t;
    nq_pro dbms_aq.message_properties_t;
    begin
    nq_opt.visibility := dbms_aq.immediate;
    nq_pro.expiration := dbms_aq.never;
    MESSAGE := test_payload( 2, SYSDATE );
    DBMS_AQ.enqueue( 'SRC_Q', nq_opt,nq_pro,MESSAGE, message_handle );
    COMMIT;
    END;
    I am really stuck with this problem so I really hope somebody have some advice on what I am doing wrong.

    I am also facing a similar issue. I have a multiconsumer queue. The message has been dequeued but the message is still present in the queue table and the message is also present in AQ$<queue_name> and the state is being shown as 'processed'.
    This all was working fine few days back and somehow stopped working all of sudden. The DB version which I am using is - 11.1.0.7.0. Any help related to this will be greatly appreciated
    -AA

  • AQ Propagation Notifications/PLSQL Callback Query?

    I have the following scenario working but have a question:
    I have two databases, I Enqueue a message onto a Queue in Database 1 and scheduling Propagation to a Queue in Database 2.
    In Database 2 the queue has a PL/SQL procedure registered (using DBMS_AQ.Register) so that as the propagated message arrives it calls the procedure which dequeues it and saves the message to the Table.
    It is all working fine, except that the Dequeue process on Database 2 seems to get invoke after approx 5 mins after it is Enqueued. SO you can see the message on the Subscribing Queue with an Enqueue Time, and it seems to always be about 5 mins later till the procedure is kicked off to dequeue it.
    How do you set the time that it takes to dequeue the message?
    There are no parameters on the DBMS_AQ_Register proc to set this.
    I can't find anything in the docs?
    I originally had a demo setup using PL/SQL callback on a local Queue (without propagation between two Databases) and the Dequeue was virtually instantaneous?
    Regards
    Stuart

    Hello,
    jobqueue_interval is not unsupported it is just hidden. In most cases the default is enough which is why it is hidden. As I recall the default is 5 seconds in 10.2 so it does not explain the 5 minute delay you are seeing. AQ only ever uses 1/2 the available job_queue_processes so if only 1 is available I would be surprised if it worked at all. Have you increased the number to 10?
    There are no other ways to tune notification callbacks in any available version of Oracle that I am aware of.
    Thanks
    Peter

  • Urgent--Message Propagation problem.

    Hi all,
    I am trying out the following stuff:-
    1)Creating a QueueTable.
    2)Setting its property to setMultipleCustomer(true)
    3)Create a Queue using AQ API.
    then calling the followin methods.
    4) queue.startEnqueue();
    5) queue.schedulePropagation(null, null, null, null, null);
    NOTE:- I already have a destination queue to which message should propagate in the same database. Thats why i have given all null parameters in schedule propagation.
    In client code I am using JMS API to connect to the Queues to put message.
    But when Iam trying to Create the queue I get Resource Not Found Exception.
    But when I use in the above case setMultipleConsume(false) the code doesnt give any exception, though message propagation is not done. But my intension is to use the message propagation thru schedulePropagation method. In order to use the message propagation feature I have to setMultipleCunsumer(true). and there by ending up in this problem.
    Question 1)Can anyone let me know what are the steps to do a message propagation thru Queues(Not Topic). Step by step.
    Question 2) Can anyone tell me how to and what to put in the dblink in case if I want by queue to propagate to a queue on a remote db server.
    NOTE :- Im using ORACLE AQ APIs to create Queues. and using JMS Client to connect to the queue.
    Best Regards,
    Thanks in Advance

    Sessions require session cookies.
    If the user has cookies off then the session won't be retained by the server automatically.
    The solution to this is to use URL rewriting.
    There is a method: HTTPResponse.encodeURL( String url )
    It automatically adds the JSESSIONID used to track the session onto the url if the browser is not accepting cookies.
    You need to do this on every link in the website so that session is maintained.
    Cheers,
    evnafets

  • Propagation between queues.

    Hello,
    I am trying to setup a master queue which propagates any messages to the relevant child queues in the same DB. I've switched on job_queue_processes = 1, setup both queues (with the master queue being multi consumer), constructed a subscriber on the main queue and scheduled propagation. I'm using a very simple rule (priority < 100). We are currently running an 8.1.7 DB.
    I can enqueue the same message into both queues manually, but when enqueueing to the master queue, the message remains in the master and does not propagate. I do not get any error messages.
    Is there something that I am missing to enable this propagation to occur?
    Thank you for your help,
    Regards,
    Darren

    there is osmething very important when you are configuring propagations. That very important issue is
    the interval in which the database is going to carry out
    the propagation. If that time is very large you will have
    to wait until that time is gave.
    Application Developer's Guide - Advanced Queuing Contents / Search / Index / PDF
    http://download-east.oracle.com/docs/cd/B10501_01/appdev.920/a96587.pdf
    Joel P�rez

  • AQ Propagation issues

    Hi,
    We are using AQ Oracle9i DB, to propagate messages to another DB in same network.
    We did the following steps for propagation
    1. Created Message Type, AQ Table and Queue.
    2. Created DB link for destination DB.
    3. Added the destination's AQ as subscriber, then started queue and scheduled propagation to Dest_DB.
    4. First we got
    ORA-04052: error occurred when looking up remote object <user>.DBMS_AQADM@<Dest_DB>
    ORA-00604: error occurred at recursive SQL level 4
    ORA-02085: database link String connects to String
    ORA-06512: at "SYS.DBMS_AQADM_SYS", line 1013
    ORA-06512: at "SYS.DBMS_AQADM_SYS", line 6245
    ORA-06512: at "SYS.DBMS_AQADM", line 580
    ORA-06512: at line 1
    5. Then we modified global_names using "alter system set global_names = false scope=both;"
    6. We are now able to look up dest_DB's tables, but the propagation of the messages is not happening.
    Also there is no error in the Source DB to get some clue.
    Can someone help us out from this issue?
    Thanks in Advance
    Babu

    hi,
    Oracle version is 9.2.0.8.
    This is my DDL
    CREATE PUBLIC DATABASE LINK XXX1.WORLD
    CONNECT TO FACE_USER IDENTIFIED BY &pass
    USING 'XXX1.WORLD';
    * Create the Queue Table
    PROMPT Creating queue table AQTABLE.
    BEGIN
         DBMS_AQADM.CREATE_QUEUE_TABLE(
              QUEUE_TABLE          => 'AQTABLE',
              QUEUE_PAYLOAD_TYPE     => 'MSG',
              SORT_LIST          => 'ENQ_TIME',
              MULTIPLE_CONSUMERS     => TRUE,
              COMMENT               => 'QTable for online confirmations');
    END;
    * Create the Queue for the Queue Table
    * created.
    PROMPT Creating queue AQ using AQTABLE table.
    BEGIN
         DBMS_AQADM.CREATE_QUEUE(
              QUEUE_NAME          => 'AQ',
              QUEUE_TABLE          => 'AQTABLE',
              MAX_RETRIES          => 0,
              RETRY_DELAY          => 0,
              RETENTION_TIME      => 604800,
              COMMENT               => 'Queue for confirmations');
    END;
    * Start the Queue
    PROMPT Starting AQ queue.
    BEGIN
         DBMS_AQADM.START_QUEUE(
              QUEUE_NAME          => 'AQ');
    END;
    * Create Subscriber for the the AQ Queue - DEV
    PROMPT Creating subscriber for AQ.
    DECLARE
         subscriber     sys.aq$_agent;
    BEGIN
         subscriber := sys.aq$_agent(NULL, '[email protected]', NULL);
         DBMS_AQADM.ADD_SUBSCRIBER(
              QUEUE_NAME          => 'AQ',
              SUBSCRIBER          => subscriber);
    END;
    PROMPT PUBLIC SYNONYM AQTABLE FOR AQTABLE
    CREATE PUBLIC SYNONYM AQTABLE FOR AQTABLE;
    PROMPT PUBLIC SYNONYM MSG FOR MSG
    CREATE PUBLIC SYNONYM MSG FOR MSG;
    PROMPT GRANTING SELECT,INSERT,DELETE AQTABLE TO APP_USER
    GRANT SELECT,INSERT,DELETE ON AQTABLE TO APP_USER;
    PROMPT GRANTING SELECT ON AQTABLE TO READ_USER
    GRANT SELECT ON AQTABLE TO READ_USER;
    PROMPT GRANTING EXECUTE, DEBUG ON MSG TO APP_USER
    GRANT EXECUTE, DEBUG ON MSG TO APP_USER;
    PROMPT GRANTING EXECUTE,DEBUG ON MSG TO READ_USER
    GRANT EXECUTE,DEBUG ON MSG TO READ_USER;
    Prompt Granting type permissions to the queue.
    begin
    DBMS_AQADM.GRANT_QUEUE_PRIVILEGE
    privilege => 'ALL'
    , queue_name => 'APP.AQ'
    , grantee => 'app_user'
    , grant_option => FALSE
    end;
    Do we need GRANT for FACE_USER ON AQ TABLE in our destination database XXX1.WORLD?
    Please clarify?
    -----------------------Added to the ddl------------------------
    Now i am getting
    Propagation Schedule for (Schema.AQ, destinationDB.link) encountered following error:
    ORA-25226: dequeue failed, queue string.string is not enabled for dequeue
    I have searched in net, but everyone says Enable the queue by START_QUEUE... but there is no progress in my queue..
    what could be the reason for the error? Please help as this is very very urgent...
    Thanks in advance,
    Babu
    Edited by: gps_babu on Oct 28, 2008 4:13 PM
    Edited by: gps_babu on Nov 4, 2008 2:12 PM

  • All quiet on the N8 PR1.1 update front - Nokia fai...

    Whilst the vast majority of N8s around the world have received this update there seem to be a large number which are "stuck in the system".
    In a separate thread ( /t5/Software-Updates/Official-Nokia-N8-PR1-1-Softw​are-Release-Schedule/td-p/923407) Nokia were providing a regularly updated spreadsheet of when the update would be available by phone variant. That's not been updated since the 24th February.
    Whilst I can accept that the release date may not be in Nokia's control, I feel they've shot themselves in the foot by starting out with good comms then letting it drop. In the thread we were promised that the update would be available within 5 days of the dates in the spreadsheet but with those dates being nearly 3 weeks past many of us are still waiting with no (promised) forthcoming information - and no update.
    Shame - Nokia seemed to be doing well.

    Akuma07 wrote:
    You know what the worst thing is though.
    NOBODY HAS A CLUE WHAT IS GOING ON AT NOKIA!!!!
    I have rang Nokia customer service, I have rang Vodafone customer service. Neither of them have a clue what PR1.1 is!!!!!!!!!!!!!!!!!!!!
    NOKIA!!! This whole PR1.1 **bleep** is one of the main reasons why I am SERIOUSLY considering jumping ship. I WANT MY UPDATE NOW.
    Nokia Care contact centre staff are only able to help you to know what is the latest version of software for your particular device's product code, they will not be able to tell you when an update will become available - update schedules for Nokia devices, like those for most other major phone manufacturers, are not currently published in advance.
    If your device is a Vodafone variant (ie: it has the Vodafone-customised version of the software), then Nokia will only be able to offer the update to you when it receives the approval from Vodafone. Approval for operator-variant software updates is a process undertaken at commercial level between Nokia and the operator concerned, just as Nokia Care staff cannot provide you with advanced scheduling, I doubt that the customer support staff of your operator will have information regarding update schedules for any devices that they offer.
    Software updates are phased in due to the wide range of regional, national and network variants. Nobody questions the frustration of customers whose device is not yet able to receive an update that is already available to others, but this is regrettably unavoidable - particularly in the case of operator-variant models.
    If this or any post answers your question, please remember to help others by pressing the 'Accept as solution' button.

  • Very Interesting problem

    Dear All,
    I scheduled propagation between two servers thru database link.
    Link is okey, since I am able to query data from other server on the other.
    Incoming queue is okey, I can propogate from the third machine, but instead of propagation from 1st to second,
    messages are going to the exception queue.
    There are no errors, there is nothing in Oracle trace files, but messages go to Exception queue.
    Does anybody have any idea why?
    Thank you very much for any assistance
    Regards
    Artem

    Forms stores a lot of compiled code in the fmx that is never used, and slows down the Forms Builder when it opens the fmb file. If you compile your fmb and save, the fmb balloons in size due to the compiled code.
    If you do a replace all, changing all ; to ; (which forces all program units to become uncompiled), and save WITHOUT compiling, your fmb will shrink.
    PS. Next time you post a question, please make your subject title a little more descriptive. My favorite is "Please help". :-(

  • WF_IN and WF_OUT

    Hi,
    I have an application using Interconnect and Workflow. I see entries in OAI_HIB_QUEUE but nothing in WF_IN, can some one explain why is this not getting any entries.
    I understand that the Workflow will pick from WF_IN and process on the request and write back to the WF_OUT. Please let me know if I understand something wrong.
    Any pointers explaining this will be great help to me.
    thanks
    Rahul

    Hi Rahul,
    Do you need to schedule propagation between the hub queue and the Workflow queues?
    It's been a while since I did OAI work, but I thought that the hub should automatically enqueue the message onto the WF queues. Have you defined the events correctly in BES to receive the messages?
    Matt
    Alpha review chapters from my book "Developing With Oracle Workflow" are available on my website:
    http://www.workflowfaq.com
    http://forum.workflowfaq.com
    NEW! - WorkflowFAQ Blog at http://thoughts.workflowfaq.com

  • Balance order confirmed qty in PI sheet

    Dear experts,
    Pls suggest while performing confirmation in PI sheet system shows the confirmed qty in the field not the balance confirmed qty that system useually shows while performing good mvt using co11n or cor6.
    Thanks in advance for your inputs and help...
    Regards,
    Nitish

    Hi
    If you are clear on backward and forward scheduling this doubt may not have come
    Check this thread and all the replies carries a lot of meaning
    Forum post in ERP - Sales and Distribution (SD) General: Back scheduling
    Back scheduling
    Hope this clarifies all your queries and issues
    Regards
    Raja

  • Simple Queue-Queue Failing with : kwqjaq: Only job queue slave can run prop

    I know this is a simple problem, but I can't get by it.
    I have two DB servers and I just want to queue a message on a local queue and have it propagated to a remote queue.
    Here are my steps:
    I do this on both databases:
    grant dba to johnb identified by johnb ;
    connect johnb/johnb
    create type my_type as object ( a number, b varchar2(2000), c varchar2(2000)) ;
    --- multi consumer queue
    Begin
    /* This queue table should already exist */
    dbms_aqadm.create_queue_table( queue_table => 'MY_QUEUE_TAB',
    queue_payload_type => 'MY_TYPE',
    multiple_consumers => TRUE,
    comment => 'Test MultiConsumer OAQ',
    compatible => '8.1.0' );
    DBMS_AQADM.CREATE_QUEUE (
    queue_name => 'MY_QUEUE'
    , queue_table => 'MY_QUEUE_TAB' );
    dbms_aqadm.start_queue('MY_QUEUE') ;
    End;
    -- on "Local DB" I do the following:
    DECLARE
    subscriber sys.aq$_agent;
    BEGIN
    subscriber := sys.aq$_agent( 'subscriber1' , 'JOHNB.MY_QUEUE@otmdmz2' , null);
    DBMS_AQADM.ADD_SUBSCRIBER(queue_name => 'JOHNB.MY_QUEUE', subscriber => subscriber);
    END;
    -- scheduling propagation
    BEGIN
    DBMS_AQADM.SCHEDULE_PROPAGATION( queue_name => 'JOHNB.MY_QUEUE' , destination => 'otmdmz2' , destination_queue => 'JOHNB.MY_QUEUE');
    END;
    BEGIN
    DBMS_AQADM.ALTER_PROPAGATION_SCHEDULE( queue_name => 'JOHNB.MY_QUEUE' , destination => 'otmdmz2' , destination_queue => 'JOHNB.MY_QUEUE' , latency => 1 );
    END;
    -- I queue with this
    -- enqueue local
    DECLARE
    enqueue_options DBMS_AQ.enqueue_options_t;
    enqueue_properties DBMS_AQ.message_properties_t;
    enqueue_handle RAW(16) ;
    enqueue_message JOHNB.MY_TYPE;
    BEGIN
    enqueue_message := JOHNB.MY_TYPE(1, 'an aq test','sending to remote db' ) ;
    dbms_aq.enqueue(queue_name => 'JOHNB.MY_QUEUE',
    enqueue_options => enqueue_options,
    message_properties => enqueue_properties,
    payload => enqueue_message,
    msgid => enqueue_handle) ;
    commit ;
    end;
    No messages move to remote DB.
    I can see the message in the local queue table.
    Both databases have the same init.ora parameters : job_queue_processes=1000, aq_tm_processes=1.
    If I attempt to run the job I get the message in the subject line in a trace file:
    kwqjaq: Only job queue slave can run propagation job, exiting
    Though I am sure simple configuration issue, I cannot find a relevant note.
    Thanks,
    John

    Another case of the documentation being less than precise - it happens.
    Without personally having investigated, that's my understanding as well bearing in mind the following observation/explanation in the same article which seems to apply for all except 11gR2:
    Although you typically use the JOB_QUEUE_PROCESSES initialization parameter to limit
    the number job queue processes for DBMS_JOB and you use the Scheduler attribute
    max_job_slave_processes to limit the number of job slave processes for the Scheduler,
    the Scheduler is affected by the JOB_QUEUE_PROCESSES parameter.
    The maximum number of job slave processes for Scheduler is determined by the lesser
    of the values of JOB_QUEUE_PROCESSES and max_job_slave_processes. For example:
    If JOB_QUEUE_PROCESSES is set to 10 and max_job_slave_processes is set to 20,
    the job coordinator will start no more than 10 job slave processes to be shared
    between DBMS_JOB and the Scheduler.
    If JOB_QUEUE_PROCESSES is 20 and max_job_slave_processes is 10, the coordinator
    will start up to 20 job slave processes. The Scheduler can use only 10 of these,
    but DBMS_JOB can use all 20.
    If JOB_QUEUE_PROCESSES is 0, DBMS_JOB is disabled, and the maximum number of
    job slave processes for Scheduler is controlled by the max_job_slave_processes
    Scheduler attribute.

  • Oracle advanced queuing

    Hi,
    I am new to Oracle Advanced queuing. I have a question.
    After enqueue operation, the message can be retrieved by dequeue operation.
    But, why do we need SCHEDULE_PROPAGATION ?
    Do we use that when we are sending it to a totally differnt queue in someother remote database ?
    Thanks,
    Message was edited by:
    user448390

    Do we use that when we are sending it to a totally
    differnt queue in someother remote database ?yes, partly true...SCHEDULE_PROPAGATION is used when we schedule propagation of messages to a destination identified by a Database Link.
    DBMS_AQADM.SCHEDULE_PROPAGATION (
       queue_name          IN    VARCHAR2,
       destination         IN    VARCHAR2 DEFAULT NULL,
       start_time          IN    DATE     DEFAULT SYSDATE,
       duration            IN    NUMBER   DEFAULT NULL,
       next_time           IN    VARCHAR2 DEFAULT NULL,
       latency             IN    NUMBER   DEFAULT 60,
       destination_queue IN VARCHAR2 DEFAULT NULL);
    destination_queue -- Name of the target queue to which messages are to be propagated in the form of a dblink.
    Messages may also be propagated to other queues in the same database by specifying a NULL destination. If a message has multiple recipients at the same destination in either the same or different queues, the message is propagated to all of them at the same time.
    Hope this will help..
    Thanks

Maybe you are looking for