Validation function, PL/SQL is not being executed

Hello there,
In one of my APEX listener setups I want to give access to only one application and block the rest. Basically I am following this nice post from Kris Rice: http://krisrice.blogspot.com.ar/2013/01/apex-listener-plsql-validations.html
My problem is that my validation function is not being executed:
- In ${config.dir}/apex/conf/apex.xml
<entry key="security.requestValidationFunction">MY_SCHEMA.MY_PACKAGES.is_allowed(flow_id=>:P_FLOW_ID,page_id=>:P_FLOW_STEP_ID)</entry>- The function code:
FUNCTION is_allowed(
    flow_id IN VARCHAR2,
    page_id IN VARCHAR2)
  RETURN BOOLEAN
AS
BEGIN
  insert into MY_SCHEMA.logs values (sysdate, flow_id);
  IF ( flow_id = 141 ) THEN
    RETURN true;
  END IF;
  RETURN false;
END;But the logs table remains empty, snif...
Any ideas?
Thanks in advance,
Luis

Upgrade to APEX Listener 2.0.3 solves the issue:
  http://www.oracle.com/technetwork/developer-tools/apex-listener/downloads/index.html
Thanks!
Luis

Similar Messages

  • XSLT for adding Namespace is not being executed at runtime

    Hi Gurus,
    I am trying to add a Namespace to inbound xml and I wrote a simple XSLT mapping as below, when I execute this using XML spy or in Operation mapping manually it is working fine and giving me output as expected but at runtime it is not executing, I am getting same input xml as output xml and receiver agreement is failing...
    Appreciate your thoughts..
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
         <xsl:output method="xml" encoding="UTF-8"/>
            <xsl:template match="*">
              <ns0:SalesXmlExtended xmlns:ns0="urn:/company.com/H/sndr">
              <xsl:copy-of select="//SalesReportInfo"/>
         </ns0:SalesXmlExtended>
         </xsl:template>
    </xsl:stylesheet>
    input xml is as below....
    <?xml version="1.0" encoding="UTF-8"?>
    <SalesXmlExtended>
         <SalesReportInfo>
              <SalesReport>
                   <Detail>
                        <deptNum>0270</deptNum> etc...
    output I am getting in XMLSpy and OM is as below, this is exactly what I need...
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:SalesXmlExtended xmlns:ns0="urn:/company.com/H/sndr">
         <SalesReportInfo>
              <SalesReport>
                   <Detail>
                        <deptNum>0270</deptNum>
    Thanks...
    Sukarna...

    Hi Baskar,
    Yeah, that is what my issue is , it shouldn't be failing but it is...
    I tried by manipulating the required namespace in the input file and it is working fine with out any errors....so I am guessing the XSLT is not being executed...
    I am getting below error which is valid because the transformation is not happening
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?><!-- Technical Routing --> <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
    <SAP:Category>XIServer</SAP:Category>
    <SAP:Code area="OUTBINDING">CO_TXT_OUTBINDING_ERROR</SAP:Code>
    <SAP:P1>-BS_HOUSE_OF_FRASER_DEV</SAP:P1><SAP:P2>-BD1_100,urn:.com/HoF/POS/EOD/sndr.SI_Out_HoFSales_XML</SAP:P2>
    <SAP:P3/>
    <SAP:P4/>
    <SAP:AdditionalText>No standard agreement found for , BS_HOUSE_OF_FRASER_DEV, , BD1_100, urn:/HoF/POS/EOD/sndr, SI_Out_HoFSales_XML</SAP:AdditionalText
    ><SAP:Stack>Problem occurred in receiver agreement for sender -BS_HOUSE_OF_FRASER_DEV to receiver -

  • Call to java bean but code not being executed.

    Making a call to my javabean class called ch06_03.java from a jsp program shown below:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>Using a java package.</title>
    </head>
    <body>
    <% beans.ch06_03 messager = new beans.ch06_03(); %>
    The message is: <%= messager.msg() %>
    </body>
    </html>
    The call from jsp to javabean program is only returning the hello from java and NOT EXECUTING ANY OF THE CODE in the msg() method. I am checking my table landings_hold and nothing is there, my log file shows nothing. Why is the code not being executed except for the return statement?
    My javabean program is shown below:
    package beans;
    import java.io.*;
    import java.util.*;
    import java.text.*;
    import java.sql.*;
    public class ch06_03 {
    StringTokenizer st1;
              String val1, val3, val4, val5, val9, val10, val11, val12, val13, val14, val16;
              String val2, val6, val7, val8, val15, val17, val18, val19, val20;
              int cnt;
              String filetext = "Starting RIFIS Upload";
              java.util.Date d = new java.util.Date();
              SimpleDateFormat form = new SimpleDateFormat("dd/MMM/yyyy hh:mm:ss");
              String dateString = form.format(d);
    public String msg() throws Exception {
         try {
         Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
    Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@xxxxx.xxxx.xxx:1521:xx","xxxxxx","xxxx");
              Statement st = conn.createStatement();
         File f = new File("C://upload");
              FileWriter outFile = new FileWriter("C://RIFIS/log/logfile.txt", true);
              outFile.write(System.getProperty("line.separator"));
              outFile.write(filetext+" - "+dateString);
              if (f.isDirectory())
              { String [] s = f.list();
              for (int i=0; i<s.length; i++)
              { outFile.write(System.getProperty("line.separator"));
                   outFile.write("Found file - "+f+"/"+s);
              FileReader file = new FileReader(f+"/"+s[i]);
                   File inputFile = new File(f+"/"+s[i]);
                        File outputFile = new File("C://RIFIS/archive/"+s[i]);
                   BufferedReader buff = new BufferedReader(file);
                   boolean eof = false;
                   String val0="";
                   ResultSet rec = st.executeQuery("SELECT landings_hold_batch_seq.nextval FROM dual");
                        while(rec.next())
                        { val0 = rec.getString(1); }
                        cnt=0;
                        while (!eof)
                        { String line = buff.readLine();
                        if (line == null)
                        { eof = true; }
                             else
                             { cnt = cnt+1;
                                  st1 = new StringTokenizer(line,",");
                                  val1 = st1.nextToken();
                                  val2 = st1.nextToken();
                                  val3 = st1.nextToken();
                                  val4 = st1.nextToken();
                                  val5 = st1.nextToken();
                                  val6 = st1.nextToken();
                                  val7 = st1.nextToken();
                                  val8 = st1.nextToken();
                                  val9 = st1.nextToken();
                                  val10 = st1.nextToken();
                                  val11 = st1.nextToken();
                                  val12 = st1.nextToken();
                                  val13 = st1.nextToken();
                                  val14 = st1.nextToken();
                                  val15 = st1.nextToken();
                                  val16 = st1.nextToken();
                                  val17 = st1.nextToken();
                                  val18 = st1.nextToken();
                                  val19 = st1.nextToken();
                                  val20 = st1.nextToken();
                                  st.executeUpdate("INSERT INTO LANDINGS_HOLD (lh_id, lh_batch, supplier_dr_id, supplier_unique_id, supplier_dealer_id, supplier_cf_id, supplier_vessel_id, unload_year, unload_month, unload_day, state_code, county_code, port_code, itis_code, market, grade, reported_quantity, unit_measure, dollars, lh_loaddt, lh_loadlive, purch_year, purch_month, purch_day)" +
                        "VALUES (0,'"+val0+"','"+val1+"',"+val2+",'"+val3+"','"+val4+"','"+val5+"',"+val6+","+val7+","+val8+",'"+val9+"','"+val10+"','"+val11+"','"+val12+"','"+val13+"','"+val14+"',"+val15+",'"+val16+"',"+val17+",SYSDATE,NULL,"+val18+","+val19+","+val20+")");
                             } // while else end
                        } // parent while end
                        FileReader in = new FileReader(inputFile);
                        FileWriter out = new FileWriter(outputFile);
    int c;
                        while ((c = in.read()) != -1)
                        { out.write((char)c); }
                        in.close();
                        out.close();
                        outFile.write(System.getProperty("line.separator"));
                        outFile.write("Number of records inserted - "+cnt);
                        outFile.write(System.getProperty("line.separator"));
                        outFile.write("Copied upload file to archive directory");
                        outFile.write(System.getProperty("line.separator"));
                        outFile.write(f+"/"+s[i]+" - Has been removed from upload directory");
                        buff.close();
                        inputFile.delete();
                   } // for end
                   outFile.write(System.getProperty("line.separator"));
                   outFile.write("Upload Complete...NO ERRORS");
                   outFile.write(System.getProperty("line.separator"));
                   outFile.write("*************************************************************");
                   outFile.write(System.getProperty("line.separator"));
                   conn.close();
              } // if end
              else
              { outFile.write("No files to process"); }
              outFile.flush();
              outFile.close();
              } // try end.
              catch(Exception e)
              { FileWriter errFile = new FileWriter("C://RIFIS/log/errfile.txt", true);
              errFile.write(System.getProperty("line.separator"));
              errFile.write("ALERT....ALERT....ALERT");
              errFile.write(System.getProperty("line.separator"));
              errFile.write("Error Occurred in ReadSource.java - RIFIS Upload");
              errFile.write(System.getProperty("line.separator"));
              errFile.write("My Error: " + e);
              errFile.write(System.getProperty("line.separator"));
              errFile.write("*************************************************************");
                   errFile.flush();
                   errFile.close();
              } // catch exception end.
         return "Hello from java";
         } //public msg block
         public ch06_03()

    Since you didn't use code-formatting tags ([ code ] and [ /code ] without the spaces) it's kinda hard to look at it. But I'm sure it DID execute much more than just the return statement - maybe you're not closing a file or db connection, or maybe you're seeing a cached page, so it actually isn't executing ANYTHING on the server (is your browser set to never check for newer pages so it (almost) always returns from cache, for example?)

  • Dinamic Configuration not being executed

    Hi All,
       I'm working on a new interface, file2file. The new file name is not known because it depends on the mapping process so I have configured the FileName options in the Sender and Receiver channels and I can see the new
    <SAP:Record namespace="http://sap.com/xi/XI/System/File" name="FileName">XXXXXXXXX</SAP:Record>
       and it uses it to write the file.
       In the mapping process, a new User-Defines function is called, it is the very same as all the posts about this option.
       The messate type is something like this:
                   label1
                        RECORD
                              LINE_ITEM
                                     DATA
        If I place the new function during the DATA mapping, it works but, if I move it to the label1 it seems that it is not being called. Is there any reason for this? Due to the number of boxes for the filename calculation I moved to label1.
        Help would be appreciated for this.
        Thanks and kind regards,
           Encinas.

    Hi,
    it means that you're label mapping is not being executed
    try adding a trance in your user defined function
    and you'll be able to see it this will be executed during the mapping
    (in the test tab)
    how to add trace:
    /people/michal.krawczyk2/blog/2005/02/25/simple-java-code-in-graphical-mapping--xi
    basically you can put it anywhere in your mapping as long as the user defined function will be executed
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • Material availability check not being executed

    First of all: I’m an SD consultant with limited knowledge about PS
    At our current client are we facing an issue with the material availability check in project system orders, created through e.g. CJ20N. The client mentions, that the availability check on the components is not being executed and therefore is effecting their operations
    I did check SAP OSS and found the following OSS notes:
    01774744           Planning quantity of PIR is not getting updated properly
    01745038           BAPI_NETWORK_COMP_CHANGE is updating PBED-PLNMG incorrectly
    01774657           BAPI_NETWORK_COMP_CHANGE is not updating PBED-PLNMG –III
    Those notes were also implemented
    Did find transaction CJBN and did some testing, but did get the message
    BL 001
    Availability check not activated
    I did check transaction
    OPJJ and everything looks good.
    OPJK and everything looks good
    At this point I’m totally clueless on how to resolve the issue.
    If you would have any suggestions, pointers or remarks: they would be appreciated.
    Thanks and regards,
    Jan Pel

    Hi,
    Can you please check whether the configuration of material availability check in PS is proper and in place or not. Please check the following sap help link on material's availability check in PS:
    Material Availability Check - Material - SAP Library
    Regards
    Saurabh

  • Programs which are not being executed for a specific period

    Hi,
    We are planning to do the application upgrade in few months,with respect to that we would like to find out what all programs/transactions(standard or custom) which are not being executed for a specific period.What is the way to find this?
    Regards,
    Sam

    Hi Sam,
    You can use st03 and defice theprograme name and period to sotp the activity.
    Regards,
    Anil

  • Programs which are not  being executed

    Hi,
    We are planning to do the application upgrade in few months,with respectto that we would like to find out what all programs/transactions(standard
    or custom) which are not being executed for a specific period.What is the
    way to find this?
    Regards,
    Sam

    Hi,
    Maybe a RBE tool can help:
    http://www.sap.com/services/pdf/50039406.pdf
    We do not exploit it at the moment.
    Best regards,
    Guy.

  • Conversion exit is not being executed

    Hi,
      I had enhanced logistics D/S, while activating in BI , encountering error message as "Conversion exit is not being executed". Your help is appreciated.
    Thanks
    Loiske

    Is it a warning or an error message? If it is a warning, you can ignore it.
    [I think] the message is for an infoobject which expects a conversion exit check in the transfer rule, but it is not checked. If you identify and select the conversion for the field, this message should not appear.

  • SE 30  not being executed

    Hi all,
       In our system , the transaction for runtime analysis is not being executed in DEV and QUA server (though it runs fine at PROD server) .
      On executing SE 30 , ABAP Runtime Error comes as below
    Runtime errors :-  CONVT_NO_NUMBER
    Unable to interpret "O" as a number. (here I am strictly putting  'ZERO' but not alphabet 'O' )
    Could anybody diagnose the problem..............?
    Thanks ................

    Hi,
    Give the zero in quotes like '0'.
    Thanks,
    Anil.S

  • SubQuerry Not being executed

    Hi Gentelmen;
    I have posted this question in the Test and Playground Forum but no one has responded.
    Any of you experts in this forum may be able to help me please...
    I have this problem where I am selecting records to display on the report from table customer and trying to count how many booking are there for each customer in booking table based on the customer id from booking table.
    here is my query code below...
    select id name city custtype discount into (wa-scid, wa-scname, wa-sccity, wa-scctype, wa-scdisc) from customer
      where city = 'CityName' and
      country = 'CountryName' and exists (
      select count( distinct custid ) as wa-cnt from bookings group by custid ).
      WRITE: /1 wa-scid, 11 wa-scname, 40 wa-sccity, 70 wa-scctype, 78 wa-scdisc,'%', 90 wa-cnt.
      endselect.
    I have tried to debug the issue and seems like the sub query is not being executed. The reason i say that because the value  of wa-cnt which is a counter of type i is not changing.
    Any one can shed some light in this matter/problem please...
    Many Thanks.
    -hisheeraz

    You are using AS addition in the subquery to determine whether the subquery is being executed or not, and I think this is wrong. AS addition has only meaning when your using wither INTO or APPENDING, it wouldn't change the value of wa-cnt.
    I suggest you to try to change the subquery to
    and exists ( select count( * ) from bookings ).
    As you're using only the COUNT aggregation expression int the subquery, a GROUPING is not necessary.
    Regards

  • Transform not being executed

    Hi,
    I have a mapping as shown here:
    http://sourcebase.sourceforge.net/iviewcapture_date_12_05_2004_time_18_55_52.png
    It is a fairly simple one: there is a main table BC_DEPT from where I'm populating the ODS_DEPT table, and there is a delta table D_BC_DEPT from where I need to get the maximum watermark value and call a package procedure called SET_WATERMARK with this as the parameter.
    The problem is that the procedure SET_WATERMARK is not being executed. I have checked in the debugger and the execution stops after output from the Aggregate operator. Plus, I searched for SET_WATERMARK in the generated mapping code and there is no reference to it in the code ! Executing the Main() procedure of the mapping also does not run this transform.
    The only significant thing about the transform procedure is that it is a synonym which points to the actual package in another instance over a DB link.
    Any help / pointers would be appreciated.
    Thanks in advance,
    Biswa.

    Yes, basically I want to call a procedure with the output of the AGG operator on a table. I ftransformations must have a output, how do I achieve this ? I have currently worked around it by creating an output table to store the output and then calling a wrapper procedure from the post mapping which reads the parameters from the table. But this seems a rather messy way to achieve something rather simple and obvious: read data from a table; do some stuff; call a procedure with the output !
    Can it be done in a simpler manner in this release ?
    Regards,
    Biswa.

  • Why is keyPressed() not being executed in this code..??

    HI,
    I am trying to develop a simple game program but what is banging my head is the keyPressed(KeyEvent evnt) is not being executed, i.e. the System.out.println("XXXX") inside this method is not being reached and hence shows no any output. Any suggestion would be appriciated. The code goes like this....
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.SwingUtilities;
    import javax.swing.Timer;
    import java.awt.event.*;
    import java.awt.BorderLayout;
    import java.awt.Color;
    import java.awt.Dimension;
    import java.awt.Graphics;
    import java.awt.Graphics2D;
    import java.awt.RenderingHints;
    import java.awt.geom.*;
    public class ArrowGame
      static GameField gfield;
      private static void createGUI()
        JFrame.setDefaultLookAndFeelDecorated(true);
         JFrame frame=new JFrame("Arrow Game");
         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        gfield=new GameField();
         frame.getContentPane().add(gfield,BorderLayout.CENTER);
         frame.setVisible(true);
         frame.pack();
      public static void main(String args[])
        SwingUtilities.invokeLater(new Runnable()
           public void run()
             createGUI();
      static class GameField extends JPanel implements ActionListener, KeyListener, MouseListener
        Timer timer;
        int w,h;
         int arrowPos;
         double dynamicX=1.5;
         double ovalX;
         final double ovalY=2.0;
         final double ovalW=45.0;
         final double ovalH=45.0;
         double ovalXX=(ovalX+10);
         final double ovalYY=(ovalY+10);
         double ovalXXX=(ovalXX+10);
         final double ovalYYY=(ovalYY+10);
         private boolean shotTriggered=false;
        GameField()
           setPreferredSize(new Dimension(525,450));
           addMouseListener(this);
           addKeyListener(this);
         public void paintComponent(Graphics g)
           super.paintComponent(g);
          w=getWidth();
           h=getHeight();
           Graphics2D g2=(Graphics2D)g;
          g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
           g2.setRenderingHint(RenderingHints.KEY_RENDERING,RenderingHints.VALUE_RENDER_QUALITY);
           g2.setColor(Color.darkGray);
           g2.fillRect(0,0,w,h);
           drawTarget(g2,w,h);
           drawArrow(g2,w,h);
         private void drawTarget(Graphics2D g2,int w,int h)
           ovalX+=dynamicX;
           ovalXX+=dynamicX;
           ovalXXX+=dynamicX;
           if (ovalX < 0 && ovalXX < 10 && ovalXXX < 20)
             ovalX=0;
              ovalXX=10;
              ovalXXX=20;
             dynamicX=1.5;
           else if (ovalX > (w-45) && ovalXX > (w-35) && ovalXXX > (w-25))
              ovalX=(w-45);
              ovalXX=(w-35);
              ovalXXX=(w-25);
              dynamicX=-1.5;
           g2.setColor(Color.green);
           g2.fill(new Ellipse2D.Double(ovalX,ovalY,ovalW,ovalH));
           g2.setColor(Color.blue);
           g2.fill(new Ellipse2D.Double(ovalXX,ovalYY,(ovalW-20),(ovalH-20)));
           g2.setColor(Color.red);
           g2.fill(new Ellipse2D.Double(ovalXXX,ovalYYY,(ovalW-40),(ovalH-40)));
         private void drawArrow(Graphics2D g2,int w,int h)
           arrowPos=w/2;
           g2.setColor(Color.white);
           g2.drawLine(arrowPos,((h/2)+175),arrowPos,h);
         public void keyPressed(KeyEvent evnt)
           int code=evnt.getKeyCode();
           System.out.println(code);
         public void keyTyped(KeyEvent evnt){}
         public void keyReleased(KeyEvent evnt){}
         public void mousePressed(MouseEvent evt)
           if (timer!=null)
             timer.stop();
              timer=null;
           else
             timer=new Timer(75,this);
             timer.start();
         public void mouseReleased(MouseEvent evt){}
         public void mouseEntered(MouseEvent evt){}
         public void mouseExited(MouseEvent evt){}
         public void mouseClicked(MouseEvent evt){}
         public void actionPerformed(ActionEvent event)
           repaint();
    };regards,
    Jay

      GameField()
        setPreferredSize(new Dimension(525,450));
        setFocusable(true); //<-----------------------------------------
        addMouseListener(this);
        addKeyListener(this);
      }

  • Facet secondaryToolBar not being executed properly

    Hi Folks,
    I used Goldin's pagination solution, but I am having some issues.
    Paging of large data sets - SOLUTION
    http://vgoldin.blogspot.com/2008/02/myfaces-trinidad-working-with-large.html
    I saw that this is an asynchronous call.
    The search button calls an action event at my Backing Bean that creates a PagedListDataModel.
    The creation does not start a call to the EJB until the af:table needs it.
    After executing the RENDER_RESPONSE (afterPhase), the ADF Table starts to render and call the PagedListDataModel to get the page and print the records (famous Extracting Data... message).
    My table is updated properly and also the total of records is being print in the statusbar facet of my panelCollection that is being used around the table.
    The problem is with secondaryToolBar facet that has two buttons for EXPORT function (EXCEL and PDF). These buttons are not being updated.
    Since it is an async call, I tried to put a partialTarget on the buttons after calling the EJB and getting the list of records without success.
    I also tried to put a partialTrigger on the buttons for both table and panelCollection without success.
    I created a generic (any phase) phase listener in order to check how the things are going and saw that (in this order):
    . All the faces are executed (from RESTORE till RENDER). In the invoke application phase it just call the backing bean method and creates the PagedListDataModel.
    . After all the phases have been executed, the listener takes place and after all needed have been returned, TWO phase (ONLY TWO) are being executed (RESTORE and RENDER).
    Could you please anyone here give me a hand? :-)
    Thanks in advance.
    Ricardo Morais

    Hi,
    Can you please check whether the configuration of material availability check in PS is proper and in place or not. Please check the following sap help link on material's availability check in PS:
    Material Availability Check - Material - SAP Library
    Regards
    Saurabh

  • Hook not being executed before sysinit

    Hi,
    I'm trying a hook before sysinit but it's not working. I created a file called 'custom_hook' in /etc/rc.d/functions.d like this one:
    test_hook() {
        /bin/echo 'it works' > /opt/testing
    add_hook sysinit_start test_hook
    But it does not execute because file 'testing' is not being created.
    Is there anything else to consider?
    Thanks in advance!
    Matt.

    unformatt wrote:@falconindy
    Thanks for your clarifications,
    1) I didn't know that / is mounted as readonly when sysinit_start runs. How can I write a file before starting daemons? Is there a way to accomplish that?
    Look at /etc/rc.sysinit then. root is remounted read only 2-3 lines above where the hook runs. At this point, /run is mounted on tmpfs and writable. This is why it exists.
    unformatt wrote:2) I put the absolute path because I wasn't sure if PATH was loadad in that time.
    Builtin means that it isn't executing a file on disk. It's an intrinsic of the shell (most shells have this, even lightweight POSIX shells like dash).
    # mv /bin/echo{,~}
    $ echo 'your shell knows how to do this'
    your shell knows how to do this

  • SQL commands not being parsed

    We have found that SQL strings with bound parameters are not being parsed and therefore we end up with a large SQL string buffer.
    We can execute a stored procedure using SQL Net and we can see if this runs say 1000 times there is a parse to Execute ratio of 1 to 1000 executions.
    However when we use odp.net calling a stored procedure or using OracleCommand with OracleParameters the SQL is never parsed. i.e A new SQL string is created in the buffer every time

    Here are some details
    Oracle database is version 8.1.7
    Client using ODP.NET version 9.2.0.2.0
    Monitoring Parse/Execute ratio using TOAD Data monitor
    Sample code using OracleParameters for bound variables in a select statement. I've removed exception code etc
    conn.Open();
    string cmdstr = "Select * From COUNTRY Where CODE=:1";
    OracleParameter[] prm = new OracleParameter[1];
    OracleCommand cmd = new OracleCommand(cmdstr, conn);
    prm[0] = cmd.Parameters.Add("PCODE",OracleDbType.Varchar2, "UK", ParameterDirection.Input);
    cmd.CommandType = CommandType.Text;
    for(int i = 0; i < 10000; i++)
         OracleDataReader dr = cmd.ExecuteReader();
         dr.Read();
         String code = dr.GetString(1);
         Console.WriteLine(code);                    dr.Close();
    I have similar code calling a stored procedure and another using the adapter update mechanism with a dataset.
    When executed the parse/Execute ratio is 1/1 not 1/n as it should be.
    If I execute the procedure using SQL NET the ratio is 1/n as expected.
    We have used TOAD Kill/Trace Session option to examine the SQL statement which shows bound variables being used.

Maybe you are looking for

  • Windows XP with Outlook 2007 authentication prompt

    We have successfully migrated some of our users from Exchange 2010 to 2013 - the ones running Windows 7 and Office 2007 and Office 2013. We have some users with Windows XP and Office 2007 though and when they start Outlook they get prompted to logon

  • I can't delete a tv show from my ipad

    I have a tv show that is not showing up on my ipad, but itunes says it has been downloaded onto my ipad. I tried to delete it using settings, but it is not showing up. I only see it in itunes when I connect. Any good suggestions?

  • ITunes folder is corrupt

    My iTunes folder is corrupt on my external hard drive and it is all gibberish (i.e., name turned to symbols and punctuation marks, etc.).  I'm fairly certain that it's not my hard drive because I am able to open and use other files on the drive. I am

  • Downloaded song only part downloaded - Help

    I downloaded a song which shows as being 5.32 minutes long on my i-tunes but when I play it, it only plays for 15 seconds then skips to next track.  How can I 'redownload' the song so I have the full 5.32 minutes?

  • Disconnect all active Essbase connections using VBA code in Excel

    Hi All, I am currently using the below code to disconnect the active essbase connection. It works fine but it shows me a windows with the list of active essbase connections and I have to select each essbase connection and click disconnect. I want a v