Estou tendo um problema que aparentemente é com o tamanho da linha no UTL_FILE. Eu cheguei a essa conclusão por que linhas pequenas são inseridas normalmente.
Infelizmente eu não pude ter certeza pois, eu estive procurando sobre propriedades do UTL_FILE e não encontrei nada relacionado a limites de caracteres na linha... Alguém tem alguma informação que possa me ser util?
Segue o código:
PROCEDURE CRI_ARQ_SAIDA(LINE IN VARCHAR2, NOME_FILE IN VARCHAR2) IS
ARQUIVO_SAIDA UTL_FILE.FILE_TYPE;
--VARIAVEIS DE CONFIGURAÇÃO
FOLDER VARCHAR2(30) := '/tmp';
FILE_NAME VARCHAR2(30) := NOME_FILE ||'.txt';
BEGIN
--GRAVA ARQUIVO DE SAIDA
ARQUIVO_SAIDA := UTL_FILE.Fopen(FOLDER , FILE_NAME , 'A');
UTL_FILE.PUT_LINE(ARQUIVO_SAIDA , LINE);
UTL_FILE.Fclose(ARQUIVO_SAIDA);
EXCEPTION
WHEN Others THEN
DBMS_OUTPUT.PUT_LINE(TO_CHAR(SYSDATE, 'dd/mm/yyy - hh:mm:ss') ||'### ERRO DURANTE A GRAVAÇÃO DO ARQUIVO. ###');
END CRI_ARQ_SAIDA;
DECLARE
VAR_HEADER VARCHAR2(4455);
BEGIN
/* Formatar o registro de HEADER do arquivo de saída 2: */
VAR_HEADER := LPAD('0',2,' ')|| /*RHCT_TP_REG*/
TO_CHAR(SYSDATE,'DDMMYYYY')||/*RHCT_DT_ARQ*/
'01'||/*RHCT_NO_VERSAO*/
'1'||/*RHCT_CD_REMESSA*/
RPAD('TESTE',8,' ')||/*RHCT_NM_APLIC*/
LPAD('4455',4,' ')||/*RHCT_NO_TAM_REG*/
LPAD(' ',4424,' ')||/*RHCT_FILLER*/
LPAD('1',6,' ');/*RHCT_SEQUENCIA*/
CRI_ARQ_SAIDA(VAR_HEADER, 'CARGA_TESTE_ARQ1');
END;
Obrigado a Todos...