Overloaded parameters in PL/SQL packages

Will this driver support calls to packaged stored procedures with overloaded parameters?

Here's a quick and dirty sample:
Database:
create or replace package overload_test as
  function overloaded (p_in in varchar2) return varchar2;
  function overloaded (p_in in number) return varchar2;
end;
create or replace package body overload_test as
  function overloaded (p_in in varchar2) return varchar2 is
  begin
    return 'You called the varchar2 overload with: ' || p_in;
  end;
  function overloaded (p_in number) return varchar2 is
  begin
    return 'You called the number overload with: ' || to_char(p_in);
  end;
end;
/C# code:
using System;
using System.Data;
using Oracle.DataAccess.Client;
using Oracle.DataAccess.Types;
namespace OverloadTest
  class Program
    static void Main(string[] args)
      // connect to local db using o/s authentication
      OracleConnection con = new OracleConnection("User Id=/; Enlist=false; Pooling=false");
      con.Open();
      // create the command object
      OracleCommand cmd = con.CreateCommand();
      cmd.CommandText = "overload_test.overloaded";
      cmd.CommandType = CommandType.StoredProcedure;
      // create the return value parameter
      OracleParameter p_retval = new OracleParameter(":p_retval", OracleDbType.Varchar2, 80, "", ParameterDirection.ReturnValue);
      cmd.Parameters.Add(p_retval);
      // create the input parameter for the number overload
      OracleParameter p_in = new OracleParameter(":p_in", OracleDbType.Decimal, 42, ParameterDirection.Input);
      cmd.Parameters.Add(p_in);
      // call the number overloaded stored proc
      cmd.ExecuteNonQuery();
      // write out the return value
      Console.WriteLine(p_retval.Value);
      // change the input parameter for the varchar2 overload
      p_in.OracleDbType = OracleDbType.Varchar2;
      p_in.Value = "Forty-Two";
      // reset parameters
      cmd.Parameters.Clear();
      cmd.Parameters.Add(p_retval);
      cmd.Parameters.Add(p_in);
      // call the varchar2 overloaded stored proc
      cmd.ExecuteNonQuery();
      // write out the return value
      Console.WriteLine(p_retval.Value);
      // clean up
      p_in.Dispose();
      p_retval.Dispose();
      cmd.Dispose();
      con.Dispose();
      // prevent console window from closing automatically when running from vs env
      Console.WriteLine("ENTER to continue...");
      Console.ReadLine();
}Output on my system:
You called the number overload with: 42
You called the varchar2 overload with: Forty-Two
ENTER to continue...Hope that helps a bit,
Mark

Similar Messages

  • Problem with pl/sql package

    hi,
    i have requirement where i have to create a PL/SQL package which takes two parameters from procedure where i shd give fromdate and todate as parameter below is the code i am getting two errors
    create or replace PACKAGE AgentTimeReport_XDO_pkg AS
    PROCEDURE AgentTimeReport_Demo_RTF(o_errbuf OUT VARCHAR2
                   ,o_retcode OUT VARCHAR2,p_fromdate IN VARCHAR2,p_todate IN VARCHAR2 );
    END AgentTimeReport_XDO_pkg
    CREATE OR REPLACE
    PACKAGE BODY AGENTTIMEREPORT_XDO_PKG AS
    PROCEDURE AgentTimeReport_Demo_RTF(o_errbuf OUT VARCHAR2
                   ,o_retcode OUT VARCHAR2,p_fromdate IN
    VARCHAR2,p_todate IN VARCHAR2 ) AS
    cursor cs_agenttime
    is
    SELECT
    incident.Incident_Number as ServiceRequestNumber,
    TO_CHAR (incident.incident_date,'DD-MON-YYYY') as ServiceRequestDate,
    incident.Summary as Summary,
    agenttime.agentname as AgentName,
    to_char(agenttime.agentstarttime,'DD-MM-YYYY HH24:MI') as StartTime,
    to_char(to_date('00:00:00','HH24:MI:SS') +
    (agenttime.endtime-agenttime.agentstarttime), 'HH24:MI') as TimeSpent
    FROM cs_incidents_all_b incident,cs_agenttime_agv agenttime
    WHERE agenttime.incident_id=incident.incident_id
    AND incident.incident_date between to_date(:p_fromdate,'DD-MON-YYYY')
    AND to_date(:p_todate,'DD-MON-YYYY');
    BEGIN
    /*First line of XML data should be ‘<?xml version="1.0" encoding='utf-8'?>’*/
    FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<?xml version="1.0" encoding="utf-8"?>');
    FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<AGENTTIME>');
    FOR cs_agent IN cs_agenttime
    LOOP
    /*For each record create a group tag <G_AGENT_TIME> at the start*/
    FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<G_AGENT_TIME>');
    /*Embed data between XML tags for ex:- <EMP_NAME>Abeesh</EMP_NAME>*/
    FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<SERVICEREQUEST_NUMBER>' ||
    cs_agent.ServiceRequestNumber
    || '</SERVICEREQUEST_NUMBER>');
    FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<SERVICEREQUEST_DATE>' ||
    cs_agent.ServiceRequestDate ||
    '</SERVICEREQUEST_DATE>');
    FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<START_TIME>' || cs_agent.StartTime
    ||'</START_TIME>');
    FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<TIME_SPENT>' || cs_agent.TimeSpent
    ||'</TIME_SPENT>');
    FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'</G_AGENT_TIME>');
    END LOOP;
    /*Finally Close the starting Report tag*/
    FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'</AGENTTIME>');
    END AgentTimeReport_Demo_RTF;
    END AGENTTIMEREPORT_XDO_PKG;
    Error(20,44): PLS-00049: bad bind variable 'P_FROMDATE'
    Error(21,13): PLS-00049: bad bind variable 'P_TODATE'
    Help me out
    naveen

    create or replace PACKAGE AgentTimeReport_XDO_pkg AS
    PROCEDURE AgentTimeReport_Demo_RTF(o_errbuf OUT VARCHAR2
    ,o_retcode OUT VARCHAR2,p_fromdate IN VARCHAR2,p_todate IN VARCHAR2 );
    END AgentTimeReport_XDO_pkg
    CREATE OR REPLACE
    PACKAGE BODY AGENTTIMEREPORT_XDO_PKG
    AS
    PROCEDURE AgentTimeReport_Demo_RTF
        o_errbuf OUT VARCHAR2 ,
        o_retcode OUT VARCHAR2,
        p_fromdate IN VARCHAR2,
        p_todate   IN VARCHAR2 )
    AS
      CURSOR cs_agenttime(p_fromdate VARCHAR2,p_todate VARCHAR2)
      IS
         SELECT incident.Incident_Number                                                                      AS ServiceRequestNumber,
          TO_CHAR (incident.incident_date,'DD-MON-YYYY')                                                      AS ServiceRequestDate  ,
          incident.Summary                                                                                    AS Summary             ,
          agenttime.agentname                                                                                 AS AgentName           ,
          TO_CHAR(agenttime.agentstarttime,'DD-MM-YYYY HH24:MI')                                              AS StartTime           ,
          TO_CHAR(to_date('00:00:00','HH24:MI:SS') + (agenttime.endtime-agenttime.agentstarttime), 'HH24:MI') AS TimeSpent
           FROM cs_incidents_all_b incident,
          cs_agenttime_agv agenttime
          WHERE agenttime.incident_id=incident.incident_id
        AND incident.incident_date BETWEEN to_date(p_fromdate,'DD-MON-YYYY') AND to_date(p_todate,'DD-MON-YYYY');
    BEGIN
      /*First line of XML data should be ‘<?xml version="1.0" encoding='utf-8'?>’*/
      FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<?xml version="1.0" encoding="utf-8"?>');
      FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<AGENTTIME>');
      FOR cs_agent IN cs_agenttime(p_fromdate,p_todate)
      LOOP
        /*For each record create a group tag <G_AGENT_TIME> at the start*/
        FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<G_AGENT_TIME>');
        /*Embed data between XML tags for ex:- <EMP_NAME>Abeesh</EMP_NAME>*/
        FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<SERVICEREQUEST_NUMBER>' || cs_agent.ServiceRequestNumber '</SERVICEREQUEST_NUMBER>');
        FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<SERVICEREQUEST_DATE>' cs_agent.ServiceRequestDate || '</SERVICEREQUEST_DATE>');
        FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<START_TIME>' || cs_agent.StartTime ||'</START_TIME>');
        FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'<TIME_SPENT>' || cs_agent.TimeSpent ||'</TIME_SPENT>');
        FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'</G_AGENT_TIME>');
      END LOOP;
      /*Finally Close the starting Report tag*/
      FND_FILE.PUT_LINE(FND_FILE.OUTPUT,'</AGENTTIME>');
    END AgentTimeReport_Demo_RTF;
    END AGENTTIMEREPORT_XDO_PKG;Ravi Kumar

  • Problems with PL/SQL packages

    Hello,
    I face the following problem with PL/SQL stored procedures. The Oracle
    version is 8.0.5 on Windows NT 4. The PL/SQL package has a set of procedures and functions.
    The main procedure of the PL/SQL package is triggered from VC++ executable. If for some reason,
    an exception is caught in the stored procedure (like no_data_found
    exception), then the following problem occurs.
    If we try to trigger the stored procedure again through the VC++ executable,
    the variables in the stored procedures have the values as in the previous
    execution. They are not getting initialised. (The same database connection
    is used in VC++ executable).
    Currently, only if a new connection to the database is used , the problem is
    solved.
    Also, change in the input parameters of the procedure is not reflected, once the procedure fails because of any exception. Only the input which was given during the time of execution when the procedure failed,is considered.
    What could be the reason for this problem and how can this be corrected?
    Please send in your suggestions.
    Thanks and Regards,
    Ramya Priya
    null

    Hi Keith,
    I am connecting to the database as the package owner..
    I have noticed earlier that I have problems when capturing triggers also.. The content of one large trigger contains 36371 characters and when capturing it from DB, the content was truncated to 28020 characters in Designer.
    Our ideas with capturing the DB packages/procedures were to use the Designer as version control system.
    We wanted to have all objects used in a project in Designer.. entities, tables, triggers, packages, procedures, Forms files, etc. in order to make a configuration for a project release.
    Thank you,
    Claudia

  • Creating Web services using JDeveloper for Pl/SQL package having ref cursor

    Hi,
    I am trying to create web services for PL/SQL package in JDeveloper. When I am trying to create this web service, the functions in the package which is returning referential cursor or record cursor are not visible. When I highlight the function and click "Why Not?", it displays the message "The following types used by the program unit do not have an XML schema mapping and/or serializer Specified: REF CURSOR". Could you please let me know, how I can create this web service?
    I am getting similar error when I am trying to create web service for a package with overloaded functions also.
    Thanks,

    Ok so I played around with this some more. I created the same process in bpel using oracle bpel designer and here are the results.
    1. Against 10g database running a synch process data is retutned without error.
    2. Against 9i database running an asynch process data is retutned without error.
    3. Against 9i database running a synch process data is retutned with error.
    I'm definilty missing something.

  • Function Overloading concept in PL/SQL

    hi all,
    do we have Function Overloading concept in PL/SQL? If so, how to implement it? can anybody help me out with an example?

    Yep.
    SQL> create or replace
      2  package test_package as
      3
      4     function blah(param IN NUMBER) return number;
      5     function blah(param IN DATE) return number;
      6     function blah(param IN VARCHAR2) return number;
      7
      8     -- or
      9
    10     function blah(param IN NUMBER) return date;
    11     function blah(param IN NUMBER) return varchar2;
    12     function blah(param IN NUMBER) return char;
    13
    14  end test_package;
    15  /
    Package created.

  • 26.4 Basing an entity Object on a PL/SQL Package API - Ref Cursor, no View

    I am hoping that I could get some help in the details of a problem. I am trying to follow the directions in the Oracle Application Development Framework Developer's Guide for Forms/4GL Developers, Section 26.4 - Basing an Entity Object on a PL/SQL Package API.
    There is example code in the downloadable AdvancedEntityExamples - EntityWrappingPL/SQLPackage
    The question is, how will the implementation change if the entity is based entirely on PL/SQL - simply stated - no view is available, just ref cursors and insert,update,delete procedures.
    In the example code, there are two procedures, lock_product and select_product. This is where things get more complicated. I can create a function to return a single record ref cursor, instead of the list of OUT variables defined in both functions (select_product and lock_product). It makes sense that I just return one cursor and get all of the columns from that instead of lots of OUT variables.
    So what's stopping me you may ask... There is one difference between select_product and select_lock. Select_lock has a select that includes "FOR UPDATE NOWAIT". I don't have that as an option when creating my ref cursor. I am not sure what the impact of "FOR UPDATE NOWAIT" is? Can I ignore it?
    In the problem I am working with, (getting data from Oracle Portal 10.1.4) I return the following:
    function getRefCursor return ref_cursor is
    v_tab wwsbr_all_items_object_type := wwsbr_all_items_object_type();
    p_recordset wwsbr_types.cursor_type;
    l_results wwsrc_api.items_result_array_type;
    begin
    wwctx_api.set_context(<username>,<password>);
    l_results := wwsrc_api.item_search(.. parameters..);
    <snip>
    ... Loop through the objects and populate v_tab
    <snip>
    open p_recordset for
    select * from table(cast(v_tab as wwsbr_all_items_object_type));
    return p_recordset;
    end getRefCursor;
    With this sample, it would be easy to return a single row by passing the masterid as a parameter.
    So I am still left with, how should the implementation of callLockProcedureAndCheckForRowInconsistency() and callSelectProcedure() be changed in order to use a ref cursor instead of a view? The user guide was missing that extra section <bg>.
    What would be REALLY helpful, is an example, say 26.4A that demonstrates creating an entity object from a ref cursor and procedures from PL/SQL only without a view.
    Thank you, Ken

    The lock procedure is expected to obtain a row-level lock on the row, given its key.
    Depending on the setting of jbo.locking.mode, the entity object's lock() method will be invoked either as soon as the first persistent attribute is successfully modified by the user (in the case of jbo.locking.mode=pessimistic), or it will be called during commit processing just before the row is updated in the database (with jbo.locking.mode=optimistic).
    Usually 2-tier Swing applications use pessimistic mode, while web applications use optimistic mode.
    The FOR UPDATE NOWAIT is the Oracle clause that can be appened to a SELECT statement to acquire a row-level lock on the selected rows. The NOWAIT modifier means that rather than hanging, waiting for a row locked by another user to free up, it will raise an exception if any of the rows being selected-and-locked are not available to lock.
    If you're not able to work the FOR UPDATE NOWAIT into the syntax of the ref cursor, perhaps you can initially perform the lock using a different cursor inside the stored procedure, then return your ref cursor.

  • SAP Restart to Delete SQL Packages

    I am starting this discussion on behalf of a client:
    Especially the "veterans" of AS/400 remember, that in the beginning of SAP on AS/400 it was often necessary to stop the SAP instance and delete the SQL packages in order to overcome database errors that usually showed up as SQL -901 errors. This way of "fixing" SQL -901 became like a habit, so that support employees often recommended to stop the SAP instance and delete SQL packages when a simple restart of the failing work process would have fixed the problem. Later we recommended to use profile parameter rdisp/wp_auto_restart to restart work processes automatically once a day (for example), and that seemed to have solved the problem. However, my client is not quite convinced that this works and does not want to "play" with the production system. They are using an ECC 6.0 system with a 10 TB database and about 4000 active users.
    Question to this group: Do you have systems with a similary size that run several weeks (or even months) without interruption for deleting SQL packages? If so, do you use profile parameter rdisp/wp_auto_restart, and what value is configured? Also "negative" answers are welcome, i.e. if you have the experience that the SQL packages must be deleted on a regular base for the sytem to work properly, please let us know, too.
    Thanks a lot for your cooperation.
    Kind regards,
    Christian Bartels.

    Hi Christian and Jim,
    Our production database is 8 TB with 3400 named users (1,000 or so concurrent).  We still are "old school" and delete the SQL packs during normal maintenance twice a month (either two or three week interval). I know we have gone longer if we were having a lot of go-lives but I don't think it has happened since we upgraded to ECC 6.0.
    We did have some SQL pack issues a while ago but it turned out to be they were reaching the maximum size for table IBSYMBOL. Since then we set the QAQQINI value "SQL_INCREASE_PKG_LIMIT = *YES " which doubled the allowable size to 1GB I believe. We still were reaching the max and we ended up inserting a profile parameter.
    "dbs/db4/dbsl_tablehint0         =           Table = 'IBSYMBOL' & nMarkers > 100 ? SingleExecutionReuse"
    Credits - Steve Tlusty of IBM came up with the fix
    During that round of fun, Steve also had us adjust the following parameters -
    rdisp/noptime                        =             605800
    rdisp/wp_auto_restart          =             604800
    Note - even though we are at 6.1.1 now, the adjustments were made on 4.7x200 while running under V5R4 so I don't know if they are still required.
    Have I rambled too long?
    Craig

  • DBMS_ALERT Unknown Within User-Defined PL/SQL Package

    Greetings,
    I am using Oracle 9i (9.2.0.4.0) database on SUN [sparc] Solaris 9.
    From an anonymous PL/SQL block, I can invoke procedures in the DBMS_ALERT package, for example:
    begin
      DBMS_ALERT.SIGNAL('Avi','was here');
    end;But if I put the above call to DBMS_ALERT.SIGNAL() in a stored procedure, or in a PL/SQL package, I get the following error:
    Oracle9i Enterprise Edition Release 9.2.0.4.0 - 64bit Production
    With the Partitioning, OLAP and Oracle Data Mining options
    JServer Release 9.2.0.4.0 - Production
    PL/SQL procedure successfully completed.
    SQL> create procedure P_AVI
      2  is
      3  begin
      4    DBMS_ALERT.SIGNAL('Avi','was here, again');
      5  end;
      6  /
    Warning: Procedure created with compilation errors.
    SQL> show errors
    Errors for PROCEDURE P_AVI:
    Hit <ENTER> to continue...
    LINE/COL ERROR
    4/3      PLS-00201: identifier 'DBMS_ALERT' must be declared
    4/3      PL/SQL: Statement ignoredI have searched the OTN forum archives, and the MetaLink Web site, and the Oracle documentation, but I couldn't find anything of help.
    I would like someone to explain what I need to do in order to be able to invoke DBMS_ALERT.SIGNAL() from within a user-defined (PL/SQL) package, or an alternative to DBMS_ALERT.SIGNAL().
    Basically, I have a procedure that receives a list of parameters, and updates several database tables, based on the supplied parameters. If one (or more) of the parameters is invalid, the procedure does not raise an error, it merely sends an "alert" that notifies any interested parties, that a database table was updated with possibly invalid data.
    Thanks (in advance),
    Avi.

    I'm terribly sorry. I just realized that I had to grant EXECUTE permission specifically to the database user that was trying to call the DBMS_ALERT package procedure.
    The following GRANT did the trick (as the SYS user):
    grant execute on DBMS_ALERT to SCOTTNow the SCOTT user can invoke DBMS_ALERT procedures from within SCOTT's stored procedures and packages.
    Please forgive me for this waste of bandwidth.
    Cheers,
    Avi.

  • Oracle Reports with PL/SQL package in before Trigger

    I have an oracle report which is set to run as a concurrent program in Oracle Apps. My before report trigger calls a pl/sql package. I am debating using errbuf and retcode, since I have not defined the pl/sql package as a concurrent program. But if I do add errbuf and retcode to the pl/sql package parameters, how do I call them in the trigger.
    function BeforeReport return boolean is
    begin
    delete from XXDK_SAMS2_MEAN_RATIO;
    delete from XXDK_SALES_RATIO_TOTALS;
    commit;
    XXDK_SAMS2_SALES_RATIO_RPT_PKG.INSERT_SALES*(:errbuf, :retcode*, :neighborhood, :salefrom, :saleto, :verfrom, :verto, :tax,
    :deed1, :deed2, :deed3, :tran1, :tran2, :tran3, :accnttype);
    return (TRUE);
    end;
    And do I add errbuf and ret code as paramters in the registered setup?

    Hi,
    please see if the code in these documents help.
    Note: 73492.1 - Creating a PL/SQL Concurrent Program in Oracle Applications
    Note: 221542.1 - Sample Code for FND_SUBMIT and FND_REQUEST API's
    Regards,
    Hussein

  • Still no way to access a PL/SQL package record type ?

    Sorry if this is a recurrent question...
    Is there still no way to set/retrieve input/output parameters of a PL/SQL package procedure/function through JDBC that is of type RECORD ??????
    I'm not considering wrapping up through objects or strings. Rather new versions of JDBC driver.
    How about SQLJ (don't know anything about that one. Does it call stored procedures ?
    Would it support package stored procedure ?
    And RECORD types ?
    Just out of curiosity as i'm setting off to breaking up all my types into individual arguments. What a pain !!!!!!!!!
    Thx.

    Thanks for the suggestion.
    We were arriving to a similar conclusion...
    There is however one BIG reason of being disapointed :
    - I did not know that (since I'm only Oracling since January) but objects do not accept attributes the type of which would be defined by refering the type of an existing column :
    Such as :
    CREATE TYPE type_customer AS OBJECT (
    cust_id CUSTOMERS.CUSTOMER_ID%TYPE,
    I have no idea why RECORDs can do it but object can't.
    To summarize it all we can use RECORDs but they are not seen through JDBC drivers and we can use OBJECTS but they don't map to column types... Unfortunate !
    Now to answer your question, at the moment I'm thinking of rewriting the routines rather than wrapping them up. Only around ten of them... So that the tool you mention is not needed.
    Just have to proofOfConcept it but that's the latest options we are considering...
    Thanks for the pointer I look it up right away...
    Alain
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by SQLJ Development ([email protected]):
    You could define a Customer Object type and create PL/SQL wrapper procedures/functions that take these as arguments and call your original PL/SQL SP. Unfortunately, right now you would have to do that by hand (JPublisher only gives you a Java representation of the Customer object type) - if there were a tool to generate the Object type and the PL/SQL wrappers, would you expect to use that?
    For an example of doing this (albeit in a pedestrian way) see: http://technet.oracle.com/docs/products/oracle8i/doc_library/817_doc/ java.817/a81357/sampcod8.htm#1042848 <HR></BLOCKQUOTE>
    null

  • Launch HTML Page using PL/SQL package

    Hi,
    Am trying to launch an HTML page in which i have used javascripting using
    catridges htp.p
    while registering the function , only in the HTML call i have given package.procedure name
    are there any special parameters that i need to pass in the package.
    How do i build the url of the page to display in the package?
    the problem i am clicking on the function i am getting logged as the function is unable to find the right url i guess

    MOD_PLSQL is an Apache (Web Server) extension module that allows one to create dynamic web pages from PL/SQL packages and stored procedures. It was formerly called the Oracle PL/SQL Cartridge and OWA (Oracle Web Agent). So I guess, you are referring to the same.
    As for UI development, why don't you use the Oracle Applications Framework [OAF]? That's the standard for any UI development in apps. As mentioned earlier, mod pl/sql code is not supported on R12, so why use it? Better have a look at OAF.
    --Shiv                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • The -dataSource parameter in assemble a web service from a PL/SQL package

    When I use Web Service Assembler to assemble a Web Service from a PL/SQL package, I need to specify the dataSource parameter, e.g.:
    java -jar wsa.jar -plsqlAssemble -sql pkgname -dataSource jdbc/MyDS -dbConnection ... -dbUser scott/tiger ....
    The dataSource also needs to be pre-configured in the data-sources.xml in OC4J.
    I am wondering why dataSource is needed here because the database connection information is already specified on the commandline ( dbConnection and dbUser).
    If I have to specify dataSource, how do I configure data-sources.xml dynamically at run-time (e.g., adding entries)?
    Thanks,
    Jim

    The -dataSource parameter specifies the data-sources.xml entry used at runtime. The database connection info is only for design time use. Typically you make sure data-sources.xml contains an entry with jndi-location of the same name you specifies for -dataSource. To configure data-sources.xml at runtime, it is out of the scope of web services. Please refer to OC4J admin guide. You can probably modify the data-sources.xml file and force OC4J to reconfigure based on the new data-sources.xml file.

  • Parameters to pl/sql pages

    Hi all,
    I installed the pdk examples showing how to pass parameters betweens pl/sql portlets. I saw it but not understand very weel. This is the same way to pass parameters between pl/sql pages? Is there any step-by-step that explain how to make the parameters passing more simple?
    Best regards,
    Joao Vitor.

    Hi Mick,
    Thanks for your reply. However my problem is still not resolved.
    I have created a Omniportlet with lists the staff details. When I click on the staff link I am passing to parameters as follows
    http://servername/pls/portal/url/PAGE/CCM_MIS_PORTAL/TUTOR_HOME/Course_Info?Param1=10017031/M2523&Param2=001434
    on the receving page I have a omni portlet which must receive these 2 parameters and pass it on to the query and filter the results.
    On the received page I have created 2 page parameters (Param1 and Param2)
    I have assigned these 2 paramaters to the portlet paramers through page parameters' section
    on the omni portlet in the query I have created 2 bind variables (p1, p2) and the default value of the bind variable is set using ##Param1## and ##Param2## so the received values from page is passed to to bind variable and hence to the query.
    However the omni portlet is not received the parameters and I can not figure out whats wrong?
    Is there any problem with my URL (guide says I should use relative URL)
    Please help

  • Creating PL/SQL Package with all the types

    CREATE OR REPLACE
    TYPE rec_type AS OBJECT (
    first_name VARCHAR2(20),
    last_name VARCHAR2(20)
    CREATE OR REPLACE
    TYPE REC_TYPE_TAB AS TABLE OF rec_type
    I am able to create the above types in oracle and used in PL/SQL packages. And like this I have somany types. I would like to if I can create a package with the types to make the life easier. Could you please tell me how to do it.
    your help is greately appreciated..
    --Krish                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

    sb92075 wrote:
    TYPE add only aggravation, complexity, & should be avoidedI disagree.
    When used correctly types can be the simplest solution.
    For example when passing multiple values to a stored procedure. Avoiding the type in the below example would lead to further complexity and aggravation not lessen it.
    SQL> create or replace procedure p
      2      (
      3      p_object_list in sys.odcivarchar2list,
      4      p_result out sys_refcursor
      5      ) as
      6  begin
      7      open p_result for
      8          select owner, object_name, object_type
      9          from all_objects
    10          where object_name in
    11              (
    12              select column_value from
    13              table(p_object_list)
    14              )
    15          order by
    16              owner, object_name, object_type;
    17  end;
    18  /
    Procedure created.
    SQL> exec p(sys.odcivarchar2list('DUAL','ALL_OBJECTS'),:c)
    PL/SQL procedure successfully completed.
    SQL> print c
    OWNER                          OBJECT_NAME                    OBJECT_TYPE
    PUBLIC                         ALL_OBJECTS                    SYNONYM
    PUBLIC                         DUAL                           SYNONYM
    SYS                            ALL_OBJECTS                    VIEW
    SYS                            DUAL                           TABLE

  • Creating PL/SQL packages

    Hello,
    The problem I am confronted with is reusing generated models.
    In the process of DataMinig several steps are used: prepare data, Attribute selection (using AI), and building, testing and applying models.
    If PL/SQL packages are used two problems occur:
    First: Long, hand driven process of building:
    Model generation in ODM,
    PL/SQL package building in ODM and Export to SQL file,
    importing package to DB, compiling and running.
    I am sorry, but I don't understand why is it necessary to export PL/SQL packages in a file? As if these products aren't both Oracle products?
    Second: If data (in time) changes and AI selects new attributes, then all next steps fail, since column names, and even some values, are hard coded! Therefore it is necessary to go trough the build and export process all over again. This really hurts.
    Do you have a suggestion how to get around this problem?
    I already considered using a SPSS Clementine, but since it is not an Oracle product I still believe, the original Oracle solution should give me some advantages.
    Oh and another issue.
    I tried using PL/SQL generator (Ver.: 10.1.3.0.17) in JDeveloper (ver.: 10.1.3.0.4), but it gave me an error:
    java.lang.NoClassDefFoundError: oracle/dmt/dm4j/DM4JConnectionManager
         at oracle.dmt.dm4j.extension.CodeGenerator.invoke(Unknown Source)
         at oracle.ide.wizard.WizardManager.invokeWizard(WizardManager.java:310)
         at oracle.ide.wizard.WizardManager$2.run(WizardManager.java:358)
         at oracle.ide.util.IdeUtil.invokeAfterRepaint(IdeUtil.java:1093)
         at oracle.ide.wizard.WizardManager$1.run(WizardManager.java:366)
         at oracle.ide.util.IdeUtil$1$1.run(IdeUtil.java:1073)
         at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
         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)
    Thanks for the reply,
    Igor

    Hi,
    The code generation available in ODMr would allow you to deploy the build, apply or test process as generated code.
    I am not sure what your application goal is, but if you simply want to deploy a model be used in an apply process that is rather straight forward.
    You would build the model using ODMr. Then create an Apply Activity, again using ODMr.
    The Apply Activity can then be used to generate code (pl/sql) using the JDev RTM release (10.1.3.2 or above). We will also have a version that will work with SQLDev shortly.
    The generated code is immediately placed into the db for you.
    If you want to score in a separate db you can either create a db link from that db or move both the model and the apply pl/sql code to the new db (using dba utilities).
    If you want to rebuild a model, where you would add/remove attributes, change transformations etc. then you will have to regenerate the code.
    If you simply want to rebuild the model without changing any transformations and settings you could also deploy the model build generated code.
    As for the JDev failure, we are going to look into that. Have you tried the JDev 10.1.3.3 release available on the Oracle web site?
    Thanks, Mark

Maybe you are looking for