Bind variables in XML

is there any way to use bind variables for the select query embedded in XML tags?my shared pull was overflowed with same select statments last night !
<Query>
SELECT nvl(SUM(apportion_amt),0),ca_ss_store.st_code,ca_ss_store.COST_CENTER, trunc(a.tran_date),ca_ss_store.st_code FROM st_lo_trans A, ca_ss_store,
st_lo_apportions,st_lo_master slm WHERE ca_ss_store.st_code = A.st_code AND st_lo_apportions.loan_tran_code = A.loan_tran_code AND slm.loan_code =
A.loan_code AND trunc(tran_date) BETWEEN TO_DATE(?,'DD/MM/YYYY') and TO_DATE(?,'DD/MM/YYYY') AND A.st_code = ? AND
A.ST_CODE=CA_SS_STORE.ST_CODE and tran_id in('ADV') AND apportion_id = 'F' AND (select count(*) from st_lo_master slm1 where slm1.bo_code =
slm.bo_code and loan_date < a.tran_date) > 0 AND A.VOID_ID = 'N' AND A.created_by>;0 GROUP BY CA_SS_STORE.ST_CODE,ca_ss_store.COST_CENTER,trunc
(a.tran_date) order by trunc(a.tran_date)
</Query> Thanks,
Hesh.

Hi,
You can do something like this
for i in 1..p_arg_names.count
loop
if (p_arg_names(i) = '_xmlurl') then
l_arg_values(i) := '<changed_url>';
end if;
end loop;
Hope that helps.
Thanks,
Sharmila

Similar Messages

  • How do I use the Session State to manage bind variables & download xml data

    I have a Report Query with more than 30 queries; many have bind variables in them. I'd like to create sample xml so that I can develop my word templates. When I try to download the XML data Source for Layout, it doesn't ask for the bind variable values.
    How can I download the XML data without replacing the bind variable values in each of the queries?
    Thank you.

    If you are using the Standalone version, then first of all make sure to UNCHECK (BIP10g 10.1.3.4.1)
    "AUTO RUN" (it is under General Settings when you select your Report Definition)
    Next, you should define the parameters in the corresponding parameter Section.
    Its simplest form is of "Text" type so you will have to enter values at runtime.
    Then these parameters can be used in your query as bind variables.
    When you run the report it will prompt for parameter values. Enter these values
    and you would get a sample of your XML data.
    This should work and you should not find any issues.
    regards
    Jorge

  • Bind Variables with AND in String causing Issues in XML & Report Outputs

    Hi all,
    I'm creating a BI Publisher report (10.1.3.2) and am experiencing an issue with the interprutation of Bind Variables in the Data Template.
    Here is an example of some of the Data template
    <dataTemplate name="BudgetDataBU" description="BudgetDataBU" dataSourceRef="DLXN">
       <parameters> 
          <parameter name="p_Year" dataType="Integer" include_in_output="true"/>
          <parameter name="p_Measure" dataType="character" include_in_output="true"/>
          <parameter name="p_Currency" dataType="character" include_in_output="true"/>
          <parameter name="p_Version" dataType="character" include_in_output="true"/>
       </parameters>
       <dataQuery>
          <sqlStatement name="BusUnits">
               <![CDATA[SELECT DISTINCT CC.BUSINESS_UNIT as BUSINESS_UNIT
                        FROM   DLXN_FACT_DATA_DET FD,
                               DLXN.COST_CENTRE CC
                        WHERE FD.COST_CENTRE = CC.COST_CENTRE
                        AND FD.CAL_YEAR    = :p_Year
                        AND FD.Currency      = :p_Currency
                        AND FD.Measure      = :p_Measure
                        AND FD.Version        = :p_Version                                
                        AND CC.DLXN_VIEW = 'Delexian' ]]>
               </sqlStatement>
           <sqlStatement name="Details">
               <![CDATA[SELECT DLXN_FACT_DATA_DET.VERSION,
                               DLXN_FACT_DATA_DET.CURRENCY,
                               DLXN_FACT_DATA_DET.CAL_YEAR as CAL_YEAR,
                               SUM(nvl(DLXN_FACT_DATA_DET.JAN_AMT,0)) as JAN_AMT,
            </sqlStatement>
        </dataQuery>The problem is with the :p_Measure Bind Variable but it could just as easily be any of the other character parameters.
    The particular string value that is causing a problem is "Travel and Expenditure". I believe it is due to the "AND" in the string but this string value cannot be changed in the database to say "Travel & Expenditure".
    I have thought about using a REPLACE function in the SELECT statement but see this as an ugly solution.
    Any input greatly appreciated.
    Kind Regards,
    Gary.

    We remove this restriction ,fix included in BI Publisher July 2009 update for 10.1.3.4.x. The patch number is 8704846.

  • How to update bind variable and restrict values in a Model Driven LOV?

    Hi Guys,
    Using JDev 11.1.1.2.0
    I've recreated an excellent Frank Nimphius article about restricting values derived from a model driven LOV (http://www.oracle.com/technetwork/developer-tools/adf/learnmore/44-restrict-lov-169186.pdf)
    But my bind variable isn't updating. Deleting the bind variable gets me the entire LOV. Activate the code below and insert a bind variable into the where clause like Frank says and I get nothing back. Bind variable is blank. Any ideas? Code wasn't supplied with the article. It seems simple enough but the bind variable isn't updating in the SQL, even though the updated value shows up here...
      public void onLovLaunch(LaunchPopupEvent launchPopupEvent)
        BindingContext bctx = BindingContext.getCurrent();
        BindingContainer bindings = bctx.getCurrentBindingsEntry();
        FacesCtrlLOVBinding lov = (FacesCtrlLOVBinding)bindings.get("DepartmentId");
        lov.getListIterBinding().getViewObject().setNamedWhereClauseParam("deptId","60");
        System.out.println("lov name: " + lov.getName().toString());
        System.out.println("lov Param Attrs: " + lov.getListIterBinding().getViewObject().getNamedWhereClauseParams().getAttribute("deptId").toString());
        System.out.println("lov View Object: " + lov.getListIterBinding().getViewObject().getName().toString());
        System.out.println("lov IterBinding: " + lov.getListIterBinding().getName().toString());
       }Gets me ...
    lov name: DepartmentId
    lov Param Attrs: 60
    lov View Object: _LOCAL_VIEW_USAGE_lov_model_queries_EmployeesView_DepartmentsView
    lov IterBinding: DepartmentIdList_2

    That's a good idea, but it's still not working. Here is how I implemented it. It might be different from your suggestion as I'm still pretty new to this.
    I have a recursive tree table. You select a node. You then click a button which calls the listener below. "findParents" is a method call to the AppModuleImpl class and it finds all parent nodes of your selection. "restrictPartBomLOV", also of the AppModuleImpl class, then modifies the model driven lists' View Object (partBomLOV) to exclude those parent node values.
    The resulting model driven LOV on the popup should be updated, yeah? But it still isn't udpating. If I manually type in the updated Where clause in PartBomLOV.xml query tab, it works, but it doesn't programmatically.
      public void insertPopupFetchListener(PopupFetchEvent popupFetchEvent)
        BindingContainer bindings = getBindings();
        OperationBinding operationBinding = bindings.getOperationBinding("findParents");
        parents = (List)operationBinding.execute();
        operationBinding = bindings.getOperationBinding("restrictPartBomLOV");
        operationBinding.execute();
       public void restrictPartBomLOV(List parents)
          ViewObjectImpl vo = getPartBomLOV();
          String wcl = "";
          Object[]   p = parents.toArray();
          for(int i = 0; i < p.length; i++)
             if (i == 0)
                wcl = wcl + "PNUM <> '" + p.toString() + "'";
    else
    wcl = wcl + "AND PNUM <> '" + p[i].toString() + "'";
    vo.setWhereClause(wcl);
    System.out.println(vo.getWhereClause().toString());
    vo.executeQuery();
    Edited by: LovettWB on Nov 11, 2010 11:23 PM

  • Can Oracle convert literals to bind variables?

    Good morning everyone.
    I have a procedure similar to this in our database:
        FUNCTION Get_Tag_Element_Id_For_Set(Element_Attr_Id_Table_In   in    ATTRIBUTE_TABLE_ID_TAB) RETURN NUMBER IS
          v_Select_Statement                    VARCHAR2(32767);
          v_Element_Id                             ELEMENT.Element_Id%TYPE;
        BEGIN
          FOR I IN 1..Element_Attr_Id_Table_In.COUNT LOOP
            IF v_Select_Statement IS NULL THEN
              v_Select_Statement := 'SELECT distinct Element_Id FROM ELEMENT_ATTRIBUTE_MANY_2_MANY WHERE Element_Attribute_Id = ' || Element_Attr_Id_Tab_In(i);
            ELSE
              v_Select_Statement := v_Select_Statement || ' intersect ' ||
                                    'SELECT distinct Element_Id FROM ELEMENT_ATTRIBUTE_MANY_2_MANY WHERE Element_Attribute_Id = ' || Element_Attr_Id_Table_In(i);
            END IF;
          END LOOP;
          EXECUTE IMMEDIATE v_Select_Statement INTO v_Element_id;
          RETURN v_Element_Id;
        END;What this does is to create a query similar to this:
    SELECT distinct Element_Id FROM ELEMENT_ATTRIBUTE_MANY_2_MANY WHERE Tag_Element_Attribute_Id = 1 intersect
    SELECT distinct Element_Id FROM ELEMENT_ATTRIBUTE_MANY_2_MANY WHERE Tag_Element_Attribute_Id = 2 intersect
    SELECT distinct Element_Id FROM ELEMENT_ATTRIBUTE_MANY_2_MANY WHERE Tag_Element_Attribute_Id = 3 intersect
    SELECT distinct Element_Id FROM ELEMENT_ATTRIBUTE_MANY_2_MANY WHERE Tag_Element_Attribute_Id = 4 intersect
    SELECT distinct Element_Id FROM ELEMENT_ATTRIBUTE_MANY_2_MANY WHERE Tag_Element_Attribute_Id = 5;
    I am using Dynamic SQL because the number of intersect pieces can vary from 1 to 15 and in the future it can grow.
    The problem that I have is that because the literals are part of the string, the query is being hard parsed every single time. In our production environment this means 100s of thousands of times per day which according to our DBA has added 15% plus to our average load. I know that I can come up with a rewrite to avoid this, but I was wondering if there is a parameter I can set at the session or at the database level where the database itself can convert this kind of query into one with bind variables.
    Thanks,
    Tom
    Edited by: Thomas Morgan on May 3, 2013 8:21 PM

    Thomas Morgan wrote:
    Basically I have an XML document.
    The document has ELEMENTS.
    ELEMENTS can have attributes.
    There is a many to many relationship between ELEMENT and ATTRIBUTES so I have a XREF table to represent this relationship.
    When I receive a new document, I need to determine if a group of ATTRIBUTES already exist together in the XREF table so I have to find their common ELEMENT_ID or NULL in which case I would create a new ELEMENT and associate the new set of attributes to the new ELEMENT.
    Since the number of attributes can vary from 1 to around 15 for now, I had to dynamically build the query that find the common ID(intersect) if it exists.
    Here is some DDL and inserts:
    CREATE TABLE ELEMENT(ELEMENT_ID NUMBER NOT NULL);
    CREATE TABLE ELEMENT_ELEMENT_ATTRIBUTE_XREF(Element_Id NUMBER NOT NULL, Element_Attribute_Id NUMBER NOT NULL);
    ALTER TABLE ELEMENT_ELEMENT_ATTRIBUTE_XREF ADD CONSTRAINT ELEMENT_ATTR_MANY_2_MANY_PK PRIMARY KEY(Element_Id, Element_Attribute_Id);
    ALTER TABLE ELEMENT ADD CONSTRAINT ELEMENT_PK PRIMARY KEY(Element_Id);
    INSERT INTO ELEMENT VALUES(1);
    INSERT INTO ELEMENT VALUES(2);
    INSERT INTO ELEMENT VALUES(3);
    INSERT INTO ELEMENT VALUES(4);
    INSERT INTO ELEMENT_ELEMENT_ATTRIBUTE_XREF VALUES(1, 1);
    INSERT INTO ELEMENT_ELEMENT_ATTRIBUTE_XREF VALUES(1, 2);
    INSERT INTO ELEMENT_ELEMENT_ATTRIBUTE_XREF VALUES(2, 1);
    INSERT INTO ELEMENT_ELEMENT_ATTRIBUTE_XREF VALUES(3, 1);
    INSERT INTO ELEMENT_ELEMENT_ATTRIBUTE_XREF VALUES(3, 3);
    INSERT INTO ELEMENT_ELEMENT_ATTRIBUTE_XREF VALUES(3, 4);
    INSERT INTO ELEMENT_ELEMENT_ATTRIBUTE_XREF VALUES(3, 5);
    INSERT INTO ELEMENT_ELEMENT_ATTRIBUTE_XREF VALUES(4, 6);
    INSERT INTO ELEMENT_ELEMENT_ATTRIBUTE_XREF VALUES(4, 7);
    So for instance if I passed an array (Attribute ID Tab) containing ELEMENT_ATTRIBUTE_ID list 6 and 7 I would get 4 as the answer.
    Hope this helps,
    Thanks,
    TomAwesome, thanks!
    I'm not sure this works 100% for what you need, but I thought I'd give it a shot. I've used a built in array (sys.odcinumberlist) that you should have access to on your installation (assuming you have a relatively recent version of Oracle).
    I left out the part where you would loop through the array you are currently passing in to your procedure to build up this new array that you can use in a SQL statement.
    Cheers,
    create or replace procedure maybe_this
       in_list           sys.odcinumberlist
    is
       l_commonality     number;
    begin
       begin
          select
             distinct
                xref.element_id
          into
             l_commonality
          from
                table(cast(in_list as sys.odcinumberlist))  list
            ,  element_element_attribute_xref   xref
          where
             xref.element_attribute_id = list.column_value;
          dbms_output.put_line('match on element_id = ' || l_commonality);
       exception
          when too_many_rows or no_data_found
          then
             dbms_output.put_line('no match');
       end;
    end;
    ME_TUBBZ?exec maybe_this(sys.odcinumberlist(1,2));
    no match
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.01
    ME_TUBBZ?exec maybe_this(sys.odcinumberlist(6,7));
    match on element_id = 4
    PL/SQL procedure successfully completed.
    Elapsed: 00:00:00.01

  • Xquery with bind variable in OSB

    Hi,
    I have requirement to read XML file in Xquery as bind variable but it's giving error. I have included this file in OSB proejct but i dont know how to point this out using bind variable. I tried to read file using fn:doc and given file name but it's giving error.
    Any pointer here..
    Thanks

    a few other threads :
    How to use fn:doc() in ALSB
    Re: OSB: How read file xml that is into project OSB
    Caching XML Variable in OSB
    things you need to look at :
    xquery files aren't customizable
    xquery files itself are cached, the fn:foc function will be executed every time again
    so if you don't use the xml for other things, i would just registrate it as xquery file with the xml in it
    or you could use the synchronous file adapter to retrieve the data from the file

  • ADF - ViewObject (with Bind Variable) Bind to Table- JDeveloper 10.1.3 EA

    Hi all,
    1.- This is the situation:
    In JDeveloper 10g 10.1.3 EA I have two JSP JSF Pages with bind automatically coponents (backing bean).
    - In the first page I can select a value from a list. Then, when I press the "Accept" ADF Command Button, the selected value is stored in a property called "rutEntidad" of a Session Managed Bean and the Flow Control is passed to the second page.
    - In the second page I have an ADF Table (called tablePolizas) bind to a ViewObject (I drop the ViewObject from the Data Control Palette to the Page - ADF Read-Only Table ). The ViewObject has a Bind Variable called RUT_ENTIDAD. When this page is loaded, value in the rutEntidad property of Session Managed Bean is passed to the ViewObject in order the ADF Table show filtered data . Also in this page there is a "back" ADF Command Button to the first page. The filter mechanism is performed in the getTablePolizas method in the backing bean of the second page, like this:
    //**** The backing bean of the second page *****
    package cl.bicevida.view.backing;
    public class CrearUsuario {
    private CoreTable tablePolizas;
    public CoreTable getTablePolizas() {
    DCBindingContainer dcbc;
    DCControlBinding cb;
    String rutEntidad;
    FacesContext ctx =FacesContext.getCurrentInstance();
    ValueBinding vb =
    ctx.getApplication().createValueBinding("#{SessionManager.rutEntidad}");
    rutEntidad = vb.getValue(ctx).toString();
    dcbc = this.getBindingContainer();
    cb = dcbc.findCtrlBinding("VoPolizasAsociadasEntidadExterna1");
    ViewObject vo = cb.getViewObject();
    vo.setNamedWhereClauseParam("RUT_ENTIDAD", rutEntidad);
    vo.executeQuery();
    return tablePolizas;
    2.- And this is the problem:
    The first time all works fine... then I press the "back" ADF Command Button to the first page (and NOT the back button of the browser). The second time, if the numbers of rows returned by the ViewObject is different than the first time, the application throws this message (but not crash):
    validation - JBO-29000: Unexpected exception caught: oracle.jbo.JboException, msg=JBO-35007: Row currency has changed since the user interface was rendered. The expected row key was oracle.jbo.Key[1 ]
    validation - JBO-35007: Row currency has changed since the user interface was rendered. The expected row key was oracle.jbo.Key[1 ]
    Well, I had read the "Generic Approach for Back-Button-Friendly Web Rowset Paging" article of Steve Muench in http://www.oracle.com/technology/products/jdev/tips/muench/paging/index.html
    but I think here have another problem.
    3.- The questions:
    Which is the cause of this problem?
    How I can solve it?
    What another way I can programmatic pass a parameter to a ViewObject connected to a table?
    Thanks!!!

    Another thing: the used strategy to obtain a binding container is explained by Steve Muench http://www.oracle.com/technology/products/jdev/tips/muench/1013eabinding/index.html:
    Next, you can use JDeveloper's Overview tab of the faces-config.xml file editor to configure a managed property. Define the managed property name as bindingContainer to match the property in your bean, and set the class to the fully-qualified name of the DCBindingContainer class. You can use the (Browse...) button to quickly locate the class using the new JDeveloper 10.1.3 class browser. Just type in the first few letters of the DCBindingContainer name, and then select the class. Edit the new managed property and set its Value to the JSF EL expression: #{bindings}.
    ************************

  • SOLVED -Newbie with Bind Variable Issue in Data template

    My XML output looks the way I want it structure-wise, but the data is the same for each group. Obviously my bind variable never gets updated. How can this be achieved? Here are the dataquery and data structure parts of my template:
    <dataQuery>
              <sqlStatement name="Q1">
              SELECT DISTINCT trans_id FROM table1
    </sqlStatement>
              <sqlStatement name="Q2">
                   <![CDATA[SELECT * from table1 WHERE report_type = 'invoice' and record_type = 'HEADER' AND trans_id = :trans_id]]>
              </sqlStatement>
              <sqlStatement name="Q3">
                   <![CDATA[SELECT * from table1 where report_type = 'invoice' and record_type = 'LINE'  AND trans_id = :trans_id]]>
              </sqlStatement>
              <sqlStatement name="Q4">
                   <![CDATA[SELECT * from table1 where report_type = 'PSA_INV' and record_type = 'FOOTER'  AND trans_id = :trans_id]]>
              </sqlStatement>
         </dataQuery>
    <dataStructure>
    <group name="ONE" source="Q1" groupFilter="">
                   <element name="trans_id" value="trans_id" function=""/>
                   <group name="HEADER" source="Q2" groupFilter="">
                        <element name="Direct_Inquiries_To" value="ATT1" function=""/>
                        <element name="Tax_Id" value="ATT2" function=""/>
                        <element name="Bill_To_Address_Line1" value="ATT3" function=""/>
                        <element name="Bill_To_Address_Line2" value="ATT4" function=""/>
                        <element name="Bill_To_Address_Line3" value="ATT5" function=""/>
                        <element name="Bill_To_Address_Line4" value="ATT6" function=""/>
                        <element name="Bill_To_Address_Line5" value="ATT7" function=""/>
                   </group>
                   <group name="LINE" source="Q3" groupFilter="">
                        <element name="Line_No" value="ATT1" function=""/>
                        <element name="Desc_Line1" value="ATT2" function=""/>
                        <element name="Amount" value="ATT3" function=""/>
                        <element name="Desc_Line2" value="ATT4" function=""/>
                        <element name="Amount_Line2" value="ATT5" function=""/>
                                       </group>
                   <group name="FOOTER" source="Q4" groupFilter="">
                        <element name="Sub_Total" value="ATT1" function=""/>
                        <element name="Taxes" value="ATT2" function=""/>
                        <element name="Net_Amount" value="ATT3" function=""/>
              </group>
         </group>
    </dataStructure>
    I have 2 possible transids
    The transid gets updated in the 1st group , but the rest of the data is the same as the first trans_id.
    Message was edited by:
    user647407

    "What do you mean by 'Obviously my bind variable never gets updated' - are the sub queries not getting the trans_id from the first query ?"
    yes, that would appear to be the case. It only gets one value of the transid. To put it in a better perspective, I'll compare it to the Employee example in the user's guide. My Depts would all come out fine. But Dept 10, 20, etc would all show the employee data for dept 10 only.

  • Bind Variables and Shared Component Report Query

    I have a query in a region report which I have replicated to a shared component report query.
    Both queries reference page items as bind variables in the where clause.
    The report region on screen shows the correct results but the report query shows "no data". This is the case when running "Test Query" and "Download XML data" from the shared component report query definition. If I hardcode the variable names I get rows returned, If I use bind variables - and specify the values for these variables I get no data. THe XML file contains the tags for each bind variable I have specified but has no data between the tags. I have Ticked the box to include application and session state but it appears that the bind variables are not being used.
    When I use my report query in the application (URL tied to a button) I get the same problem, the binds are not being passed to the report query.
    Can someone please clarify if this is a bug or not? And if not, how can I get it to work.
    I am using Apex 4.0.2
    Thanks
    Kathryn

    Hi
    To confirm, yes I selected the bind variables. I used these in the report layout, but the xml file has them as empty i.e.
    <P0_START_DATE><P0_START_DATE/> with nothing in between.
    IN the Test Query section, if I put real values in the boxes for the bind variables, I get no data found. If I hardcode the values into the query, I get the data.
    I've repeated the create report query many times and have created a report layout in RTF. I can use the layout with my region - in the print attributes and the layout works with the query but I need to create a PDF using 2 queries - ROWSET1 and ROWSET2. I can generate the XML but the values in the rows are all empty. When I use the layout with a report query instead of the region, I get no data even though I have used the same sql and have selected the bind variables. I was using variables from page items on page zero but have also tried using page items on the current page, the result is the same.
    I need to use a report query and a report layout as I need data from 2 queries in the PDF.
    I looked at your demo - what happens if you add a second sql query to the report query - is there any chance I can look at the back end (developer access?)
    Thanks for your input
    Kathryn

  • Bind Variables

    Hi
    I have read happily the article The Values That Bind By Mark A. Williams (Oracle Magazine September/October 2005 ). Immediately I rushed to implement the article on over developers . The problem is that we have a SQL query using the in operators . For example : select col1,col2 ..coln from table where x in (value1,value2 ….).
    I such a case how can you \use the bind variables technique , which fit the queries in which each variable can have one value (e.g. select country_name
    from hr.countries
    where country_id = :country_id)
    I asked the following questions:
    ODP support Oracle spatial or at list using objects??
    Will ODP support oracle spetial???
    The answer are listed below.
    I tried using ODP bind variables technique using fixed array size and bind variables technique in ODP (the redundant vars were fulfilled with dummy values) . I used trace and tkprof (with SYS=NO) opposite oracle 9.2.0.5 and pare was equal to parse an fetch meaning : no reuse of execution plans.
    Do you have any IDEA????
    Best Regards
    David Yitzhak
    BSC (Information System), MBA
    .Net developer and Oracle and SQL Server Applicative /Infrastructure DBA
    From: Alex Keh [[email protected]]
    Sent: &#1497;&#1493;&#1501; &#1513;&#1504;&#1497; 10 &#1488;&#1493;&#1511;&#1496;&#1493;&#1489;&#1512; 2005 23:50
    To: Ischack David; [email protected]
    Subject: Re: Securing a .NET Application on the Oracle Database
    David,
    In your example ("select col1,col2 ..coln from table where x in (value1,value2 ….)"), x is the name of a column, which does not need to have a bind variable. You can just put in a .NET variable representing the string value of the column name and concatenate the SQL statement together.
    We are planning to supprt objects and VARRAYs around January/February. From these, you can build your own Spatial data types. Today, most .NET Spatial users employ XML when using their Spatial data in .NET.
    Alex
    ----- Original Message -----
    From: Ischack David
    To: [email protected]
    Sent: Sunday, October 09, 2005 2:27 PM
    Subject: Securing a .NET Application on the Oracle Database
    Some questions about bind variables , objects , Oracle spatial and ODP
    Hi
    I have read happily the article The Values That Bind By Mark A. Williams (Oracle Magazine September/October 2005 ). Immediately I rushed to implement the article on over developers . The problem is that we have a SQL query using the in operators . For example : select col1,col2 ..coln from table where x in (value1,value2 ….).
    I such a case how can you \use the bind variables technique , which fit the queries in which each variable can have one value (e.g. select country_name
    from hr.countries
    where country_id = :country_id)
    ODP support Oracle spatial or at list using objects??
    Will ODP support oracle spetial???
    Best Regards
    David Itshak
    BSC (Information System), MBA
    .Net developer and Oracle and SQL Server Applicative /Infrastructure DBA
    From: John Cook [[email protected]]
    Sent: &#1497;&#1493;&#1501; &#1513;&#1500;&#1497;&#1513;&#1497; 11 &#1488;&#1493;&#1511;&#1496;&#1493;&#1489;&#1512; 2005 4:15
    To: Ischack David
    Subject: Re: Some questions about bind variables , objects , Oracle spatialand ODP
    The situation you have described with multiple bind values is one I have considered. It's a problem. I think I can code a generic implementation, but doing so would take time away from activities that I get paid for.
    I haven't worked with Oracle Spatial.
    We'll have more articles on ODP.NET in the months ahead. I'm glad you liked Mark's article.
    ----- Original Message -----
    From: "Ischack David"
    To: [email protected]
    Subject: Some questions about bind variables , objects , Oracle spatial and ODP
    Date: Sun, 9 Oct 2005 23:27:24 +0200
    Some questions about bind variables , objects , Oracle spatial and ODP
    Hi

    Hi
    I have read happily the article The Values That Bind By Mark A. Williams (Oracle Magazine September/October 2005 ). Immediately I rushed to implement the article on over developers . The problem is that we have a SQL query using the in operators . For example : select col1,col2 ..coln from table where x in (value1,value2 ….).
    I such a case how can you \use the bind variables technique , which fit the queries in which each variable can have one value (e.g. select country_name
    from hr.countries
    where country_id = :country_id)
    I asked the following questions:
    ODP support Oracle spatial or at list using objects??
    Will ODP support oracle spetial???
    The answer are listed below.
    I tried using ODP bind variables technique using fixed array size and bind variables technique in ODP (the redundant vars were fulfilled with dummy values) . I used trace and tkprof (with SYS=NO) opposite oracle 9.2.0.5 and pare was equal to parse an fetch meaning : no reuse of execution plans.
    Do you have any IDEA????
    Best Regards
    David Yitzhak
    BSC (Information System), MBA
    .Net developer and Oracle and SQL Server Applicative /Infrastructure DBA
    From: Alex Keh [[email protected]]
    Sent: &#1497;&#1493;&#1501; &#1513;&#1504;&#1497; 10 &#1488;&#1493;&#1511;&#1496;&#1493;&#1489;&#1512; 2005 23:50
    To: Ischack David; [email protected]
    Subject: Re: Securing a .NET Application on the Oracle Database
    David,
    In your example ("select col1,col2 ..coln from table where x in (value1,value2 ….)"), x is the name of a column, which does not need to have a bind variable. You can just put in a .NET variable representing the string value of the column name and concatenate the SQL statement together.
    We are planning to supprt objects and VARRAYs around January/February. From these, you can build your own Spatial data types. Today, most .NET Spatial users employ XML when using their Spatial data in .NET.
    Alex
    ----- Original Message -----
    From: Ischack David
    To: [email protected]
    Sent: Sunday, October 09, 2005 2:27 PM
    Subject: Securing a .NET Application on the Oracle Database
    Some questions about bind variables , objects , Oracle spatial and ODP
    Hi
    I have read happily the article The Values That Bind By Mark A. Williams (Oracle Magazine September/October 2005 ). Immediately I rushed to implement the article on over developers . The problem is that we have a SQL query using the in operators . For example : select col1,col2 ..coln from table where x in (value1,value2 ….).
    I such a case how can you \use the bind variables technique , which fit the queries in which each variable can have one value (e.g. select country_name
    from hr.countries
    where country_id = :country_id)
    ODP support Oracle spatial or at list using objects??
    Will ODP support oracle spetial???
    Best Regards
    David Itshak
    BSC (Information System), MBA
    .Net developer and Oracle and SQL Server Applicative /Infrastructure DBA
    From: John Cook [[email protected]]
    Sent: &#1497;&#1493;&#1501; &#1513;&#1500;&#1497;&#1513;&#1497; 11 &#1488;&#1493;&#1511;&#1496;&#1493;&#1489;&#1512; 2005 4:15
    To: Ischack David
    Subject: Re: Some questions about bind variables , objects , Oracle spatialand ODP
    The situation you have described with multiple bind values is one I have considered. It's a problem. I think I can code a generic implementation, but doing so would take time away from activities that I get paid for.
    I haven't worked with Oracle Spatial.
    We'll have more articles on ODP.NET in the months ahead. I'm glad you liked Mark's article.
    ----- Original Message -----
    From: "Ischack David"
    To: [email protected]
    Subject: Some questions about bind variables , objects , Oracle spatial and ODP
    Date: Sun, 9 Oct 2005 23:27:24 +0200
    Some questions about bind variables , objects , Oracle spatial and ODP
    Hi

  • How to call a report with a bind variable from a multi-record block

    Hi,
    I have created a report using the BI Publisher functionality. I did all the integration, created the SQL Query and uploaded the template. Up till here everythings fine!
    My SQL Query has 2 bind variables.
    I will call my report from a multi record block, at the end of each record an icon is shown which the user can click to open the report.
    I created a column link for this item (PRINT_REPORT=Inschrijvingsformulier) but I do not manage to pass the parameters to my report. The parameters I want to pass are 2 columns in this Multi Record block.
    I created 2 hidden fields on the page P9_PARAMETER1, P9_PARAMETER2 with the same names as my bind variables and fill this in with the values #PARAMETER1#, #PARAMETER2# from the multi record block.
    It seems it does not work as my report stays empty. (also XML file stays empty).
    Am I trying the wrong way?
    Thanks for any advice,
    Kris

    hi khadeer,
         create one report program and write the required code,and call this function module 'SSF_FUNCTION_MODULE_NAME' and give your smartform name  and also when u activate ur smart form u will get one function module call that function module also and specify any tables used...
    i think this solves ur problem...
    any queries revert back..
    pls reward points if helpful,
    shylaja

  • Testing VOs that have positional bind variables with BC4J Tester

    Hi
    I am doing some OAF development for eBusiness 12.1.3 and would like to understand whether VOs that have positional bind variables can be tested using the BC4J Tester in JDeveloper 10.1.3 (the latest version of JDev compatible with OAF development). It looks like it should work as when you choose "Oracle Positional" in the VO wizard Binding Style it adds another text box to the to the Bind Variables page called Bind Positions, I assume that this is so you can create variables that you can populate in the Tester that will relate name to position but I get an error regarding column index when I use the BC4J Tester:
    oracle.jbo.SQLStmtException: JBO-27122: SQL error during statement preparation. Statement: SELECT CASE
    WHEN ph.closed_code IN ('CANCELLED', 'CLOSED','FINALLY CLOSED')
    THEN 'Expired Item'
    WHEN prl.unit_price <> pl.unit_price
    THEN 'Price Update'
    ELSE ''
    END item_status
    FROM po_lines pl,
    po_headers ph,
    po_requisition_lines prl
    WHERE ph.po_header_id = pl.po_header_id
    AND prl.blanket_po_header_id = pl.po_header_id
    AND prl.blanket_po_line_num = pl.line_num
    AND pl.po_header_id = :1
    AND pl.line_num = :2
    AND prl.requisition_line_id = :3
         at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:833)
         at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:666)
         at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3655)
         at oracle.jbo.server.OAJboViewObjectImpl.executeQueryForCollection(Unknown Source)
         at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQueryForCollection(OAViewObjectImpl.java:4560)
         at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:742)
         at oracle.jbo.server.ViewRowSetImpl.executeQueryForMasters(ViewRowSetImpl.java:891)
         at oracle.jbo.server.ViewRowSetImpl.executeQueryForMode(ViewRowSetImpl.java:805)
         at oracle.jbo.server.ViewRowSetImpl.executeQuery(ViewRowSetImpl.java:799)
         at oracle.jbo.server.ViewObjectImpl.executeQuery(ViewObjectImpl.java:3575)
         at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQuery(OAViewObjectImpl.java:439)
         at oracle.jbo.jbotester.VariableDialog.save(VariableDialog.java:144)
         at oracle.jbo.jbotester.GenericDialog.actionPerformed(GenericDialog.java:219)
         at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
         at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
         at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
         at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:234)
         at java.awt.Component.processMouseEvent(Component.java:5488)
         at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
         at java.awt.Component.processEvent(Component.java:5253)
         at java.awt.Container.processEvent(Container.java:1966)
         at java.awt.Component.dispatchEventImpl(Component.java:3955)
         at java.awt.Container.dispatchEventImpl(Container.java:2024)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
         at java.awt.Container.dispatchEventImpl(Container.java:2010)
         at java.awt.Window.dispatchEventImpl(Window.java:1774)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:153)
         at java.awt.Dialog$1.run(Dialog.java:515)
         at java.awt.Dialog.show(Dialog.java:536)
         at oracle.jbo.jbotester.JTDialog.show(JTDialog.java:121)
         at oracle.jbo.jbotester.JboTesterUtil.editBindParameters(JboTesterUtil.java:169)
         at oracle.jbo.jbotester.SimpleForm.setIterator(SimpleForm.java:65)
         at oracle.jbo.jbotester.SimpleForm.<init>(SimpleForm.java:51)
         at oracle.jbo.jbotester.VOTreeNode.showForm(VOTreeNode.java:115)
         at oracle.jbo.jbotester.BaseTree.processTreeMouseClicked(BaseTree.java:471)
         at oracle.jbo.jbotester.BaseTree.mav$processTreeMouseClicked(BaseTree.java:45)
         at oracle.jbo.jbotester.BaseTree$TreeMouseListener.mouseClicked(BaseTree.java:125)
         at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:212)
         at java.awt.Component.processMouseEvent(Component.java:5491)
         at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
         at java.awt.Component.processEvent(Component.java:5253)
         at java.awt.Container.processEvent(Container.java:1966)
         at java.awt.Component.dispatchEventImpl(Component.java:3955)
         at java.awt.Container.dispatchEventImpl(Container.java:2024)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3901)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
         at java.awt.Container.dispatchEventImpl(Container.java:2010)
         at java.awt.Window.dispatchEventImpl(Window.java:1774)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
    ## Detail 0 ##
    java.sql.SQLException: Invalid column index
         at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:138)
         at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:175)
         at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:240)
         at oracle.jdbc.driver.OraclePreparedStatement.setNUMBERInternal(OraclePreparedStatement.java:5891)
         at oracle.jdbc.driver.OraclePreparedStatement.setObjectCritical(OraclePreparedStatement.java:7674)
         at oracle.jdbc.driver.OraclePreparedStatement.setCustomDatumInternal(OraclePreparedStatement.java:7410)
         at oracle.jdbc.driver.OraclePreparedStatement.setObjectInternal(OraclePreparedStatement.java:8178)
         at oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:8166)
         at oracle.jbo.server.BaseSQLBuilderImpl.bindParamValue(BaseSQLBuilderImpl.java:1847)
         at oracle.jbo.server.OracleSQLBuilderImpl.bindParamValue(OracleSQLBuilderImpl.java:3890)
         at oracle.jbo.server.BaseSQLBuilderImpl.bindParametersForStmt(BaseSQLBuilderImpl.java:3335)
         at oracle.jbo.server.ViewObjectImpl.bindParametersForCollection(ViewObjectImpl.java:13759)
         at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:801)
         at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:666)
         at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3655)
         at oracle.jbo.server.OAJboViewObjectImpl.executeQueryForCollection(Unknown Source)
         at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQueryForCollection(OAViewObjectImpl.java:4560)
         at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:742)
         at oracle.jbo.server.ViewRowSetImpl.executeQueryForMasters(ViewRowSetImpl.java:891)
         at oracle.jbo.server.ViewRowSetImpl.executeQueryForMode(ViewRowSetImpl.java:805)
         at oracle.jbo.server.ViewRowSetImpl.executeQuery(ViewRowSetImpl.java:799)
         at oracle.jbo.server.ViewObjectImpl.executeQuery(ViewObjectImpl.java:3575)
         at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQuery(OAViewObjectImpl.java:439)
         at oracle.jbo.jbotester.VariableDialog.save(VariableDialog.java:144)
         at oracle.jbo.jbotester.GenericDialog.actionPerformed(GenericDialog.java:219)
         at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
         at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
         at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
         at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:234)
         at java.awt.Component.processMouseEvent(Component.java:5488)
         at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
         at java.awt.Component.processEvent(Component.java:5253)
         at java.awt.Container.processEvent(Container.java:1966)
         at java.awt.Component.dispatchEventImpl(Component.java:3955)
         at java.awt.Container.dispatchEventImpl(Container.java:2024)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
         at java.awt.Container.dispatchEventImpl(Container.java:2010)
         at java.awt.Window.dispatchEventImpl(Window.java:1774)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:153)
         at java.awt.Dialog$1.run(Dialog.java:515)
         at java.awt.Dialog.show(Dialog.java:536)
         at oracle.jbo.jbotester.JTDialog.show(JTDialog.java:121)
         at oracle.jbo.jbotester.JboTesterUtil.editBindParameters(JboTesterUtil.java:169)
         at oracle.jbo.jbotester.SimpleForm.setIterator(SimpleForm.java:65)
         at oracle.jbo.jbotester.SimpleForm.<init>(SimpleForm.java:51)
         at oracle.jbo.jbotester.VOTreeNode.showForm(VOTreeNode.java:115)
         at oracle.jbo.jbotester.BaseTree.processTreeMouseClicked(BaseTree.java:471)
         at oracle.jbo.jbotester.BaseTree.mav$processTreeMouseClicked(BaseTree.java:45)
         at oracle.jbo.jbotester.BaseTree$TreeMouseListener.mouseClicked(BaseTree.java:125)
         at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:212)
         at java.awt.Component.processMouseEvent(Component.java:5491)
         at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
         at java.awt.Component.processEvent(Component.java:5253)
         at java.awt.Container.processEvent(Container.java:1966)
         at java.awt.Component.dispatchEventImpl(Component.java:3955)
         at java.awt.Container.dispatchEventImpl(Container.java:2024)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3901)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
         at java.awt.Container.dispatchEventImpl(Container.java:2010)
         at java.awt.Window.dispatchEventImpl(Window.java:1774)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
    ----- LEVEL 1: DETAIL 0 -----
    java.sql.SQLException: Invalid column index
         at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:138)
         at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:175)
         at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:240)
         at oracle.jdbc.driver.OraclePreparedStatement.setNUMBERInternal(OraclePreparedStatement.java:5891)
         at oracle.jdbc.driver.OraclePreparedStatement.setObjectCritical(OraclePreparedStatement.java:7674)
         at oracle.jdbc.driver.OraclePreparedStatement.setCustomDatumInternal(OraclePreparedStatement.java:7410)
         at oracle.jdbc.driver.OraclePreparedStatement.setObjectInternal(OraclePreparedStatement.java:8178)
         at oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:8166)
         at oracle.jbo.server.BaseSQLBuilderImpl.bindParamValue(BaseSQLBuilderImpl.java:1847)
         at oracle.jbo.server.OracleSQLBuilderImpl.bindParamValue(OracleSQLBuilderImpl.java:3890)
         at oracle.jbo.server.BaseSQLBuilderImpl.bindParametersForStmt(BaseSQLBuilderImpl.java:3335)
         at oracle.jbo.server.ViewObjectImpl.bindParametersForCollection(ViewObjectImpl.java:13759)
         at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:801)
         at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:666)
         at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3655)
         at oracle.jbo.server.OAJboViewObjectImpl.executeQueryForCollection(Unknown Source)
         at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQueryForCollection(OAViewObjectImpl.java:4560)
         at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:742)
         at oracle.jbo.server.ViewRowSetImpl.executeQueryForMasters(ViewRowSetImpl.java:891)
         at oracle.jbo.server.ViewRowSetImpl.executeQueryForMode(ViewRowSetImpl.java:805)
         at oracle.jbo.server.ViewRowSetImpl.executeQuery(ViewRowSetImpl.java:799)
         at oracle.jbo.server.ViewObjectImpl.executeQuery(ViewObjectImpl.java:3575)
         at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQuery(OAViewObjectImpl.java:439)
         at oracle.jbo.jbotester.VariableDialog.save(VariableDialog.java:144)
         at oracle.jbo.jbotester.GenericDialog.actionPerformed(GenericDialog.java:219)
         at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
         at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
         at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
         at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:234)
         at java.awt.Component.processMouseEvent(Component.java:5488)
         at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
         at java.awt.Component.processEvent(Component.java:5253)
         at java.awt.Container.processEvent(Container.java:1966)
         at java.awt.Component.dispatchEventImpl(Component.java:3955)
         at java.awt.Container.dispatchEventImpl(Container.java:2024)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
         at java.awt.Container.dispatchEventImpl(Container.java:2010)
         at java.awt.Window.dispatchEventImpl(Window.java:1774)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:153)
         at java.awt.Dialog$1.run(Dialog.java:515)
         at java.awt.Dialog.show(Dialog.java:536)
         at oracle.jbo.jbotester.JTDialog.show(JTDialog.java:121)
         at oracle.jbo.jbotester.JboTesterUtil.editBindParameters(JboTesterUtil.java:169)
         at oracle.jbo.jbotester.SimpleForm.setIterator(SimpleForm.java:65)
         at oracle.jbo.jbotester.SimpleForm.<init>(SimpleForm.java:51)
         at oracle.jbo.jbotester.VOTreeNode.showForm(VOTreeNode.java:115)
         at oracle.jbo.jbotester.BaseTree.processTreeMouseClicked(BaseTree.java:471)
         at oracle.jbo.jbotester.BaseTree.mav$processTreeMouseClicked(BaseTree.java:45)
         at oracle.jbo.jbotester.BaseTree$TreeMouseListener.mouseClicked(BaseTree.java:125)
         at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:212)
         at java.awt.Component.processMouseEvent(Component.java:5491)
         at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
         at java.awt.Component.processEvent(Component.java:5253)
         at java.awt.Container.processEvent(Container.java:1966)
         at java.awt.Component.dispatchEventImpl(Component.java:3955)
         at java.awt.Container.dispatchEventImpl(Container.java:2024)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3901)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
         at java.awt.Container.dispatchEventImpl(Container.java:2010)
         at java.awt.Window.dispatchEventImpl(Window.java:1774)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
    Is there some other configuration I need to do when using positional Bind Variables? If I switch the query to use named parameters and replace :1 with :var1 for example it works fine in the Tester. The reason I am not using named bind variables is that Oracle recommend using positional for eBus, probably because it was predominantly built on older versions of JDev.
    Thanks in advance
    Stacy
    Edited by: Stacy Carpenter on 26-Mar-2013 06:40

    There are actually 2 issues here. The first is that bind positions start at 0 (not 1) and that will resolve the invalid column index issue above. However it seems there is a relatively unknown error in JDeveloper 10.1.3 that keeps resetting the bind position of all bind variables each time you update any of them. So if I create var1 with a position of 0 and then create var2 with a position of 1 then the position of var1 will also be overwritten with 1. I tried listing 0,1 for both to see whether the the IDE would intuitively sort out what was supposed to be where but all that happens is that var2 ends up populating positions 0 and 1, which unless the values are meant to be the same is obviously no good. It seems the only way to get around this in this version of JDeveloper is to close the IDE, edit the VO xml to put the variables against their correct positions, and then reopen. Opening the VO wizard will reset them all to the same again so do not do this (unknowingly) and simply right click the AM and run the BC4J Tester which should now let you edit the bind variables and produce the expected results.
    Cheers
    Stacy

  • XSU doesn't support bind variables - how dumb is that?

    I am using XSU to generate XML from a SQL statement using class OracleXMLQuery. Either I am blind or stupid or there is no support for bind variables in this class! I have used DBMS_xmlquery in PL/SQL before and this does support bind variables, I naturally assumed the Java equivalent would also have this. The lack of bind variable support means a huge performance hit as every single SQL statement will be treated as unique and will require hard parsing on the server!
    Is there another Java XML utility I can use for generating XML from a SQL statement that does support bind variables? I have trawled through the Oracle documentation and I am getting very confused and lost.
    Thanks,
    Steve

    makaidog,
    Read get rid of community toolbar: Apple Support Communities.

  • Problem in setting bind variable

    Hi,
    I am sorry but I think I am having problem with this simple ADF BC concept.
    I created a View object from HR Schema and I wanted to filter it with department id
    so I created a bind variable :dept_id.
    <?xml version="1.0" encoding="windows-1252" ?>
    <!DOCTYPE ViewObject SYSTEM "jbo_03_01.dtd">
    <!---->
    <ViewObject
      xmlns="http://xmlns.oracle.com/bc4j"
      Name="EmployeesView"
      Version="11.1.1.59.23"
      SelectList="Employees.EMPLOYEE_ID,
           Employees.FIRST_NAME,
           Employees.LAST_NAME,
           Employees.EMAIL,
           Employees.PHONE_NUMBER,
           Employees.HIRE_DATE,
           Employees.JOB_ID,
           Employees.SALARY,
           Employees.COMMISSION_PCT,
           Employees.MANAGER_ID,
           Employees.DEPARTMENT_ID"
      FromList="EMPLOYEES Employees"
      BindingStyle="OracleName"
      CustomQuery="false"
      PageIterMode="Full"
      UseGlueCode="false"
      Where="Employees.DEPARTMENT_ID = :dept_id"
      RowClass="com.test.view.EmployeesViewRowImpl"
      ComponentClass="com.test.view.EmployeesViewImpl">
      <DesignTime>
        <Attr Name="_codeGenFlag2" Value="Access|Coll|VarAccess"/>
        <Attr Name="_isCodegen" Value="true"/>
      </DesignTime>
      <Variable
        Name="dept_id"
        Kind="viewcriteria"
        Type="oracle.jbo.domain.Number"/>
      <ViewAccessor
        Name="JobsView1"
        ViewObjectName="com.test.view.JobsView"
        RowLevelBinds="true"/>
      <ViewAccessor
        Name="EmployeesView1"
        ViewObjectName="com.test.view.EmployeesView"
        RowLevelBinds="true"/>
      <ViewAccessor
        Name="DepartmentsView1"
        ViewObjectName="com.test.view.DepartmentsView"
        RowLevelBinds="true"/>
      <ListBinding
        Name="LOV_JobId"
        ListVOName="JobsView1"
        ListRangeSize="10"
        NullValueFlag="none"
        NullValueId="LOV_JobId_LOVUIHints_NullValueId"
        MRUCount="0">
        <AttrArray Name="AttrNames">
          <Item Value="JobId"/>
        </AttrArray>
        <AttrArray Name="ListAttrNames">
          <Item Value="JobId"/>
        </AttrArray>
        <AttrArray Name="ListDisplayAttrNames">
          <Item Value="JobTitle"/>
        </AttrArray>
        <DisplayCriteria/>
      </ListBinding>
      <ListBinding
        Name="LOV_ManagerId"
        ListVOName="EmployeesView1"
        ListRangeSize="-1"
        NullValueFlag="start"
        NullValueId="${adfBundle['oracle.javatools.resourcebundle.SystemBundle']['NULL_VALUE_RESID']}"
        MRUCount="0">
        <AttrArray Name="AttrNames">
          <Item Value="ManagerId"/>
        </AttrArray>
        <AttrArray Name="ListAttrNames">
          <Item Value="EmployeeId"/>
        </AttrArray>
        <AttrArray Name="ListDisplayAttrNames">
          <Item Value="FirstName"/>
          <Item Value="LastName"/>
        </AttrArray>
        <DisplayCriteria/>
      </ListBinding>
      <ListBinding
        Name="LOV_DepartmentId"
        ListVOName="DepartmentsView1"
        ListRangeSize="-1"
        NullValueFlag="start"
        NullValueId="${adfBundle['oracle.javatools.resourcebundle.SystemBundle']['NULL_VALUE_RESID']}"
        MRUCount="0">
        <AttrArray Name="AttrNames">
          <Item Value="DepartmentId"/>
        </AttrArray>
        <AttrArray Name="ListAttrNames">
          <Item Value="DepartmentId"/>
        </AttrArray>
        <AttrArray Name="ListDisplayAttrNames">
          <Item Value="DepartmentName"/>
        </AttrArray>
        <DisplayCriteria/>
      </ListBinding>
      <EntityUsage
        Name="Employees"
        Entity="com.test.Employees"/>
      <ViewAttribute
        Name="EmployeeId"
        IsNotNull="true"
        PrecisionRule="true"
        EntityAttrName="EmployeeId"
        EntityUsage="Employees"
        AliasName="EMPLOYEE_ID"/>
      <ViewAttribute
        Name="FirstName"
        PrecisionRule="true"
        EntityAttrName="FirstName"
        EntityUsage="Employees"
        AliasName="FIRST_NAME"/>
      <ViewAttribute
        Name="LastName"
        IsNotNull="true"
        PrecisionRule="true"
        EntityAttrName="LastName"
        EntityUsage="Employees"
        AliasName="LAST_NAME"/>
      <ViewAttribute
        Name="Email"
        IsUnique="true"
        IsNotNull="true"
        PrecisionRule="true"
        EntityAttrName="Email"
        EntityUsage="Employees"
        AliasName="EMAIL"/>
      <ViewAttribute
        Name="PhoneNumber"
        PrecisionRule="true"
        EntityAttrName="PhoneNumber"
        EntityUsage="Employees"
        AliasName="PHONE_NUMBER"/>
      <ViewAttribute
        Name="HireDate"
        IsNotNull="true"
        PrecisionRule="true"
        EntityAttrName="HireDate"
        EntityUsage="Employees"
        AliasName="HIRE_DATE"/>
      <ViewAttribute
        Name="JobId"
        LOVName="LOV_JobId"
        IsNotNull="true"
        PrecisionRule="true"
        EntityAttrName="JobId"
        EntityUsage="Employees"
        AliasName="JOB_ID">
        <Properties>
          <SchemaBasedProperties>
            <CONTROLTYPE
              Value="combo_lov"/>
          </SchemaBasedProperties>
        </Properties>
      </ViewAttribute>
      <ViewAttribute
        Name="Salary"
        PrecisionRule="true"
        EntityAttrName="Salary"
        EntityUsage="Employees"
        AliasName="SALARY"/>
      <ViewAttribute
        Name="CommissionPct"
        PrecisionRule="true"
        EntityAttrName="CommissionPct"
        EntityUsage="Employees"
        AliasName="COMMISSION_PCT"/>
      <ViewAttribute
        Name="ManagerId"
        LOVName="LOV_ManagerId"
        PrecisionRule="true"
        EntityAttrName="ManagerId"
        EntityUsage="Employees"
        AliasName="MANAGER_ID">
        <Properties>
          <SchemaBasedProperties>
            <CONTROLTYPE
              Value="choice"/>
          </SchemaBasedProperties>
        </Properties>
      </ViewAttribute>
      <ViewAttribute
        Name="DepartmentId"
        LOVName="LOV_DepartmentId"
        PrecisionRule="true"
        EntityAttrName="DepartmentId"
        EntityUsage="Employees"
        AliasName="DEPARTMENT_ID">
        <Properties>
          <SchemaBasedProperties>
            <CONTROLTYPE
              Value="choice"/>
          </SchemaBasedProperties>
        </Properties>
      </ViewAttribute>
      <ViewLinkAccessor
        Name="EmployeesView"
        ViewLink="com.test.view.EmpManagerFkLink"
        Type="oracle.jbo.RowIterator"
        IsUpdateable="false"/>
      <ViewLinkAccessor
        Name="DepartmentsView"
        ViewLink="com.test.view.DeptMgrFkLink"
        Type="oracle.jbo.RowIterator"
        IsUpdateable="false"/>
    </ViewObject>But when I ran it in my Business Component Browser, I am encountering below error
    java.sql.SQLException: Missing IN or OUT parameter at index:: 1Not sure but did I miss something? Thanks
    JDEV 11G PS3

    Hi Frank,
    Thanks, I think thats the gotcha...
    setting the bind variable to required causes the dialog to appear...
    Not sure though if this is a bug or something..

  • Select One Choice attribute' LoV based on two bind variables, best practice

    Hello there,
    I am in the process of learning the ADF 11g, I have following requirement,
    A page must contain a list of school names which is needed to be fetched based on two parameters, the parameters are student information been inserted in the previous page.
    I have defined a read only view "SchoolNamesViewRO", it's query depends on two bind variables :stdDegree and stdCateg.
    added that RO View as a view accessor to the entity to which the name attribute belongs, and then add LoV for the name attribute using the ReadOnly view,
    added the name attribute as Select One Choice to page2,
    and now I need to pass the values of the bind variables of the ReadOnly view,
    the information needed to be passed as the bind variables is inserted in the previous page, I could have the data as bindings attribute values in the page2 definition
    I have implemented the next two appraoches but both resulted in an empty list :
    * added ExecuteWithParams Action to the bindings of the page and then defined an Invoke Action (set refresh condition) in the executable s, set the default values of the parameters to be the attributes values' input value,
    in the trace I code see that the binding fetches correct values as supposed , but the select list appears empty, does the this execution for the query considered to be connected to the list ?
    * added a method to the ReadOnly view Imp java class to set the bind variables, then I define it as a MethodAction in the bindings , and then create an Invoke action for it , also the select is empty,
    if the query been executed with the passed variables, then why the list is empty? is it reading data from another place than the page!
    and what is the best practice to implement that requirement?
    would the solution be : by setting the default value of the bind variables to be some kind of Expression!
    please notice that query execution had the bound variables ( I see in the trace) are set to the correct values.
    would you give some hints or redirect me to a useful link,
    Thanks in advance
    Regards,

    please give me any example using backing bean .for example
    <?xml version='1.0' encoding='UTF-8'?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
    <jsp:directive.page contentType="text/html;charset=UTF-8"/>
    <f:view>
    <af:document id="d1">
    <af:form id="f1">
    <af:selectOneChoice label="Label 1" id="soc1" binding="#{Af.l1}"
    autoSubmit="true">
    <af:selectItem label="A" value="1" id="si1"/>
    <af:selectItem label="B" value="2" id="si2"/>
    </af:selectOneChoice>
    <af:selectOneChoice label="Label 2" id="soc2" disabled="#{Af.l1=='2'}"
    partialTriggers="soc1">
    <af:selectItem label="C" value="3" id="si3"/>
    <af:selectItem label="D" value="4" id="si4"/>
    </af:selectOneChoice>
    </af:form>
    </af:document>
    </f:view>
    </jsp:root>
    package a;
    import oracle.adf.view.rich.component.rich.input.RichSelectOneChoice;
    public class A {
    private RichSelectOneChoice l1;
    public A() {
    public void setL1(RichSelectOneChoice l1) {
    this.l1 = l1;
    public RichSelectOneChoice getL1() {
    return l1;
    is there any mistake

Maybe you are looking for

  • Frustrated and seeking help with a custom sort order...

    I created a family photo album and arranged all of the pictures in a specific order and sync'd them with my iPad, unfortunately the pictures do not stay in the custom sequence. I tried Batch renaming with a Custom Name and Index, but the renaming is

  • Disk Partition for Windows failing

    Hi Everyone, May you pls help me on the following (for iMAC OS X Version 10.5.8): Wanted to partition main disk into two one for MAC OS the other for Windows 7 Pro, however, I'm getting error message ' Filesystem verify or repair failed'. Tried to fi

  • Can't burn Disc from iTunes after Microsoft fix

    Okay ... long process to get iTunes working and I am almost there. Here is the saga ... I upgraded to iTunes 6.0 and after the upgrade neither of my CD/DVD drives would work. After surfing the internet, I found the solution on Microsoft.com, which wa

  • Only 2 speakers work

    for christmas i put in a new soundcard and it works fine, but now itunes only uses 2 speakers in my 5.1 surround sound. I know the speakers are working because when i do the creative speaker test i can hear each speaker working. But in itunes it only

  • Webservice path problem

    HI, When I access data from server using webservice I have to specify the path of wsdl. There is a problem with that For example If I give the path as http://www.abc.com/service.asmx?WSDL, I cant access the html page containing that swf movie with ou