Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Help required

639593May 31 2008 — edited May 31 2008
Hi all,

I have a procedure like this

CREATE OR REPLACE PROCEDURE prdmsxpath
(
v_dmscode IN NUMBER DEFAULT NULL ,
v_dmstype IN NUMBER DEFAULT NULL ,-- 0: Folder; 1: Document;
cv_1 IN OUT SYS_REFCURSOR
)
AS
--WITH ENCRYPTION
BEGIN
IF v_dmstype = 0 THEN
BEGIN
INSERT INTO tt_v_temptable_tbldms
( SELECT fldfoldercode,
fldparentcode,
fldfoldername
FROM tbldmsfolder
WHERE fldfoldercode = v_dmscode );
END;
ELSE
BEGIN
INSERT INTO tt_v_temptable_tbldms
( SELECT flddocumentcode,
fldfoldercode,
flddocumentname
FROM tbldmsdocument
WHERE flddocumentcode = v_dmscode );
END;
END IF;
OPEN cv_1 FOR
WITH cte AS ( SELECT 0,
flddmscode,
fldparentcode,
flddmsname
FROM tt_v_temptable_tbldms
UNION ALL
SELECT t.fldindex + 1,
f.fldfoldercode,
f.fldparentcode,
f.fldfoldername
FROM tbldmsfolder f
JOIN cte t
ON f.fldfoldercode = t.fldparentcode
WHERE t.fldparentcode IS NOT NULL )
SELECT flddmscode,
flddmsname
FROM cte
ORDER BY fldindex DESC;
END;

when i compile i get the following error

30/7 PL/SQL: SQL Statement ignored
41/18 PL/SQL: ORA-32031: illegal reference of a query name in WITH
clause

Thanks in advance.

Regards

Ariff
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jun 28 2008
Added on May 31 2008
2 comments
313 views