1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

  2. Anuncie Aqui ! Entre em contato fdantas@4each.com.br

Relatório e .txt

Discussão em 'Progress 4GL' iniciado por arossler, Agosto 20, 2009.

  1. arossler

    arossler Guest

    Pessoal Boa tarde....
    Sou novo na área de progress e estou com dificuldades em achar material, gostaria de saber se alguem pode me ajudar com materiais que expliquem sobre a criação de relatórios em progress gráfico, para que o relatório gere um arquivo .txt.
    Obrigado.
  2. af.dums

    af.dums Membro Ativo

    Seja mais especifico, pleaseeeeeee....

    Cara, tu trabalha com EMS? Se sim, olha a estrutura de um relatorio que já exista que tu vai ter uma boa noção de como fazer.

    Mas basicamente um relatório é composto de um .w que é a interface gráfica com o usuário, com os parâmetros, campos de seleções e tal, e um .p com a lógica da coisa. No .p você abre o arquivo OUTPUT TO "C:\temp\teste.txt". e grava o que tu quer usando DISP "" ou PUT "", depois tu fecha o arquivo OUTPUT CLOSE.

    Detalha mais o que precisa que faço um programinha base pra você, e diz se tu usa EMS ou não.

    Abrass...
  3. mcarril

    mcarril Membro Participativo

    Você não encontrou nada no forum de tutorial ?
  4. arossler

    arossler Guest

    Sim, uso o ems...
    Comecei a usar progress a menos de um mês...

    Quero saber como fazer um relatório simples, por exemplo, listar determinados registros em um browse e gerar um .txt desse registros.
  5. jonas

    jonas Membro Participativo

    Segue um exemplo:

    Vamos supor que os dados listados em um browse estão relacionados a uma temp-table:
    Código:
    output to value ("c:\datasul\ems204\spool\nome_do_arquivo.txt").
    for each tt-teste no-lock:
    put tt-teste.tt-codigo   at 1   format ">>>>9"
        tt-teste.tt-nome     at 10  format "x(30)"
        tt-teste.tt-endereco at 40  format "x(40)"
        tt-teste.tt-bairro   at 80  format "x(20)"
        tt-teste.tt-cidade   at 100 format "x(30)"
        tt-teste.tt-bairro   at 130 format "x(130)".
    /* tudo isso será impresso em uma única linha. */
    /* Se você inserir no comando put a expressão at 1, então o sistema iniciará a impressão em uma nova linha */
    put tt-teste.tt-email at 1 format "x(35)".
    
    end.
    
    output close.
    
    Você também pode gerar um txt com delimitador (muito util nos casos em que o usuário deseja importar o relatório no Excel, por exemplo.
    Código:
    
    output to value ("c:\datasul\ems204\spool\nome_do_arquivo.txt").
    /* Gerar uma linha com o título de cada coluna */
    export delimiter ";" "Código"
                         "Nome"
                         "Endereço"
                         "Bairro"
                         "Cidade"
                         "Estado"
                         "Email".
    
    for each tt-teste no-lock:
    export delimiter ";" tt-teste.tt-codigo 
                         tt-teste.tt-nome
                         tt-teste.tt-endereco
                         tt-teste.tt-bairro
                         tt-teste.tt-cidade
                         tt-teste.tt-estado
                         tt-teste.tt-email.
    end.
    
    output close.
    
  6. arossler

    arossler Guest

    Muito obrigado...

    Era isso mesmo que eu queria...

Compartilhe esta Página