How to call PL/SQL function processRequest

Hello

I'm trying to run a function called xxhr_trg_evaluation_pkg.xx_get_class_desc (1);

How can I run the above inside the processRequest function and pass the value returned in a variable string.

Thanks in advance

Kind regards... Ashraf

Ashraf,

The following code will help you how to call the function or procedure in processRequest.

processRequest Code:

{} public processRequest Sub (pageContext OAPageContext, OAWebBean webBean)

Oaam = pageContext.getApplicationModule (webBean) OAApplicationModule;
OADBTransaction dbtrans;
TXN OADBTransaction = (OADBTransaction) oaam.getOADBTransaction ();

statement that even execute the statement as pl/sql in Toad
= Txn.createCallableStatement cs CallableStatement ("start: 1: = xxhr_trg_evaluation_pkg.xx_get_class_desc (: 2); end;", 0);

variable will contain the return value
String outputVal ="";

pass the value of the entry to the callable statement
try {}
cs.setString(2,1+"");

}
catch (Exception e) {}
}

try {}
CS. Execute();
outputVal = cs.getString (1);
}
catch (Exception e) {}
}

try {}
CS. Close();
}
catch (Exception e) {}
}
Did all the insert/update/etc means do validation of here too but you did not engage in the service by using the following syntax
dbtrans.Commit ();

}

Thank you
SAN

Tags: Oracle Applications

Similar Questions

  • How to call the java function with javascript setting in mobile adf?

    How to call the java function with javascript setting in mobile adf?

    The ADF Mobile utility container API can be used from JavaScript or Java.

    Application container API - 11 g Release 2 (11.1.2.4.0)

  • How to call the javascript function in ADF

    I have the javascript function stored in a .js file external (try to reuse in another application). How can call the javascript function for an event of ADF faces component. I need to I am a newbie to ADF, all ideas are appreciated.

    Kind regards
    Surya

    Published by: sgodavar on Sep 24, 2010 11:44

    Include JavaScript to the jsff/jspx as page:

    Call it like:

    Type = "dblClick" / >
    Amit

  • Calling a SQL function to send all page

    In an APEX application, is it possible to call a SQL function so that the application be submitted instead of 'action SQL INSERT'. This function takes 2 parameters user entering the page of the application.

    Send page has essentially two text fields and a "submit" button
    Version and Patch Info

    The SQl function has 2 parameters like this, start_new_env (oracleversion IN VARCHAR2, opatchinfo IN CLOB)

    Any help will be much appreciated.

    Thank you

    Published by: Rajesh on November 17, 2009 08:49

    Please mark it as answered and mark it as correct...
    Thank you

  • How 2 call a DB FUNCTION in a trigger... ?

    Hi all

    I want to choose the most recent MAX * ITEM_QTY * WH_t_ITEMS table and update the BALANCE_QTY with the last sale quantity... !

    My Question is I want to know:
    (1) is this correct...! ? :) !!!
    well are you?
    (2) how can I call this function in a db trigger. post & insert after update in the wh_t_items

     
    SQL>  desc WH_t_items
     Name                                   
     ---------------------------------
     ITEM_SERIAL                            
     STORE_ID                               
     TRANSACTION_SERIAL                     
     ITEM_QTY                               
     UNIT_PRICE                             
     ITEM_PRICE                             
     BALANCE_QTY                            
     IS_OPEN                                
     WITHDRAW_QTY                           
    Here's my code for the trial...
    CREATE OR REPLACE Function Balance_quantity_update    ( V_STORE_ID  IN NUMBER  ,  V_ITEM_SERIAL IN NUMBER   )
       RETURN NUMBER IS
        cnumber NUMBER;
        CURSOR CR_UPDATE  IS
     
        SELECT NVL( MAX(  ITEM_QTY ) , 0  )
         FROM WH_T_ITEMS
        WHERE STORE_ID    =  V_STORE_ID 
         AND    ITEM_SERIAL  = V_ITEM_SERIAL ;       
    BEGIN
    OPEN CR_UPDATE  ;
    FETCH CR_UPDATE   INTO cnumber;
    IF CR_UPDATE%notfound then     NULL ;
    ELSE
     
    LOOP
     
      UPDATE  WH_T_ITEMS
            SET    BALANCE_QTY          =  cnumber 
            WHERE  WH_T_ITEMS.STORE_ID  =  V_STORE_ID
            AND    ITEM_SERIAL          =  V_ITEM_SERIAL;    
     
    END LOOP ;
    END IF;
     
    CLOSE CR_UPDATE  ;
    RETURN cnumber;
    EXCEPTION
    WHEN OTHERS THEN
          raise_application_error(-20001,'An error was encountered - '||SQLCODE||' -ERROR- '||SQLERRM);
    END Balance_quantity_update; 
    / 
     
    Best regards

    Abdetu...

    I think (still a guess) would be:

    CREATE OR REPLACE TRIGGER Balance_quantity_update
      AFTER INSERT ON wh_i_items
    REFERENCING NEW AS  NEW OLD AS OLD
       FOR EACH ROW
    v_sum_qty NUMBER(19,5);
    v_sub_qty NUMBER(19,5);
    
      BEGIN
    
    v_sum_qty := SUM_QUANTITY ; -- calling the db function into A varaible
    
      UPDATE WH_T_ITEMS A
          SET BALANCE_QTY = ITEM_QTY
          WHERE STORE_ID = :NEW.STORE_ID
          AND ITEM_SERIAL = :NEW.ITEM_SERIAL
          AND ITEM_QTY = (SELECT MAX(ITEM_QTY)
                          FROM WH_T_ITEMS B
                          WHERE A.STORE_ID = B.STORE_ID
                         AND A.ITEM_SERIAL = B.ITEM_SERIAL);
       END;
       / 
    
  • How to call a DLL function that has need of an array initialized structures which can be written in by the DLL?

    I need to call the following function in a C DLL:

    __declspec (dllexport) int MSIL_EnumSpectrometers (SPECTROMETER_ID * spectrometers);

    where the only parameter is a pointer to:

    typedef struct
    {
    tank model [32];
    series char [32];
    Channel int;
    } SPECTROMETER_ID;

    Before LabVIEW 2011 I would use a CIN allocate the memory and call the function, but in LabVIEW 2011, the INC has been deleted and I have to use a library function node call instead. When I go to set the parameter, it seems that I need to set the type to "Adapt to the Type" and data for 'Pointer to data in table' Format, then pass an initialized array of SPECTROMETER_ID with the many elements he so the DLL can fill the table with data. (See the attached picture.) When I do that, however, it blocks LabVIEW desktop.  I guess it is because the DLL is corrupting the memory space of LabVIEW, but I don't see why, because I'm basically passing in a void pointer to an array initialized in the right size. Note that the first node of NSI returns the number of elements required in the table.  Anyone have any idea what I'm doing wrong here?

    In LabVIEW, when a table is in a cluster - cluster don't detain actually table but sort of a pointer that points to the table. If you need the cluster to contain 32 to 32 Add to the cluster. See the VI attached to how it's supposed to be done.

  • Create a directory tree: how to call a global function from inside a for loop

    Hello

    I am trying to create a workflow that will create a directory tree in vCenter.

    Concept:

    Basically, I am trying to execute nested for loops for each level of the tree to the caller a global tree.

    Problem:

    The 1st loop for works and creates the file 'Dev '.  The second loop for does not work with error message:

    [19:16:16.219 2013-06-27] [I] building Dev folder
    [19:16:16.474 2013-06-27] [I] directory Built: Dev
    [19:16:16.476 2013-06-27] [I] the records building servers
    [19:16:16.480 2013-06-27] [I] TypeError: cannot find the createFolder function in dev object. (Workflow: TEST_TNG_New_Site_Folder_Structure / Scriptable task (item2) #36)

    I think it has to do with JavaScript not being not able to call a global function in a nested object (I'm not a programmer and don't know JavaScript, so don't shoot me on that :)

    Code: (will clean this up once I do work)

    var folderBase is ['Dev', 'DMZ', 'Prod', 'UAT'];.

    var folderT1 = ["servers", "Jobs"];

    var folderT2 = ['Window', 'Linux'];

    var folderT3 is ["Repo2', 'Repo3', 'Repo1', 'Repo4'];.

    var folderT4 is ["T1", "T2", "T3"];.

    Create the files folderBase level

    for (var i = 0, l = folderBase.length; i < l; i ++) {}

    var rootFolder = parentFolder;

    buildFolderTree (folderBase [i]);

    Create the files folderT1 level

    for (var j = 0, l = folderT1.length; j < l; j ++) {}

    var rootFolder = folderBase [i];

    buildFolderTree (folderT1 [j]);

    Create the files folderT2 level

    for (var k = 0, l = folderT2.length; k < l; k ++) {}

    var rootFolder = folderT1 [j];

    buildFolderTree (folderT2 [k]);

    Create the files folderT3 level

    for (var x = 0, l = folderT3.length; x < l; x ++) {}

    var rootFolder = folderT2 [k];

    buildFolderTree (folderT3 [x]);

    Create the files folderT4 level

    for (var y = 0, l = folderT4.length; y < l; y ++) {}

    var rootFolder = folderT3 [x];

    buildFolderTree(folderT4[y]);

    }

    }

    }

    }

    }

    function buildFolderTree (folderName) {}

    System.log ("Building folder" + folderName);

    rootFolder.createFolder (folderName);

    System.log ("directory of frame:" + folderName);

    }

    Any help will be appreciated.

    Thank you

    B

    Hello

    The createFolder() method returns the object VcFolder to the folder just created, for the new file to be used immediately.  Here is how I modified the code:

    Create the files folderBase level
    for (var i = 0; i)
    var newBaseFolder = buildFolderTree (parentFolder, folderBase [i]);
    Create the files folderT1 level
    for (var j = 0; j)
    var newT1Folder = buildFolderTree (newBaseFolder, folderT1 [j]);
    Create the files folderT2 level
    for (var k = 0; k)
    var newT2Folder = buildFolderTree (newT1Folder, folderT2 [k]);
    Create the files folderT3 level
    for (var x = 0; x)
    var newT3Folder = buildFolderTree (newT2Folder, folderT3 [x]);
    Create the files folderT4 level
    for (var y = 0; y)
    var newT4Folder = buildFolderTree (newT3Folder, folderT4 [y]);
    }
    }
    }
    }
    }

    function buildFolderTree (parentFolderObj, folder_name) {}
    System.log ("Building folder" + folderName);
    var newFolder = parentFolderObj.createFolder (folderName);
    System.log ("directory of frame:" + folderName);
    return NewFolder;
    }

  • How to call stunts c ++ function from javascript

    Hello

    Is it possible to call stunts c ++ functions of javascript cascading bb10 without use of qml files. This is a very important part of my application.

    Where runs JavaScript code?

    If it is in Web mode, then the docs document something where you can call "navigator.cascades.postMessage ()" JavaScript and the other side (which could be C++) watch the messageReceived() signal.

    If this isn't in a WebView, where is it if not in QML?

  • How to call pl/sql procedures stored since AMImpl

    Hi, I worked with regular procs which of output params and primitive types like number, Varchar2 etc.

    But how to pass values of procs of pl/sql that contains custom data types, such as VARCHAR2_TABLE_100, you will find the definition below.

    create or replace

    TYPE 'VARCHAR2_TABLE_100' is the table of varchar2 (100)

    How to pass values for the parameter entry if type is of the above type, suspicion or the thought is appreciated.

    Thank you.

    I tried to use registeroutparameter(10,Types.ARRAY,"VARCHAR2_TABLE_100");

    But I get a number of entries or incorrect exception types. I thought it's because the output variable does not properly.

    Try it with the fully qualified name ('YOURSCHEMA.) VARCHAR2_TABLE_100')

    Also note that the index in jdbc start from 1 (not 0) and if you have the first parameter plsql function's return value of function.

    For example, if you have the plsql function: "function somettype return of some_func (p_param to varchar2_table_100);

    to enter p_param you need something like: stmt.registerOutParameter (2, OracleTypes.ARRAY, "SCHEMA. VARCHAR2_TABLE_100')

    Dario

  • How to call the ratiobutton function?

    Hello world

    I had this script

    var d = app.dialogs.add ({name: "Define empty Pages"});

    var radioBtns = d.dialogColumns.add ().radiobuttonGroups.add ();

    radioBtns.radiobuttonControls.add({staticLabel:"Save",checkedState:true});)

    radioBtns.radiobuttonControls.add ({staticLabel: "No. Save"});

    radioBtns.radiobuttonControls.add({staticLabel:"Exit"});)

    If (! d.Show ()) {d.Destroy () ;}

    var saveOption = radioBtns.selectedButton;

    d.Destroy ();

    docs var = app.documents.

    for (var i = docs.length - 1; i > = 0; i--) {}

    If (.saved docs [i] == false) {}

    docs [i] except (new file ("~/Desktop/myTestDocument" + (i + 1) + ".indd"));

    docs [i]. Close();

    }

    else {}

    docs [i]. Close (SaveOptions.no);

    }

    }

    for the docs close without saving, but

    I want to stay choice for these files not backed up, so I add dialogue open to the case wherever I decide if I save those of the unsaved file.

    Now, the problem is that I don't know how to let the ratiobutton call function

    My goal:

    (1) choose 'Save' means save files not backed up, but not others

    (2) choose "No save" means all files without saving

    (2) choose 'exit' unsaved files exit (stay open) but others nearby

    Thank you

    Respect of

    Teetan

    Fixed,

    var myDate = new Date;
    Date.prototype.monthName = function() {
        var myMonth = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
        return myMonth[this.getMonth()];
    }//This line was proposed by Marijan Tompa (tomaxxi)
    var myMonthName = myDate.monthName();
    var myYear = myDate.getFullYear();
    var myHour = myDate.getHours();
    var myMinutes = myDate.getMinutes(); 
    
    //open dialog
    var d=app.dialogs.add({name:"Unsaved files Save or not"});
    var radioBtns = d.dialogColumns.add().radiobuttonGroups.add();
    var save = radioBtns.radiobuttonControls.add({staticLabel:"Save",checkedState:true});
    var nosave = radioBtns.radiobuttonControls.add({staticLabel:"No Save"});
    var _exit = radioBtns.radiobuttonControls.add({staticLabel:"Exit"});
    if(!d.show()){d.destroy();}
    var docs = app.documents;
    switch(radioBtns.selectedButton)
    {
            case 0:
                for(var i = docs.length-1; i >= 0; i--)
                {
                        if(docs[i].saved == false)
                        {
                                docs[i].save(new File("~/Desktop/Doc" + (i+1) + "-" + myDate.getDate() + " " + myMonthName + " " + myYear + " " + myHour + myMinutes + ".indd"));
                                docs[i].close();
                            }
                        else
                        {
                                docs[i].close(SaveOptions.NO)
                            }
                    }
                break;
            case 1:
                for(var i = docs.length-1; i >= 0; i--)
                    {
                            docs[i].close(SaveOptions.NO)
                        }
                break;
            case 2:
                for(var i =0;i
    

    Kind regards

    Cognet

  • Calling a SQL function which has Out parameters

    Hello people,
    I don't know if it's feasible, but here's my scenrio at hand. I have a database function that accepts a few parameters AND OUTPUT parameters. I want one Out to display in my select statement parameters. Is this possible?

    Thank you

    No you can not use a function with out parameters in sql statements.

    If possible do the function of this return value, use it in select. (imean instead of the parameter, OUT out which parameter through the BACK)

    G.

  • Problem when calling a return function of SQL BOOLEAN in package type

    Hi all

    I'm having a problem when you try to call a SQL function in a package with the return BOOLEAN type
    The SQL function signature is
    ####

    CREATE OR REPLACE PACKAGE RMSOWNER. ORDER_ATTRIB_SQL *.

    FUNCTION GET_PO_TYPE_DESC (O_error_message IN OUT VARCHAR2,
    I_PO_TYPE IN VARCHAR2,
    O_PO_TYPE_DESC IN OUT VARCHAR2)
    RETURN A BOOLEAN VALUE;

    ####


    Here is my java code

    ####
    + Cs3 CallableStatement = conn.prepareCall ("{?}") = call ORDER_ATTRIB_SQL. GET_PO_TYPE_DESC(?,?,?)} ");" +
    + CS3.registerOutParameter (1, java.sql.Types.BOOLEAN) +;
    + CS3.registerOutParameter (2, java.sql.Types.VARCHAR) +;
    + CS3.registerOutParameter (4, java.sql.Types.VARCHAR) +;
    + CS3. SetString (2, ""); +
    + CS3. SetString (3, "ST"); +
    + CS3. SetString (4, ""); +
    + ResultSet rs3 = cs3.executeQuery (); +
    ####

    I get the following exception, I tried to change the (registerOutParameter) boolean sql type bit, but I've always found this exception.
    But when I call all other functions with a return type other than boolean, they work perfectly well.

    Please can someone help me solve this problem, I don't know if its something to do with classes of JDBC providers?

    #####
    + java.sql.SQLException: ORA-06550: line 1, column 13: +.
    + PLS-00382: expression is of the wrong type.
    + ORA-06550: line 1, column 7: +.
    + PL/SQL: statement ignored +.

    + oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112) +.
    + oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331) +.
    + oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288) +.
    + oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743) +.
    + oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:215) +.
    + oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:954) +.
    + oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168) +.
    + oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3316) +.
    + oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3422) +.
    + oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4394) +.

    #####

    Looks like it's a Limitation of the jdbc drivers. Please visit the following link:
    http://www-Camden.Rutgers.edu/help/documentation/Oracle/Java.815/a64684/typesup1.htm

    Here is an excerpt from above:
    ==========================================================
    PL/SQL BOOLEAN, RECORD and the Types of TABLES of packing

    Oracle JDBC drivers support the argument of appeal or return values of PL/SQL TABLE types (now known as indexed arrays by), REGISTRATION or BOOLEAN.

    To work around the problem, you can create wrapper procedures that manage data like types supported by JDBC. For example, to wrap a stored procedure that uses PL/SQL Boolean values, you can create a stored procedure that takes a character or a number of JDBC and passes to the original procedure as BOOLEAN or, for an output parameter, accepts a BOOLEAN of the original procedure argument and pass it as a TANK or a NUMBER to JDBC. Similarly, to wrap a stored procedure that uses PL/SQL records, you can create a stored procedure that maintains a record in its individual components (such as CHAR and NUMBER). To wrap a stored procedure that uses PL/SQL tables, you can divide the data into components or perhaps use Oracle collection types.

  • Call a member function from a cursor in a procedure

    Hello people

    I'm a newbie in the process of learning of 10 G and oracle. My question is:

    I created a type called row_po and set a member function getCost() that returns the total cost of the order with headings like the nested table, which I intend to call from a procedure. In the procedure my SELECT returns more than one record, and that's why I need to use a cursor. For each record, I've got display the order_no, quantity, and the order_cost (qty, and order_cost are part of a nested table headings). I am able to access the order_no and quantity, but do not know how to call the member function to get the order_cost. Here are my steps:

    CREATE OR REPLACE PROCEDURE get_podet (part_num number)
    AS
    CURSOR c2 is
    SELECT *.
    OF po, TABLE (in. LineItemList_nestab) tab_po L
    WHERE L.PartNo = part_num;
    BEGIN
    TO crec looped c2
    DBMS_OUTPUT. Put_line (' ORDER NUMBER: ' | crec.) PONo);
    DBMS_OUTPUT. Put_line (' LINE QTY: ' | crec.) Qty);
    {color: #ff0000} * DBMS_OUTPUT. PUT_LINE (' ORDER VALUE: ' |) ''); -order_cost, which must be returned by the member function I mentioned-*.
    {color} END LOOP;
    EXCEPTION
    WHILE OTHERS THEN
    DBMS_OUTPUT. Put_line ('Failed' |) "SQLCODE: ' |" SQLCODE);
    DBMS_OUTPUT. PUT_LINE ('SQL ERROR MESSAGE' |) SQLERRM);
    END;
    /

    The red line is where I want to call my function getCost() which is a member of the tab_po in. as stated in my SELECTION.

    All thoughts were highly appreciated.

    Thanks and greetings

    It's always tricky with objects (or so I think...)

    Modify the query in your procedure:

    SELECT treat (value (po) as row_po).getCost() tot_cost
         , po.*
         , l.*
    FROM tab_po po, TABLE (po.LineItemList_nestab) L
    

    This would make the function:

    CREATE OR REPLACE PROCEDURE get_podet(part_num in number)
    AS
    CURSOR c2 is
    SELECT treat (value (po) as row_po).getCost() tot_cost
         , po.*
         , l.*
    FROM tab_po po, TABLE (po.LineItemList_nestab) L
    WHERE L.PartNo = part_num;
    BEGIN
    FOR crec in c2 LOOP
    DBMS_OUTPUT.PUT_LINE('ORDER NUMBER: ' || crec.PONo);
    DBMS_OUTPUT.PUT_LINE('LINE QTY: ' || crec.Qty);
    DBMS_OUTPUT.PUT_LINE('ORDER VALUE: ' ||crec.tot_cost
    ); -- order_cost which should be returned from the member function i've mentioned --
    END LOOP;
    EXCEPTION
    WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('Failed' || 'SQLCODE: ' || SQLCODE);
    DBMS_OUTPUT.PUT_LINE('SQL ERROR MESSAGE ' || SQLERRM);
    END;
    

    Published by: Alex Nuijten on January 13, 2009 15:29

  • XQuery SQL function

    Hello

    In a query XQuery is posssible to call a function or procedure SQL (PL / SQL)?
    Here is an example of what I had accomplished:


    SELECT THE PRD. XMLCOLUMN of
    XMLTABLE (' for $i in ora: view("P_iXXX")/LINE)
    $j in ora: view("P_jXXX")/LINE.
    where
    ($i / NSU_xxx = $j/NSU_xxx)
    return
    (
    < NCL >
    {
    $i / NSU_xxx,
    H3. CALL the SQL function? as sql_xxx
    for $k in ora: view("P_kxxx")/ROW
    ($vk/COD_RMP_VPM = "PRD")
    Return()
    }
    < / NCL >
    () "PATH of XMLType 'XMLCOLUMN' COLUMNS 'resultsqlfunction' INTEGER PATH 'xsql_xxx' INTEGER ACCESS to 'NSU_xxx' path 'NSU_xxx', '.') as the PRD;

    Thanks in advance for your answers
    François

    Who today replaces "ora: see?

    On 11.2, ora expansion feature: view() is deprecated in favor of the fn:collection("oradb:/") method:

    http://docs.Oracle.com/CD/E11882_01/AppDev.112/e23094/xdb_xquery.htm#BABECFFD

    My DBA database have installed Oracle XML DB to use the XMLType and XMLTable, I thought that these features among other things speed up the creation of XML.

    What are the benefits of using XQuery and XMLTable and XMLQUERY functions?

    Which version of the database you use?

    Please read: http://docs.oracle.com/cd/E11882_01/appdev.112/e23094/xdb_xquery.htm#CBAGCBGJ

    Is there another method to expedite the creation of XML?

    Publication of SQL/XML functions are probably the best way to create custom relational data XML documents.

    The basic functionality of XQuery is not to the RDBMS query tables or views, although Oracle provides extensions to do.
    Most of the time, I use XQuery (via XMLTable and XMLQuery) to do exactly the opposite, i.e. to extract XML data in a relational form, or the transformation of XML fragments.

    If your actual requests are slow - even if you need to define what that means and that you are pregnant - then maybe the SQL/XML functions are not the real problem.

    In a "Where clause" as I turn, I have several "outer join". Here is an example.

    where
    PPM. NSU_PPM = w.NSU_PPM and FRNS. NSU_FRN (+) IS FCO. NSU_FRN and FCO. NSU_FCO (+) IS PPM. NSU_FCO
    and T2O. NSQ_T2O (+) IS PPM. NSQ_T2O
    and T51. NSQ_T51 (+) IS PPM. NSQ_T51
    and TWU. NSU_STT (+) IS PPM. NSU_STT
    and T01. NSQ_T01 (+) IS PPM. NSQ_T01
    and vpm.cod_rmp_vpm (+) = "PRA".
    and vpm.num_vsn_vpm (+) = PPM.vsn_sup
    and w.nsu_ppm = A.nsu_ppm (+)
    and W.NSU_SOO = A_HEADER. NSU_SOO and A_HEADER. NOR_SOM = 0

    Yes, it's exactly what I was talking about.
    Transposing the logic for XQuery 1.0 is not the approach more simple (to say the least), because there is no direct support OUTER JOIN.
    XQuery 3.0 provides the functionality, but it is not yet here in the database.

    My suggestion would be to stick to the publication of SQL/XML functions.
    If you have a specific question about the performance, we (as the members of the forum) will be happy to help you.
    Provides the steps necessary to reproduce the problem, including some examples of data.

    Kind regards

    Marc.

  • How to use Pl/Sql in Discoverer report

    Hello world

    Would you be able to provide a flow of work and guidance how to use the sql function in right of discoverer of the creation of the function by using PLSQL Developer.

    (I'm new to Oracle environment... Prev worked as analyst with Microsoft Access... takes PL/Sql class at school a few years ago)

    We use Discoverer Desktop.

    (a) dba just email for permission to create the pl/sql function.
    (b) recently completed Discoverer Administrator installed on my pc.

    can you pls add to the list:

    c)....

    d)....

    etc. ?

    TX for your help, sandra

    Hi sandra,.

    Its been ages've seen it here. How are you??

    (c) creation of the function by using PLSQL developer

    go through this link of creating functions

    [http://www.techonthenet.com/oracle/functions.php]

    (d) recording the discoverer function

    GoTo Admin--> Tools--> Register PL / SQL--> functions import... Select your function and say apply

    For more information about the functions, you can go through the tutorials

    [http://download.oracle.com/docs/html/A90881_02/calculat.htm#1006629]

    Hope this helps you.

    Best wishes
    Murielle.

Maybe you are looking for