Advanced Queueing and Propagation

Hi all,
I am trying to propagate messages from one queue to another in the same database.
For this I am using DBMS_AQADM. The code is as under.
CREATE OR REPLACE TYPE event_msg_type_surya AS OBJECT (
name VARCHAR2(10),
current_status NUMBER(5),
next_status NUMBER(5)
begin
DBMS_AQADM.create_queue_table (
queue_table => 'system.queue_tab_consumer',
queue_payload_type => 'system.event_msg_type_surya');
end;
begin
DBMS_AQADM.create_queue (
queue_name => 'system.queue_consumer',
queue_table => 'system.queue_tab_consumer');
end;
begin
DBMS_AQADM.start_queue (
queue_name => 'system.queue_consumer',
enqueue => TRUE);
end;
begin
DBMS_AQADM.create_queue_table (
queue_table => 'system.queue_tab_producer',
queue_payload_type => 'system.event_msg_type_surya',
multiple_consumers => TRUE);
end;
begin
DBMS_AQADM.create_queue (
queue_name => 'system.queue_producer',
queue_table => 'system.queue_tab_producer');
end;
begin
DBMS_AQADM.start_queue (
queue_name => 'system.queue_producer',
enqueue => TRUE);
end;
BEGIN
dbms_aqadm.add_subscriber (
queue_name => 'system.queue_producer',
subscriber => sys.aq$_agent('SYSTEM','system.queue_consumer',null)
END;
BEGIN
dbms_aqadm.schedule_propagation(
queue_name => 'system.queue_producer',
latency => 0
END;
begin
DBMS_AQADM.ALTER_PROPAGATION_SCHEDULE(
queue_name => 'system.queue_producer',
duration => '2000',
next_time => 'SYSDATE + 1/1440',
latency => '32');
end;
As per the expectation if producer_queue is populated the messages must get propagated to consumer_queue.But this is not getting done even after waiting long hours.
Can anyone throw any light on this.
Any help will be greatly appreciated.
Thanks in advance.

I am also looking for some examples of using SQL/PLSQL w/Advanced Queueing. We currently have the following scenario: One server has non-relational tables; another server has relational tables which house the same data in a relational format. We are looking for a way to migrate the non-relational data to the relational tables and keep the data updated when it changes in the non-relational tables.
We had considered using materialized views, but, this was ruled out because the non-relational tables are created and dropped on a daily basis.
My email: [email protected]
Thanks for any input you may have!

Similar Messages

  • Advanced Queueing and SQL in same transaction?

    Can Advanced Queueing operations and SQL operations be combined in one atomic transaction? I can't find any reference to this in the Oracle AQ documentation and none of the examples show this. In my application I'm having problems that seem like deadlock when I do combine AQ and SQL in the same transaction. However, when I place them in seperate transactions it works.
    null

    I am also looking for some examples of using SQL/PLSQL w/Advanced Queueing. We currently have the following scenario: One server has non-relational tables; another server has relational tables which house the same data in a relational format. We are looking for a way to migrate the non-relational data to the relational tables and keep the data updated when it changes in the non-relational tables.
    We had considered using materialized views, but, this was ruled out because the non-relational tables are created and dropped on a daily basis.
    My email: [email protected]
    Thanks for any input you may have!

  • Advanced Queueing and databases synchronization

    What kind of (application) problems could be solved by Advanced Queueing ?
    What about databases synchronization ( two Oracle Database Standard Edition One ) ?
    TANK YOU !

    AQ is intended for messaging. Messaging between applications, messaging between back-end and front-end.
    Synchronization would be a poor use of messaging. If you want synchronization then name your version number (all four places) and replication technology and we can point you in the right direction.
    For most situations I use:
    DBMS_RECTIFIER_DIFF or DBMS_COMPARISON
    http://www.morganslibrary.org/library.html

  • Deadlock using Advanced Queueing and OC4J

    We develop an application which extensively uses JMS. We use Advanced Queueing as JMS provider (Oracle9i 9.2.0.3.0 and OC4J 9.0.3). In our application we have message driven bean which listens on cerain queue and can send messages to other queues/topics as a result of processing received message. In this scenario we sometimes get a java-level deadlock.
    An example of such deadlock is here (taken from thread dump, jvm is sun 1.4.1_01):
    Found one Java-level deadlock:
    =============================
    "TaskManager":
    waiting to lock monitor 0x8ff45c (object 0x39db898, a oracle.jdbc.driver.OracleCallableStatement),
    which is held by "ApplicationServerThread-1"
    "ApplicationServerThread-1":
    waiting to lock monitor 0x8ff43c (object 0x39e4de8, a oracle.jdbc.driver.OracleConnection),
    which is held by "TaskManager"
    Java stack information for the threads listed above:
    ===================================================
    "TaskManager":
    at oracle.jdbc.driver.OracleCallableStatement.close(OracleCallableStatement.java:980)
    - waiting to lock <039DB898> (a oracle.jdbc.driver.OracleCallableStatement)
    - locked <039E4DE8> (a oracle.jdbc.driver.OracleConnection)
    at oracle.jdbc.driver.OracleConnection.close_statements(OracleConnection.java:2333)
    - locked <039E4DE8> (a oracle.jdbc.driver.OracleConnection)
    at oracle.jdbc.driver.OracleConnection.close(OracleConnection.java:1412)
    - locked <039E4DE8> (a oracle.jdbc.driver.OracleConnection)
    at com.evermind.sql.DriverManagerPooledConnection.close(DriverManagerPooledConnection.java:247)
    - locked <039DC320> (a com.evermind.sql.DriverManagerPooledConnection)
    at com.evermind.sql.OrionPooledDataSource.removeCache(OrionPooledDataSource.java:559)
    - locked <08A67AF0> (a com.evermind.sql.OrionPooledDataSource)
    at com.evermind.sql.OrionPooledDataSource.run(OrionPooledDataSource.java:505)
    at com.evermind.sql.DriverManagerXADataSource.run(DriverManagerXADataSource.java:195)
    at com.evermind.util.TaskManager.run(TaskManager.java:181)
    at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:797)
    at java.lang.Thread.run(Thread.java:536)
    "ApplicationServerThread-1":
    at oracle.jdbc.driver.OracleConnection.getDescriptor(OracleConnection.java:2549)
    - waiting to lock <039E4DE8> (a oracle.jdbc.driver.OracleConnection)
    at oracle.sql.StructDescriptor.createDescriptor(StructDescriptor.java:132)
    at oracle.jpub.runtime.MutableStruct.toDatum(MutableStruct.java:128)
    at oracle.jms.AQjmsObjectMessage_C.toDatum(AQjmsObjectMessage_C.java:45)
    at oracle.jdbc.driver.OraclePreparedStatement.setORAData(OraclePreparedStatement.java:2700)
    - locked <039DB898> (a oracle.jdbc.driver.OracleCallableStatement)
    at com.evermind.sql.OrclCallableStatement.setORAData(OrclCallableStatement.java:732)
    at oracle.jms.AQjmsProducer.enqueue(AQjmsProducer.java:837)
    - locked <091DBC40> (a oracle.jms.AQjmsProducer)
    at oracle.jms.AQjmsProducer.publish(AQjmsProducer.java:1366)
    - locked <091DBC40> (a oracle.jms.AQjmsProducer)
    at oracle.jms.AQjmsProducer.publish(AQjmsProducer.java:1216)
    - locked <091DBC40> (a oracle.jms.AQjmsProducer)
    at com.abilitydev.slovalco.jms.dispatcher.alarm.AlarmMessageDispatcher.dispatchMessage(AlarmMessageDispatcher.java:229)
    at com.abilitydev.slovalco.jms.dispatcher.DispatcherWrapper.dispatchMessage(DispatcherWrapper.java:51)
    at com.abilitydev.slovalco.jms.dispatcher.DispatcherWrapper.dispatchMessage(DispatcherWrapper.java:49)
    at com.abilitydev.slovalco.jms.dispatcher.DispatcherWrapper.dispatchMessage(DispatcherWrapper.java:49)
    at com.abilitydev.slovalco.jms.dispatcher.DispatcherWrapper.dispatchMessage(DispatcherWrapper.java:49)
    at com.abilitydev.slovalco.jms.handlers.PotDataHandler.handleMessage(PotDataHandler.java:40)
    at com.abilitydev.slovalco.jms.ObjectMessageBean.onMessage(ObjectMessageBean.java:95)
    at com.evermind.server.ejb.MessageDrivenBeanInvocation.run(MessageDrivenBeanInvocation.java:141)
    at com.evermind.server.ejb.MessageDrivenHome.onMessage(MessageDrivenHome.java:769)
    at com.evermind.server.ejb.MessageDrivenHome.run(MessageDrivenHome.java:929)
    at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:797)
    at java.lang.Thread.run(Thread.java:536)
    Any suggestions?
    Thanks, Marcel

    Marcel --
    This sounds like something that you'd want to pursue with the Oracle support folks.
    Is it possible for you to test the application using the OC4J 904 Developer Preview and see if the problem reproduces?
    btw -- are you using a tool to pull the information from the thread-dump? I noticed the line "Found one Java-level deadlock:" which looks like output from a tool. Just interested that's all.
    cheers
    -steve-

  • Data synchronization between apps using Advanced Queueing

    Dear you,
    I'm quite new to Oracle Advanced Queueing and looking at this for using now.
    I want to integrate our system (name A, Web application with Java technology, deployed on Ora AS 10g, using Oracle database) with an outside system (named B, .NET technology, using Sybase database) using Oracle Advanced Queuing.
    Could you please suggest the interfaces for both system A & B to access Advanced Queuing? What is the best to use: Java, JMS or HTTP/HTTPS/SMTP?
    Many thanks,
    K.N

    So we are talking EPMA Data Synchronization here.
    Are you able to limit decimal precision?
    The number provided in the error message is not negative -- can you please provide more details?
    Thank you,
    Todd Rebner

  • Start up Advanced Queueing

    Hi,
    I would like to know the setup which needs to be made with the DB in order to enable advanced queueing.
    Also, I would like to have a nice material (easy to understand) on Advanced queuing.
    Also I would like to know how the Oracle Message Gateway works and how it works in tandem with AQ.
    Thanks and Regards,

    Can anybody email me these sql scripts to my email?
    My email id is [email protected]
    aqdemo00.sql Create users, message types, and tables
    aqdemo01.sql Create queue tables, queues, subscribers, and propagation schedule
    aqdemo02.sql Enqueue messages into input queue
    aqdemo03.sql Install dequeue procedures
    aqdemo04.sql Perform blocking dequeues
    aqdemo05.sql Perform listen for multiple agents
    aqdemo06.sql Clean up users, queue tables, queues, and subscribers in aqdemo00.sql to aqdemo05.sql
    aqdemo07.sql Enqueue and dequeue to XMLType queue using XPATH expressions
    aqdemo08.sql Demonstrates server-to-server email notifications with default XML presentation
    aqdemo09.sql Set up queues and subscribers for array enqueue and dequeue (for OCI array demos also)
    aqdemo10.sql Array enqueue 10 messages
    aqdemo11.sql Array dequeue 10 messages
    aqdemo12.sql Clean up queues and subscribers for array enqueue and dequeue (for OCI array demos also)

  • Oracle AQ, the Advanced Queueing Facility

    Hi all,
    Does someone have first hand experience using
    Oracle AQ, the Advanced Queueing Facility?
    I am primarily interested in understanding its reliability, usability and general industry acceptance.
    thx
    Kalpana Subramanian

    DBMS_XMLQUERY and DBMS_XMLSAVE are implemented in Java. Neither are part of XQuery. However XQuery does require the java componant since the XQuery parser is currently written in Java. So while we can execute XQuery without Java we currently cannot parse XQuery statements without Java.
    DBMS_XMLGEN and DBMS_XMLSTORE should be present in XE. They are almost 100% feature equivilant to XMLQUERY and XMLSAVE but are implemented in 'C' rather than java. For XML Generation (XMLQUERY/XMLGEN) you should also consider the SQL/XML operators (XMLElement, XMLAgg, XMLForest, XMLAttributes).

  • Oracle Advanced Queueing on 10G  dequeue options  FIRST_MESSAGE

    Has anyone used the " dbms_aq.first_message " in their dequeue options when dequeueing from a queue with oracle advanced queueing?
    If so, have yoiu noticed any change in performance time ? Has it slowed processing time in anyway?
    Just looking for anyone that has actually used this and their experience with it.
    Thanks,

    Its difficult to answer without understanding what your application is trying to achieve, PLSQL notification can handle certain aspects - e.g. fire off a procedure when new messages arrive.
    Have a look at the doc to see if it might help your scenario:
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14257/aq_opers.htm#sthref1315
    (10.7 Registering for Notification)
    Thanks
    Paul

  • Oracle Advance Queueing

    I am using DBMS_AQ (Advanced Queueing) , when trying to dequeue the messages from it, by providing a dequeue stored procedure that is being called by a java process the number of dequeue messages per second is below expectations; arround 33/sec.
    Please can any one tell me what is wrong, find below the stored procedure, if there is any optimization that can be made on it please tell me to speed up the dequeue process.
    CREATE OR REPLACE PROCEDURE SMPP.deq (
    outputmessage OUT smpp.sms,
    priority OUT NUMBER,
    enq_time OUT VARCHAR2,
    CORR IN VARCHAR2,
    waittime IN NUMBER
    AS
    dequeue_options DBMS_AQ.dequeue_options_t;
    message_properties DBMS_AQ.message_properties_t;
    message_handle RAW (16);
    v_err VARCHAR2 (255);
    BEGIN
    dequeue_options.WAIT := waittime;
    dequeue_options.visibility := DBMS_AQ.IMMEDIATE;
    dequeue_options.correlation := CORR;
    dequeue_options.navigation := DBMS_AQ.first_message;
    DBMS_AQ.dequeue (queue_name => 'SMPP.SMSINQ',
    dequeue_options => dequeue_options,
    message_properties => message_properties,
    payload => outputmessage,
    msgid => message_handle
    priority := message_properties.priority;
    enq_time :=
    TO_CHAR (message_properties.enqueue_time, 'dd-mm-rr hh24:mm:SS');
    DBMS_OUTPUT.put_line (enq_time);
    DBMS_OUTPUT.put_line (outputmessage.msg_txt);
    DBMS_OUTPUT.put_line (message_properties.priority);
    EXCEPTION
    WHEN OTHERS
    THEN
    v_err := SUBSTR (SQLERRM, 1, 255);
    DBMS_OUTPUT.put_line (v_err);
    RAISE;
    END;
    /

    I haven't found much tuning opportunities by messing with dequeue options. Adding memory to the SGA tends to help. Also, creating mutliple queue tables for the queue tends to distribute io and may also help.

  • T61 with Advanced Dock and PCI-e graphics card?

    Purchased T61 laptop with NVidia Quadro NVS 140M graphics (Type: 7662-CTO).
    Purchased ThinkPad Advanced Dock for use with PCI-e graphics card for multi-monitors.  (Type: 2553)
    OS = Vista Ultimate
    Purchased PCI-e graphics card:   NVidia Quadro NVS 440  1x
    Purchased four Samsung SyncMaster 740bx monitors
    Opened Advanced Dock.  Installed Quadro NVS 440 card in PCI-e slot.  Card fits perfectly.
    Laptop using most recent BIOS v 1.26
    Set BIOS config for PCI-e graphics and DVI default monitor.
    Connected all four monitors via DVI.
    Laptop in dock, turned on.  BIOS screen displays correctly on external monitors.  Microsoft Corp. screen displays with progress bar.  Screen then goes blank and next step should be the Windows login.  Login screen never displays, however.  Boot-up of laptop halts at this point and never proceeds.
    Removed PCI-e card from dock, and placed laptop back in dock.  Laptop boots correctly to Windows.
    Assumed faulty dock.  Called Lenovo for replacement dock.  Replacement dock also fails to boot with PCI-e graphics card.
    Next assumed bad card.  Tried different card.  ATI FireMV 2400 1x.  Card fits in dock perfectly.  Laptop still fails to boot with card in dock.
    Called Lenovo.  Asked for a list of cards that will work in the dock.  Tech support did not know.  I asked if anyone at Lenovo has ever seen a T61 laptop work with the Advanced Dock and a PCI-e graphics card.  Tech said no.  Issue has been escalated to engineering.  I still do not have an answer as to which PCI-e cards, if any, will work in the Advanced Dock.
    Help please.
    ThinkPad T61 (7662-CTO) Core2Duo 2.2GHz 2 Gig RAM 1 Gig Turbo Memory 160 Gig HD 5400 rpm
    nVidia Quadro NVS 140M graphics Advanced Dock (2503)

    subterFUSE wrote:
    Excellent!
    ...snip...
    I will look into these Matrox cards.  Hopefully this will be the solution.
    Message Edited by subterFUSE on 12-05-2007 02:55 PM
    I spent some time surfing through product release letters and data sheets for the grafic cards offered by Lenovo, no where, as far as I could see, does it say that they are compatible with the advanced dock. What is also interesting, they say for PCs they are only tested for 2 screens, but you found the document MIGR-67464 where they show how to configure 4. [confused smiley]
    It looks as though you and RBS have found possible solutions for 4 screens, congrats to all 
    However, I don't want to be the "party pooper" here, but why doesn't your T61 boot in the dock with graphics card? This is still puzzling me, and to be honest I haven't as yet been able to come up with a reason or probable cause as to why 
    Andy  ______________________________________
    Please remember to come back and mark the post that you feel solved your question as the solution, it earns the member + points
    Did you find a post helpfull? You can thank the member by clicking on the star to the left awarding them Kudos Please add your type, model number and OS to your signature, it helps to help you. Forum Search Option T430 2347-G7U W8 x64, Yoga 10 HD+, Tablet 1838-2BG, T61p 6460-67G W7 x64, T43p 2668-G2G XP, T23 2647-9LG XP, plus a few more. FYI Unsolicited Personal Messages will be ignored.
      Deutsche Community     Comunidad en Español    English Community Русскоязычное Сообщество
    PepperonI blog 

  • Advance payment and down payment with two diffierent tax code

    HI expert!!!
    i have one scenario that advance payment and down payment with different tax code.
    in this time, advance payement post to vendor with po number,  we do not know how to use tax code V1(deductable tax) or VF(Non-deductable tax),  so we post advance payement amount by tax code V1(deductable) even though the amount included both. but we must know how amount is defined deductable tax or non-deductable tax when invoice.
    when we want to post down payment with VF , we could not post it because advance payement posted with V1 tax code.
    this is main problem with my scenario.
    and  as i know,   can i post two advance payement to  same vendor and same po item?, i can't do it with my system.
    only one advacne payment  is possible with one vendor and one po item. or  amount of  advance payment is all cleared by down payment, then i can post another advance payment to same vendor.  is it standard process with po?
    thank you in advance!!

    hi,
    As per my knowledge their is no difference between  advance payment and downpayment.
    and tax code is used for taxes purpose not for the payment terms.
    taxcode is created in ftxp.and related percentages are maintained in fv11.
    ex:-
    if i want  excise duty  - 10% on basic value
    education cesse 2% on excise duty
    sec.education cesses 1% on excise duty
    then fitst i have to create 3 condition types and that 3 condition types are used in my taxprocedure  and that taxprocedure is assigned to country code..
    after that i am created one taxcode in ftxp like v1= exciseduty10%educatiocess2%sec.edu.cesses1% with this description.
    and given the values for that conditions in fv11.
    and used that v1 taxcode in your p.o in invoice tab.
    and payment terms are came from vendor not from taxcode.
    Thanking you.

  • TDS DEDUCTING TWICE AT THE TIME OF ADVANCE POSTING AND AT THE TIME OF INVOg

    HI ALL
    I HAVE AN ISSUE TDS DEDUCTING TWICE AT THE TIME OF ADVANCE POSTING AND AT THE TIME OF INVOICE POSTING
    AT THE TIME OF ADVANCE POSTING F-48
    ENTRY IS
    VENDOR     DR     30000
    BANK          CR     2900
    TDS          CR     300
    AT THE TIME OF INVOICE POSTING-FB60
    THE ENTRY IS
    EXPENSE     DR     30000
    VENDOR     CR     29700
    TDS          CR     300
    SO TDS HAS BEEN DEDUCTED TWO TIMES
    AT THE TIME OF DOWN PAYMENT CLEARING u2013F-54
    THE INVOICE ENTRY SHOULD BE REVERSED AS
    VENDOR     DR     29700
    TDS          DR     300
    VENDOR SPL CR      30000
    BUT IT IS NOT REVERSING WHILE CLEARING DOWN PAYMENT AT F-54
    FOR THIS I MADE THE CONFIGURATION FOR DOWN PAYMENT IN WITH HOLDING TAX TYPE FOR PAYMENT.HERE I ACTIVATED u201CCENTRAL INVOICE PROu201D
    THOUGH IT IS NOT REVERSING THE ENTRY OF INVOICE POSTING AT THE TIME OF DOWN PAYMENT CLEARING AT F-54.
    SO WHAT COULD BE THE PROBLE . IF YOU KNOW PLEASE TELL ME THE SOLUTION
    I WILL BE GREATE THANKS TO YOU
    REGARDS
    RAM

    Hi All
    I Have an issue with TDS.
    At the time of down payment clearing th invoice amount is not reversing..what are the settings I need to check
    Actually
    At the time of Advance Posting the entry is----
    VENDOR     DR     30000
    BANK          CR     2900
    TDS          CR     300
    At the time of Invoice Posting  theentry is -
    EXPENSE     DR     30000
    VENDOR     CR     29700
    TDS          CR     300
    At the time of Down Payment Clearing  in t code F-54 the invoice entry should be reversed as -
    VENDOR     DR     29700
    TDS          DR     300
    VENDOR SPL CR      30000
    But system not reversing while clearing down payment in t code F-54 and the system posting entry is as----
    VENDOR DR 30000
    VENDOR SPL   30000
    So what is the mistaken has been done by me .If you any idea please let me know. I will be thankful to you.
    Thanks&Regards
    Ram

  • Down Payment (Advance Payment)  and Retension money Scenario

    Dear Friends,
    Pls guide me in the following scenario.
    The scenario is that one very large construction co using SAP. And its sub contract within its different plant in the same co code when he got any new projects. Now the co using down payment or say advance payment and retention money  condition. In the billing document every time I want 10% advance to be settled & 5% retenssion amount to be minus. This will be mapped through a GL for with special indicator A. But where will I maintain the details like % deducted every month? Is there any condition record for this FSZW Condition type( down payment) or this is defined by FI?
    Regards
    Atul

    Hi,
    Both are used in the sales A/R module.
    If you received a down payment from customer but it is not to any available AR invoice, you could use the ARDPR and the other is vice versa.
    The important things is that the down payment request can be paid directly using payment means available in the document tool bar.  It is used before A/R reserve invoice job performed.
    I suggest you to read help files for more details.
    Rgds,
    JM

  • Advance Payment and Retention Money adjustment.

    Dear Friends,
    Pls guide me in the following scenario.
    The scenario is that one very large construction co using SAP. And its sub contract within its different plant in the same co code when he got any new projects. Now the co using down payment or say advance payment and retention money  condition. In the billing document every time I want 10% advance to be settled & 5% retenssion amount to be minus. This will be mapped through a GL for with special indicator A. But where will I maintain the details like % deducted every month? Is there any condition record for this FSZW Condition type( down payment) or this is defined by FI?
    Regards
    Atul

    hi,
    try with installment - payment terms.
    This sould help you.
    Thanks,
    Sujai C

  • Advance Replication and Oracle Label Security

    Has anyone been able to configure both Advance Replication and Oracle Label Security to work together?

    This is currently not supported in Streams. I have an enhancement request in with Oracle for this functionality. This won't be seen in 11g R2 either.
    Has anyone done Label Security with Advance Replication?

Maybe you are looking for

  • How to delete one perticular message from a user and not the whole messages

    hi i would like to know how can i delete a single message sent by a person and not the complete list of message received by me from the same person also how can i forward a message received by me

  • Synchronizing without duplication of entries

    I am using Bluetooth to synchronize a Treo 755p and a computer running Windows 7 and Palm Desktop 6.2.2. I have the Palm Bluetooth synchronization applications on my computer configured to "synchronize the files," and this configuration is still sele

  • What is the olap in bw ?

    hi experts,     today i received an architect document which discribe the architect of the DW system .    the architect shows below: some data sources - > ETL - >DW (SAP BW )   - > ETL - >OLAP - >some report display tools     what makes me confussed

  • Slow IP based printing

    Has anyone had/fixed a problem with slow printing from IP based printers? When we installed the printers (various printer makes and models too, it's not just related to one brand) they all worked just fine and responded normally. It seems that over t

  • Apple Mail Preferences Only Opens Rules

    Can someone help me please. When I go down to preference in apple mail, the only thing that opens now is the "rule" box. I can't get the full preferences that have accounts, general fonts, etc. Thank You