Insert line in file with UTL_FILE

Hello

Its possible to insert a line in the middle of a text file with UTL_FILE?

Thank you...

PD: Sorry for my enghish.

AJTorregroza wrote:
Hello

Its possible to insert a line in the middle of a text file with UTL_FILE?

Thank you...

PD: Sorry for my enghish.

You will not be able to insert in the middle of an existing with UTL_FILE file, you can only add the end of it.
You have to do is to read the source file line-by-line, write in a new file, then insert your additional tele-health when it is required, as you write. To there end, you can then delete the original file and rename the a new name of origin.

Tags: Database

Similar Questions

  • How to create files with UTL_FILE client-side?

    Hello

    I would like to be able to generate files in the client operating system, without making use of dbms_output, sql * more. I actually thought, it should be possible to do this task with UTL_FILE. See this link:

    http://download.Oracle.com/docs/CD/B28359_01/AppDev.111/b28419/u_file.htm

    Read you: 'UTL_FILE provides access to both client-side and server-side files. When run on the server UTL_FILE gives access to all the operating system files that are accessible from the server. Client side, as is the case for Forms applications, UTL_FILE provides access to operating system files that are accessible from the client. »

    But I can't create a directory on the client side object... How is possible to write files on my client OS?

    Thanks in advance,

    Xenofon

    UTL_FILE is always executed on the database server side. Therefore, to create the file using UTL_FILE client-side you need to map/mount client drive on the database server and make sure that oracle user has appropriate access to him.

    SY.

  • Unable to generate the complete file with UTL_FILE

    Hello

    Please refer to the next simple room where I am generating a file on the DB server that should contain 100,000 lines of code.

    declare
    l_fil utl_file.file_type;

    cursor c1 is
    Select *.
    of rats_txtio;

    Start

    l_fil: = utl_file.fopen('SRS_CSD_DIR','rats3.txt','w',32767);

    I'm looping c1
    UTL_FILE.put_line (l_fil, to_char (i.SNO));

    UTL_FILE.fflush (l_fil);

    end loop;

    UTL_FILE.fclose (l_fil);

    end;

    rats_txtio is a table which has sno as one of the columns. The table has 100 thousand records, with sno from 1 and ending with 100000.

    However, after you generate the file, when I display the contents of the file on the server, there only 95123 lines, starting with 1 and ending with 95123.

    Let me know, if there is no parameter causing a restriction on the number of lines that can be generated, or is there something missing in the code.

    Thanking you,
    Rocky.

    Can you provide a reproducible test for us case?

    SQL> ed
    Wrote file afiedt.buf
    
      1  declare
      2    l_fil utl_file.file_type;
      3    cursor c1 is
      4    select rownum as sno
      5    from dual
      6    connect by rownum <= 100000;
      7  begin
      8    l_fil := utl_file.fopen('TEST_DIR','rats3.txt','w',32767);
      9    for i in c1 loop
     10      utl_file.put_line(l_fil,to_char(i.sno));
     11      utl_file.fflush(l_fil);
     12    end loop;
     13    utl_file.fclose(l_fil);
     14* end;
    SQL> /
    
    PL/SQL procedure successfully completed.
    
    SQL>
    

    When I open this file in word and examine the properties it tells me there are 100,000 lines.

    Looks ok to me. What you do differently?

    How do you count the number of rows returned by your query?
    How do you count the number of lines in the file?

  • Cannot create a file with UTL_FILE. FOPEN

    Dear all,

    I use this syntax for creating a file in the window
    I declare it like this

    l_file_id UTL_FILE.file_type;

    l_file_name: = 'DHL_ ' | 110570284 | » _'|| To_char (sysdate, 'ddmmyyyy') |'. txt'

    l_file_id: = UTL_FILE. FOPEN ('c:\D2R',l_file_name,'W');

    Is - this work of syntax?
    My version of the database is oralce 10g

    Thank you

    Yes, the file you are creating will be in the specified directory.

    You can also request that the file is available in the directory.

    SELECT dbms_lob.fileexists (BFILENAME ('DIR_X', 'emp.txt'))
      FROM dual;
    

    If the return value is 1, then the file is available in the directory. If 0, then the file does not exist.
    Where DIR_X is the directory created previously.

    Thank you
    Shankar

  • Reading file with utl_file utility when on the shared Windows directories

    Good evening

    I got in trouble for reading and writing files on the OS file system using utl_file when the destination directory is a shared directory of a Windows OS being the Oracle on a Unix/Linux OS database. Looks like he can not see the directory and allows to get an Exception for invalid file operation. The unix server doesn't have Samba installed, I'm looking for alternatives to make it work.

    Please help me if you can. Ask for more details if you think that the explation above is not very clear.

    I appreciate all of your entries.
    Thiago Santana.

    Hello Thiago,

    One of the restriction that a UTL_FILE package is that the folder or path must belong to the same operating system.

    Kind regards
    Christian Balz

  • faced with the question when writing data to a flat file with UTL_FILE.

    Hi gurus,

    We have a procedure that writes the data from the table to a flat file. RAC is implemented on this database.
    While writing data if the current instance, this procedure creates two copies of the data in parts.

    Any body can help me to solve this problem.

    Thanks in advance...

    I also asked this question, but it seems no final solution...

    In any case, here are two possibilities
    (1) the directory for the file among all nodes share
    (2) run you a procedure on a specific node

  • Read last line of a log of the file using UTL_FILE

    Hi all

    My environment is--> Oracle 11 g Database Release 1 on Windows 2003 Server SP2.
    Requirement is-> reading last line of a log file with UTL_FILE.

    I am reading the last line of a log file that is generated by our own application. I am able to get the last row using the script but the problem below is in the log file, has some blank lines at the end so I get the output as white.

    Script
    Declare
    DIRECTORY VARCHAR2 (300): = 'BACKUP ';
    name VARCHAR2 (300): = 'Client_Log_02-05 - 2011.log';
    l_file UTL_FILE.file_type;
    l_text VARCHAR2 (32767).
    BEGIN

    l_file: = UTL_FILE.fopen (DIRECTORY, filename, 'r', 32767);
    UTL_FILE.get_line (l_file, l_text, 32767);
    -DBMS_OUTPUT.put_line (' Frontline: |' | l_text |) '|');
    BEGIN
    LOOP
    UTL_FILE.get_line (l_file, l_text, 32767);
    END LOOP;
    EXCEPTION
    WHEN NO_DATA_FOUND
    THEN
    NULL;
    END;
    Dbms_output.put_line (' last line: |' | l_text |) '|');
    UTL_FILE.fclose (l_file);
    END;

    Please advice me how to skip/ignore empty lines... If you have web links or scripts please share.

    Thank you for your help

    Shan

    I think that there are many ways... we have to save the last string that is not empty like this:

    DECLARE
        directory   VARCHAR2 (300) := 'BACKUP';
        filename    VARCHAR2 (300) := 'Client_Log_02-05-2011.log';
        l_file      UTL_FILE.file_type;
        l_text      VARCHAR2 (32767);
        l_text_not_null      VARCHAR2 (32767);
    BEGIN
        l_file :=
            UTL_FILE.fopen (directory,
                            filename,
                            'r',
                            32767);
        UTL_FILE.get_line (l_file, l_text, 32767);
    
        BEGIN
            LOOP
                UTL_FILE.get_line (l_file, l_text, 32767);
                IF REPLACE (REPLACE (TRIM (l_text), CHR (10)), CHR (13)) IS NOT NULL THEN
                   l_text_not_null := l_text;
                END IF;
            END LOOP;
        EXCEPTION
            WHEN NO_DATA_FOUND
            THEN
                NULL;
        END;
        DBMS_OUTPUT.put_line ('Last Line : |' || NVL(l_text_not_null, l_text) || '|');
        UTL_FILE.fclose (l_file);
    END;
    
  • File generated with utl_file with the owner of the different operating system.

    Hello
    I'm trying to generate a file with utl_file for a procedure with the other proprietary operating system. When I call sqlplus procedure, the file has oracle and oinstall group as the owner. I create another user of the os and I want to when I call the procedure for this user to have this new user as the owner.
    I put this procedure in cron and the file have new user as long as owner, but when I call this procedure from sqlplus, the generated file have os oracle as the owner user.
    What I can do.
    Thanks in advance.

    Published by: danut68 on October 1st, 2009 04:17

    because the task has a manual task of change-the-owner after you have created the file?

    Maybe this link will prove of some help: http://forums13.itrc.hp.com/service/forums/questionanswer.do?admit=109447627+1254397858882+28353475&threadId=524589

    In regard to "special request"... why? What is the reason for your PM wanting to make this special request?

  • Need help: loop of pl/sql with UTL_FILE reading and analysis of file text 2

    Hello, I am working on a new project using the UTL_FILE utility in oracle 11 g. and I was wondering if someone could help me with a pl/sql code, I can't understand.
    My goal is to open and then read a Type_de_fichier file1.txt
    copy a specific paragraph of the file1.txt where
    the first word in a specific line in the file1.txt starts with "foo" then when the last word in fichier1.txt ends in 'ZEN'
    write to file2.txt only the analysis section in my where statement.
    I don't know if it's possible, but any guidance will greatly appreciate!

    My code example:

    CREATE OR REPLACE PROCEDURE my_app2 IS
    Utl_file.file_type inFile;
    OutFile utl_file.file_type;
    buffer VARCHAR2 (30000);
    BEGIN
    -Open a file to read
    InFile: = utl_file.fopen ('TEST_DIR', 'mytst.txt', 'r');
    -Opens a file for writing
    OutFile: = utl_file.fopen ('TEST_DIR', "Out.txt", "w");

    -Check the file is open
    IF utl_file.is_open (InFile) THEN
    -lines in the file in loop
    LOOP
    BEGIN
    UTL_FILE.get_line (InFile, buffer);
    -Write to out.txt
    UTL_FILE.put_line (OutFile, buffer, FALSE);
    UTL_FILE.fflush (outfile);

    EXCEPTION
    WHEN NO_DATA_FOUND THEN
    EXIT;
    END;
    END LOOP;
    END IF;
    UTL_FILE.fclose (INFILE);
    UTL_FILE.fclose (outfile);
    EXCEPTION
    WHILE OTHERS THEN
    RAISE_APPLICATION_ERROR (-20099, "UTL_FILE Unknown Error");
    END my_app2l;
    /

    Hello

    According to the code should work-

    CREATE OR REPLACE PROCEDURE my_app2 IS
       infile              utl_file.file_type;
       outfile             utl_file.file_type;
       buffer              VARCHAR2(30000);
       b_paragraph_started BOOLEAN := FALSE; -- flag to indicate that required paragraph is started
    BEGIN
       -- open a file to read
       infile := utl_file.fopen('TEST_DIR', 'mytst.txt', 'r');
       -- open a file to write
       outfile := utl_file.fopen('TEST_DIR', 'out.txt', 'w');
    
       -- check file is opened
       IF utl_file.is_open(infile)
       THEN
          -- loop lines in the file
          LOOP
             BEGIN
                utl_file.get_line(infile, buffer);
    
                IF buffer LIKE 'foo%' OR b_paragraph_started
                THEN
                   --write to out.txt
                   utl_file.put_line(outfile, buffer, FALSE);
                   b_paragraph_started := TRUE;
                END IF;
    
                IF buffer LIKE '%ZEN'
                THEN
                   b_paragraph_started := FALSE;
                END IF;
                utl_file.fflush(outfile);
    
             EXCEPTION
                WHEN no_data_found THEN
                   EXIT;
             END;
          END LOOP;
       END IF;
       utl_file.fclose(infile);
       utl_file.fclose(outfile);
    EXCEPTION
       WHEN OTHERS THEN
          raise_application_error(-20099, 'Unknown UTL_FILE Error');
    END my_app2l;
    /
    

    What I've done here is added a new Boolean variable. Loop in each iteration after reading one line, we check if the line starts with "foo". If yes then set the Boolean variable and writing out the startup file until we get a line that ends with "ZEN." That way even if there are several paragraphs in an input file starting with foo and ending with ZEN, then those should get copied to the output file.

    Hope this helps,

    -Gregory

  • Call a visual basic executable file with arguments command line using LABView

    Hi all

    I try to call a visual basic executable file with a command line using LABView 2014 argument. What I'm trying to accomplish executes an executable file that communicates with a device via a COM port. So, I would open the .exe with a command line argument to communicate via com 3 using the SYSTEM Exec VI. It seems that the command prompt window flashes and closes and then nothing happens. Not a lot of discussions about this on the forum. Any help would be greatly appreciated. Thank you.

    With some programs, instead of passing in the string:

    Somefile.exe

    Instead, you can use:

    cmd /c "C:\Full Path\to the EXE\Somefile.exe"

    Can you tell us what exactly you are trying to run?

  • I am running windows vista on the PC of my church and have inserted a USB stick with a MP4 file on it, but I can not read this file.

    I am running windows vista on the PC of my church and have inserted a USB stick with a MP4 file on it, but I can not read this file. Can I get help?

    I created a video for our Church on a desktop of Windows 7 through Pinnacle Studio 14 (editor) and registered as a .mp4 file. I then put it on a flash drive and put the flash drive in the computer of the Church, that is running Windows Vista, and the file will not play. Please provide help quickly!

    -Corey

    You need a media player that is compatible with .mp4 files.

    The following preferential ticket should solve your dilemma.

    (FWIW... it's always a good idea to create a system)
    Restore point before installing software or updates)

    VLC Media Player
    http://www.filehippo.com/download_vlc/
    (works on XP/Vista/7)

  • I upgraded from XP to Windows 7 now to print PDF files with the line down side of the document.

    I upgraded from XP to Windows Professional 7 Professional now print PDF files with line down side of the document. The line does not appear in the document only on the printed page. I reinstalled and lines still there. I tried PDF disturbances and he pulled out the line at the bottom of the page, but not on the side of the document.  The error log is full of printing errors. Any suggestions?

    Your problem solved and answered?

    J W Stuart: http://www.pagestart.com

  • with utl_file - save the result in a txt file.

    PLS, help...

    I have a question that I used to use SQL PLUS, using the COIL and it worked very well.

    Now, I'm changing it to pl/sql, which I'll have to use UTL_FILE.

    The problem is that I need to create a file with a pre defined provision.

    Can help you me pls?

    Don't have much experience with UTL_FILE

    Prompt 'Periodo MON-YY:'
    Define periodo = '&periodo'
    SPOOL C:\Users\gtorrens\Documents\GLAudit_2014_2015\gl_audit-&&periodo..txt
    set termout off
    set echo off
    set verify off
    set feedback off
    set serveroutput off
    set head off
    set pagesize 0
    set linesize 608
    set timing off 
    SELECT /*+
             INDEX(GCC GL_CODE_COMBINATIONS_U1)
             INDEX(GJB GL_JE_BATCHES_U1)
             INDEX(FUS FND_USER_U1)
             INDEX(GJL GL_JE_LINES_U1)*/
              rpad(SUBSTR (gcc.segment1, 1, 2),2,' ')
               || rpad(TRANSLATE (
                    CONVERT (
                    TRANSLATE (
                        REPLACE(REPLACE (REPLACE (SUBSTR (emp.de_sgm, 1, 70), CHR (13), ''), CHR (10), ''),CHR (9), '')
                       ,'??????????????????¡§©³º ¨¬²¹¢ª®´»£µ«¼!@#$%*()_+=[]{}/\?:<>|ãÃõÕçÇüÜâÂêÊôÔáÁàÀéÉíÍóÓúÚñшÞ'
                       ,'                                                             aAoOcCuUaAeEoOaAaAeEiIoOuUnN  ')
                   ,'US7ASCII'
                   ,'WE8ISO8859P1') ,'?',' '),70,' ')
               || rpad(SUBSTR (gjs.user_je_source_name, 1, 20),20,' ')
               || lpad(DECODE (NVL (gjl.entered_dr, 0)
                        , 0, DECODE (NVL (gjl.accounted_dr, 0), 0, 'C', 'D')
                        , 'D'),1,' ')
               || lpad(TO_CHAR (gjh.default_effective_date, 'DD-MON-YY'),9,' ')
               || lpad(TO_CHAR (gjh.posted_date, 'DD-MON-YY'),9,' ')
               || lpad(SUBSTR (gcc.segment2, 1, 9),9,' ')
               || rpad(TRANSLATE (
                    CONVERT (
                    TRANSLATE (
                        REPLACE(REPLACE (REPLACE (SUBSTR (cta.de_sgm, 1, 100), CHR (13), ''), CHR (10), ''),CHR (9), '')
                       ,'??????????????????¡§©³º ¨¬²¹¢ª®´»£µ«¼!@#$%*()_+=[]{}/\?:<>|ãÃõÕçÇüÜâÂêÊôÔáÁàÀéÉíÍóÓúÚñшÞ'
                       ,'                                                             aAoOcCuUaAeEoOaAaAeEiIoOuUnN  ')
                   ,'US7ASCII'
                   ,'WE8ISO8859P1') ,'?',' '),100,' ')
               || rpad(SUBSTR (cta.tp_sgm, 1, 10),10,' ')
               || lpad(TO_CHAR (NVL (gjl.accounted_dr, 0),'999G999G999G999G999G990D00'),38,' ')
               || lpad(TO_CHAR (NVL (gjl.accounted_cr, 0),'999G999G999G999G999G990D00'),38,' ')
               || lpad(SUBSTR (gjh.currency_code, 1, 5),5,' ')
               || rpad(TRANSLATE (
                    CONVERT (
                    TRANSLATE (
                        REPLACE(REPLACE (REPLACE (REPLACE (SUBSTR (gjl.description, 1, 150), '|', '@'), CHR (13), ''), CHR (10), ''),CHR (9), '')
                       ,'??????????????????¡§©³º ¨¬²¹¢ª®´»£µ«¼!@#$%*()_+=[]{}/\?:<>|ãÃõÕçÇüÜâÂêÊôÔáÁàÀéÉíÍóÓúÚñшÞ'
                       ,'                                                             aAoOcCuUaAeEoOaAaAeEiIoOuUnN  ')
                   ,'US7ASCII'
                   ,'WE8ISO8859P1') ,'?',' '),150,' ')
               || rpad(gjb.last_updated_by,15,' ')
               || rpad(TRANSLATE (
                    CONVERT (
                    TRANSLATE (
                        REPLACE(REPLACE (REPLACE (SUBSTR (gjb.name, 1, 100), CHR (13), ''), CHR (10), ''),CHR (9), '')
                       ,'??????????????????¡§©³º ¨¬²¹¢ª®´»£µ«¼!@#$%*()_+=[]{}/\?:<>|ãÃõÕçÇüÜâÂêÊôÔáÁàÀéÉíÍóÓúÚñшÞ'
                       ,'                                                             aAoOcCuUaAeEoOaAaAeEiIoOuUnN  ')
                   ,'US7ASCII'
                   ,'WE8ISO8859P1') ,'?',' '),100,' ')
               || lpad(SUBSTR (fus.user_name, 1, 30),30, ' ')
                 linha_utl
          FROM gl_je_lines gjl
             , gl_je_headers gjh
             , gl_code_combinations gcc
             , gl_je_sources gjs
             , gl_je_batches gjb
             , (SELECT 'EMPRESA' id_sgm
                     , a.flex_value cd_sgm
                     , b.description de_sgm
                     , DECODE (SUBSTR (a.compiled_value_attributes, 5, 1)
                             , 'L', 'Passivo'
                             , 'A', 'Ativo'
                             , 'E', 'Despesa'
                             , 'O', 'Pat.Liq'
                             , 'R', 'Receita')
                         tp_sgm
                  FROM fnd_flex_values_vl a, fnd_flex_values_tl b
                 WHERE a.flex_value_set_id = 1015197
                   AND a.flex_value_id = b.flex_value_id
                   AND b.language = 'PTB') emp
             , ( SELECT 'CONTA' id_sgm
                       , a.flex_value cd_sgm
                       , b.description de_sgm
                       , DECODE (SUBSTR (a.compiled_value_attributes, 5, 1)
                               , 'L', 'Passivo'
                               , 'A', 'Ativo'
                               , 'E', 'Despesa'
                               , 'O', 'Pat.Liq'
                               , 'R', 'Receita')
                           tp_sgm
                    FROM fnd_flex_values_vl a, fnd_flex_values_tl b
                   WHERE a.flex_value_set_id = 1015237
                     AND a.flex_value_id = b.flex_value_id
                     AND b.language = 'PTB') cta
             , fnd_user fus
         WHERE gjl.je_header_id = gjh.je_header_id
           AND gjb.je_batch_id = gjh.je_batch_id
           AND gjs.je_source_name = gjh.je_source
           AND gjh.ledger_id = 2041 -- p_nr_livro
           AND gjh.actual_flag = 'A'
           AND gjh.period_name = upper('&&periodo') -- 'JAN-14'
           AND gcc.code_combination_id = gjl.code_combination_id
           AND gcc.segment1 IN ('01', '12', '13', '14', '05', '16', '18')
           AND emp.id_sgm = 'EMPRESA'
           AND emp.cd_sgm = gcc.segment1
           AND cta.id_sgm = 'CONTA'
           AND cta.cd_sgm = gcc.segment2
           AND fus.user_id = gjb.last_updated_by
        --  AND rownum<1001
           ;
        SELECT /*+
             INDEX(GCC GL_CODE_COMBINATIONS_U1)
             INDEX(GJB GL_JE_BATCHES_U1)
             INDEX(FUS FND_USER_U1)
             INDEX(GJL GL_JE_LINES_U1)*/
                    (lpad(TO_CHAR (NVL (SUM(gjl.accounted_dr), 0),'999G999G999G999G999G990D00'),268,' ')) /*VL_DEBITO*/
             ||' '||(lpad(TO_CHAR (NVL (SUM(gjl.accounted_cr), 0),'999G999G999G999G999G990D00'),37 ,' ')) /*VL_CREDITO*/
             ||' '|| TO_CHAR (COUNT (*)) soma /*qtd_reg*/
          FROM gl_je_lines gjl
             , gl_je_headers gjh
             , gl_code_combinations gcc
             , gl_je_sources gjs
             , gl_je_batches gjb
             , (SELECT 'EMPRESA' id_sgm
                     , a.flex_value cd_sgm
                     , b.description de_sgm
                     , DECODE (SUBSTR (a.compiled_value_attributes, 5, 1)
                             , 'L', 'Passivo'
                             , 'A', 'Ativo'
                             , 'E', 'Despesa'
                             , 'O', 'Pat.Liq'
                             , 'R', 'Receita')
                         tp_sgm
                  FROM fnd_flex_values_vl a, fnd_flex_values_tl b
                 WHERE a.flex_value_set_id = 1015197
                   AND a.flex_value_id = b.flex_value_id
                   AND b.language = 'PTB') emp
             , ( SELECT 'CONTA' id_sgm
                       , a.flex_value cd_sgm
                       , b.description de_sgm
                       , DECODE (SUBSTR (a.compiled_value_attributes, 5, 1)
                               , 'L', 'Passivo'
                               , 'A', 'Ativo'
                               , 'E', 'Despesa'
                               , 'O', 'Pat.Liq'
                               , 'R', 'Receita')
                           tp_sgm
                    FROM fnd_flex_values_vl a, fnd_flex_values_tl b
                   WHERE a.flex_value_set_id = 1015237
                     AND a.flex_value_id = b.flex_value_id
                     AND b.language = 'PTB') cta
             , fnd_user fus
         WHERE gjl.je_header_id = gjh.je_header_id
           AND gjb.je_batch_id = gjh.je_batch_id
           AND gjs.je_source_name = gjh.je_source
           AND gjh.ledger_id = 2041
           AND gjh.actual_flag = 'A'
           AND gjh.period_name = '&&periodo' -- 'JAN-14'
           AND gcc.code_combination_id = gjl.code_combination_id
           AND gcc.segment1 IN ('01', '12', '13', '14', '05', '16', '18')
           AND emp.id_sgm = 'EMPRESA'
           AND emp.cd_sgm = gcc.segment1
           AND cta.id_sgm = 'CONTA'
           AND cta.cd_sgm = gcc.segment2
           AND fus.user_id = gjb.last_updated_by
          -- and rownum<1001;
                  
    spool off;
    
    

    I did something like that, when I turned it in a procedure...

    create or replace PROCEDURE       XXTVGAUDIT (o_return_err      OUT VARCHAR2
                                                  , o_return_code     OUT NUMBER
                                                  , p_period_name  IN     VARCHAR2
                                                  , p_nr_livro     IN     NUMBER)
    IS
      CURSOR c1
      IS
    SELECT
              rpad(SUBSTR (gcc.segment1, 1, 2),2,' ')
               || rpad(TRANSLATE (
                    CONVERT (
                    TRANSLATE (
                        REPLACE(REPLACE (REPLACE (SUBSTR (emp.de_sgm, 1, 70), CHR (13), ''), CHR (10), ''),CHR (9), '')
                       ,'??????????????????¡§©³º ¨¬²¹¢ª®´»£µ«¼!@#$%*()_+=[]{}/\?:<>|ãÃõÕçÇüÜâÂêÊôÔáÁàÀéÉíÍóÓúÚñшÞ'
                       ,'                                                             aAoOcCuUaAeEoOaAaAeEiIoOuUnN  ')
                   ,'US7ASCII'
                   ,'WE8ISO8859P1') ,'?',' '),70,' ')
               || rpad(SUBSTR (gjs.user_je_source_name, 1, 20),20,' ')
               || lpad(DECODE (NVL (gjl.entered_dr, 0)
                        , 0, DECODE (NVL (gjl.accounted_dr, 0), 0, 'C', 'D')
                        , 'D'),1,' ')
               || lpad(TO_CHAR (gjh.default_effective_date, 'DD-MON-YY'),9,' ')
               || lpad(TO_CHAR (gjh.posted_date, 'DD-MON-YY'),9,' ')
               || lpad(SUBSTR (gcc.segment2, 1, 9),9,' ')
               || rpad(TRANSLATE (
                    CONVERT (
                    TRANSLATE (
                        REPLACE(REPLACE (REPLACE (SUBSTR (cta.de_sgm, 1, 100), CHR (13), ''), CHR (10), ''),CHR (9), '')
                       ,'??????????????????¡§©³º ¨¬²¹¢ª®´»£µ«¼!@#$%*()_+=[]{}/\?:<>|ãÃõÕçÇüÜâÂêÊôÔáÁàÀéÉíÍóÓúÚñшÞ'
                       ,'                                                             aAoOcCuUaAeEoOaAaAeEiIoOuUnN  ')
                   ,'US7ASCII'
                   ,'WE8ISO8859P1') ,'?',' '),100,' ')
               || rpad(SUBSTR (cta.tp_sgm, 1, 10),10,' ')
               || lpad(TO_CHAR (NVL (gjl.accounted_dr, 0),'999G999G999G999G999G990D00'),38,' ')
               || lpad(TO_CHAR (NVL (gjl.accounted_cr, 0),'999G999G999G999G999G990D00'),38,' ')
               || lpad(SUBSTR (gjh.currency_code, 1, 5),5,' ')
               || rpad(TRANSLATE (
                    CONVERT (
                    TRANSLATE (
                        REPLACE(REPLACE (REPLACE (REPLACE (SUBSTR (gjl.description, 1, 150), '|', '@'), CHR (13), ''), CHR (10), ''),CHR (9), '')
                       ,'??????????????????¡§©³º ¨¬²¹¢ª®´»£µ«¼!@#$%*()_+=[]{}/\?:<>|ãÃõÕçÇüÜâÂêÊôÔáÁàÀéÉíÍóÓúÚñшÞ'
                       ,'                                                             aAoOcCuUaAeEoOaAaAeEiIoOuUnN  ')
                   ,'US7ASCII'
                   ,'WE8ISO8859P1') ,'?',' '),150,' ')
               || rpad(gjb.last_updated_by,15,' ')
               || rpad(TRANSLATE (
                    CONVERT (
                    TRANSLATE (
                        REPLACE(REPLACE (REPLACE (SUBSTR (gjb.name, 1, 100), CHR (13), ''), CHR (10), ''),CHR (9), '')
                       ,'??????????????????¡§©³º ¨¬²¹¢ª®´»£µ«¼!@#$%*()_+=[]{}/\?:<>|ãÃõÕçÇüÜâÂêÊôÔáÁàÀéÉíÍóÓúÚñшÞ'
                       ,'                                                             aAoOcCuUaAeEoOaAaAeEiIoOuUnN  ')
                   ,'US7ASCII'
                   ,'WE8ISO8859P1') ,'?',' '),100,' ')
               || lpad(SUBSTR (fus.user_name, 1, 30),30, ' ')
                 linha_utl
          FROM gl_je_lines gjl
             , gl_je_headers gjh
             , gl_code_combinations gcc
             , gl_je_sources gjs
             , gl_je_batches gjb
             , (SELECT 'EMPRESA' id_sgm
                     , a.flex_value cd_sgm
                     , b.description de_sgm
                     , DECODE (SUBSTR (a.compiled_value_attributes, 5, 1)
                             , 'L', 'Passivo'
                             , 'A', 'Ativo'
                             , 'E', 'Despesa'
                             , 'O', 'Pat.Liq'
                             , 'R', 'Receita')
                         tp_sgm
                  FROM fnd_flex_values_vl a, fnd_flex_values_tl b
                 WHERE a.flex_value_set_id = 1015197
                   AND a.flex_value_id = b.flex_value_id
                   AND b.language = 'PTB') emp
             , ( SELECT 'CONTA' id_sgm
                       , a.flex_value cd_sgm
                       , b.description de_sgm
                       , DECODE (SUBSTR (a.compiled_value_attributes, 5, 1)
                               , 'L', 'Passivo'
                               , 'A', 'Ativo'
                               , 'E', 'Despesa'
                               , 'O', 'Pat.Liq'
                               , 'R', 'Receita')
                           tp_sgm
                    FROM fnd_flex_values_vl a, fnd_flex_values_tl b
                   WHERE a.flex_value_set_id = 1015237
                     AND a.flex_value_id = b.flex_value_id
                     AND b.language = 'PTB') cta
             , fnd_user fus
         WHERE gjl.je_header_id = gjh.je_header_id
           AND gjb.je_batch_id = gjh.je_batch_id
           AND gjs.je_source_name = gjh.je_source
           AND gjh.ledger_id = 2041 -- p_nr_livro
           AND gjh.actual_flag = 'A'
           AND gjh.period_name = upper('null') -- 'JAN-14'
           AND gcc.code_combination_id = gjl.code_combination_id
           AND gcc.segment1 IN ('01', '12', '13', '14', '05', '16', '18')
           AND emp.id_sgm = 'EMPRESA'
           AND emp.cd_sgm = gcc.segment1
           AND cta.id_sgm = 'CONTA'
           AND cta.cd_sgm = gcc.segment2
           AND fus.user_id = gjb.last_updated_by
          AND rownum<1001;
          
      CURSOR c2
      IS
        SELECT /*+
             INDEX(GCC GL_CODE_COMBINATIONS_U1)
             INDEX(GJB GL_JE_BATCHES_U1)
             INDEX(FUS FND_USER_U1)
             INDEX(GJL GL_JE_LINES_U1)*/
                    (lpad(TO_CHAR (NVL (SUM(gjl.accounted_dr), 0),'999G999G999G999G999G990D00'),268,' ')) /*VL_DEBITO*/
             ||' '||(lpad(TO_CHAR (NVL (SUM(gjl.accounted_cr), 0),'999G999G999G999G999G990D00'),37 ,' ')) /*VL_CREDITO*/
             ||' '|| TO_CHAR (COUNT (*)) soma /*qtd_reg*/
          FROM gl_je_lines gjl
             , gl_je_headers gjh
             , gl_code_combinations gcc
             , gl_je_sources gjs
             , gl_je_batches gjb
             , (SELECT 'EMPRESA' id_sgm
                     , a.flex_value cd_sgm
                     , b.description de_sgm
                     , DECODE (SUBSTR (a.compiled_value_attributes, 5, 1)
                             , 'L', 'Passivo'
                             , 'A', 'Ativo'
                             , 'E', 'Despesa'
                             , 'O', 'Pat.Liq'
                             , 'R', 'Receita')
                         tp_sgm
                  FROM fnd_flex_values_vl a, fnd_flex_values_tl b
                 WHERE a.flex_value_set_id = 1015197
                   AND a.flex_value_id = b.flex_value_id
                   AND b.language = 'PTB') emp
             , ( SELECT 'CONTA' id_sgm
                       , a.flex_value cd_sgm
                       , b.description de_sgm
                       , DECODE (SUBSTR (a.compiled_value_attributes, 5, 1)
                               , 'L', 'Passivo'
                               , 'A', 'Ativo'
                               , 'E', 'Despesa'
                               , 'O', 'Pat.Liq'
                               , 'R', 'Receita')
                           tp_sgm
                    FROM fnd_flex_values_vl a, fnd_flex_values_tl b
                   WHERE a.flex_value_set_id = 1015237
                     AND a.flex_value_id = b.flex_value_id
                     AND b.language = 'PTB') cta
             , fnd_user fus
         WHERE gjl.je_header_id = gjh.je_header_id
           AND gjb.je_batch_id = gjh.je_batch_id
           AND gjs.je_source_name = gjh.je_source
           AND gjh.ledger_id = 2041
           AND gjh.actual_flag = 'A'
           AND gjh.period_name = 'null' -- 'JAN-14'
           AND gcc.code_combination_id = gjl.code_combination_id
           AND gcc.segment1 IN ('01', '12', '13', '14', '05', '16', '18')
           AND emp.id_sgm = 'EMPRESA'
           AND emp.cd_sgm = gcc.segment1
           AND cta.id_sgm = 'CONTA'
           AND cta.cd_sgm = gcc.segment2
           AND fus.user_id = gjb.last_updated_by
           
           and rownum<1001;
      w_ind_erro     NUMBER;
      w_erro_geral   EXCEPTION;
    
    
      w_msg_erro     VARCHAR2 (240);
      w_linha        VARCHAR2 (1000);
    
    
      w_nm_arq_utl   UTL_FILE.file_type;
      w_nm_arq_utl_r UTL_FILE.file_type;
    
    
      w_nm_dir_dad   VARCHAR2 (80);
      --w_nm_int_dir_dad VARCHAR2 (80);
      --w_nm_arq_dad   VARCHAR2 (80);
      w_nm_arq_dad_aux VARCHAR2 (80);
      w_nm_arq_dad_qtd VARCHAR2 (80);
      
      P_DIRETORIO VARCHAR2(200) := '/tmp';
      P_ARQUIVO   VARCHAR2(200) := 'Desliga_mainframe_indices_economicos.csv';
      
      W_DIRETORIO VARCHAR2(50) := P_DIRETORIO;
      W_ARQUIVO   VARCHAR2(50) := P_ARQUIVO;
    
    
      w_qtd_reg      NUMBER;
    
    
      -- -----------------------------------------------
    
      PROCEDURE pr_abre_txt --(p_nm_dir IN VARCHAR2, p_nm_arq IN VARCHAR2, p_tp_abertura IN VARCHAR2)
      IS
      BEGIN
        w_nm_arq_utl := UTL_FILE.fopen ( W_DIRETORIO, W_ARQUIVO, 'W');
      EXCEPTION
        WHEN UTL_FILE.invalid_path THEN
          UTL_FILE.fclose (w_nm_arq_utl);
          raise_application_error (-20504, 'ERRO NA ABERTURA DO ARQUIVO: Caminho Invalido');
        WHEN UTL_FILE.invalid_mode THEN
          UTL_FILE.fclose (w_nm_arq_utl);
          raise_application_error (-20504, 'ERRO NA ABERTURA DO ARQUIVO: Modo Invalido');
        WHEN UTL_FILE.invalid_filehandle THEN
          UTL_FILE.fclose (w_nm_arq_utl);
          raise_application_error (-20504, 'ERRO NA ABERTURA DO ARQUIVO: Nome Arquivo Invalido');
        WHEN UTL_FILE.invalid_operation THEN
          UTL_FILE.fclose (w_nm_arq_utl);
          raise_application_error (-20504, 'ERRO NA ABERTURA DO ARQUIVO: Operacao Invalida');
        WHEN UTL_FILE.read_error THEN
          UTL_FILE.fclose (w_nm_arq_utl);
          raise_application_error (-20504, 'ERRO NA ABERTURA DO ARQUIVO: Erro Leitura');
        WHEN UTL_FILE.write_error THEN
          UTL_FILE.fclose (w_nm_arq_utl);
          raise_application_error (-20504, 'ERRO NA ABERTURA DO ARQUIVO: Erro Escrita');
        WHEN UTL_FILE.internal_error THEN
          UTL_FILE.fclose (w_nm_arq_utl);
          raise_application_error (-20504, 'ERRO NA ABERTURA DO ARQUIVO: Erro Interno');
      END pr_abre_txt;
    
    
      -- ------------------------------------------------------
      PROCEDURE pr_grava_txt (p_de_msg IN VARCHAR2)
      IS
      BEGIN
        UTL_FILE.put_line (w_nm_arq_utl, p_de_msg);
      EXCEPTION
        WHEN UTL_FILE.invalid_path THEN
          raise_application_error (-20503, 'ERRO AO GRAVAR: Caminho Invalido');
        WHEN UTL_FILE.invalid_mode THEN
          raise_application_error (-20503, 'ERRO AO GRAVAR: Modo Invalido');
        WHEN UTL_FILE.invalid_filehandle THEN
          raise_application_error (-20503, 'ERRO AO GRAVAR: Nome Arquivo Invalido');
        WHEN UTL_FILE.invalid_operation THEN
          raise_application_error (-20503, 'ERRO AO GRAVAR: Operacao Invalida');
        WHEN UTL_FILE.read_error THEN
          raise_application_error (-20503, 'ERRO AO GRAVAR: Erro Leitura');
        WHEN UTL_FILE.write_error THEN
          raise_application_error (-20503, 'ERRO AO GRAVAR: Erro Escrita');
        WHEN UTL_FILE.internal_error THEN
          raise_application_error (-20503, 'ERRO AO GRAVAR: Erro Interno');
      END pr_grava_txt;
    
    
      -- ------------------------------------------------------
      PROCEDURE pr_fecha_txt
      IS
      BEGIN
        UTL_FILE.fclose (w_nm_arq_utl);
      EXCEPTION
        WHEN OTHERS THEN
          raise_application_error (-20501, 'ERRO NO FECHAMENTO ARQUIVO DE LOG');
      END pr_fecha_txt;
      -- --------------------------------------------------------------------------------------------------
      BEGIN
      --PR_ABRE_TXT (W_NM_DIR_SQL, W_NM_ARQ_DAD ,'w');
      pr_abre_txt ( W_DIRETORIO, W_ARQUIVO, 'w');
    
    
      w_nm_arq_utl_r := UTL_FILE.fopen ( w_nm_arq_utl, w_nm_arq_dad_qtd, 'w');
     -- w_qtd_reg   := 0;
    
    
     /* FOR cur2 IN c2
      LOOP
        w_linha     := cur2.soma;
        pr_grava_txt (w_linha);
    
    
        w_qtd_reg   := w_qtd_reg + 1;
    
    
        --IF MOD (w_qtd_reg, 100000) = 0 THEN
          UTL_FILE.put_line (w_nm_arq_utl_r, 'Qtd. de linhas geradas = ' w_qtd_reg w_linha );
        --END IF;
      END LOOP;
    
    
     -- UTL_FILE.put_line (w_nm_arq_utl_r, 'Final de Qtd. de linhas geradas = ' || w_qtd_reg);
      UTL_FILE.fclose (w_nm_arq_utl_r);
      --*/
      -- --------------------------------------------------------------------------------------------------
      pr_fecha_txt;
      --
      -- --------------------------------------------------------------------------------------------------
    
    
    
    
    
    
    EXCEPTION
      WHEN w_erro_geral THEN
        raise_application_error (-20501, 'Parada por motivo de Erros na execução.');
    --
    END XXTVGAUDIT;
    

    Oracle Directory object is not OS directory. It is a definition saying Oracle which OS directory to use. When Oracle run

    v_file: = UTL_FILE.fopen ('TMP_DIR', 'output.log', 'W');

    He goes to the data dictionary and:

    1. it checks the Oracle directory object exists tmp_dir

    2. If the Oracle user is allowed to create files on this object directory Oracle (see WRITING privilege granted I posted)

    3 reflects the object of Oracle TMP_DIR for OS directory/tmp directory

    4 creates the file /tmp/output.og owned by OS oracle user with the appropriate permissions on the database server (assuming that OS directory Oracle Directory object points on exists and oracle OS user can create files there).

    Remember, most of the time the OS Oracle user created files permissions are such that the 'others' can even read.

    SY.

  • When you open a new session and after a decline in all the video files in the content area (the sound and the video is very good). After you have chosen a selection of clip the first clip that I post on the time line is equipped with sound. then the next

    When you open a new session and after a decline in all the video files in the content area (the sound and the video is very good). After choosing a selection of clip, the first clip that I post on the time line is equipped with sound. then the next clip, I chose (not dose issue)
    will have no sound. (but in the contact box everything its fine) Why is this?

    Why is this?

    Because you forgot to patch source audio track.

  • I'm trying to create a PDF file with several signature lines in that anyone can "Sign" by using their digital signature CAC (Common Access Card) active. The goal is to have a single document that people can open, sign on a designated line and save the doc

    I'm trying to create a PDF file with several signature lines in that anyone can "Sign" by using their digital signature CAC (Common Access Card) active. The goal is to have a single document that people can open, sign on a designated line and save the document (replacing the existing document) and close. Then another person can open the same document digitally sign another area of the form, save it, and close it. So on, and so on. Is there a way to do this? At the end of the day, I would end up with a PDF file with literally hundreds of signatures to enable different ACC everywhere...

    I don't understand what the problem is. In the post of the davidr96549424 on May 8, 2015 07:58 you presented a structure of a correct document. Is the issue of the creation of this structure in a PDF file? For this, you will need an Acrobat, not reader.

    XI in Acrobat, select Tools-> forms-Edit. Click 'No' on the form fields 'detect '. In the tasks Panel that opens, click on "add new field". Select "Digital Signature" and move it to the location in the document where you want to than the appearance of the signature to be. Repeat that for signature fields as you want. Users will sign by clicking on the prepared unsigned signature field which shows the dialog box "sign. Do not forget that as TSN has noted that a digital signature applies to the entire document. The entry in the document where it is is irrelevant. Each next signature covers all previous signatures.

    Your users can also sign a document from anywhere that they want without signature fields already prepared. For this select fill & sign-> work with certificates and the type of signing you want to sign up with. A dialog box that will tell you a rectangle for the appearance of signature rises and after you draw the rectangle of the dialog 'Sign' rises.

    PDF/Acrobat doesn't have a limit on a number of signatures in a PDF document. But! Don't forget that when you open a PDF file with Acrobat/Reader signatures valid all of them and takes time (several seconds - until 10 - for every signature), so if you have several signatures of dozens of their validation open can take a long time.

    I don't know how build you your workflow so that each person signs the same PDF and saves it. Economy runs on the same computer where the PDF is stored. You'll have to decide how to allow different people to have access to the same PDF. They, of course, you may sign this only one-at-a-time PDF.

Maybe you are looking for