Gerar .txt em colunas

Discussão em 'Progress 4GL' iniciado por julianonicola, Junho 11, 2010.

  1. julianonicola

    julianonicola Sem Pontuação

    Bom dia pessoal, estou com o seguinte programa:

    output to "C:\TEMP\TESTE.TXT".
    for each usuario where nm-usuario begins "JULIANO":
    put nm-usuario at (3) skip
    en-rua at (3) skip (1).
    end.

    Gostaria de gerar os dados em colunas. Alguém póderia me auxiliar?

    Abraço
  2. jalegria

    jalegria Membro Participativo

    Bom dia Juliano
    Não ficou muito claro o q vc quis dizer com "em colunas".

    Se forem colunas de tamanho fixo vc pode fazer assim:
    Código:
    put nm-usuario format "X(30)" en-rua format "X(40)" skip.
    
    Assim as primeiras 30 posições ficarão com o nome e as 40 seguintes com a rua.

    Se for um arquivo texto delimitado por ';' por exemplo faça assim:
    Código:
    export delimiter ';' nm-usuario en-rua.
    
    Espero que isso ajude... Valeo...
  3. julianonicola

    julianonicola Sem Pontuação

    Bom dia!

    Vou tentar explicar melhor. No comando hoje ja é gerado em colunas. O que eu gostaria é de quebrar em 3 colunas na mesma linha. Vou dar um exemplo:

    Gostaria que ficasse dessa maneira:

    JULIANO ALCANTARA DO NASCIMENTO JULIANO ALVES DIAS JULIANO ALVES DOMINGOS
    FRANCISCO PEIXOTO BEZERRA,116 RUA SENADOR VERGUEIRO, 319 R CEARA 406

    Hoje ele está sendo gerado assim:

    JULIANO ALCANTARA DO NASCIMENTO
    FRANCISCO PEIXOTO BIZERRA 116

    JULIANO ALVES DIAS
    RUA SENADOR VERGUEIRO, 319

    JULIANO ALVES DOMINGOS
    R CEARA 406

    Ficou mais claro?

    Obrigado pela atenção.
  4. julianonicola

    julianonicola Sem Pontuação

    Vou colocar um txt de como eu gostaria que ficasse, pois desconfigurou depois que salveis
  5. eduardo.leite

    eduardo.leite Equipe de Suporte Moderador Equipe de Suporte

    Caro colega, acredito que seja +/- isso que deseja:

    Código:
    
    output to c:\temp\item.txt.
    
    def var icont           as integer              no-undo.
    def var c-it-codigo     like item.it-codigo     extent 3.
    def var c-desc-item     like item.desc-item     extent 3.
    
    assign c-it-codigo = ""
           c-desc-item = ""
           iCont       = 0.
    
    for each item:
    
        assign iCont              = iCont + 1
               c-it-codigo[iCont] = item.it-codigo
               c-desc-item[iCont] = item.desc-item.
    
        if iCont = 3 then do:
    
            put c-it-codigo[1] ";" c-it-codigo[2] ";" c-it-codigo[3] skip
                c-desc-item[1] ";" c-desc-item[2] ";" c-desc-item[3] skip.
    
            assign c-it-codigo = ""
                   c-desc-item = ""
                   iCont       = 0.
    
        end.
    
    end.
    
    if iCont  < 3 and
       iCont <> 0 then do:
    
        put c-it-codigo[1] ";" c-it-codigo[2] ";" c-it-codigo[3] skip
            c-desc-item[1] ";" c-desc-item[2] ";" c-desc-item[3] skip.
    
        assign c-it-codigo = ""
               c-desc-item = ""
               iCont       = 0.
    
    end.
    
    os-command no-wait c:\temp\item.txt.
    
  6. julianonicola

    julianonicola Sem Pontuação

    Deu certo, obrigado!!!!!

Compartilhe esta Página