Error in procedure compilation

Dear All,
When I compile the following java proc it raises error.
CREATE OR REPLACE AND RESOLVE JAVA SOURCE NAMED "client/Hello" AS
package client;
import javax.xml.ws.WebServiceRef;
//import java.net.*;
//import java.util.*;
//import javax.xml.*;
public class Hello {
public static void main(String[] args) {
Hello h = new Hello();
System.out.println(h.world());
public static String world()
return "Hello world";
Error:
JAVA SOURCE ESB_JAVA.client/Hello
On line: 0
client/Hello:3: cannot resolve symbol

Let me 2b DBA wrote:
Dear All,
When I compile the following java proc it raises error.
CREATE OR REPLACE AND RESOLVE JAVA SOURCE NAMED "client/Hello" AS
Error:
JAVA SOURCE ESB_JAVA.client/Hello
On line: 0
client/Hello:3: cannot resolve symbolYou cannot use / in the name of any valid Oracle object change / to _ or Simply to ClientHello
Baig,
http://baigsorcl.blogspot.com

Similar Messages

  • Procedure compilation failed with SQL command not properly ended error

    Hi All,
    Kindly help me to fix this.
    I am compiling a procedure and getting an error. Procedure and error details are as follows:
    Procedure:
    CREATE or REPLACE PROCEDURE jiostore_new.auditReportCount (u_name IN VARCHAR2,stdate IN DATE,eddate IN DATE)
    IS
    BEGIN
    DECLARE Total Number;
    BEGIN
    SELECT COUNT(am.id) into Total FROM auditMaster_ AS am  INNER JOIN jioworld.deviceos_ dvos ON dvos.id=am.deviceOs WHERE am.updatedBy=u_name or am.updatedBy=ALL AND DATE(am.updatedDate)>=stdate OR DATE(am.updatedDate)='0000-00-00' AND DATE(am.updatedDate)<=eddate or DATE(am.updatedDate)='0000-00-00';
    dbms_output.put_line('Total Count:' || Total);
    END;
    END;
    Error:
    Error(6,1): PL/SQL: SQL Statement ignored
    Error(6,50): PL/SQL: ORA-00933: SQL command not properly ended
    Regards,
    Vishal G

    2922723 wrote:
    Hi All,
    Kindly help me to fix this.
    I am compiling a procedure and getting an error. Procedure and error details are as follows:
    Procedure:
    CREATE or REPLACE PROCEDURE jiostore_new.auditReportCount (u_name IN VARCHAR2,stdate IN DATE,eddate IN DATE)
    IS
    BEGIN
    DECLARE Total Number;
    BEGIN
    SELECT COUNT(am.id) into Total FROM auditMaster_ AS am  INNER JOIN jioworld.deviceos_ dvos ON dvos.id=am.deviceOs WHERE am.updatedBy=u_name or am.updatedBy=ALL AND DATE(am.updatedDate)>=stdate OR DATE(am.updatedDate)='0000-00-00' AND DATE(am.updatedDate)<=eddate or DATE(am.updatedDate)='0000-00-00';
    dbms_output.put_line('Total Count:' || Total);
    END;
    END;
    Error:
    Error(6,1): PL/SQL: SQL Statement ignored
    Error(6,50): PL/SQL: ORA-00933: SQL command not properly ended
    Regards,
    Vishal G
    The first thing, is that for your own sanity you should learn to format your code for readability.  And for the sanity of those from whom you seek help, you should learn to preserve that formatting when you post to a forum:
    CREATE OR REPLACE PROCEDURE jiostore_new.auditReportCount(
        u_name IN VARCHAR2,
        stdate IN DATE,
        eddate IN DATE)
    IS
    BEGIN
      DECLARE
        Total NUMBER;
      BEGIN
        SELECT COUNT(am.id)
        INTO Total
        FROM auditMaster_ AS am
        INNER JOIN jioworld.deviceos_ dvos
        ON dvos.id              =am.deviceOs
        WHERE am.updatedBy      =u_name
        OR am.updatedBy          =ALL
        AND DATE(am.updatedDate)>=stdate
        OR  DATE(am.updatedDate) ='0000-00-00'
        AND DATE(am.updatedDate)<=eddate
        OR  DATE(am.updatedDate) ='0000-00-00';
        dbms_output.put_line('Total Count:' || Total);
      END;
    END;
    What is the data type of am.updateDate?  It appears to be a varchar being passed to a function named DATE to convert it to a DATEfor comparison to your input parameters,  But you also compare it to strings. 
    Where are the variables 'u_name' and 'ALL'?  (and what kind of a name is that for a variable -- 'ALL'?)

  • Procedure compiles on Oracle 10g but fails to do so on Oracle 9i

    Hi,
    We have an application which supports both Oracle 9i and Oracle 10g dbs, recently we added a new procedure to get a report from the applications statistics schema, the procedure uses two other schemas also to get the report and uses a query which does not use any Oracle specific feature (pure ANSI SQL), it compiled successfully on Oracle 10g but gives the following error on 9i db
    SQL> show err
    Errors for PROCEDURE SPGETNONCOMPLOGBASEDONEMP:
    LINE/COL ERROR
    22/8 PL/SQL: SQL Statement ignored
    31/37 PL/SQL: ORA-00907: missing right parenthesis
    the 9i version
    Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
    PL/SQL Release 9.2.0.1.0 - Production
    CORE 9.2.0.1.0 Production
    TNS for 32-bit Windows: Version 9.2.0.1.0 - Production
    NLSRTL Version 9.2.0.1.0 - Production
    10g version
    Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Prod
    PL/SQL Release 10.1.0.2.0 - Production
    CORE 10.1.0.2.0 Production
    TNS for 32-bit Windows: Version 10.1.0.2.0 - Production
    NLSRTL Version 10.1.0.2.0 - Production
    If any body knows the soln, please help
    Thanks in advance
    Gibs
    Procedure
    CREATE OR REPLACE PROCEDURE Spgetnoncomplogbasedonemp (
    in_emp_id IN VARCHAR,
    in_start_date IN DATE,
    in_end_date IN DATE,
    non_complog OUT Types.ref_cursor
    IS
    BEGIN
    OPEN non_complog
    FOR
    SELECT end_date AS end_date, employee_id AS emp_id, NAME AS emp_name,
    vcname AS plan_name, start_date, nid AS nid
    FROM (SELECT *
    FROM ((SELECT employee_id, NAME
    FROM hrsample_bridge.ath_employee
    WHERE ( (in_emp_id IS NULL AND 1 = 1)
    OR (in_emp_id IS NOT NULL
    AND employee_id = in_emp_id
    )) CROSS JOIN (SELECT vcname
    FROM orahrsamplecore.athobjectinstance
    WHERE compliance_status = 1
    AND ( (in_start_date IS NULL
    OR (dtcompreissue
    BETWEEN in_start_date
    AND in_end_date
    )))) LEFT OUTER JOIN COMPTRACKLOG c ON c.emp_id =
    employee_id
    AND c.plan_name =
    vcname
    WHERE c.emp_id IS NULL
    AND ( ( (in_emp_id IS NULL)
    OR ( in_emp_id IS NOT NULL
    AND NOT EXISTS (
    SELECT 1
    FROM COMPTRACKLOG
    WHERE plan_name = vcname
    AND c.emp_id = in_emp_id )
    AND ( (in_start_date IS NULL)
    OR ( (in_start_date IS NOT NULL)
    AND c.end_date BETWEEN in_start_date AND in_end_date
    ORDER BY c.emp_id, c.plan_name ASC;
    END;
    /

    Hi,
    We have an application which supports both Oracle 9i and Oracle 10g dbs, recently we added a new procedure to get a report from the applications statistics schema, the procedure uses two other schemas also to get the report and uses a query which does not use any Oracle specific feature (pure ANSI SQL), it compiled successfully on Oracle 10g but gives the following error on 9i db
    SQL> show err
    Errors for PROCEDURE SPGETNONCOMPLOGBASEDONEMP:
    LINE/COL ERROR
    22/8 PL/SQL: SQL Statement ignored
    31/37 PL/SQL: ORA-00907: missing right parenthesis
    the 9i version
    Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
    PL/SQL Release 9.2.0.1.0 - Production
    CORE 9.2.0.1.0 Production
    TNS for 32-bit Windows: Version 9.2.0.1.0 - Production
    NLSRTL Version 9.2.0.1.0 - Production
    10g version
    Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Prod
    PL/SQL Release 10.1.0.2.0 - Production
    CORE 10.1.0.2.0 Production
    TNS for 32-bit Windows: Version 10.1.0.2.0 - Production
    NLSRTL Version 10.1.0.2.0 - Production
    If any body knows the soln, please help
    Thanks in advance
    Gibs
    Procedure
    CREATE OR REPLACE PROCEDURE Spgetnoncomplogbasedonemp (
    in_emp_id IN VARCHAR,
    in_start_date IN DATE,
    in_end_date IN DATE,
    non_complog OUT Types.ref_cursor
    IS
    BEGIN
    OPEN non_complog
    FOR
    SELECT end_date AS end_date, employee_id AS emp_id, NAME AS emp_name,
    vcname AS plan_name, start_date, nid AS nid
    FROM (SELECT *
    FROM ((SELECT employee_id, NAME
    FROM hrsample_bridge.ath_employee
    WHERE ( (in_emp_id IS NULL AND 1 = 1)
    OR (in_emp_id IS NOT NULL
    AND employee_id = in_emp_id
    )) CROSS JOIN (SELECT vcname
    FROM orahrsamplecore.athobjectinstance
    WHERE compliance_status = 1
    AND ( (in_start_date IS NULL
    OR (dtcompreissue
    BETWEEN in_start_date
    AND in_end_date
    )))) LEFT OUTER JOIN COMPTRACKLOG c ON c.emp_id =
    employee_id
    AND c.plan_name =
    vcname
    WHERE c.emp_id IS NULL
    AND ( ( (in_emp_id IS NULL)
    OR ( in_emp_id IS NOT NULL
    AND NOT EXISTS (
    SELECT 1
    FROM COMPTRACKLOG
    WHERE plan_name = vcname
    AND c.emp_id = in_emp_id )
    AND ( (in_start_date IS NULL)
    OR ( (in_start_date IS NOT NULL)
    AND c.end_date BETWEEN in_start_date AND in_end_date
    ORDER BY c.emp_id, c.plan_name ASC;
    END;
    /

  • ERROR IN PROCEDURE

    I'm trying to write a procedure that will compute the start and end dates of the weeks within a period, etc. Number of business days in a week is 5; that is, Monday to Friday.
    The first part of the code I have to write is giving me problems please help. The table below was created:
    Wrote file afiedt.buf
    1 CREATE TABLE WEEKS
    2 (WEEKID VARCHAR2(20),
    3 TRANSACTION_YEAR VARCHAR2(20),
    4 START_DATE DATE,
    5 END_DATE DATE,
    6 DAYS VARCHAR2(20),
    7* WEEK_NUMBER VARCHAR2(20))
    SQL> /
    Table created.
    SQL> --- Code To Generate start date, end date weekid, week number, etc in A financial Year
    SQL> Create OR REPLACE PROCEDURE Weeksinyear IS
    2 BEGIN
    3 declare
    4 sdate_v weeks.start_date%type;
    5 edate_v weeks.end_date%type;
    6 ndays_v weeks.days%type;
    7 nweek_v Weeks.week_number%type;
    8 weekid_v weeks.weeksid%type;
    9 transyear_v weeks.weeks.transaction_year%type;
    10 numbweeks_v number;
    11 fyearst_v date;
    12 fyeared_v date;
    13 totaldays_V number;
    14 i number;
    15 d number;
    16 begin
    17 fyearst_v := '05-jan-2004';
    18 fyeared_v := '26-jan-2004';
    19 sdate := fyearst_v;
    20 transyear_v := to_char('05-jan-2004','yyyy');
    21 nweek_v :=1;
    22 ndays_v := 5;
    23 totaldays_v := to_number(to_date(fyeared) - to_date(fyearst));
    24 nweekid_v :=1;
    25 i := 1;
    26 loop
    27 If to_char(fyearst_v,'DAY') ='MONDAY ' then
    28 loop
    29 i := i + 4;
    30 if i < totaldays_v then
    31 d := to_number(totaldays_v - i);
    32 edate_v := (sdate_v + (d - 1));
    33 elseif i = totaldays_v then
    34 edate_v := sdate_v + 4;
    35 elseif i < totaldays then
    36 edate := (sdate + 4);
    37 endif;
    38 weekid_v := (i||'000'||'i');
    39 insert into weeks(weekid, transaction_year, start_date, end_date, days, week_number)
    40 values(weekid_v,transyear, sdate_v, ndays, nweek_v);
    41 if totaldays_V > 7 then
    42 weekid_v := weekid + 1;
    43 sdate_v := sdate_v + 7;
    44 transyear_V := transyear_v;
    45 nweek_v := nweek_v + 1;
    46 ndays_v := ndays_v;
    47 totaldays_v := to_number(totaldays_v - 7);
    48 else exit;
    49 end loop;
    50 else exit;
    51 end loop;
    52 end;
    53 END;
    54 /
    Warning: Procedure created with compilation errors.
    SQL> sho err;
    Errors for PROCEDURE WEEKSINYEAR:
    LINE/COL ERROR
    33/35 PLS-00103: Encountered the symbol "I" when expecting one of the
    following:
    := . ( @ % ;
    35/35 PLS-00103: Encountered the symbol "I" when expecting one of the
    following:
    := . ( @ % ;
    49/23 PLS-00103: Encountered the symbol "LOOP" when expecting one of
    the following:
    if
    LINE/COL ERROR
    51/17 PLS-00103: Encountered the symbol "LOOP" when expecting one of
    the following:
    if
    SQL>

    So many things, I don't really know where to start.
    At line 32
    IF TO_CHAR(fyearst,'DAY') ='MONDAY ' then
    Will never be true it needs to be either
    IF TO_CHAR(fyearst,'DAY') ='MONDAY ' THEN -- A total of 9 characters (padded to the length of WEDNESDAY) or
    IF TRIM(TO_CHAR(fyearst,'DAY')) ='MONDAY' THEN
    Fixing this leads to a second problem in the inner loop. At line 35
    IF i < totaldays THEN
    is logically incorrect. The variable i will take the values 5, 9, 13, 17 and enter the if condition, but will not be equal to totaldays at line 38. On the fifth iteration i = 21 so the conditional at line 35 fails and you have an infinite loop, so the test needs to be:
    IF i <= totaldays THEN
    to even get into any of your processing. Now, on the fifth pass, the conditional on line 38 (IF i = totaldays THEN ) will be true, so edate gets set, but the condition on line 40 (IF i > totaldays THEN) can never be true, so we're back to an infinite loop.
    So change line 40 to
    IF i >= totaldays THEN
    Now, the insert gets done, and the test at line 45 (IF totaldays > 7 THEN) passes and totaldays gets reset, and we go back to the top of the inner loop. Now, i = 21 and totaldays = 14, so the condition at line 35 fails, and again, we're in an infinite loop, so lets reset i as well as totaldays.
    Now i still goes 5, 9, 13, 17, 21 but totaldays = 14, so the test at line 38 is never true, and once more, an infinite loop.
    At this point I gave up and put an explicit exit after the insert statement, just to see what should be inserted, and got another infinite loop in the outer loop because there is no terminating condition on the loop since fyearst never gets changed. Having seen some output, I think what you are looking for is something more like:
    INSERT INTO weeks
    SELECT rownum, TO_CHAR(TO_DATE('05-jan-2004','dd-mon-yyyy'),'YYYY'),
           NEXT_DAY(TO_DATE('05-jan-2004','dd-mon-yyyy') - 7,'MONDAY') + ((rownum - 1) * 7),
           NEXT_DAY(TO_DATE('05-jan-2004','dd-mon-yyyy') + 1,'FRIDAY') + ((rownum - 1) * 7),
           '5', TO_CHAR(rownum)
    FROM all_objects
    WHERE rownum <= 52or, if you really want a procedure:
    CREATE OR REPLACE PROCEDURE weeksinyear (p_start IN DATE, p_end IN DATE) AS
       num_weeks NUMBER;
    BEGIN
       num_weeks := (NEXT_DAY(p_end,'MONDAY') - NEXT_DAY(p_start - 7,'MONDAY')) /7;
       INSERT INTO weeks
       SELECT rownum, TO_CHAR(p_start,'YYYY'),
              NEXT_DAY(p_start - 7,'MONDAY') + ((rownum - 1) * 7),
              NEXT_DAY(p_start + 1,'FRIDAY') + ((rownum - 1) * 7),
              '5', TO_CHAR(rownum)
       FROM all_objects
       WHERE rownum <= num_weeks;
       COMMIT;
    END;If you will always want to do this for an entire year, then the procedure could be simplified to:
    CREATE OR REPLACE PROCEDURE weeksinyear (p_start IN DATE) AS
    BEGIN
       INSERT INTO weeks
       SELECT rownum, TO_CHAR(p_start,'YYYY'),
              NEXT_DAY(p_start - 7,'MONDAY') + ((rownum - 1) * 7),
              NEXT_DAY(p_start + 1,'FRIDAY') + ((rownum - 1) * 7),
              '5', TO_CHAR(rownum)
       FROM all_objects
       WHERE rownum <= 52;
       COMMIT;
    END;TTFN
    John

  • PLS-00801: internal error [1401] while compiling Package body

    I am getting the error PLS-00801: internal error [1401] while compiling the package.
    recently upgraded to version 11.1.0.7 database .
    Any pointer to this ..

    935026 wrote:
    I am also getting the same error while compiling a procedure which use a remote object over db_link.
    Let me know if this needs to be run on source db or destination db
    1. RUN as SYS
    $ORACLE_HOME/rdbms/admin/utlirp.sql
    $ORACLE_HOME/rdbms/admin/utlrp.sql
    RegardsYES
    post results from SQL below from both DBs
    SELECT * FROM V$VERSION;

  • REUSE SETTINGS supresses error messages when compiling an invalid object

    Hello,
    my test:
    Create a table and a packaged procedure referencing the table. Then drop the table and recompile the package:
    CREATE TABLE x (
        y     NUMBER
    CREATE OR REPLACE PACKAGE y
    AS
    PROCEDURE z;
    END y;
    SHOW ERRORS
    CREATE OR REPLACE PACKAGE BODY y
    AS
    PROCEDURE z
    IS
      v_count PLS_INTEGER;
    BEGIN
      SELECT COUNT(*)
      INTO v_count
      FROM x;
    END z;
    END y;
    SHOW ERRORS
    DROP TABLE x;
    PROMPT 1.Compile package
    ALTER PACKAGE y COMPILE;
    SHOW ERRORS
    PROMPT 2.Compile package body
    ALTER PACKAGE y COMPILE BODY;
    SHOW ERRORS
    PROMPT 3.Compile package with "REUSE SETTINGS"
    ALTER PACKAGE y COMPILE REUSE SETTINGS;
    SHOW ERRORS
    PROMPT 4.Compile package body with "REUSE SETTINGS"
    ALTER PACKAGE y COMPILE BODY REUSE SETTINGS;
    SHOW ERRORS
    SELECT object_name
          ,object_type
    FROM   user_objects
    WHERE  status = 'INVALID';
    --DROP PACKAGE y;Partly unexpected output
    Tabelle wurde erstellt.
    Package wurde erstellt.
    Keine Fehler.
    Package Body wurde erstellt.
    Keine Fehler.
    Tabelle wurde gelöscht.
    1.Compile package
    Warnung: Paket wurde mit Kompilierungsfehlern geõndert.
    Keine Fehler.
    2.Compile package body
    Warnung: Paketrumpf wurde mit Kompilierungsfehlern geõndert.
    Fehler bei PACKAGE BODY Y:
    LINE/COL ERROR
    8/3      PL/SQL: SQL Statement ignored
    10/8     PL/SQL: ORA-04044: procedure, function, package, or type is not
             allowed here
    3.Compile package with "REUSE SETTINGS"
    Warnung: Paket wurde mit Kompilierungsfehlern geõndert.
    Keine Fehler.
    4.Compile package body with "REUSE SETTINGS"
    Warnung: Paketrumpf wurde mit Kompilierungsfehlern geõndert.
    Keine Fehler.
    OBJECT_NAME     OBJECT_TYPE
    Y               PACKAGE BODY
    1 Zeile wurde ausgewõhlt.It says
    - Table created
    - Package created
    - Package body created
    - Table dropped
    - Package header compiled with errors (why?)
    - Package body compiled with errors (shown error is expected)
    - Package header compiled with errors (again why?)
    - Package body compiled with errors (no errors shown)
    So why is the header compiled with errors, when the object is valid.
    And why is no error shown for COMPILE REUSE SETTINGS when there are errors for the body?
    I use REUSE SETTINGS when recompiling invalid objects that were compiled for debug with
    ALTER PACKAGE abc COMPILE PLSQL_DEBUG = TRUE REUSE SETTINGSRegards
    Marcus
    Version:
    SQL*Plus: Release 10.2.0.1.0 - Production on Di Jan 27 12:45:20 2009
    Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - 64bit Production
    With the Partitioning, OLAP and Data Mining options

    Hi,
    From SQL Reference Manual [REUSE SETTINGS|http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_1007.htm#BGBGEIGD]:
    Specify REUSE SETTINGS to prevent Oracle from dropping and reacquiring compiler switch settings. With this clause, Oracle preserves the existing settings and uses them for the recompilation of any parameters for which values are not specified elsewhere in this statement.
    For backward compatibility, Oracle Database sets the persistently stored value of the PLSQL_COMPILER_FLAGS initialization parameter to reflect the values of the PLSQL_CODE_TYPE and PLSQL_DEBUG parameters that result from this statement.
    Regards,

  • PLS-00382 Error in procedure

    I have a procedure (below) that is invalid. Last night the instance of the database I'm working in got refreshed (data only) and a few of my procedures were invalidated, including this one. When I tried to recreate it I got the following error:
    PLS-00382: expression is of wrong type
    I don't understand why it's now not working (worked fine yesterday), or what this error means in relation to the statement.
    Does anyone know what I'm doing wrong here?
    Thanks,
    Pete
    SQL> CREATE OR REPLACE PROCEDURE nyp.WBS_NOTE
    2 IS
    3 CURSOR C_WBS_NOTES IS
    4 SELECT * FROM WBS_NOTES;
    5 V_WBS_ID NUMBER;
    6 V_WBSMEMO_ID NUMBER;
    7 V_PROJ_ID NUMBER;
    8 V_WBS_VAL VARCHAR2(200);
    9 V_WBS_PARENT VARCHAR2(200);
    10
    11 BEGIN
    12 UPDATE
    13 WBS_NOTES W
    14 SET W.TEXT = REPLACE(W.Text, 'CHR(13)', '
    15 ');
    16 INSERT INTO WBS_NOTE_PROJ_NOT_FOUND
    17 SELECT *
    18 FROM WBS_NOTES W WHERE EXISTS(
    19 SELECT 'A'
    20 FROM ACC_CONV_PROJ_NOT_FOUND P
    21 WHERE W.Project_num = P.Project_num);
    22 DELETE
    23 FROM WBS_NOTES W WHERE EXISTS(
    24 SELECT 'A'
    25 FROM ACC_CONV_PROJ_NOT_FOUND P
    26 WHERE W.Project_num = P.Project_num);
    27 FOR NOTES IN C_WBS_NOTES LOOP
    28 SELECT P.PROJ_ID
    29 INTO V_PROJ_ID
    30 FROM PROJECT P
    31 WHERE P.PROJ_SHORT_NAME = NOTES.PROJECT_NUM;
    32 V_WBS_VAL := NOTES.WBS;
    33 V_WBS_PARENT := SUBSTR(V_WBS_VAL, 1, INSTR(V_WBS_VAL, '.', -1) - 1);
    34 WHILE INSTR(V_WBS_PARENT, '.') <> 0 LOOP
    35 V_WBS_PARENT := SUBSTR(V_WBS_PARENT, INSTR(V_WBS_PARENT, '.') + 1, 200);
    36 END LOOP;
    37 V_WBS_VAL := SUBSTR(V_WBS_VAL, INSTR(V_WBS_VAL, '.') + 1, 200);
    38 WHILE INSTR(V_WBS_VAL, '.') <> 0 LOOP
    39 V_WBS_VAL := SUBSTR(V_WBS_VAL, INSTR(V_WBS_VAL, '.') + 1, 200);
    40 END LOOP;
    41 SELECT W.WBS_ID
    42 INTO V_WBS_ID
    43 FROM PROJWBS W
    44 , PROJWBS PW
    45 WHERE UPPER(W.WBS_NAME) = UPPER(V_WBS_VAL)
    46 AND PW.PROJ_ID = V_PROJ_ID
    47 AND PW.WBS_ID = W.PARENT_WBS_ID
    48 AND UPPER(PW.WBS_SHORT_NAME) = UPPER(V_WBS_PARENT);
    49 GETNEXTKEYS('wbsmemo_wbs_memo_id', 1, V_WBSMEMO_ID);
    50 EXECUTE IMMEDIATE
    51 ' INSERT INTO WBSMEMO ' ||
    52 ' SELECT ' || V_WBSMEMO_ID ||
    53 ', ''' || V_PROJ_ID || '''' ||
    54 ', ''' || V_WBS_ID || '''' ||
    55 ', MT.MEMO_TYPE_ID ' ||
    56 ', ''' || NOTES.TEXT || '''' ||
    57 ' FROM MEMOTYPE MT ' ||
    58 ' WHERE MT.MEMO_TYPE = ''' || NOTES.NTBKTYPE || '''';
    59 END LOOP;
    60 END;
    61 /
    Warning: Procedure created with compilation errors.
    SQL> SHOW ERRORS
    Errors for PROCEDURE NYP.WBS_NOTE:
    LINE/COL ERROR
    50/2 PL/SQL: Statement ignored
    51/2 PLS-00382: expression is of wrong type

    There could be data type mis-match within the time you re-compiled the program. Check the data type for which you are Inserting / Updating with the values you are actually using to populate.
    Note:
    Insert into TABLE1
    Select * from TABLE2.
    It is not advisible to have the above statement
    eventhough this will work as long as
    the fields in table TABLE1 and TABLE2 are same.
    Instead of "*" use the filed names.
    CRAMANA

  • Error in procedure creation

    Hi,
    I am creating the procedure but getting the following error. I could not identify where the exact problem at line 5:
    Oracle 11.2.0
    SQL> CREATE OR REPLACE PROCEDURE BEDPOST_SATYA
    2 (TRANDATE OUT BEDPOSTCHECK.TRANDATE%TYPE,
    3 NOS OUT BEDPOSTCHECK.NOS%TYPE,
    4 UNIT OUT BEDPOSTCHECK.TRANDATE%TYPE,
    5 TDATE VARCHAR2(20);)
    6 AS
    7 Select to_char(SYSDATE-1,'YYYYMMDD') into TDATE from dual;
    8 cursor satya is
    9 select trandate,nos,unit from bedpostcheck where trandate=tdate;
    10 begin
    11 open satya;
    12 loop
    13 fetch satya
    14 into trandate,nos,unit;
    15 exit when satya%notfound;
    16 dbms_output.put_line (trandate || unit || nos);
    17 end loop
    18 close satya;
    19 END BEDPOST_SATYA;
    20 /
    Warning: Procedure created with compilation errors
    SQL> SHOW ERRORS;
    Errors for PROCEDURE JEEVADB.BEDPOST_SATYA:
    LINE/COL ERROR
    5/15 PLS-00103: Encountered the symbol "(" when expecting one of the following: := . ) , @ % default character
    thanks
    satya

    user608405 wrote:
    I have modified but getting the following errors:
    SQL> CREATE OR REPLACE PROCEDURE BEDPOST_SATYA
    2 (TRANDATE OUT BEDPOSTCHECK.TRANDATE%TYPE,
    3 NOS OUT BEDPOSTCHECK.NOS%TYPE,
    4 UNIT OUT BEDPOSTCHECK.TRANDATE%TYPE,
    5 TDATE VARCHAR2(20))
    6 AS
    7 Select to_char(SYSDATE-1,'YYYYMMDD') into TDATE from dual;
    8 cursor satya is
    9 select trandate,nos,unit from bedpostcheck where trandate=tdate;
    10 begin
    11 open satya;
    12 loop
    13 fetch satya
    14 into trandate,nos,unit;
    15 exit when satya%notfound;
    16 dbms_output.put_line (trandate || unit || nos);
    17 end loop
    18 close satya;
    19 END BEDPOST_SATYA;
    20 /
    Warning: Procedure created with compilation errors
    SQL> show errors;
    Errors for PROCEDURE JEEVADB.BEDPOST_SATYA:
    LINE/COL ERROR
    5/15 PLS-00103: Encountered the symbol "(" when expecting one of the following: := . ) , @ % default character The symbol ":=" was substituted for "(" to continue.
    7/1 PLS-00103: Encountered the symbol "SELECT" when expecting one of the following: begin function pragma procedure subtype type <an identifier> <a double-quoted delimited-identifier> current cursor delete exists prior external language The symbol "begin" was substituted for "SELECT" to continue.
    8/8 PLS-00103: Encountered the symbol "SATYA" when expecting one of the following: := . ( @ % ;try this or the prior posting that i have.
    CREATE OR REPLACE PROCEDURE BEDPOST_SATYA (TRANDATE OUT BEDPOSTCHECK.TRANDATE%TYPE,
                                               NOS OUT BEDPOSTCHECK.NOS%TYPE,
                                               UNIT OUT BEDPOSTCHECK.TRANDATE%TYPE) As
      cursor satya is
        select trandate,nos,unit
          from bedpostcheck
         where trandate = (SYSDATE-1,'YYYYMMDD');
    begin
      open satya;
      loop
        fetch satya into trandate, nos, unit;
        exit when satya%notfound;
        dbms_output.put_line (trandate || unit || nos);
      end loop;
      close satya;
    END BEDPOST_SATYA;
    /

  • DBLink error in procedure

    Hi,
    Please help me to solve this DBLink error in procedure.
    Created a below DBLink and it is working fine all sql statements in sql plus.
    DBLink created statement
    CREATE DATABASE LINK "OFFICE2"
    CONNECT TO "SALES" IDENTIFIED BY "SALES"
    USING 'TNSOFFICE2';
    SELECT TRANSACTIONID
    FROM RECEIPT_DETAIL@OFFICE2
    INSERT INTO RECEIPT_DETAIL@OFFICE2
    (TRANSACTIONID)
    VALUES
    (665035);
    While I am using this same statements in procedure, I am getting a error
    'ORA-00942 table or view does not exist' in dblink used statements and procedure is not compiling.
    Please help me to solve this problem
    CREATE OR REPLACE
    PROCEDURE TEST_PROC1 AS
    L_REC_NO NUMBER(10);
    CURSOR C1 IS
    SELECT TRANSACTIONID
    FROM RECEIPT_DETAIL@OFFICE2
    BEGIN
    OPEN C1;
    FETCH C1 INTO L_REC_NO;
    CLOSE C1;
    INSERT INTO RECEIPT_DETAIL@OFFICE2
    (TRANSACTIONID)
    VALUES
    (665035);
    END TEST_PROC1;
    Thanks & Regards,
    Jen.

    Jen. wrote:
    Created a below DBLink and it is working fine all sql statements in sql plus.Who owns this database link? (name of the schema)
    While I am using this same statements in procedure, I am getting a error
    'ORA-00942 table or view does not exist' in dblink used statements and procedure is not compiling.Who owns this stored procedure?
    CURSOR C1 IS
    SELECT TRANSACTIONID
    FROM RECEIPT_DETAIL@OFFICE2
    BEGIN
    OPEN C1;
    FETCH C1 INTO L_REC_NO;
    CLOSE C1;Why? The following is a lot less code, easier to read and more maintainable.
      L_REC_NO NUMBER(10);
    begin
      select transationid into  l_rec_no from from receipt_detail@office2;
    end;No need for an explicit cursor.
    Also why are you using a L_ prefix for variables? And why underscores? This is an extremely silly standard that fails to understand the impact of Hungarian-like notation, how to correctly manage scope resolution, and using camelcase for variables (a standard in most modern programming languages).
    The very worse place you can look at for programming standards is PL/SQL code from Oracle (as they have no consistent set standard as proved by the packages supplied by them, and often resort to COBOL-like standards of the 80's - which has no place in the 21st century software engineering)

  • Error while running ejbc. Fatal error from EJB Compiler ---- Error while pr

    Hi!
    I was deploying a test application for a session bean with sun 1 studio 5 and I started getting this message while deploying.
    I had tested the bean previously and I had no problems.
    I found this in the sun app server 7 release notes, but I don't understand what I'm supposed to do...
    "Deployment of CMP beans fails.
    The following error is thrown because there are no <query-params> entries in the container-managed persistence (CMP) bean in sun-ejb-jar.xml file:
    Error while running ejbc. Fatal error from EJB Compiler ---- Error while processing CMP beans.
    Solution
    Even if it isn't necessary for the CMP beans, add the query-params tag for finders in the sun-ejb-jar.xml file with the empty parameters."
    Here is my sun-ejb-jar.xml file:
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE sun-ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Sun ONE Application Server 7.0 EJB 2.0//EN" "http://www.sun.com/software/sunone/appserver/dtds/sun-ejb-jar_2_0-0.dtd">
    <sun-ejb-jar>
    <enterprise-beans>
    <name>GestorDoBanco_EJBModule</name>
    <ejb>
    <ejb-name>Cliente</ejb-name>
    <jndi-name>ejb/Cliente</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    <cmp>
    <mapping-properties>pcImpl0/moduleComp1/Data/Cliente.mapping</mapping-properties>
    </cmp>
    <refresh-period-in-seconds>600</refresh-period-in-seconds>
    </ejb>
    <ejb>
    <ejb-name>ClienteAssociadoAConta</ejb-name>
    <jndi-name>ejb/ClienteAssociadoAConta</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    <cmp>
    <mapping-properties>pcImpl0/moduleComp1/Data/ClienteAssociadoAConta.mapping</mapping-properties>
    </cmp>
    <refresh-period-in-seconds>600</refresh-period-in-seconds>
    </ejb>
    <ejb>
    <ejb-name>Conta</ejb-name>
    <jndi-name>ejb/Conta</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    <cmp>
    <mapping-properties>pcImpl0/moduleComp1/Data/Conta.mapping</mapping-properties>
    </cmp>
    <refresh-period-in-seconds>600</refresh-period-in-seconds>
    </ejb>
    <ejb>
    <ejb-name>GestorDoBanco</ejb-name>
    <jndi-name>ejb/GestorDoBanco</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    </ejb>
    <ejb>
    <ejb-name>MensagemM003</ejb-name>
    <jndi-name>ejb/MensagemM003</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    <cmp>
    <mapping-properties>pcImpl0/moduleComp1/Data/MensagemM003.mapping</mapping-properties>
    </cmp>
    <refresh-period-in-seconds>600</refresh-period-in-seconds>
    </ejb>
    <ejb>
    <ejb-name>MensagemM003Rejeitada</ejb-name>
    <jndi-name>ejb/MensagemM003Rejeitada</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    <cmp>
    <mapping-properties>pcImpl0/moduleComp1/Data/MensagemM003Rejeitada.mapping</mapping-properties>
    </cmp>
    <refresh-period-in-seconds>600</refresh-period-in-seconds>
    </ejb>
    <ejb>
    <ejb-name>MensagemM012</ejb-name>
    <jndi-name>ejb/MensagemM012</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    <cmp>
    <mapping-properties>pcImpl0/moduleComp1/Data/MensagemM012.mapping</mapping-properties>
    </cmp>
    <refresh-period-in-seconds>600</refresh-period-in-seconds>
    </ejb>
    <ejb>
    <ejb-name>MensagemM012Rejeitada</ejb-name>
    <jndi-name>ejb/MensagemM012Rejeitada</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    <cmp>
    <mapping-properties>pcImpl0/moduleComp1/Data/MensagemM012Rejeitada.mapping</mapping-properties>
    </cmp>
    <refresh-period-in-seconds>600</refresh-period-in-seconds>
    </ejb>
    <ejb>
    <ejb-name>MensagemM103</ejb-name>
    <jndi-name>ejb/MensagemM103</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    <cmp>
    <mapping-properties>pcImpl0/moduleComp1/Data/MensagemM103.mapping</mapping-properties>
    </cmp>
    <refresh-period-in-seconds>600</refresh-period-in-seconds>
    </ejb>
    <ejb>
    <ejb-name>MensagemM112</ejb-name>
    <jndi-name>ejb/MensagemM112</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    <cmp>
    <mapping-properties>pcImpl0/moduleComp1/Data/MensagemM112.mapping</mapping-properties>
    </cmp>
    <refresh-period-in-seconds>600</refresh-period-in-seconds>
    </ejb>
    <ejb>
    <ejb-name>Registo</ejb-name>
    <jndi-name>ejb/Registo</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    <cmp>
    <mapping-properties>pcImpl0/moduleComp1/Data/Registo.mapping</mapping-properties>
    </cmp>
    <refresh-period-in-seconds>600</refresh-period-in-seconds>
    </ejb>
    <ejb>
    <ejb-name>TransaccaoConfirmada</ejb-name>
    <jndi-name>ejb/TransaccaoConfirmada</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    <cmp>
    <mapping-properties>pcImpl0/moduleComp1/Data/TransaccaoConfirmada.mapping</mapping-properties>
    </cmp>
    <refresh-period-in-seconds>600</refresh-period-in-seconds>
    </ejb>
    <ejb>
    <ejb-name>TransaccaoFinalizada</ejb-name>
    <jndi-name>ejb/TransaccaoFinalizada</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    <cmp>
    <mapping-properties>pcImpl0/moduleComp1/Data/TransaccaoFinalizada.mapping</mapping-properties>
    </cmp>
    <refresh-period-in-seconds>600</refresh-period-in-seconds>
    </ejb>
    <ejb>
    <ejb-name>TransaccaoIniciada</ejb-name>
    <jndi-name>ejb/TransaccaoIniciada</jndi-name>
    <pass-by-reference>false</pass-by-reference>
    <cmp>
    <mapping-properties>pcImpl0/moduleComp1/Data/TransaccaoIniciada.mapping</mapping-properties>
    </cmp>
    <refresh-period-in-seconds>600</refresh-period-in-seconds>
    </ejb>
    <pm-descriptors>
    <pm-descriptor>
    <pm-identifier>SunONE</pm-identifier>
    <pm-version>1.0</pm-version>
    <pm-class-generator>com.iplanet.ias.persistence.internal.ejb.ejbc.JDOCodeGenerator</pm-class-generator>
    <pm-mapping-factory>com.iplanet.ias.cmp.NullFactory</pm-mapping-factory>
    </pm-descriptor>
    <pm-inuse>
    <pm-identifier>SunONE</pm-identifier>
    <pm-version>1.0</pm-version>
    </pm-inuse>
    </pm-descriptors>
    <cmp-resource>
    <jndi-name>mysqlpmanager</jndi-name>
    <default-resource-principal>
    <name>bes</name>
    <password>besbes</password>
    </default-resource-principal>
    </cmp-resource>
    </enterprise-beans>
    </sun-ejb-jar>
    Thanks in advance for any help.
    Nuno

    http://docs.sun.com/source/817-2175-10/decmp.html
    Please go to the above docs and look thru the examples given in it.
    Example 2
    This query returns all products in a specified price range. It defines two query parameters which are the lower and upper bound for the price: double low, double high. The filter compares the query parameters with the price field:
    "low < price && price < high"
    The finder element of the sun-ejb-jar.xml file would look like this:
    <finder>
    <method-name>findInRange</method-name>
    <query-params>double low, double high</query-params>
    <query-filter>low < price && price &lt
    high</query-filter
    </finder>
    I hope this hepls. In your case u just have to make it null.

  • While opening the iTune Store i receive the following error, "The procedure entry point ADAdPolicyEngine_DidEnterSation could not be located in the dynamic link library iAdCore.dll" Please help me to clear this error.

    While opening the iTune Store i receive the following error, "The procedure entry point ADAdPolicyEngine_DidEnterSation could not be located in the dynamic link library iAdCore.dll" Please help me to clear this error.

    I faced the same issue. This solved it for me: Troubleshooting issues with iTunes for Windows updates
    Hope this helps.

  • Error message when compiling book "file is corrupt" referring to a photo.  Or "cannot find original photo".  Can you use photos that have been "edited" out of "Book Mode"?

    Error message when compiling book "file is corrupt" referring to a photo.  Or "cannot find original photo".  Can you use photos that have been "edited" out of "Book Mode"?

    I did copy it to my desktop, but it still won't let me open it.  I think the file on the disc might be corrupt or something like that though the cd itself checks out fine as far as viruses go.  I was able to verify the disc, but that's about it.  My husband tried it on his iMac and we have the same issue.  It's unzipping the folder, but won't let us open the folder on both the Mac Book Pro or the iMac by double clicking, going to file/open or right clicking.  It just keeps saying the same message as I posted above.  I think I'm just going to have the client put the pictures on either a memory card or a USB memory stick so she won't have to compress the files for zipping purposes.  It's been too frustrating trying to open this folder on this cd she gave me.  She said she created/zipped the cd on her Mac Book Pro but it sure won't open on mine.

  • Was trying to update my ITunes and get this error: The procedure entry point AVCFPlayerItemDurationChangedNotification could not be located in the dynamic link library AVFoundationCF.dll. Just got the new IPhone and am trying to share music files. Can any

    I have Windows Vista computer. I am trying to upgrade my ITunes so can share files with other home computer. (Just got the new IPhone). I get this system error: The procedure entry point AVCFPlayerItemDurationChangedNotification could not be located in the dynamic link library AVFoundationCF.dll. Tries system restore and redownloaded...NOW Itunes will not even open. Can anyone help?

    I uninstalled Apple Application Support, opened iTunesSetup with WinRar, and went down the list of msi's. AppleApplicationSupport was an install, all the others I did Repair.  Did not have to reboot. Works okay now.
    HTH

  • Getting Error-- "The procedure entry point _UP_GetActiveTreeCell could not be located in the dynamic link library cvirte.dll" on host machine.

    I am trying to build an executible program that will be portable to machines which do not have CVI installed.  It works fine on my CVI v9.1 system.  However, whether or not I include "Full run-time support" in the build options, I get the error "The procedure entry point _UP_GetActiveTreeCell could not be located in the dynamic link library cvirte.dll" when I try to run it on a machine without CVI.  Please help.

    To run a CVI application on a system were the CVI IDE is not installed you need to have the CVI RunTime Engine installed. According to the error message at the bottom of this page you may have an older RTE installed in the target system.
    To obtain it you can either download the RTE and install in the target system or better let the IDE build a distribution disk that installs all necessary software in it: this guide drives you in creating the appropriate installer for your application: you can find it also in CVI help function.
    Proud to use LW/CVI from 3.1 on.
    My contributions to the Developer Zone Community
    If I have helped you, why not giving me a kudos?

  • Can't launch itunes due to the following error; The procedure entry point AVCFPlayerAppliesMediaSelectionCriteriaKey could not be located in the dynamic link library AVFoundationCF.dll.

    Can't launch itunes due to the following error; The procedure entry point AVCFPlayerAppliesMediaSelectionCriteriaKey could not be located in the dynamic link library AVFoundationCF.dll.

    Hey bcolden,
    I would try uninstalling and reinstalling following the directions in here:
    Removing and reinstalling iTunes and other software components for Windows Vista, Windows 7, or Windows 8
    http://support.apple.com/kb/HT1923
    This section in particular contains important information in the uninstall process:
    Use the Control Panel to uninstall iTunes and related software components in the following order and then restart your computer:
    iTunes
    Apple Software Update
    Apple Mobile Device Support
    Bonjour
    Apple Application Support (iTunes 9 or later)
    Important: Uninstalling these components in a different order, or only uninstalling some of these components may have unintended affects.
    Let us know if following that article and uninstalling those components in that order helped the situation.
    Welcome to Apple Support Communities!
    Best,
    Delgadoh

Maybe you are looking for