Mudar um código dentro do código

Discussão em 'Progress 4GL' iniciado por Alexan, Janeiro 27, 2011.

  1. Alexan

    Alexan Membro Participativo

    Galera,
    Sou eu novamente!

    Tem como eu mudar um código dentro de um outro código?
    Exemplo:

    Def var temp-table ttteste like MinhaTabela.

    e ai eu mudaria essa frase para o valor de um variavel, tipo assim:

    def var NmTabela as char no-undo.
    NmTabela = "teste".
    Def var temp-table ttteste like NmTabela .

    tem como?

    Gto,
    Edson
  2. CarlosNobrega

    CarlosNobrega Membro Participativo

    Desconheço

    mas talvez de alguma outra usando os atributos da temp-table podem ajudar, nao sei qual atua necessidade parater um nome específico.

    def var c-nome as char no-undo.
    def temp-table tt-item no-undo
    field it-codigo as char.

    assign c-nome = temp-table tt-item:private-data.
    message c-nome.
    assign temp-table tt-item:private-data = "teste 1".
    assign c-nome = temp-table tt-item:private-data.
    message c-nome.

    explica mais o que vc precisa fazer e porque, as vezes existem outras solucoes...
  3. jalegria

    jalegria Membro Participativo

    saudações...

    não ficou muito clara a sua duvida. pelo q entendi vc quer declarar uma temp-table dinamicamente.
    vc poderia criar uma include e aí vc poderia utiliza-la no programa passando o nome da tabela.

    tipo assim:
    Código:
    /* include ttb.i */
    def temp-table ttb like {&tabela}.
    
    Código:
    /* programa */
    
    {ttb.i &tabela = nm_tabela}
    
    for each ttb: ... end.
    
  4. Rodrigo Rossetto

    Rodrigo Rossetto Membro Participativo

    Include tt.i
    Código:
    DEFINE TEMP-TABLE {1} LIKE {2}.
    
    Programa x.p
    Código:
    {c:\tt.i tt-emit emitente}
    
    CREATE tt-emit.
    UPDATE tt-emit.cod-emitente.
    
  5. CarlosNobrega

    CarlosNobrega Membro Participativo

    Vc também pode criar um codigo dinamico e salvar como .p e compilar em tempo de execucao e rodar...

    o negócio é ir colocando solucoes...uma hora ele acha uma que serve...rsrsrs

    abraço
  6. Alexan

    Alexan Membro Participativo

    Grato a todos, vou testar e verificar se atende minha necessidade.

    Sds,
    Edson

Compartilhe esta Página