Import com erro tipo de arquivo.

Discussão em 'Progress 4GL' iniciado por arnaldoclima, Junho 21, 2010.

  1. arnaldoclima

    arnaldoclima Membro Participativo

    Este é o problema, pois não tenho como alterar isto no programa gerador da balança.

    então precisaria de algum artificio para executar um comando e colocar o CR-LF no final do arquivo.

    Arnaldo Cavalcante
  2. Cobra.cne

    Cobra.cne Equipe de Suporte Moderador

    Olá a todos,

    Tenta importar desta forma, pois assim não é analisado nada dentro do arquivo, somente copiado todo seu conteúdo:
    Código:
    DEFINE VARIABLE conteudo AS MEMPTR      NO-UNDO.
    DEFINE VARIABLE peso AS CHARACTER   NO-UNDO.
    COPY-LOB FROM FILE "c:\peso.txt" TO conteudo NO-CONVERT NO-ERROR.
    ASSIGN peso = GET-STRING(conteudo,0).
    disp peso.
    
    Assim você terá todo o conteúdo do arquivo em uma variável.

    Depois posta o resultado.

    T+
  3. eduardo.leite

    eduardo.leite Equipe de Suporte Moderador Equipe de Suporte

    Arnaldo,

    Aí pode complicar, mas dei um jeitinho brasileiro que parece funcionar, ou seja:

    01) Antes de importar o arquivo, faça um OUTPUT TO <ARQUIVO> APPEND, e execute um comando PUT SKIP(1). neste arquivo, ou seja, o APPEND irá ADICIONAR no arquivo já existente uma quebra de linha/paragrafo.

    Fiz o teste abaixo e funcionou, vale a pena tentar se vai dar certo, ok?

    Código:
    
    def var w-reg as char format "x(40)".
    
    output to c:\temp\peso.txt.
    put "   eduardo/0101".
    output close.
    
    input from c:\temp\peso.txt no-convert.
    
    repeat:
    
    import unformatted w-reg.
    
    disp "Geração 000: " w-reg .
    
    end.
    
    input close.
    
    output to c:\temp\peso.txt append.
    put skip(1).
    output close.
    
    input from c:\temp\peso.txt no-convert.
    
    repeat:
    
    import unformatted w-reg.
    
    disp "Geração 001: " w-reg .
    
    end.
    
    input close.
    
    
  4. arnaldoclima

    arnaldoclima Membro Participativo

    Cleiton,

    Deu erro no comando COPY-LOB , acho q deve ser a versão, pois o progress q estou usando é
    8.2d*antigo ... mas o cliente não quer fazer upgrade.

    Arnaldo
  5. eduardo.leite

    eduardo.leite Equipe de Suporte Moderador Equipe de Suporte

    Simulei com o COPY-LOB na versão 10.2 e também deu erro... não consegui simular desta maneira.

    E com o exemplo que enviei, deu certo?
  6. arnaldoclima

    arnaldoclima Membro Participativo

    Eduardo, deu certissimo. valeu obrigado.

Compartilhe esta Página