DBAsupport.com Forums - Powered by vBulletin
Results 1 to 2 of 2

Thread: package compilation errors

  1. #1
    Join Date
    May 2002
    Posts
    193
    Dear Sir,

    Three of my packages are not getting compiled and they show errors. The errors are as follows:


    Warning: Package Body altered with compilation errors.

    Errors for PACKAGE BODY SYS.DBMS_REPCAT_RGT:

    LINE/COL ERROR
    -------- -----------------------------------------------------------------
    1146/9 PL/SQL: Statement ignored
    1147/36 PLS-00705: exception 'MISSING_OFFLINE_DIRPATH' used in expression
    requiring return type

    alter TYPE BODY CTXSYS.CATINDEXMETHODS compile
    *
    ERROR at line 1:
    ORA-00922: missing or invalid option


    Errors for PACKAGE BODY SYS.DBMS_REPCAT_RGT:

    LINE/COL ERROR
    -------- -----------------------------------------------------------------
    1146/9 PL/SQL: Statement ignored
    1147/36 PLS-00705: exception 'MISSING_OFFLINE_DIRPATH' used in expression
    requiring return type

    alter TYPE BODY CTXSYS.TEXTINDEXMETHODS compile
    *
    ERROR at line 1:
    ORA-00922: missing or invalid option


    Errors for PACKAGE BODY SYS.DBMS_REPCAT_RGT:

    LINE/COL ERROR
    -------- -----------------------------------------------------------------
    1146/9 PL/SQL: Statement ignored
    1147/36 PLS-00705: exception 'MISSING_OFFLINE_DIRPATH' used in expression
    requiring return type

    Kindly give ure suggestions,

    Regards,

    K.Diwakar

  2. #2
    Hi Diwakar,

    From what I see in

    http://desktop.msfc.nasa.gov/oracle8.../ch4d.htm#4838

    You need not add 'BODY' in your alter statement.

    Check this out and let me know.

    Thanks,
    -Shyami

    Example
    ----------------------------------------
    CREATE TYPE data_t AS OBJECT
    ( year NUMBER,
    MEMBER FUNCTION prod(invent NUMBER) RETURN NUMBER
    );

    CREATE TYPE BODY data_t IS
    MEMBER FUNCTION prod (invent NUMBER) RETURN NUMBER IS
    BEGIN
    RETURN (year + invent);
    END;
    END;

    ALTER TYPE data_t REPLACE AS OBJECT
    ( year NUMBER,
    MEMBER FUNCTION prod(invent NUMBER) RETURN NUMBER,
    MEMBER FUNCTION qtr(der_qtr DATE) RETURN CHAR
    );

    CREATE OR REPLACE TYPE BODY data_t IS
    MEMBER FUNCTION prod (invent NUMBER) RETURN NUMBER IS
    MEMBER FUNCTION qtr(der_qtr DATE) RETURN CHAR IS
    BEGIN
    RETURN (year + invent);
    END;
    BEGIN
    RETURN 'FIRST';
    END;
    END;
    ---------------------------------



Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  


Click Here to Expand Forum to Full Width