DanielS
DanielS

Reputation: 73

PL/SQL package compilation error: PLS-00323

During compilation I get this error:

Oracle Error PLS-00323: subprogram or cursor "LIST_DIRECTORY" is declared in a package specification and must be defined in the package body

Package specification:

create or replace PACKAGE P_1 is
  function l_d(p_d IN VARCHAR2,
                       p_fm   IN VARCHAR2 DEFAULT NULL,
                       p_f        IN VARCHAR2 DEFAULT 'YES',
                       p_sd     IN VARCHAR2 DEFAULT 'NO') return file_array;
end;

and this is package body:

create or replace PACKAGE BODY P_1 is
--
-- MODIFICATION HISTORY
--------------------------------------------------------------------------------
function l_d(p_d IN VARCHAR2,
                       p_fm   IN VARCHAR2 DEFAULT NULL,
                       p_f        IN VARCHAR2 DEFAULT 'YES',
                       p_sd     IN VARCHAR2 DEFAULT 'NO') return file_array
    PIPELINED
AS
....
--------------------------------------------------------------------------------
end;

Do you have any idea what wrong?

Best Regards,
Dan

Upvotes: 0

Views: 236

Answers (1)

Pavel Gatnar
Pavel Gatnar

Reputation: 4053

You are missing pipelined in the function declaration.

Upvotes: 2

Related Questions