Olá Marcos, Não tenho muita certeza, mas acho que o erro esta em:
V_XML := DBMS_XMLQUERY.GETXML('SELECT * FROM ATENDENTE'); Tente declarar esse "select" antes ou seja... Select Atendimento.* into V_XMLQRY FROM ATENDENTE; V_XML := DBMS_XMLQUERY.GETXML('V_XMLQRY'); Não tive tempo de testar, mas acho que assim já resolve. []'s Walter A de Melo Nt ----- Original Message ----- From: Marcos Giovani Lagassi To: oracle_br@yahoogrupos.com.br Sent: Tuesday, October 02, 2007 8:57 PM Subject: [oracle_br] Help Erro de procedure PUBLICIDADE Pessoal eu estou criando uma procedure que gere um select em XML, mas a mesma esta apresentando essa mensagem. Alguem poderia me auxiliar. Oracle 8i Erro apresentado : PLS: 00201 - DBMS_XMLQUERY.GETXML DEVE SER DECLARADO. Procedure : CREATE OR REPLACE PROCEDURE P_GERA_XML IS V_FILE UTL_FILE.FILE_TYPE; V_XML CLOB; V_MORE BOOLEAN := TRUE; BEGIN -- CRIA DOC XML A PARTIR DA CONSULTA V_XML := DBMS_XMLQUERY.GETXML('SELECT * FROM ATENDENTE'); -- GERAR SAIDA V_FILE := UTL_FILE.FOPEN('C:\', 'ATENDENTE.XML', 'W'); WHILE V_MORE LOOP UTL_FILE.PUT(V_FILE, SUBSTR(V_XML, 1, 32767)); IF LENGTH(V_XML) > 32767 THEN V_XML := SUBSTR(V_XML, 32768); ELSE V_MORE := FALSE; END IF; END LOOP; UTL_FILE.FCLOSE(V_FILE); EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE(SUBSTR(SQLERRM, 1, 255)); UTL_FILE.FCLOSE(V_FILE); END P_GERA_XML; / [As partes desta mensagem que não continham texto foram removidas]