SELECIONAR LINHA DA GRADE



  • Olá,

    Estou tentando selecionar apenas uma linha de uma grade. Para tal coloquei um evento na grade ao clicar onde ele execura um Fluxo(Selecionar Linha) cujo processamento consta a função "Grade - Selecionar Linha".
    - No primeiro parametro(preciso do componente grade) informei o componente grade;
    - No segundo parametro(preciso do numero da linha) informei outra função "Grade - Obter Linha Selecionada", cujo único parametro é o nome da grade;
    Ou executar a aplicação e clicar na linha da grade retorna a mensagem "Erro de compilação # Selecionar Linha # Consulte o log da aplicação!".

    A intenção é selecionar uma ou várias linhas de uma grade.
    Onde estou errando?

    Att.


  • Selecionar várias linhas, você não deve conseguir..

    Para trabalhar com os eventos da grade, utilize seus parâmetros automáticos:
    http://suporte.softwell.com.br/maker/manual2_7/pt/maker_2/formulario/componentes/grade.htm


    Talvez isso ajude.


  • Alzino, não seria o caso de utilizar um checkbox ? Com ele você conseguiria obter o resultado que deseja tranquilamente.

    Caso não queira utilizar checkbox, existem outras opções que exigem um conhecimento maior.

    Você poderia alterar o padrão do componente da grade do maker seguindo o caminho:

    1. botão direito na grade
    2. parâmetros dos eventos da grade (Por padrão o maker passa Linha Real e Linha da Grade)
    3. desmarque as opções padrão e marque a opção "Lista de Valores da Consulta"
    4. crie um fluxo ao clicar ou duplo clicar nessa grade que terá como parâmetro de entrada uma "Variante" com o nome que você quiser
    5. essa variante receberá nativamente a string da consulta da linha que você tiver clicado
    6. tendo essa informação você pode gravar o id dessa linha em uma variável de sessão por exemplo ou otras soluções

    Abs


  • É uma boa alternativa, a do Bruno.


  • Bruno,

    Acho que devo descrever melhor minha intenção...

    Tenho uma grade que lista meus títulos a pagar ou receber. A intenção é selecionar um ou vários títulos(linhas) na grade e executar um fluxo clicando em um botão(Baixa de Título). Esse fluxo deve percorrer as linhas selecionadas e para cada linha/registro abrir um formulário, que não é o formulário da grade, onde será preenchido com alguns dados do registro selecionado e nesse mesmo form o usuário irá acrescentar mais alguns dados e posteriormente confirmar ou não a baixa do referido título. A confirmação deve inserir dados em uma tabela registrando a transação(ou seja, outro fluxo).

    Para executar esse procedimento acredito que preciso percorrer a grade, identificar as linhas selecionadas, capturar valor do registro, linha a linha, esse valor será utilizado para alterar o valor de um componete no novo formulario que será aberto e daí por diante segue um novo fluxo seguindo um while até que não haja mais linhas para percorrer.

    Att.


  • [quote]Ou executar a aplicação e clicar na linha da grade retorna a mensagem "Erro de compilação # Selecionar Linha # Consulte o log da aplicação!".[/quote] Isso tá com cara de função na camada errada.

    A função grade Selecionar Linha é da camada cliente. Vc salvou seu fluxo na camada correta?

Log in to reply