Unable to call a procedure from inside a another procedure

Dear members
I am trying to call a procedure from inside an another procedure.Both the procedures are present within the same package.I am trying to call the second procedure just before the end of the first procedure.Both the procedures are compiling fine but the tables are not getting populated inside the second procedure.Also the DBMS_OUTPUT statements present in second procedures are not getting displayed.(I feel the second procedured is not getting called).
The package specification is as follows:
CREATE OR REPLACE package ANVESH.conv_api_pkg
is
    PROCEDURE PROC_CONVERSION_API(FILE_PATH IN VARCHAR2,FILE_NAME IN VARCHAR2) ;
    TYPE cts_order_details IS TABLE OF XXCTS_ORDER_DETAILS_STG%ROWTYPE;
    PROCEDURE proc_conversion_api2(p_orderdetails IN cts_order_details) ;
end conv_api_pkg;The package body is as follows:
CREATE OR REPLACE package body ANVESH.conv_api_pkg
is
PROCEDURE PROC_CONVERSION_API(FILE_PATH IN VARCHAR2,FILE_NAME IN VARCHAR2)
IS
    v_file_type utl_file.file_type;
    v_buffer VARCHAR2(1000);
    V_CUSTOMER_NAME VARCHAR2(100);
    V_MANUFACTURER VARCHAR2(100);
    V_PRODUCT_NAME VARCHAR2(100);
    V_QUANTITY NUMBER;
    V_REQ_SHIP_DATE DATE;
    V_REQ_PRICE NUMBER;
    V_LOG_FILE utl_file.file_type;
    V_COUNT_CUST NUMBER;
    V_COUNT_PROD NUMBER;
   L_ORDER_LINES CONV_API_PKG.cts_order_details:=CONV_API_PKG.cts_order_details();
BEGIN
    DBMS_OUTPUT.PUT_LINE('Inside begin 1');
    v_file_type := UTL_FILE.fopen(FILE_PATH, FILE_NAME, 'r',null);
        DBMS_OUTPUT.PUT_LINE('Inside begin 1.1');
    LOOP
        BEGIN
                    DBMS_OUTPUT.PUT_LINE('Inside begin 2');
                     UTL_FILE.GET_LINE (v_file_type,v_buffer);
                    DBMS_OUTPUT.PUT_LINE('Inside begin 2.1');
                    DBMS_OUTPUT.PUT_LINE('the  buffer is '||v_buffer);
                    DBMS_OUTPUT.PUT_LINE('the length of buffer is '||length(v_buffer));
                     V_CUSTOMER_NAME := trim(substr(v_buffer, 1, 30));
                     DBMS_OUTPUT.PUT_LINE('Customer Name is '||V_CUSTOMER_NAME);
                     V_MANUFACTURER  := trim(substr(v_buffer, 31, 40));
                     DBMS_OUTPUT.PUT_LINE('Manufacturer is '||V_MANUFACTURER);
                     V_PRODUCT_NAME  := trim(substr(v_buffer,  71, 20));
                     DBMS_OUTPUT.PUT_LINE('Product Name is '||V_PRODUCT_NAME);
                     V_QUANTITY      := to_number(trim(substr(v_buffer, 91, 5)));
                     DBMS_OUTPUT.PUT_LINE('Quantity is '||V_QUANTITY);
                     V_REQ_SHIP_DATE     := to_date(trim(substr(v_buffer, 96, 20)), 'DD-MON-YYYY');
                     DBMS_OUTPUT.PUT_LINE('Requested Ship Date is '|| V_REQ_SHIP_DATE);
                    V_REQ_PRICE        :=nvl(substr( trim(v_buffer), 116, length(v_buffer)-116),0);
                    --DBMS_OUTPUT.PUT_LINE('Requested Price is1 '||substr(v_buffer, 116, 5));
                    DBMS_OUTPUT.PUT_LINE('The requested price is  '||V_REQ_PRICE);
            V_LOG_FILE := UTL_FILE.FOPEN(FILE_PATH, 'LOG_FILE.dat', 'A');
                IF (V_QUANTITY > 0)
                 THEN
                 DBMS_OUTPUT.PUT_LINE('The quantity is '||V_QUANTITY);
                   SELECT COUNT (*)
                   INTO V_COUNT_CUST
                   FROM CONVERSION_CUSTOMERS
                   WHERE CUSTOMER_NAME = V_CUSTOMER_NAME;
                   DBMS_OUTPUT.PUT_LINE('The Customer count is '||V_COUNT_CUST);
                   IF(V_COUNT_CUST > 0)
                   THEN
                       SELECT COUNT(*)
                       INTO V_COUNT_PROD
                       FROM conversion_products
                       WHERE PRODUCT_NAME = V_PRODUCT_NAME;
                       DBMS_OUTPUT.PUT_LINE('The Product count is '||V_COUNT_PROD);
                      IF(V_COUNT_PROD >0)
                       THEN
                            INSERT INTO XXCTS_ORDER_DETAILS_STG VALUES (V_CUSTOMER_NAME, V_PRODUCT_NAME, V_MANUFACTURER, V_QUANTITY, V_REQ_SHIP_DATE, V_REQ_PRICE, 'ACTIVE', 'ORDER TAKEN');  
                       ELSE
                            DBMS_OUTPUT.PUT_LINE('PRODUCT SHOULD BE VALID');
                            UTL_FILE.PUT_LINE(V_LOG_FILE, 'PRODUCT SHOULD BE VALID');                   
                       END IF;
                   ELSE
                      DBMS_OUTPUT.PUT_LINE('CUSTOMER SHOULD BE VALID');
                      UTL_FILE.PUT_LINE(V_LOG_FILE, 'CUSTOMER SHOULD BE VALID');
                   END IF;      
                ELSE
                    DBMS_OUTPUT.PUT_LINE('QUANTITY SHOULD BE VALID');
                    UTL_FILE.PUT_LINE(V_LOG_FILE, 'QUANTITY SHOULD BE VALID');
                END IF;
                EXCEPTION
                WHEN NO_DATA_FOUND THEN
                    EXIT;
                END;
    END LOOP;
SELECT CUSTOMER_NAME, PRODUCT_NAME, MANUFACTURER, QUANTITY, REQUESTED_SHIP_DATE, REQUESTED_PRICE, STATUS,MESSAGE
BULK COLLECT
INTO L_ORDER_LINES
FROM XXCTS_ORDER_DETAILS_STG;
DBMS_OUTPUT.PUT_LINE('values inserted');
proc_conversion_api2(p_orderdetails=>L_ORDER_LINES);
END;
PROCEDURE proc_conversion_api2(p_orderdetails IN cts_order_details)
  IS
  V_AVL_QUANTITY CONVERSION_PRODUCTS.AVL_QUANTITY%TYPE;
  V_REQ_SHIP_DATE DATE;
  V_LIST_PRICE CONVERSION_PRODUCTS.LIST_PRICE%TYPE;
  V_NET_PRICE CONVERSION_PRODUCTS.LIST_PRICE%TYPE;
  V_NET CONVERSION_PRODUCTS.LIST_PRICE%TYPE;
  V_EXTN_PRICE CONVERSION_PRODUCTS.LIST_PRICE%TYPE;
  V_CUST_DISC CONVERSION_CUSTOMERS.DISCOUNT%TYPE;
  V_CERT_DISC CONVERSION_CERTIFICATION.DISCOUNT%TYPE;
  V_CUST_ID XXCTS_ORDER_DETAILS.CUSTOMER_ID%TYPE;
  V_PROD_ID XXCTS_ORDER_DETAILS.PRODUCT_ID%TYPE;
  V_DISC_PRICE CONVERSION_PRODUCTS.LIST_PRICE%TYPE;
  V_DISC_NAME CONVERSION_CERTIFICATION.CERTIFICATION%TYPE;
  V_TOTAL_DISC_AMT NUMBER;
  V_TOTAL_DISC NUMBER;
  V_LIMIT NUMBER;
BEGIN
    DBMS_OUTPUT.PUT_LINE('INSIDE API_2 BEGIN 1');
        FOR i IN p_orderdetails.FIRST..p_orderdetails.LAST
        LOOP
             BEGIN
            DBMS_OUTPUT.PUT_LINE('INSIDE API_2 BEGIN 2');
            SELECT PRODUCT_ID,AVL_QUANTITY,LIST_PRICE
            INTO V_PROD_ID,V_AVL_QUANTITY,V_LIST_PRICE
            FROM CONVERSION_PRODUCTS
            WHERE PRODUCT_NAME=p_orderdetails(i).PRODUCT_NAME;
            DBMS_OUTPUT.PUT_LINE('PRODUCT QUANTITY is '||V_PROD_ID);
            DBMS_OUTPUT.PUT_LINE('AVAILABLE QUANTITY is '||V_AVL_QUANTITY);
            DBMS_OUTPUT.PUT_LINE('LIST PRICE is '||V_LIST_PRICE);
            SELECT CUSTOMER_ID,NVL(DISCOUNT,0)
            INTO V_CUST_ID,V_CUST_DISC
            FROM CONVERSION_CUSTOMERS
            WHERE CUSTOMER_NAME=p_orderdetails(i).CUSTOMER_NAME;
            DBMS_OUTPUT.PUT_LINE('CUSTOMER ID is '||V_CUST_ID);
            DBMS_OUTPUT.PUT_LINE('CUSTOMER DISCOUNT IS '||V_CUST_DISC);
            SELECT A.DISCOUNT,A.CERTIFICATION
            INTO  V_CERT_DISC,V_DISC_NAME
            FROM CONVERSION_CERTIFICATION A,CONVERSION_CUSTOMERS B
            WHERE A.CERTIFICATION=B.CERTIFICATION(+)
            AND B.CUSTOMER_NAME=p_orderdetails(i).CUSTOMER_NAME;
            DBMS_OUTPUT.PUT_LINE('CERTIFICATION DISCOUNT IS '||V_CERT_DISC);
            V_NET:=((V_LIST_PRICE)-(V_LIST_PRICE)*(V_CERT_DISC)/100);
            DBMS_OUTPUT.PUT_LINE('NET PRICE AFTER CERTIFICATION DISCOUNT IS '||V_NET);
            V_NET_PRICE:=((V_NET)-(V_NET)*(V_CUST_DISC)/100);
            DBMS_OUTPUT.PUT_LINE('NET PRICE AFTER COMPLETE DISCOUNT IS '||V_NET_PRICE);
            V_EXTN_PRICE:=(V_NET_PRICE)*(p_orderdetails(i).QUANTITY);
            DBMS_OUTPUT.PUT_LINE('EXTENDED PRICE IS '||V_EXTN_PRICE);
            V_TOTAL_DISC:=((V_CERT_DISC)/100+(V_CUST_DISC)/100);
            DBMS_OUTPUT.PUT_LINE('TOTAL DISCOUNT IS '|| V_TOTAL_DISC);
            V_TOTAL_DISC_AMT:=(V_LIST_PRICE)-(V_NET_PRICE);
            DBMS_OUTPUT.PUT_LINE('TOTAL DISCOUNT PRICE IS '|| V_TOTAL_DISC_AMT);
            SELECT MAX(A.LIMIT)
            INTO V_LIMIT
            FROM CONVERSION_CERTIFICATION A,CONVERSION_CUSTOMERS B
            WHERE A.CERTIFICATION=B.CERTIFICATION(+)
            AND B.CUSTOMER_NAME=p_orderdetails(i).CUSTOMER_NAME;
            IF p_orderdetails(i).QUANTITY<V_AVL_QUANTITY THEN
            INSERT INTO XXCTS_ORDER_DETAILS VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,V_CUST_ID,V_PROD_ID,p_orderdetails(i).QUANTITY,p_orderdetails(i).REQUESTED_SHIP_DATE,p_orderdetails(i).REQUESTED_PRICE,V_LIST_PRICE,V_TOTAL_DISC,V_NET_PRICE,V_EXTN_PRICE,'QTY HOLD','REQ QNTY LESS THAN AVL QTY',SYSDATE);
            INSERT INTO xxcts_order_discounts VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,SEQ_DISCOUNT_ID.NEXTVAL,V_DISC_NAME,V_TOTAL_DISC_AMT);
            END IF;
            IF p_orderdetails(i).REQUESTED_SHIP_DATE<SYSDATE THEN
            INSERT INTO XXCTS_ORDER_DETAILS VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,V_CUST_ID,V_PROD_ID,p_orderdetails(i).QUANTITY,p_orderdetails(i).REQUESTED_SHIP_DATE,p_orderdetails(i).REQUESTED_PRICE,V_LIST_PRICE,V_TOTAL_DISC,V_NET_PRICE,V_EXTN_PRICE,'DATE HOLD','SHIPDATE CANNOT BE LESS THAN CURR DATE',SYSDATE);
            INSERT INTO xxcts_order_discounts VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,SEQ_DISCOUNT_ID.NEXTVAL,V_DISC_NAME,V_TOTAL_DISC_AMT);
            END IF;
            IF V_NET_PRICE>p_orderdetails(i).REQUESTED_PRICE THEN
            INSERT INTO XXCTS_ORDER_DETAILS VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,V_CUST_ID,V_PROD_ID,p_orderdetails(i).QUANTITY,p_orderdetails(i).REQUESTED_SHIP_DATE,p_orderdetails(i).REQUESTED_PRICE,V_LIST_PRICE,V_TOTAL_DISC,V_NET_PRICE,V_EXTN_PRICE,'PRICE HOLD','NET PRICE CANNOT BE MORE THAN REQ PRICE',SYSDATE);
            INSERT INTO xxcts_order_discounts VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,SEQ_DISCOUNT_ID.NEXTVAL,V_DISC_NAME,V_TOTAL_DISC_AMT);
            END IF;
           /* IF V_LIMIT<p_orderdetails(i).REQUESTED_PRICE THEN
            INSERT INTO XXCTS_ORDER_DETAILS VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,V_CUST_ID,V_PROD_ID,p_orderdetails(i).QUANTITY,p_orderdetails(i).REQUESTED_SHIP_DATE,p_orderdetails(i).REQUESTED_PRICE,V_LIST_PRICE,V_TOTAL_DISC,V_NET_PRICE,V_EXTN_PRICE,'ORDER LIMIT HOLD','PRICE CANNOT EXCEED ORDER LIMIT',SYSDATE);
            INSERT INTO xxcts_order_discounts VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,SEQ_DISCOUNT_ID.NEXTVAL,V_DISC_NAME,V_TOTAL_DISC_AMT);
            END IF;*/
            EXCEPTION
            WHEN NO_DATA_FOUND THEN
            DBMS_OUTPUT.PUT_LINE(' INSIDE EXCEPTION BLOCK');
            END;
        END LOOP;
END;
end conv_api_pkg;
/the pl/sql block to invoke the the procedure :
declare
begin
PROC_CONVERSION_API('/usr/tmp' ,'Walmart_Orders_062908.dat');
end;please let me know what is wrong in the program.
Thanks
Anvesh

Hi Walter
Yes 'Inside begin 1' and 'Inside begin 2' were printed.Please find the the DBMS_OUTPUT statements that were printed.
Inside begin 1
Inside begin 1.1
Inside begin 2
Inside begin 2.1
the  buffer is BESTBUY                       SONY ERICSSON                           W580i               25   1-AUG-2008          50
the length of buffer is 118
Customer Name is BESTBUY
Manufacturer is SONY ERICSSON
Product Name is W580i
Quantity is 25
Requested Ship Date is 01-AUG-08
The requested price is  50
The quantity is 25
The Customer count is 1
The Product count is 0
PRODUCT SHOULD BE VALID
Inside begin 2
Inside begin 2.1
the  buffer is BESTBUY                       SAMSUNG                                 BLACKJACK           50   15-JUL-2008         150
the length of buffer is 119
Customer Name is BESTBUY
Manufacturer is SAMSUNG
Product Name is BLACKJACK
Quantity is 50
Requested Ship Date is 15-JUL-08
The requested price is  150
The quantity is 50
The Customer count is 1
The Product count is 1
Inside begin 2
Inside begin 2.1
the  buffer is BESTBUY                       APPLE                                   IPHONE 4GB          50   15-JUL-2008        
the length of buffer is 116
Customer Name is BESTBUY
Manufacturer is APPLE
Product Name is IPHONE 4GB
Quantity is 50
Requested Ship Date is 15-JUL-08
The requested price is  0
The quantity is 50
The Customer count is 1
The Product count is 1
Inside begin 2
Inside begin 2.1
the  buffer is BESTBUY                       ATT                                     TILT                100  15-JUN-2008        
the length of buffer is 116
Customer Name is BESTBUY
Manufacturer is ATT
Product Name is TILT
Quantity is 100
Requested Ship Date is 15-JUN-08
The requested price is  0
The quantity is 100
The Customer count is 1
The Product count is 1
Inside begin 2
Inside begin 2.1
the  buffer is BESTBUY                       NOKIA                                   N73                 50   15-JUL-2008         200
the length of buffer is 118
Customer Name is BESTBUY
Manufacturer is NOKIA
Product Name is N73
Quantity is 50
Requested Ship Date is 15-JUL-08
The requested price is  20
The quantity is 50
The Customer count is 1
The Product count is 0
PRODUCT SHOULD BE VALID
Inside begin 2In the first procedure I am trying to read the data from a flat file and store it in a table.Here is the sample data from the flat file.
BESTBUY                       SONY ERICSSON                           W580i               25   1-AUG-2008          50
BESTBUY                       SAMSUNG                                 BLACKJACK           50   15-JUL-2008         150
BESTBUY                       APPLE                                   IPHONE 4GB          50   15-JUL-2008        
BESTBUY                       ATT                                     TILT                100  15-JUN-2008        
BESTBUY                       NOKIA                                   N73                 50   15-JUL-2008         200When tried to execute the second procedure independently using the PL/SQL block,the tables in second procedure were populated and the DBMS_Output statements were also displayed.I have made use of the same query in that case
Thanks
Anvesh
Edited by: Anvesh Reddy on Dec 23, 2008 12:40 PM

Similar Messages

  • Calling a servlet from a Java Stored Procedure

    Hey,
    I'm trying to call a servlet from a Java Stored Procedure and I get an error.
    When I try to call the JSP-class from a main-method, everything works perfectly.
    Java Stored Procedure:
    public static void callServlet() {
    try {
    String servletURL = "http://127.0.0.1:7001/servletname";
    URL url = new URL(servletURL);
    HttpURLConnection conn = (HttpURLConnection)url.openConnection();
    conn.setDoOutput(true);
    conn.setRequestProperty("Pragma", "no-cache");
    conn.connect();
    ObjectInputStream ois = new ObjectInputStream(conn.getInputStream());
    Integer client = (Integer)ois.readObject();
    ois.close();
    System.out.println(client);
    conn.disconnect();
    } catch (Exception e) {
    e.printStackTrace();
    Servlet:
    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    Integer id = new Integer(10);
    OutputStream os = response.getOutputStream();
    ObjectOutputStream oos = new ObjectOutputStream(os);
    oos.writeObject(id);
    oos.flush();
    oos.close();
    response.setStatus(0);
    Grant:
    call dbms_java.grant_permission( 'JAVA_USER', 'SYS:java.net.SocketPermission','localhost', 'resolve');
    call dbms_java.grant_permission( 'JAVA_USER','SYS:java.net.SocketPermission', '127.0.0.1:7001', 'connect,resolve');
    Package:
    CREATE OR REPLACE PACKAGE pck_jsp AS
    PROCEDURE callServlet();
    END pck_jsp;
    CREATE OR REPLACE PACKAGE BODY pck_jsp AS
    PROCEDURE callServlet()
    AS LANGUAGE JAVA
    NAME 'JSP.callServlet()';
    END pck_jsp;
    Architecture:
    AS: BEA WebLogic 8.1.2
    DB: Oracle 9i DB 2.0.4
    Exception:
    java.io.StreamCorruptedException: InputStream does not contain a serialized object
    at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java)
    at java.io.ObjectInputStream.<init>(ObjectInputStream.java)
    The Servlet and the class work together perfectly, only when I make the call from
    within the database things go wrong.
    Can anybody help me.
    Thank in advance,
    Bart Laeremans
    ... Desperately seeking knowledge ...

    Look at HttpCallout.java in the following code sample
    http://www.oracle.com/technology/sample_code/tech/java/jsp/samples/jwcache/Readme.html
    Kuassi

  • Calling a URL from a Java Stored Procedure

    Hi,
    I'm trying to call a URL from a Java Stored Procedure in Oracle 8.1.7(Windows 2000). The ultimate goal is to call this stored procedure from a database trigger. The status of the object remains invalid in the database even after compilation and publishing without any errors. The code follows. Any suggestions/alternatives to accomplish this would be appreciated.
    Java Stored Procedure:
    CREATE OR REPLACE JAVA SOURCE NAMED "UPDATEATTR" AS
    import java.net.*;
    import java.util.*;
    import java.io.*;
    public class UpdateAttr {
    public static String testmain() {
    ObjectInputStream is;
    URL url;
    String uri =
    "http://www.yahoo.com";
    try {
    //calling the URL
    url = new URL(uri);
    URLConnection yahooConnection = yahoo.openConnection();
    } catch (Exception e) {
         e.printStackTrace(System.err);
    return "TEST_SUCCESSFUL";
    Code to Publish it:
    CREATE OR REPLACE FUNCTION setNewAttributes return VARCHAR2
    AS LANGUAGE JAVA NAME
    'UpdateAttr.testmain() return String';
    Thanks in advance.
    Ris

    Small mistake in the previous post. The object still has a status of "INVALID" though. The Java stored procedure should actually read:
    Java Stored Procedure:
    CREATE OR REPLACE JAVA SOURCE NAMED "UPDATEATTR" AS
    import java.net.*;
    import java.util.*;
    import java.io.*;
    public class UpdateAttr {
    public static String testmain() {
    ObjectInputStream is;
    URL url;
    String uri =
    "http://www.yahoo.com";
    try {
    //calling the URL
    URL yahoo = new URL(uri);
    URLConnection yahooConnection = yahoo.openConnection();
    } catch (Exception e) {
    e.printStackTrace(System.err);
    return "TEST_SUCCESSFUL";
    Code to Publish it:
    CREATE OR REPLACE FUNCTION setNewAttributes return
    VARCHAR2
    AS LANGUAGE JAVA NAME
    'UpdateAttr.testmain() return String';
    /

  • How to get the store procedure name inside this store procedure?

    how to get the store procedure name inside this store procedure?

    Why cant you get the procedure name as hard code as the proc name is going to change.
    Are you looking for getting the parent proc name from child proc name which is getting executed within parent proc?
    Try the below:
    --Parent Proc
    Alter Proc sp_test
    as
    Begin
    Declare @s varbinary(MAX) = Cast('sp_test' as Varbinary(MAX));
    SET CONTEXT_INFO @s;
    exec sp_test2
    End
    --Child proc
    Alter proc sp_test2
    as
    SELECT Cast(CONTEXT_INFO() as varchar(100));
    --Test execution
    Exec sp_test
    Please mark this reply as answer if it solved your issue or vote as helpful if it helped.
     [Blog]

  • Call stored proc from inside sp

    I am trying to call a stored proc from inside a stored proc and the stored proc needs to return a ref_cursor. I am trying to loop over the returned ref_cursor, but my problem is that when I compile the sp it says the ref_cursor is not a procedure or is undefined. Can anyone please tell me why I am getting this error? Refer to the code below!
    create or replace
    PROCEDURE TCS_GetPartReferenceData
    contracts IN VARCHAR2
    , showInWork IN INTEGER
    , userClock IN VARCHAR2
    , intMaxResults IN INTEGER
    , ret_cursor OUT SYS_REFCURSOR
    ) AS
    p_cursor SYS_REFCURSOR;
    BEGIN
    TCS_GETDRNSFORCONTRACTS(contracts
    , showinwork
    , userClock
    , intmaxresults
    , p_cursor);
    for r in p_cursor loop
    dbms_output.put_line(r.puid);
    end loop;
    END TCS_GetPartReferenceData;

    Probably you want sth. like
    CREATE OR REPLACE PROCEDURE tcs_getpartreferencedata (contracts       IN     VARCHAR2,
                                        showinwork      IN     INTEGER,
                                        userclock       IN     VARCHAR2,
                                        intmaxresults   IN     INTEGER,
                                        ret_cursor         OUT sys_refcursor)
    AS
    BEGIN
       tcs_getdrnsforcontracts (contracts,
                                showinwork,
                                userclock,
                                intmaxresults,
                                ret_cursor);
    END tcs_getpartreferencedata;
    var cur refcursor
    exec tcs_getpartreferencedata(contracts_value,showinwork_value,userclock_value,intmaxresults_value, :cur)
    print curfill in appropriate values for the parameters _value ....                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Calling C# dll from inside of JavaScript

    I have a LabView application that uses javascript to call into some database stored procedures. I was wondering if there is a way of calling a .Net dll from inside of the Javascript without having to register the dll as a COM server. Are there any examples out there that I can take a look at?

    That certainly seems like a roundabout way of doing things. Why do you need to use Javascript? Is this related to this question? If found this and this via Google.

  • How to call shell script from a pl/sql procedure

    Hi all,
    I am little bit new to plsql programming, i have a small problem as follows
    I have to call a shell script from a pl/sql procedure ..
    Please suggest me some methods in oracle 10g, which i could make use of to achieve my goal. also please tell me what are the constraints for those methods if any.
    I already came across dbms_scheduler, but i have got a problem and its nor executing properly its exiting giving 255 error or saying that permission problem, but i have already given full access to my shell scripts.
    Thanks in advance
    Best Regards
    Satya

    Hi,
    Read this thread, perhaps is there your response :
    Host...
    Nicolas.

  • Unable to call the RFC from the WD java Program

    Hi All,
    I have a table and three buttons Create, Edit, Save in the layout.
    If no record available in the R3 the the end user will click on create and then he will click on save so that the insert RFC will be called accordingly and the record will be inserted.My table is limited to 5 records only. If  i enter all the 5 records and Click on submit the record is inserting in the backend , but if i enter less than 5 records im unable to call the RFC what might be the issue. 
    My insert RFC takes one Table node and 4 import parameters i'm passing all of the all the mentioned import parameters.
    Code:-
    View Controller code
    // This file has been generated partially by the Web Dynpro Code Generator.
    // MODIFY CODE ONLY IN SECTIONS ENCLOSED BY @@begin AND @@end.
    // ALL OTHER CHANGES WILL BE LOST IF THE FILE IS REGENERATED.
    package com.gmr.ess;
    // IMPORTANT NOTE:
    // ALL IMPORT STATEMENTS MUST BE PLACED IN THE FOLLOWING SECTION ENCLOSED
    // BY @@begin imports AND @@end. FURTHERMORE, THIS SECTION MUST ALWAYS CONTAIN
    // AT LEAST ONE IMPORT STATEMENT (E.G. THAT FOR IPrivateAPPView).
    // OTHERWISE, USING THE ECLIPSE FUNCTION "Organize Imports" FOLLOWED BY
    // A WEB DYNPRO CODE GENERATION (E.G. PROJECT BUILD) WILL RESULT IN THE LOSS
    // OF IMPORT STATEMENTS.
    //@@begin imports
    import java.math.BigDecimal;
    import java.util.Date;
    import java.text.DateFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Calendar;
    import java.util.Collection;
    import java.util.Iterator;
    import com.gmr.ess.wdp.IPrivateAPPView;
    import com.gmr.pck.Zst_Hr_Nominee;
    import com.sap.tc.webdynpro.progmodel.api.IWDMessageManager;
    import com.sap.tc.webdynpro.services.sal.um.api.IWDClientUser;
    import com.sap.tc.webdynpro.services.sal.um.api.WDClientUser;
    //@@end
    //@@begin documentation
    //@@end
    public class APPView
    Logging location.
      private static final com.sap.tc.logging.Location logger =
        com.sap.tc.logging.Location.getLocation(APPView.class);
      static
        //@@begin id
        String id = "$Id$";
        //@@end
        com.sap.tc.logging.Location.getLocation("ID.com.sap.tc.webdynpro").infoT(id);
    Private access to the generated Web Dynpro counterpart
    for this controller class.  </p>
    Use <code>wdThis</code> to gain typed access to the context,
    to trigger navigation via outbound plugs, to get and enable/disable
    actions, fire declared events, and access used controllers and/or
    component usages.
    @see com.gmr.ess.wdp.IPrivateAPPView for more details
      private final IPrivateAPPView wdThis;
    Root node of this controller's context. </p>
    Provides typed access not only to the elements of the root node
    but also to all nodes in the context (methods node<i>XYZ</i>())
    and their currently selected element (methods current<i>XYZ</i>Element()).
    It also facilitates the creation of new elements for all nodes
    (methods create<i>XYZ</i>Element()). </p>
    @see com.gmr.ess.wdp.IPrivateAPPView.IContextNode for more details.
      private final IPrivateAPPView.IContextNode wdContext;
    A shortcut for <code>wdThis.wdGetAPI()</code>. </p>
    Represents the generic API of the generic Web Dynpro counterpart
    for this controller. </p>
      private final com.sap.tc.webdynpro.progmodel.api.IWDViewController wdControllerAPI;
    A shortcut for <code>wdThis.wdGetAPI().getComponent()</code>. </p>
    Represents the generic API of the Web Dynpro component this controller
    belongs to. Can be used to access the message manager, the window manager,
    to add/remove event handlers and so on. </p>
      private final com.sap.tc.webdynpro.progmodel.api.IWDComponent wdComponentAPI;
      public APPView(IPrivateAPPView wdThis)
        this.wdThis = wdThis;
        this.wdContext = wdThis.wdGetContext();
        this.wdControllerAPI = wdThis.wdGetAPI();
        this.wdComponentAPI = wdThis.wdGetAPI().getComponent();
      //@@begin javadoc:wdDoInit()
      /** Hook method called to initialize controller. */
      //@@end
      public void wdDoInit()
        //@@begin wdDoInit()
        try{
              IWDMessageManager manager1 = wdComponentAPI.getMessageManager();
              IWDClientUser user = WDClientUser.getLoggedInClientUser();
              String logUser= user.getSAPUser().getUniqueName();
              wdContext.currentContextElement().setUserid(logUser);
              wdThis.wdGetAPPController().executeBapi_Employee_Getdata_Input();//Returns the user id for the employee
              Collection nomineeList = new ArrayList();
              wdThis.wdGetAPPController(). executeZ_Hrfm_Nominee_Disp_Input( );          
              int nomineeTableSize = wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().size();
              for(int i=0;i< nomineeTableSize;i++){          
                IPrivateAPPView.IDisplay_table_nodeElement ele = wdContext.nodeDisplay_table_node().createDisplay_table_nodeElement();
                ele.setAddr(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getAddr());
                ele.setDob(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getDob());
                ele.setGuard(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getGuard());
                ele.setName(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getName());
                ele.setPerc(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getPerc());
                ele.setRelat(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getRelat());
                nomineeList.add(ele);
              wdContext.nodeDisplay_table_node().bind(nomineeList);
              wdContext.currentContextElement().setEdit_val_attr(true);
              if(nomineeTableSize<=0){
                   wdContext.currentContextElement().setCreateButtonEnable(true);
                   wdContext.currentContextElement().setEditButtonEnable(false);
              else{
                   wdContext.currentContextElement().setCreateButtonEnable(false);
                   wdContext.currentContextElement().setEditButtonEnable(true);
        catch(Exception e){
              wdComponentAPI.getMessageManager().reportException("",true);
        //@@end
      //@@begin javadoc:wdDoExit()
      /** Hook method called to clean up controller. */
      //@@end
      public void wdDoExit()
        //@@begin wdDoExit()
        //@@end
      //@@begin javadoc:wdDoModifyView
    Hook method called to modify a view just before rendering.
    This method conceptually belongs to the view itself, not to the
    controller (cf. MVC pattern).
    It is made static to discourage a way of programming that
    routinely stores references to UI elements in instance fields
    for access by the view controller's event handlers, and so on.
    The Web Dynpro programming model recommends that UI elements can
    only be accessed by code executed within the call to this hook method.
    @param wdThis Generated private interface of the view's controller, as
           provided by Web Dynpro. Provides access to the view controller's
           outgoing controller usages, etc.
    @param wdContext Generated interface of the view's context, as provided
           by Web Dynpro. Provides access to the view's data.
    @param view The view's generic API, as provided by Web Dynpro.
           Provides access to UI elements.
    @param firstTime Indicates whether the hook is called for the first time
           during the lifetime of the view.
      //@@end
      public static void wdDoModifyView(IPrivateAPPView wdThis, IPrivateAPPView.IContextNode wdContext, com.sap.tc.webdynpro.progmodel.api.IWDView view, boolean firstTime)
        //@@begin wdDoModifyView
        //@@end
      //@@begin javadoc:onActionGetData(ServerEvent)
      /** Declared validating event handler. */
      //@@end
      public void onActionGetData(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
        //@@begin onActionGetData(ServerEvent)
        //$$begin ActionButton(-535519310)
        //wdThis.wdGetAPPController().executeZ_Hrfm_Nominee_Disp_Input();
        //$$end
        //@@end
      //@@begin javadoc:onActionEdit(ServerEvent)
      /** Declared validating event handler. */
      //@@end
      public void onActionEdit(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
        //@@begin onActionEdit(ServerEvent)
       //$$begin ActionButton(-535519310)
       displayTablesize=wdContext.nodeDisplay_table_node().size(); 
       if(displayTablesize<5){
         for(int i=0;i<size-displayTablesize;i++){           
              IPrivateAPPView.IDisplay_table_nodeElement ele = wdContext.nodeDisplay_table_node().createDisplay_table_nodeElement();
              wdContext. nodeDisplay_table_node().addElement(ele);               
       operation="MOD"; 
       wdContext.currentContextElement().setTableReadOnly(true);
       wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setOperation(operation);                                 
        //$$end
        //@@end
      //@@begin javadoc:onActionCreate(ServerEvent)
      /** Declared validating event handler. */
      //@@end
      public void onActionCreate(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
        //@@begin onActionCreate(ServerEvent)
         int month=0,year=0,day=0;
         String month1,day1,year1;   
         try{
              displayTablesize=wdContext.nodeDisplay_table_node().size();
              wdContext.currentContextElement().setEdit_val_attr(false);
              if(wdContext.nodeDisplay_table_node().isEmpty()){                    
                   if(displayTablesize<5){
                        Calendar cal=Calendar.getInstance();
                        month=cal.get(Calendar.MONTH)+1;
                        if(month==1||month==2||month==3||month==4||month==5||month==6||month==7||month==8||month==9){
                             month1="0"+month;
                        else{
                             month1=""+month;                                   
                        day = cal.get(Calendar.DAY_OF_MONTH);
                             if(day==1||day==2||day==3||day==4||day==5||day==6||day==7||day==8||day==9){
                             day1=  "0"+day;
                        else{
                             day1=""+day;
                        year = cal.get(Calendar.YEAR);
                        year1=""+year;
                        String strFormat=day1"."month1"."year1;                    
                        wdContext.currentOutput_NomineeElement().setBegda(strFormat);
                        wdContext.currentOutput_NomineeElement().setEndda("31.12.9999");                         
                        for(int i=0;i<size-displayTablesize;i++){           
                             IPrivateAPPView.IDisplay_table_nodeElement ele = wdContext.nodeDisplay_table_node().createDisplay_table_nodeElement();
                             wdContext. nodeDisplay_table_node().addElement(ele);               
                   operation="INS";
                   wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setOperation(operation);                    
              wdContext.currentContextElement().setTableReadOnly(true);          
         catch(NullPointerException npe){
              wdComponentAPI.getMessageManager().reportException("No Data Available",true);
        //@@end
      //@@begin javadoc:onActionSaveData(ServerEvent)
      /** Declared validating event handler. */
      //@@end
      public void onActionSaveData(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
        //@@begin onActionSaveData(ServerEvent)
         float percentage=0;
         float dupePercentage=0;
         boolean isTest = false;
         Collection DispTList =      new ArrayList();
         IWDMessageManager manager1 = wdComponentAPI.getMessageManager();
         try{
              displayTablesize = wdContext.nodeDisplay_table_node().size();
              //for(int     i=1;i<=displayTablesize;i++){
              for(int     i=0;i<displayTablesize;i++){
                   BigDecimal share = wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getPerc();
                   String name =  wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getName();
                   percentage = share.floatValue();
                   dupePercentage = dupePercentage + percentage;
                   if(name!=null && share!=null){                    
                        Zst_Hr_Nominee nominee = new Zst_Hr_Nominee();
                        nominee.setAddr(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getAddr());
                       manager1.reportSuccess(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getAddr());               
                        nominee.setDob(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getDob());     
                        manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getDob());               
                        nominee.setGuard(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getGuard());     
                       manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getGuard());               
                        nominee.setName(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getName());
                       manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getName());                    
                        nominee.setPerc(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getPerc());
                       manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getPerc());
                        nominee.setRelat(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getRelat());     
                       manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getRelat());               
                        DispTList.add(nominee);     
                   wdContext.nodeZ_Hrfm_Nominee_Ins_Mod_Input().nodeNominee_ins().bind(DispTList);
              if((dupePercentage)!=100)
              wdComponentAPI.getMessageManager().reportException(
                        "The sum of the share Percentages is not 100. Modify the percentages accordingly",true);
              wdContext.nodeZ_Hrfm_Nominee_Ins_Mod_Input().nodeNominee_ins().bind(DispTList);
              IWDMessageManager manager = wdComponentAPI.getMessageManager();
              String beginDate = wdContext.currentOutput_NomineeElement().getBegda();
              manager.reportSuccess(wdContext.currentOutput_NomineeElement().getBegda());
              String endDate=wdContext.currentOutput_NomineeElement().getEndda();
              manager.reportSuccess(wdContext.currentOutput_NomineeElement().getEndda());
              wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setBegda(beginDate);
              wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setEndda(endDate);          
              wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setOperation(operation);
              wdComponentAPI.getMessageManager().reportSuccess(operation);     
              wdThis.wdGetAPPController().executeBapi_Employee_Getdata_Input();
              wdThis.wdGetAPPController().executeZ_Hrfm_Nominee_Ins_Mod_Input();           
              //wdContext.currentContextElement().setTableReadOnly(false);
         catch(Exception e){
              e.getMessage();
        //@@end
    The following code section can be used for any Java code that is
    not to be visible to other controllers/views or that contains constructs
    currently not supported directly by Web Dynpro (such as inner classes or
    member variables etc.). </p>
    Note: The content of this section is in no way managed/controlled
    by the Web Dynpro Designtime or the Web Dynpro Runtime.
      //@@begin others
      int nomineeTableSize = 0;
      int displayTablesize = 0;
      String operation= null;
      int size=5;
    // float dupePercentage=0;
      //String mod_op="MOD";
      //@@end
    content of obsolete user coding area(s) -
    //@@begin obsolete:javadoc:onActionSave(ServerEvent)
    //  /** Declared validating even
    Component controller code
    // This file has been generated partially by the Web Dynpro Code Generator.
    // MODIFY CODE ONLY IN SECTIONS ENCLOSED BY @@begin AND @@end.
    // ALL OTHER CHANGES WILL BE LOST IF THE FILE IS REGENERATED.
    package com.gmr.ess;
    // IMPORTANT NOTE:
    // ALL IMPORT STATEMENTS MUST BE PLACED IN THE FOLLOWING SECTION ENCLOSED
    // BY @@begin imports AND @@end. FURTHERMORE, THIS SECTION MUST ALWAYS CONTAIN
    // AT LEAST ONE IMPORT STATEMENT (E.G. THAT FOR IPrivateAPP).
    // OTHERWISE, USING THE ECLIPSE FUNCTION "Organize Imports" FOLLOWED BY
    // A WEB DYNPRO CODE GENERATION (E.G. PROJECT BUILD) WILL RESULT IN THE LOSS
    // OF IMPORT STATEMENTS.
    //@@begin imports
    import java.util.Iterator;
    import com.gmr.ess.wdp.IPrivateAPP;
    import com.gmr.pck.Bapi_Employee_Getdata_Input;
    import com.gmr.pck.Bapip0002B;
    import com.gmr.pck.Z_Hrfm_Nominee_Disp_Input;
    import com.gmr.pck.Z_Hrfm_Nominee_Ins_Mod_Input;
    import com.gmr.pck.Zst_Hr_Nominee;
    import com.sap.lcr.api.util.SetProfileConnect;
    import com.sap.tc.webdynpro.modelimpl.dynamicrfc.WDDynamicRFCExecuteException;
    import com.sap.tc.webdynpro.progmodel.api.IWDMessageManager;
    //@@end
    //@@begin documentation
    //@@end
    public class APP
    Logging location.
      private static final com.sap.tc.logging.Location logger =
        com.sap.tc.logging.Location.getLocation(APP.class);
      static
        //@@begin id
        String id = "$Id$";
        //@@end
        com.sap.tc.logging.Location.getLocation("ID.com.sap.tc.webdynpro").infoT(id);
    Private access to the generated Web Dynpro counterpart
    for this controller class.  </p>
    Use <code>wdThis</code> to gain typed access to the context,
    to trigger navigation via outbound plugs, to get and enable/disable
    actions, fire declared events, and access used controllers and/or
    component usages.
    @see com.gmr.ess.wdp.IPrivateAPP for more details
      private final IPrivateAPP wdThis;
    Root node of this controller's context. </p>
    Provides typed access not only to the elements of the root node
    but also to all nodes in the context (methods node<i>XYZ</i>())
    and their currently selected element (methods current<i>XYZ</i>Element()).
    It also facilitates the creation of new elements for all nodes
    (methods create<i>XYZ</i>Element()). </p>
    @see com.gmr.ess.wdp.IPrivateAPP.IContextNode for more details.
      private final IPrivateAPP.IContextNode wdContext;
    A shortcut for <code>wdThis.wdGetAPI()</code>. </p>
    Represents the generic API of the generic Web Dynpro counterpart
    for this controller. </p>
      private final com.sap.tc.webdynpro.progmodel.api.IWDComponent wdControllerAPI;
    A shortcut for <code>wdThis.wdGetAPI().getComponent()</code>. </p>
    Represents the generic API of the Web Dynpro component this controller
    belongs to. Can be used to access the message manager, the window manager,
    to add/remove event handlers and so on. </p>
      private final com.sap.tc.webdynpro.progmodel.api.IWDComponent wdComponentAPI;
      public APP(IPrivateAPP wdThis)
        this.wdThis = wdThis;
        this.wdContext = wdThis.wdGetContext();
        this.wdControllerAPI = wdThis.wdGetAPI();
        this.wdComponentAPI = wdThis.wdGetAPI().getComponent();
      //@@begin javadoc:wdDoInit()
      /** Hook method called to initialize controller. */
      //@@end
      public void wdDoInit()
        //@@begin wdDoInit()
        //$$begin Service Controller(1490375209)
    //    wdContext.nodeZ_Hrfm_Nominee_Ins_Mod_Input().bind(new Z_Hrfm_Nominee_Ins_Mod_Input());
         Z_Hrfm_Nominee_Ins_Mod_Input input = new Z_Hrfm_Nominee_Ins_Mod_Input();
         input.addNominee(new Zst_Hr_Nominee());
         wdContext.nodeZ_Hrfm_Nominee_Ins_Mod_Input().bind(input);
        //$$end
        //$$begin Service Controller(-932523997)
        wdContext.nodeZ_Hrfm_Nominee_Disp_Input().bind(new Z_Hrfm_Nominee_Disp_Input());
        //$$end
        //$$begin Service Controller(-368783613)
        wdContext.nodeBapi_Employee_Getdata_Input().bind(new Bapi_Employee_Getdata_Input());
        //$$end
        //@@end
      //@@begin javadoc:wdDoExit()
      /** Hook method called to clean up controller. */
      //@@end
      public void wdDoExit()
        //@@begin wdDoExit()
        //@@end
      //@@begin javadoc:wdDoPostProcessing()
    Hook called to handle data retrieval errors before rendering.
    After doModifyView(), the Web Dynpro Framework gets all context data needed
    for rendering by validating the contexts (which in turn calls the supply
    functions and supplying relation roles). In this hook, the application
    should handle the errors which occurred during validation of the contexts.
    Using preorder depth-first traversal, this hook is called for all component
    controllers starting with the current root component.
    Permitted operations:
    - Flushing model queue
    - Creating messages
    - Reading context and model data
    Forbidden operations:
    - Invalidating model data
    - Manipulating the context
    - Firing outbound plugs
    - Creating components
    @param isCurrentRoot true if this is the root of the current request
      //@@end
      public void wdDoPostProcessing(boolean isCurrentRoot)
        //@@begin wdDoPostProcessing()
        //@@end
      //@@begin javadoc:wdDoBeforeNavigation()
    Hook before the navigation phase starts.
    This hook allows you to flush the model queue and handle any
    errors that occur. Firing outbound plugs is allowed in this hook.
    Using preorder depth-first traversal, this hook is called for all component
    controllers starting with the current root component.
    @param isCurrentRoot true if this is the root of the current request
      //@@end
      public void wdDoBeforeNavigation(boolean isCurrentRoot)
        //@@begin wdDoBeforeNavigation()
        //@@end
      //@@begin javadoc:wdDoApplicationStateChange()
    Hook that informs the application about a state change.
    <p>
    This hook is called e.g. to tell the application that will be
    <ul>
    <li>left via a suspend plug and therefore should go into a suspend/sleep
         mode with minimal need of resources. errors that occur. Firing
         outbound plugs is allowed in this hook.
    <li>left due to a timeout and could write it's state to a data base if the
         user comes back later on
    </ul>
    The concrete reason is available via IWDApplicationStateChangeInfo
    <p>
    <b>Important</b>: This hook is called for the top level component only!
    @param stateChangeInfo contains the information about the nature of the state change
    @param stateChangeReturn allows the application to ask for a different state change.
           The framework is allowed to ignore it considering i.e. the current resources situation.
      //@@end
      public void wdDoApplicationStateChange(com.sap.tc.webdynpro.progmodel.api.IWDApplicationStateChangeInfo stateChangeInfo, com.sap.tc.webdynpro.progmodel.api.IWDApplicationStateChangeReturn stateChangeReturn)
        //@@begin wdDoApplicationStateChange()
        //@@end
      //@@begin javadoc:executeBapi_Employee_Getdata_Input()
      /** Declared method. */
      //@@end
      public void executeBapi_Employee_Getdata_Input( )
        //@@begin executeBapi_Employee_Getdata_Input()
        //$$begin Service Controller(1705750894)
        IWDMessageManager manager = wdComponentAPI.getMessageManager();
         Iterator itrGetData = null;
                             Bapip0002B out = null;
        try
          wdContext.currentBapi_Employee_Getdata_InputElement().modelObject().execute();
          wdContext.nodeOutput().invalidate();
           itrGetData = wdContext.currentOutputElement().modelObject().getPersonal_Data().iterator();
           while (itrGetData.hasNext()) {
               out = (Bapip0002B) itrGetData.next();
          empNo = out.getPerno();
          wdContext.currentZ_Hrfm_Nominee_Disp_InputElement().setPernr(empNo);
         wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setPernr(empNo);
    //      manager.reportSuccess(empNo);
         //wdThis.executeZ_Hrfm_Nominee_Disp_Input();
        catch(WDDynamicRFCExecuteException e)
          manager.reportException(e.getMessage(), false);
        //$$end
        //@@end
      //@@begin javadoc:executeZ_Hrfm_Nominee_Disp_Input()
      /** Declared method. */
      //@@end
      public void executeZ_Hrfm_Nominee_Disp_Input( )
        //@@begin executeZ_Hrfm_Nominee_Disp_Input()
        //$$begin Service Controller(-366407911)
        IWDMessageManager manager = wdComponentAPI.getMessageManager();
        try
          wdContext.currentZ_Hrfm_Nominee_Disp_InputElement().modelObject().execute();
          wdContext.nodeOutput_Nominee().invalidate();
        catch(WDDynamicRFCExecuteException e)
          manager.reportException(e.getMessage(), false);
        //$$end
        //@@end
      //@@begin javadoc:executeZ_Hrfm_Nominee_Ins_Mod_Input()
      /** Declared method. */
      //@@end
      public void executeZ_Hrfm_Nominee_Ins_Mod_Input( )
        //@@begin executeZ_Hrfm_Nominee_Ins_Mod_Input()
        //$$begin Service Controller(1524028406)
        IWDMessageManager manager = wdComponentAPI.getMessageManager();
        try
          wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().modelObject().execute();
          wdContext.nodeOutput_nominee_ins_mod().invalidate();
        catch(WDDynamicRFCExecuteException e)
          manager.reportException(e.getMessage(), false);
        //$$end
        //@@end
    The following code section can be used for any Java code that is
    not to be visible to other controllers/views or that contains constructs
    currently not supported directly by Web Dynpro (such as inner classes or
    member variables etc.). </p>
    Note: The content of this section is in no way managed/controlled
    by the Web Dynpro Designtime or the Web Dynpro Runtime.
      //@@begin others
      String empNo = null;
      //@@end
    Suman
    Edited by: sumankumar kurimilla on Dec 23, 2008 9:26 AM

    Hi,
    I have checked from RFC side that is working fine only java app its not working can you tell any thing needs to be changed from my application end.
    Please check in Savedata action.
    Regards,
    Suman
    Edited by: sumankumar kurimilla on Dec 23, 2008 11:01 AM

  • Calling a variable from inside a movieclip AS3 in Flash CS4

    I am trying to trace a variable string from inside a movieclip which is inside another movieclip on the main timeline using:
    trace(VariableString);
    and also
    trace(stage.VariableString);
    Neither work
    The variable is an input textfield and traces fine when it is on the main timeline but will not work from inside the movieclip. I am using Actionscript 3 in Flash CS4.
    I appreciate this has probably been discussed previously on this forum but I cannot find a difinitve answer that seems to work.
    Thanks

    Thanks for the reply. However this did not seem to work.
    I think I had better explain a little better.
    On Keyfrme1 I have a MovieClip1 containing a text input component. I have created a variable on keyframe 1 using:
    var VariableString1:String = new String();
    When clicking on a seperate button this happens:
    VariableString1 = MovieClip1.text;
    I can trace this correctly on the main timeline using:
    trace(VariableString1);
    However, if I try to trace this from  another keyframe inside a movieclip2 which is inside another movieclip3 using:
    trace(MovieClip1(root).VariableString1);
    I just get the error 1180 call to a possibly undefined method MovieClip1
    Sorry if this is not very clear but I am getting very confused with this.
    Thanks again

  • How can I call Adobe Reader from inside my Application and prevent operator to access Open/save opt

    Can Anyone help to find a way?
    http://answers.acrobatusers.com/How-call-Adobe-Reader-inside-application-avoid-operator-op en-save-doc-q13487.aspx
    From inside my application that run on an Automation PC, under Windows O.S, I want to call Adobe Reader using a shell command to open up an PDF Document containing some informations.
    Shell command like these
    "C:\Program Files\Adobe\Reader 10.0\Reader\AcroRd32.exe" /A "<options>" "C:\mydoc.pdf"
    or
    cmd  /c "C:\mydoc.pdf"
    Operator is using a touchscreen.
    I want to prevent user to access any option that can give him acces to filesystem (Open/save/save as).
    I want also to prevent any change/add information to PDF document
    Thank you in advance for the time you will spend for me.

    You can use the Installation Tuner for Reader to customize the UI elements provided to the user.  Details on the Adobe web site.

  • Calling command prompt from inside a servelt?

    Hello all, I have an issue with calling the command prompt cmd.exe from inside a servlet to perform a .rtf to .pdf conversion for me. I believe the problem might be more Windows permissions oriented but I will see what you think? (I am at a loss on this one) I am using the standard call of -
    Process proc = Runtime.getRuntime().exec("cmd.exe /c C:\\BatchPDF.exe "+rtfFile.getAbsolutePath()+" "+pdfFile.getAbsolutePath());
    - Just calling a .rtf file and converting it to .pdf no biggie. But! oh there is always a but!
    If I start tomcat locally using the startup.bat in the tomcat /bin dir, I have no problems with my servlet launching cmd.exe and converting the files.
    However,
    If I start tomcat as a system service from the services control pannel, My servlet just hangs and will not launch cmd.exe? Tomcat is set to start as the servers Admin account when started as a service, should this not let it open the command prompt? Also, cmd.exe has full permissions to everyone! Is it possible that it might be a Catalina Policey that is preventing this? Again, I am lost and hope someone might have had this problem and fixed it before!
    Thank You in Advance,
    Lance

    It might be because of when starting as a service it
    has no "console" (just a guess). But anyway, you don't
    need the "cmd.exe /c" part - just run the .exe(meaning, the *PDF.exe)                                                                                                                                                                                                                                                                                                                                                                                   

  • Unable to call a form from drill-down report

    hello
    i have a drill-down report, from where i wanna to call a transacation level form, so that user can modify the data from that transaction level form after seeing the result from report. After modification in data through form, report should be refreshed automatically.
    i am using form6i, can't user dde.app_begin because it starts a new session

    Hi,
    if this is for Forms on the web, just call the Reports from web.show_document() when closing the Forms (assuming you close the Forms after the update).
    If it is on client/server then you don't have a hook into Reports except you run a new Reports from Forms and close the Reports that called the Forms application (needs to be done within this Report)
    Frank

  • Unable to call a form from report

    hello
    i have a drill-down report, from where i wanna to call a transacation level form, so that user can modify the data from that transaction level form after seeing the result from report. After modification in data through form, report should be refreshed automatically.

    Hi,
    if this is for Forms on the web, just call the Reports from web.show_document() when closing the Forms (assuming you close the Forms after the update).
    If it is on client/server then you don't have a hook into Reports except you run a new Reports from Forms and close the Reports that called the Forms application (needs to be done within this Report)
    Frank

  • Call a function module inside of another function module

    Has anyone ever called a function module inside of a remote enabled function module?  Maybe this needs to be accomplished inside of an include.  Just wondering.
    Thanks!

    Hi
    No u can't do it because the RE_LAST_DAY_OF_MONTH  is not remote function module.
    If you need to call it u should insert it in a RFC, so u should create in R/3 a new RFC calling both fms: RE_LAST_DAY_OF_MONTH and the remote one.
    And so call this new rfc instead of the other one.
    Max

  • Unable to call a report from form.

    Hi i've facing a problem like calling a report(rdf 10g developer) from a form(fmb 10g developer) in 11g database (LINUX)
    show FRM-41214: Unable to run report.
    But in 10g Database it's running nicely.
    If u have a solution plz provide me.
    It's urgent.

    Hello,
    FRM-41214 means that the Reports Execution request has been received by the Reports Server but an error occured during its execution
    To get some details about the error, use the URL :
    http://<server>:<port>/reports/rwservlet/showjobs?server=<reports server name>
    If in the column "Job Status" there is a red cross in a white circle, click on this icon to get details about the error
    Regards

Maybe you are looking for

  • BI Publisher report deleted while running the report

    Hi, I am facing a strange problem. When i complete creating report and click on view to see the result, the data model from report is automatically deleted and hence parameters, LOVs everything. the only that remains is report name!!! i have already

  • WEB APPLICATION DESIGNER - ERROR

    Hello We're getting an error when we try to save an item in BEx Web Application Designer: RSBOLAP 018 Java system error: An Unknown Error Occured During Portal Communication RSBOLAP 018 Java system error: Excepction in method processFunction Has anyo

  • My Bluetooth radio isn't in Device Manager in Windows 7 64 anymore.

    My Bluetooth radio isn't even in Device Manager in Windows 7 64 bit after being there and working before.  I also have updated to the most recent Boot Camp drivers, but to avail to get Bluetooth working in Windows 7 anymore.

  • How to install xmonad with gnome?

    oh, god! don't told me to look the official xmonad page, I follow the page but can't get it done. so I'd love to see what your guys recipe

  • Need to download Adobe Creative Suite 6 Design

    I have the Adobe Creative Suite 6 Design & Web Premium but recently purchased an iMac desktop with no disc drive. Can i do it on the Adobe web site?