Ola amigos
Estou a tentar correr esta procedure e da-me este erro, alguém me pode ajudar? ORA-29283: invalid file operation ORA-06512: at "SYS.UTL_FILE", line 475 ORA-29283: invalid file operation ORA-06512: at "CARLOSPINTO.CRIARTESTE", line 38 ORA-06512: at line 2 O parâmetro é k:\teste CREATE OR REPLACE PROCEDURE CARLOSPINTO.CriarTeste IS CURSOR c_Param(pc_param VARCHAR2) IS SELECT valor FROM alertran42.PAR WHERE parametro = pc_param; CURSOR c_telefones is SELECT nome, localidade, sector, telefone, telefone_2, terminal FROM telefones; v_ficheiro_criado BOOLEAN; v_directorio VARCHAR2(100); v_NomeFicheiro VARCHAR2(2000); v_Ficheiro_UTL UTL_FILE.FILE_TYPE; v_linha VARCHAR2(2000); BEGIN OPEN c_Param('PARAMCARLOS'); FETCH c_Param INTO v_directorio; CLOSE c_Param; v_ficheiro_criado := FALSE; FOR r_telefones IN c_telefones LOOP IF NOT v_ficheiro_criado THEN -- No se habia creado todavia el fichero (para evitar fichero vacios). v_ficheiro_criado := TRUE; v_NomeFicheiro := 'TELEFONE' || sysdate; -- dbms_output.put_line(V_NOMEFICHEIRO); v_Ficheiro_UTL := UTL_FILE.FOPEN(v_directorio, v_NomeFicheiro, 'W'); END IF; v_linha := NULL; v_linha := r_telefones.nome || CHR(9); v_linha := v_linha || r_telefones.localidade || CHR(9); v_linha := v_linha || r_telefones.sector || CHR(9); v_linha := v_linha || r_telefones.telefone || CHR(9); v_linha := v_linha || r_telefones.telefone_2 || CHR(9); v_linha := v_linha || r_telefones.terminal || CHR(9); UTL_FILE.PUT_LINE(v_Ficheiro_UTL, v_linha); END LOOP; IF v_ficheiro_criado THEN -- Hemos generado un fichero. -- => Lo cerramos UTL_FILE.FCLOSE(v_Ficheiro_UTL); END IF; COMMIT; end CriarTeste; Obrigado a todos. Carlos [As partes desta mensagem que não continham texto foram removidas]