browse - navegação com enter

Discussão em 'Progress 4GL' iniciado por angeloata, Setembro 16, 2009.

  1. angeloata

    angeloata Membro Participativo

    Pessoal estou com o seguinte problema: defini um browse query freeform com uma tabela temporaria. sendo q neste browse mostro, cores de um determinado produto e quantidades a serem incluidas. o Campo quantidade tem varios campos como segue o exemplo abaixo:


    Cor P M G Total
    XXXXXXXXXXXXXXXXXX 0 0 0 0
    YYYYYYYYYYYYYYYYYY 0 0 0 0

    As colunas P M e G são editaveis, e eu gostaria de passar os campos com o enter, que a mesma função que o TAB faz. Quando uso o enter, o browse entende que tem q ser lançado na linha de baixo. Alguem sabe me dizer como posso fazer para usar o enter no lugar no tab, nas colunas editaveis do browse???


    Att
  2. Antonio

    Antonio Membro Participativo

    cria uma trigger no browse

    ANYWHERE
    DO:
    IF bt-save-1:SENSITIVE in frame f-pg-sel THEN DO:
    IF SELF:NAME <> "nome do campo editavel"
    THEN APPLY "tab" TO SELF .
    ELSE
    APPLY "mouse-select-down" TO bt-save-1 IN FRAME f-pg-sel.
    END.
    RETURN NO-APPLY.
    END.
  3. angeloata

    angeloata Membro Participativo

    cara implementei o código, funcionou corretamente, mas qdo chego no ultimo campo do browse, fica travado, como eu faço para identificar q é o ultimo registro do browse e sair do browse??

    Att.
  4. denek

    denek Membro Participativo

    Também estava com essa dúvida, resolvi fazendo uma trigger no main-block conforme abaixo, lembra de definir o buffer da temp-table.

    ON 'TAB':U OF temp-table.ult-campo-editavel in browse brw-1
    DO:
    FIND LAST buff-temp-table1 NO-LOCK NO-ERROR.
    IF AVAIL buff-temp-table1 THEN DO:
    IF buff-temp-table1.Id = temp-table.Id THEN DO: /*verificar se é ultimo registro do browse*/
    APPLY "ENTRY" TO outro-campo-qualquer IN FRAME f-qualquer.
    RETURN NO-APPLY.
    END.
    END.
    END.
  5. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    on ENTER anywhere apply 'TAB'.
  6. denek

    denek Membro Participativo

    onde deve-se colocar esse comando?

Compartilhe esta Página