- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Recuperar dado informado no filtro durante a execução
×
Linguagem de Programação ADVPL
Perguntas Recuperar dado informado no filtro durante a execução
- Matcher
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 3
- Obrigados Recebidos: 0
8 anos 7 meses atrás #30586
por Matcher
Recuperar dado informado no filtro durante a execução foi criado por Matcher
Olá, estou utilizando a função GetObjBrow() para retornar o objeto associado ao Browse
Acessando a propriedade OFWFILTER:AFILTER eu tenho os filtros utilizados pelo usuário
Porém no caso de filtros onde é informado o dado durante a execução ele retorna apenas " %E1_BAIXA0% " , por exemplo
Alguém sabe se é possível recuperar esse valor informado pelo usuário?
Acessando a propriedade OFWFILTER:AFILTER eu tenho os filtros utilizados pelo usuário
Porém no caso de filtros onde é informado o dado durante a execução ele retorna apenas " %E1_BAIXA0% " , por exemplo
Alguém sabe se é possível recuperar esse valor informado pelo usuário?
Por favor Acessar ou Registrar para participar da conversa.
- will3698
- Desconectado
- Membro Dourado
Menos
Mais
- Postagens: 310
- Obrigados Recebidos: 1
8 anos 7 meses atrás #30588
por will3698
Respondido por will3698 no tópico Recuperar dado informado no filtro durante a execução
Ola boa noite !
Já tentou debugar , e verificar se não esta na Memoria M-> ??
Vc ta utilizando o getarea() ?
att
Já tentou debugar , e verificar se não esta na Memoria M-> ??
Vc ta utilizando o getarea() ?
att
Por favor Acessar ou Registrar para participar da conversa.
- Matcher
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 3
- Obrigados Recebidos: 0
8 anos 7 meses atrás - 8 anos 7 meses atrás #30594
por Matcher
Respondido por Matcher no tópico Recuperar dado informado no filtro durante a execução
Olá willian,
Então, não consegui "navegar" pela memoria. A ideia é utilizar a informação que está filtrada na tela para outras coisas, por exemplo apresentar os totais etc.
Esqueci de comentar que estava tentando fazer isso em uma tela padrão: Contas a pagar/receber.
Consegui resolver da seguinte forma, utilizando o GetObjBrow:
[/b]
Com isso eu consigo reproduzir o filtro informado pelo usuário:
SE1->(dbSelectArea("SE1"))
SE1->(dbSetFilter( {|| &cFiltro }, cFiltro ))
E ai realizar as customizações que queria.
Att,
Então, não consegui "navegar" pela memoria. A ideia é utilizar a informação que está filtrada na tela para outras coisas, por exemplo apresentar os totais etc.
Esqueci de comentar que estava tentando fazer isso em uma tela padrão: Contas a pagar/receber.
Consegui resolver da seguinte forma, utilizando o GetObjBrow:
oObjBrow := GetObjBrow() // Pego o objeto da mBrow
aFiltro := oObjBrow:OFWFILTER:AFILTER //Propriedade com os filtros informados pelo usuário
cFiltro := aFiltro[1][2]
For x := 2 to Len(aFiltro)
IF OOBJBROW:OFWFILTER:AFILTER[x][7] == .F. //Verifica se o filtro é estatico ou dinamico
cFiltro += " .AND. "+aFiltro[x][2]
ElseIf countJob <= Len(OOBJBROW:OFWFILTER:AOBJFILASK) //Verifica se tem perguntas
cFiltro += " .AND. "+OOBJBROW:OFWFILTER:AOBJFILASK[countJob][1]:CEXPRESSION //Se for dinamico busca o valor informado
countJob++ //Tive que utilizar um outro contador para navegar pelo AOBJFILASK
EndIf
Next x
Com isso eu consigo reproduzir o filtro informado pelo usuário:
SE1->(dbSelectArea("SE1"))
SE1->(dbSetFilter( {|| &cFiltro }, cFiltro ))
E ai realizar as customizações que queria.
Att,
Ultima edição: 8 anos 7 meses atrás por Matcher.
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Recuperar dado informado no filtro durante a execução
Tempo para a criação da página:0.104 segundos