Amigos,
Estou precisando alterar um relatório que já está pronto e não manjo muito do Clipper.
Esse relatório lista todo o conteúdo de uma tabela e agora preciso ter uma opção para listar todo ou somente os que tem algum conteúdo no campo DATA_PG. Já coloquei a opção na tela só não estou conseguindo fazer o filtro.
Vejam o que tentei fazer:
USE COMIS
IF OPACAO = "S"
SET FILTER TO DATA_PG <>" / / "
END IF
O problema é que quando a OPCAO = "S" dá o seguinte erro:
Argumento Error
Existe alguma maneira de fazer esse filtro funcionar ??
Obrigado a Todos,
Cristiano.
Set Filter
Moderador: Moderadores
-
TerraSoftware
- Usuário Nível 3

- Mensagens: 353
- Registrado em: 28 Jul 2004 13:14
- Localização: Cianorte-PR
- Contato:
Caro colega, eu costumo fazer meus relatorio assim:
select alias_em_questao
set order to numero_da_order_de_indexacao
go top
do while ! eof()
IF OPACAO = "S"
skip
loop
ENDIF
@ PROW()+1,00 SAY variavel_do_banco_de_dados
@ pro..... etc e tal
skip
enddo
Espero que este simples exemplo possa te ajudar.
No caso, entao, eu naum uso set filter, ou seja, eu mando pular o registro que naum atende a condicao imposta pelo usuario.
select alias_em_questao
set order to numero_da_order_de_indexacao
go top
do while ! eof()
IF OPACAO = "S"
skip
loop
ENDIF
@ PROW()+1,00 SAY variavel_do_banco_de_dados
@ pro..... etc e tal
skip
enddo
Espero que este simples exemplo possa te ajudar.
No caso, entao, eu naum uso set filter, ou seja, eu mando pular o registro que naum atende a condicao imposta pelo usuario.
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
Olá,
Provavelmente o erro está ocorrendo porque voce está comparando um valor do tipo Data com uma String (" / / "), mude a comparacao para:
set filter to DATA_PG <> CTOD(" / / ")
Acredito que somente com esa conversão para tipo data seu programa vai rodar sem erros e funcionar normalmente.
Faça um teste e responda, por favor.
Stanis Luksys
Provavelmente o erro está ocorrendo porque voce está comparando um valor do tipo Data com uma String (" / / "), mude a comparacao para:
set filter to DATA_PG <> CTOD(" / / ")
Acredito que somente com esa conversão para tipo data seu programa vai rodar sem erros e funcionar normalmente.
Faça um teste e responda, por favor.
Stanis Luksys
