Utilizando Valor Armazenado em Variavel.

Discussão em 'Progress 4GL' iniciado por luciano.rocha, Dezembro 7, 2010.

  1. luciano.rocha

    luciano.rocha Sem Pontuação

    Bom Dia, eu tenho uma duvida bastante simples porem não acho uma solução para ela, quero fazer um for each ou comando semelhante com um valor armazenado dentro de uma variavel, (um fill-in) ,
    algo assim ´
    EX:
    For Each "Nome Variavel" .

    eh possivel ??Se alguem puder ajudar, fico agradecido.
  2. muertebr

    muertebr Membro Participativo

    Pelo que eu saiba for each é só com tabelas, se for esse o caso tenta for each <fill-in:screen-value>.
  3. kirchner

    kirchner Membro Participativo Moderador

    Luciano,

    É possível, mas você terá que utilizar uma query dinâmica. Tem na documentação certinho como fazer, talvez o pessoal do forum também saiba. Eu sempre apanho 2 horas pra fazer isso funcionar...
  4. luciano.rocha

    luciano.rocha Sem Pontuação

    OK, tentei fazer com o Scree Value e não fuincionou, se tiver como fazer com query dinamica então tudo certo, vou consultar a documentação e me virar,quando conseguir posto aqui no forum, obrigado pela ajuda

    At.
    Luciano Rocha
  5. kaneda84

    kaneda84 Sem Pontuação

    isso ja aconteceu comigo, para esclarecer qualquer dúvida sobre si variável tem os dados ou não, eu tento uma mensagem antes de o bloco FOR EACH

    Por exemplo:

    Código:
    
    MESSAGE STRING(nome-variavel)
           VIEW-AS ALERT-BOX MESSAGE BUTTONS OK.
    
    FOR EACH nome-variavel:
    
    END.
    
    
    mais em cualquer dos casos eu primeiro sempre tento fazer o bloco FOR EACH da forma seguinte.

    Código:
    
    FOR EACH (INPUT nome-variavel):
    
    END.
    
    
    espero que tenha sido de ajuda
  6. MFerreira

    MFerreira Membro Participativo

    A forma que o Marcos disse acima (query dinamica) é mais ou menos isso:

    Código:
    DEFINE VARIABLE c-tabela AS CHARACTER NO-UNDO.
    
    ASSIGN c-tabela = "item". /*c-tabela será a sua variável*/
    
    DEFINE VARIABLE h-query  AS HANDLE NO-UNDO. /*Definição da query*/
    DEFINE VARIABLE h-buffer AS HANDLE NO-UNDO. /*Definição do buffer*/
    
    /*Trabalhando dinamicamente*/
    CREATE BUFFER h-buffer FOR TABLE c-tabela.
    CREATE QUERY h-query.
    h-query:SET-BUFFERS(h-buffer).
    h-query:QUERY-PREPARE("for each " + c-tabela).
    
    h-query:QUERY-OPEN.
    h-query:GET-FIRST.
    
    MESSAGE h-buffer:BUFFER-FIELD(1):BUFFER-VALUE SKIP
        h-buffer:BUFFER-FIELD("it-codigo"):BUFFER-VALUE 
        VIEW-AS ALERT-BOX INFO BUTTONS OK.
    
    /*h-query:get-next*/
    
    h-query:QUERY-CLOSE().
    
    DELETE OBJECT h-query.
    DELETE OBJECT h-buffer.
    

Compartilhe esta Página