Implement commit,rollback,cancel popup when swapping task in dynamic region

Hello,
I have been trying to implement this functionality when I swap task flows in a dynamic region....
A popup/dialog to be displayed with the following options (assuming there are changes to be saved on the task flow being swapped out)
Commit - save the changes on the the outgoing task flow and continue to bring in the new task flow
Rollback - cancel the changes on the the outgoing task flow and continue to bring in the new task flow
Cancel - remain on the outgoing task flow and do not bring in the new task flow
If i click on a button within the outgoing task flow, it is possible to determine the condition of the view object, determine if there are pending changes and display such a dialog, the problem is if that the navigation within the dynamic region is being performed from outside the region, we are advised against using task flow return activities when using bounded task flows within regions ( section 17.1.8 of fusion dev guide for 11.1.1.1.0 ) so the only thing i can think of is building a finalizer routine for the task flow. While this does get executed when the task flow is swapped out... how can i display the dialog from there, and stop execution of the finalizer and return to the original task flow if ultimately i want to cancel.
Any ideas? other solutions?
Thanks.

Thanks for the reply Richard,
I think this will probably be an important feature for anyone using the single page model, unless that model is not being encouraged/being discouraged. Unfortunately I'm not aware of the "How-to" you mentioned, but I would dearly LOVE to be. The project I am working on is in a relatively early stage, and this would be the time to put things in extension libraries, templates and the like. Especially if there is no official line on when a formal fix might be available, the plans not being firm and all...
But thanks for the reply none the less... I'd still appreciate any further information if anyone has some form of solution.
Cheers

Similar Messages

  • Commit / Rollback  AND  ERROS when to use BULK COLLECT

    Hi
    Where can I to put commit when to use bulk collect for to insert or update ?,
    How many records I to must to commit ?
    declare
    TYPE t_cd_estrutura_comercial IS TABLE OF t_ec_pessoa_perfil_ciclo.cd_estrutura_comercial%TYPE   INDEX BY PLS_INTEGER;
    TYPE t_cd_tipo_estrutura_comercial IS TABLE OF t_ec_pessoa_perfil_ciclo.cd_tipo_estrutura_comercial%TYPE  INDEX BY PLS_INTEGER;
    TYPE t_nm_ciclo_operacional IS TABLE OF  t_ec_pessoa_perfil_ciclo.nm_ciclo_operacional%TYPE   INDEX BY PLS_INTEGER;
    TYPE t_cd_consultora IS TABLE OF t_ec_pessoa_perfil_ciclo.cd_consultora%TYPE  INDEX BY PLS_INTEGER;
    TYPE t_cd_perfil IS TABLE OF t_ec_pessoa_perfil_ciclo.cd_perfil%TYPE  INDEX BY PLS_INTEGER;
    TYPE t_cd_indicador IS TABLE OF t_ec_pessoa_perfil_ciclo.cd_indicador%TYPE  INDEX BY PLS_INTEGER;
    TYPE t_vl_indicador IS TABLE OF t_ec_pessoa_perfil_ciclo.vl_indicador%TYPE  INDEX BY PLS_INTEGER;
    TYPE t_dt_ultima_atualizacao IS TABLE OF t_ec_pessoa_perfil_ciclo.dt_ultima_atualizacao%TYPE   INDEX BY PLS_INTEGER;
    v_cd_estrutura_comercial t_cd_estrutura_comercial;
    v_cd_tipo_estrutura_comercial t_cd_tipo_estrutura_comercial;
    v_nm_ciclo_operacional t_nm_ciclo_operacional;
    v_cd_consultora t_cd_consultora;
    v_cd_perfil t_cd_perfil;
    v_cd_indicador t_cd_indicador;
    v_vl_indicador t_vl_indicador;
    v_dt_ultima_atualizacao t_dt_ultima_atualizacao;
    V_CURSOR  SYS_REFCURSOR;
    n  pls_integer :=0;
    begin
      ---open v_cursor 
      pkg_scnob_batch_indicadores.abre_cursor(275,v_cursor);
       LOOP
       FETCH V_CURSOR   BULK COLLECT INTO
         v_cd_estrutura_comercial,
         v_cd_tipo_estrutura_comercial,
         v_nm_ciclo_operacional,
         v_cd_consultora,
         v_cd_perfil,
         v_cd_indicador,
         v_vl_indicador,
         v_dt_ultima_atualizacao  LIMIT 1000;
           FORALL i IN 1 .. v_cd_estrutura_comercial.COUNT
              MERGE
                 INTO T_EC_PESSOA_PERFIL_CICLO tgt
                 USING ( SELECT v_cd_estrutura_comercial(i) cd_estrutura_comercial,                           
                          v_cd_tipo_estrutura_comercial(i) cd_tipo_estrutura_comercial,                      
                         v_nm_ciclo_operacional(i) nm_ciclo_operacional,                             
                         v_cd_consultora(i) cd_consultora,                                    
                         v_cd_perfil(i)    cd_perfil,                                       
                         v_cd_indicador(i) cd_indicador,                                     
                         v_vl_indicador(i) vl_indicador,                                     
                         v_dt_ultima_atualizacao(i) dt_ultima_atualizacao FROM  dual ) src
                 ON   (   src.CD_ESTRUTURA_COMERCIAL            = TGT.CD_ESTRUTURA_COMERCIAL        
                          AND src.CD_TIPO_ESTRUTURA_COMERCIAL   = TGT.CD_TIPO_ESTRUTURA_COMERCIAL   
                          AND src.NM_CICLO_OPERACIONAL          = TGT.NM_CICLO_OPERACIONAL          
                          AND src.CD_CONSULTORA                 = TGT.CD_CONSULTORA                 
                          AND src.CD_PERFIL                     = TGT.CD_PERFIL                     
                          AND  src.CD_INDICADOR                 = TGT.CD_INDICADOR  )
              WHEN MATCHED
              THEN
                UPDATE
                 SET TGT.VL_INDICADOR  = src.VL_INDICADOR ,                             
                     TGT.DT_ULTIMA_ATUALIZACAO  = src.DT_ULTIMA_ATUALIZACAO                     
              WHEN NOT MATCHED
              THEN
                 INSERT (tgt.CD_ESTRUTURA_COMERCIAL,                           
                         tgt.CD_TIPO_ESTRUTURA_COMERCIAL,                      
                         tgt.NM_CICLO_OPERACIONAL,                             
                         tgt.CD_CONSULTORA,                                    
                         tgt.CD_PERFIL ,                                       
                         tgt.CD_INDICADOR,                                     
                         tgt.VL_INDICADOR,                                     
                         tgt.DT_ULTIMA_ATUALIZACAO)                            
                 VALUES (src.CD_ESTRUTURA_COMERCIAL,                           
                         src.CD_TIPO_ESTRUTURA_COMERCIAL,                      
                         src.NM_CICLO_OPERACIONAL,                             
                         src.CD_CONSULTORA,                                    
                         src.CD_PERFIL ,                                       
                         src.CD_INDICADOR,                                     
                         src.VL_INDICADOR,                                     
                         src.DT_ULTIMA_ATUALIZACAO) ;
               -- Did I to must commit here ?     
               --         commit;
           n := n + SQL%ROWCOUNT;
        EXIT WHEN  V_CURSOR%NOTFOUND; 
      END LOOP; 
    exception
       when others then
           rollback;  -- and log errors
    end;

    There is a lot of questions like this
    Actually there no precise max of records to be committed
    The COMMIT

  • Commit/Rollback on Tab pages

    I have three tab pages
    1st tab page called master_detal_page. It is base block bound to tables.
    2nd tab page called Keyword_page. It is not bound to the table.
    3rd tab page called Exit_page. It will popup dialog box ask for save the changes. commit,rollback,exit_form on trigger when-page-change.
    I encountered problems that I was unabled ROLLBACK or COMMIT the change I made on 1st or 2nd pages. When I refresh tab pages always display back to orginal records.
    Please help me with any technical to solve it. Thanks
    Trigger: WHEN-TAB-PAGE-CHANGED
    DECLARE
    v_result VARCHAR2(30);
    BEGIN
    IF :SYSTEM.TAB_NEW_PAGE= 'EXIT_PAGE' THEN
    v_result := FUNCTION_DISPLAY_MSG_BOX('Do you want to
    save changes before existing');
    IF v_result = 'YES' THEN
    COMMIT;
    GO_BLOCK('BLK_1ST_PAGE');
    ELSIF v_result = 'NO' THEN
    ROLLBACK;
    GO_BLOCK('BLK_1ST_PAGE');
    ELSE
    EXIT_FORM(NO_VALIDATE);
    END IF;
    END;

    what is the error you got? go to menu/display error to see if any.
    Then it likely you got saving issue with your master-detail block.
    can you save with only master block data? but cannot save if both blocks have new data?
    if yes, then you may add when-validate-record trigger to master and detail blocks, with code forms_ddl('post');
    then see it makes difference.

  • Commit/Rollback Buttons Diabled for Pinned Tables?

    When I pin a table, the commit/rollback buttons become disabled. Is there a reason for that, or is it a bug?
    Java(TM) Platform     1.5.0_12
    Oracle IDE     1.5.0.52.03

    Finally got some time to let it return. 454 tables takes takes between 9-10 min. I also noticed if I cancel it, SQLDeveloper becomes pretty unresponsive....probably for the remaining 9-10 minutes, but I've been too busy to double check.
    As for the Commit/Rollback buttons becoming disabled in 1.5.0, I'm not able to get an exact sequence, it "just seems to start happening". It happens when I have multiple tables pinned. Changes to one will let me commit/rollback, but changes to another will not. The window with the disabled commit/rollback buttons sometimes will not even mark a rownum as changed if it has been updated.
    The refresh button still prompts you to save since changes were made. That works as a commit/rollback if the buttons are disabled.

  • How to avoid the Commit/Rollback dialog box

    I've a JClient app with two frames wich relate to the same appllication module with the same connection (I need it because I want a single commit).
    I start the first frame,then I click a button to start the second frame, I insert data in the second one and I see the commit/rollback buttons in both navebars enabled.
    When I close the secod frame, without committing (because I want to commit at the end of the whole process) I receive the Commit/Rollback dialog box.
    How can I solve that problem ?
    TIA
    Tullio

    Remove or conditionalize the code in generated Form/Frame.java class that binds a WindowListener to the Frame like:
        addWindowListener(new WindowAdapter()
            public void windowClosing(WindowEvent e)
              _popupTransactionDialog();
              JUApplication juApp = panelBinding.getApplication();
              if (juApp != null)
                juApp.release();
              System.exit(0);
      }You may either conditionlize the above windowClosing method or the code in generated method
    private void _popupTransactionDialog()

  • Swap task flow in dynamic region from menuitem in menubar

    Hello,
    I have a dynamic region and two task flows. I have action listeners that swap the task flows into the dynamic regions. When these action listeners are tied to buttons, everything works as expected, but if i attach them to menuitems on a menubar, despite the fact the the listener is executed (based on log file debugging), the task flow in the region does not change.
    Can anyone please give me an idea why, and exactly how someone can swap a task flow in a dynamic region from a menuitem.
    I'm using Jdeveloper 11.1.1.0.1
    Thanks
    Edited by: fakintoy on Apr 22, 2009 3:45 PM
    Edited by: fakintoy on Apr 22, 2009 3:46 PM
    Edited by: fakintoy on Apr 22, 2009 4:06 PM

    Hi,
    My guess is that the region is not added to the list of partial targets. Add a partialTrigger on the region pointing on the menu item.
    p.s. Code snippet would really help to get a more precise answer here
    Regards,
    ~ Simon

  • How to remove "Delegate" option from Reassign Popup page in task details

    Hi
    I'm using SOA 11g and Jdev 11.1.1.3 for the development. I created a Human task and using the Reassign functionality. From the BPM Worklist, When I click the Reassign in the Actions menu, a popup for Reassign task is displayed. In this popup, I have two options -
    1) Reassign (transfer task to another user or group) and
    2) Delegate (allow specfied user to act on my behalf)
    Functionality of option 1 is working fine. But I do not want to show the option 2 in the popup page.
    I tried to find the popup JSPX page and tried to find for any edit options from the BPM Worklist screen, but no luck.
    Can anyone throw some light on how I can achieve this.
    Thanks,
    Udaya Neeliahgari

    Hello,
    create a new permission level. Copy the "Contribute" permission level and call it "Contribute no Delete". Edit the new permission level and untick the "Delete" box in the List Permissions section.
    The next step depends on whether you want this to be site-wide or just for a particular library.
    Go to the Approval Task list and click List Permissions in the List ribbon. 
    Select to break permission inheritance.
    Then select the Sharepoint group that normally has "Contribute" permissions and change the permissions to "Contribute no Delete". To do that, tick the tick box for the group and use the ribbon command to edit permissions for the selection.
    cheers, teylyn

  • Commit/Rollback in Stored Procedures

    I'm just confused about how this setup works. I understand that ODP.NET is in autocommit mode by default, and any INSERT, UPDATE, or DELETE commands are committed automatically. If they fail for any reason, obviously the row(s) are not modified.
    But how about sprocs? Do they autocommit as well? If so how are rollbacks handled? Do I need to explicitly create a transaction and commit/rollback? Is it best practice to commit/rollback in the .NET transaction or in the sproc itself?
    As you can see, I'm just really looking for info on how these two interact. Any info you can provide will be extremely helpful.
    Thanks!

    Hello,
    When ODP.NET is operating in auto-commit mode (the default as you note) this applies to PL/SQL calls as well.
    I am of the opinion that the client should be in charge of a transaction and I do not commit/rollback inside PL/SQL code (unless of course I am writing PL/SQL that is the client of other PL/SQL code).
    Here's a bit from Tom Kyte on the subject:
    http://tkyte.blogspot.com/2007/03/dreaded-others-then-null-strikes-again.html
    Just search for the text "Who control the commit?" on that page.
    Regards,
    Mark

  • JDBC adapter Commit/Rollback

    Hi Guys, I got a question regarding JDBC adapter auto commit. Hopefully you guys can help me :). Until now, when my XI calling a storedprocedure in ORACLE using JDBC adapter, it will automatically commit the calling. When i see my configuration for the JDBC adapter receiver, the checkbox for Enable Autocommit is thicked. My question is, is there anyway that we handle the commit or rollback ourself. How we can handle that? Is it from the BPM or just from the Configuration.
    Thank you very much in advance for all replies, advices and answer. Cheers guys..

    Hi
    Try this out
    You can programmatically set auto commit to true as in follows
    // Load the Oracle JDBC driver
    DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
    // Connect to the database
    // You can put a database hostname after the @ sign in the connection URL.
    Connection conn =
          DriverManager.getConnection ("jdbc:oracle:oci:@", "scott", "tiger");
    // It's faster when auto commit is off
    <b>conn.setAutoCommit (true); </b>
    // Create a Statement
    Statement stmt = conn.createStatement ();
    regards
    krishna

  • TimesTen doesn't commit/rollback executed DMLs in procedure, so tables were locked.

    Hello, when PLSQL_TIMEOUT occured, TimesTen doesn't commit/rollback executed DMLs in procedure, so tables were locked.
    Please help. How can I solve this problem?

    Looks like I've a mistake, not PLSQL_TIMOUT, after ODBC connection timeot it seems doesn't commit/rollback.
    java.sql.SQLException: [TimesTen][TimesTen 11.2.1.8.0 CLIENT]Communication link failure. System call select() failed with OS error 110. This operation has Timed Out. Try increasing your ODBC timeout attribute or check to make sure the target TimesTen Server is running
    Also I couldn't find why locked and what locked. My procedure waiting for lock or something I dont know, so timout occured

  • Commit / RollBack

    Hi,
    I want to execute 2 or more database operation in one transcation with commit/rollback mechanism.
    Below is my code,
    How can i make it has commit /rollback (in one transaction).
    Thanks.
    InitialContext ctx = new InitialContext();
    DataSource ds = (DataSource) ctx.lookup("jdbc/SAPXXXDB");
    Connection con1 = ds.getConnection();
    Connection con2 = ds.getConnection();
    PreparedStatement pstm1 =con1.prepareStatement("insert into ZTABLE1(...)Values(...)";
    PreparedStatement pstm2 =con2.prepareStatement("insert into ZTABLE2(...)Values(...)";
    pstm1.executeUpdate();
    pstm2.executeUpdate();
    con1.close();
    con2.close();

    Hi Cemil Bozlagan ,
    When a connection is created, it is in auto-commit mode. This means that each individual SQL statement is treated as a transaction and is automatically committed right after it is executed.
    The way to allow two or more statements to be grouped into a transaction is to disable auto-commit mode by using Connection object.
    con.setAutoCommit(false);
    Once auto-commit mode is disabled, no query statements are committed until you call the method commit explicitly. All statements executed after the previous call to the method commit are included in the current transaction and committed together as a unit.
    Have a look
    PreparedStatement pstm1 =con1.prepareStatement("insert into ZTABLE1(...)Values(...)";
    PreparedStatement pstm2 =con2.prepareStatement("insert into ZTABLE2(...)Values(...)";
    pstm1.executeUpdate();
    pstm2.executeUpdate();
    con.commit();
    con.setAutoCommit(true);
    To roll back the transaction based on ur requirement u can use
    con.rollback()
    Regards,
    srikanth

  • Shoe View As A Popup When We Click On A Search Help

    Hi Experts,
    I am working on throwing a view as a popup when we press on the search help button for a column in my table.Could someone please tell me if this is possible and if we have an event that is triggered when we click the F4 symbol right next to the field .
    With Regards,
    Chaitanya.

    Hello Chaitanya ,
                                You can use the freely programmed input help or OVS help .
    For freely programmed input help , you have to create a webdynpro component  ( Say ZWD_FREE_HELP )which will have the pop up view as a defaut view in the window WD_VALUE_HELP . In this wendynpro component you have to implement the interface IWD_VALUE_HELP .
    You have also set the value help listner (  attribute VALUE_HELP_LISTENER  in component controller of type IF_WD_VALUE_HELP_LISTENER ) inside the method SET_VALUE_HELP_LISTENER  in this component  ZWD_FREE_HELP .
    Now you have to use this component in your Main component and provide the component name in for the attribute property freely programmed input help .
    After closing the pop up window you have pass the data to main window . For this you have to implement the on_data_select event ( this event is the interface event at component controller )  of ZWD_FREE_HELP.
    I hope this help you ....
    regards
    Vivek

  • Implementing COMMIT frequency

    I've been asked to create a procedure which should delete from a table records which are older than a specified period(input parameter) with a User specified Commit Frequency(This will be another Input parameter)
    I have a column called created_time in mytable which i could use in WHERE clause of the DELETE statement.
    create or replace procedure delete_mytable
           p_commitfreq  in number
           p_no_of_days_old in number
    as
    begin
    DELETE FROM mytable where created_time< sysdate-p_no_of_days_old;
    -- code to implement COMMIT frequency
    end;
    How can i implement COMMIT frequency in this proc?. Client is going to COMMIT after every 35000 rows. But they don't want this to be hard coded. I have seen other threads in OTN where Gurus are saying that including COMMIT frequency is a bad thing. This just happens to be in SPECS which I don't get to design(we are actually converting a Purge script written in C++ to PL/SQL)

    I have seen other threads in OTN where Gurus are saying that including COMMIT
    frequency is a bad thing. We consider the use of COMMIT in the middle of a business transaction to be bad practice for a number of reasons:
    (1) Multiple commits are generally slower.
    (2) It is frequently associated with an implementation which consists of record-by-record processing inside a PL/SQL curosr loop when set-based processing is far more efficient.
    (3) It can be harder to recover from a failed business transaction if the data is in an inconsistent state.
    (4) Such implementations are prone to ORA-01002 and ORA-01555 errors.
    Now the question which occurs to me in your case is, "Why do you users care?" In fact, would they even notice if you implemented the procedure as you show in your post and just ignore the p_commitfreq?
    However, if your conscience won't let you do that, the best solution would be something like this:
      << commit_loop >>.
      loop
           delete from mytable
           where created_time< sysdate-p_no_of_days_old
           and rownum <= p_commitfreq;
           exit when sql%rowcount = 0;
          commit;
      end loop commit_loop;
      commit;This solution will be slower than a single commit approach but avoids the other issues.
    Cheers, APC
    Blog : http://radiofreetooting.blogspot.com/

  • Is there a way to prevent the "task id" from changing automatically when a task is moved or inserted?

    When moving a task in Project 2010 I've found task IDs also change.  This is not the desired result.  If a task is moved for whatever reason the task ID should not change.  It should be consistent to the task.  For example, I've created
    a new project with five tasks as shown on the left below.
    I've numbered the tasks to coincide with the task ID as originally created.  If I move Task 4 to be after Task 1 the moved task and all subsequent tasks are renumbered as shown on the right below.
    This is not the desired result.  The expectation is the task ID is unique to the task when the task is created.  It should never change after the fact.  I view the task ID as the identity field for the task.  In database terms this means
    it NEVER EVER arbitrarily changes.
    A similar problem occurs if a task is inserted between two tasks.  If I insert task 6 after task 2 the task IDs are renumbered as shown.
    Again, the task ID should never have been arbitrarily changed.  This creates a referencing problem because task 6 should have had the next available higher task ID which should have been 6 and all the tasks after task 6 would not have been renumbered.
    The only work around to this behavior is to create a custom number field called "Task ID" and manually assign numbers to each task.  This makes referencing the tasks easy when communicating with team members.  Using the built-in task
    id as a reference risks the task ID being lost at any point and confusion for team members.
    Is there a way to turn-off task ID renumbering when a task is moved or inserted?
     Ideally any inserted task should be the next higher available task ID.
    Thanks

    Hi,
    not sure where to find original post. In RDB, it is MSP_EpmTask_UserView.TaskClientUniqueId.
    Sorry, if there are now 2 answers.
    Regards
    Barbara
    To increase the value of this forum, please mark the replies that helped to solve your issue as answer. If you find answers to questions from other forum participants to be helpful, please mark them as helpful. Your participation will help others to find
    an appropriate solution faster. Thanks for your support!

  • The method 'commit' cant be called when a global transaction is active.

    Hello,
    I've installed the SOAdemo a couple of times on local machines, and it works fine. Now I've deployed the SOADemo on a separate server and a strange error occurs in BPEL when testing the SOADemo.
    The SOAOrderBooking BPEL process runs into an error at the GetOrderId process:
    ================================
    file:/C:/product/10.1.3.1/OracleAS_1/bpel/domains/default/tmp/.bpel_SOAOrderBooking_1.0_937b09d1bd8dae1b33b028b2871aef63.tmp/OrderSequence.wsdl [ OrderSequence_ptt::OrderSequence(OrderSequenceInput_msg,OrderSequenceOutputCollection) ] - WSIF JCA Execute of operation 'OrderSequence' failed due to: DBWriteInteractionSpec Execute Failed Exception.
    unknown failed. Descriptor name: [unknown]. [Caused by: The method 'commit' cant be called when a global transaction is active .
    ; nested exception is:
         ORABPEL-11616
    =================================
    I am using SOA Suite 10.1.3.0 and Database 10201, deployed on Windows.
    Can anybody tell me what can cause this problem?
    Thanks in advance,
    Regards Leon                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

    Hi,
    Hi, I am getting the same error using ESB Database Adapter.
    My faultstring is:
    ========================
    oracle.tip.esb.server.common.exceptions.BusinessEventRetriableException: An unhandled exception has been thrown in the ESB system. The exception reported is: "oracle.tip.esb.server.common.exceptions.BusinessEventRetriableException: An unhandled exception has been thrown in the ESB system. The exception reported is: "org.collaxa.thirdparty.apache.wsif.WSIFException: esb:///ESB_Projects/my_ESB/myAdapter.wsdl [ myAdapter_ptt::myAdapter(InputParameters,OutputParameters) ] - WSIF JCA Execute of operation 'myAdapter' failed due to: DBWriteInteractionSpec Execute Failed Exception.
    unknown failed. Descriptor name: [unknown]. [Caused by: The method 'commit' cant be called when a global transaction is active.]
    ; nested exception is:
         ORABPEL-11616
    DBWriteInteractionSpec Execute Failed Exception.
    unknown failed. Descriptor name: [unknown]. [Caused by: The method 'commit' cant be called when a global transaction is active.]
    Caused by Exceptoin [TOPLINK-4002] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 061004)): oracle.toplink.exceptions.DatabaseException
    Belső kivétel: java.sql.SQLException: The method 'commit' cant be called when a global transaction is active.Error Code: 0.
    ==========================
    (BTW, what has 'commit' to do with a procedure that is only reading the database?)
    Regards,
    Patrik

Maybe you are looking for