Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Estou tentando utilizar uma variável para realizar um filtro ao invés de utilizar uma lista de seleção.
O que ocorre é que quando eu utilizo uma lista de seleção funciona corretamente mas quando tento usar em forma de variável ou especificando o valor da data simplesmente não funciona.
Veja o exemplo:
SET vDataPedido='14/09/2015';
count(if (DTPEDIDO='14/09/2015' , CODPEDIDO)) ---Não funciona
count(if (DTPEDIDO=vDataPedido , CODPEDIDO)) ---Não funciona
count(if (DTPEDIDO= $(vDataPedido) , CODPEDIDO)) ---Não funciona
Mas se eu adicionar uma lista com o campo DTPEDIDO e selecionar a data 14/09/2015 funciona perfeitamente!
Alguém teria uma explicação para isso?
Marcio, o seu campo DTPEDIDO precisa ser uma data DD/MM/YYYY. Tome esse cuidado, pois a data que te é apresentada, visualmente, é apenas uma mascara. Talvez esse seu campo possua os valores de Hora/Minuto e Segundo. Neste caso a sua expressão não vai funcionar mesmo.
Faça um teste simples: Crie um objeto de Texto com o seguinte valor: =DTPEDIDO+0, selecione qualquer valor da coluna DTPEDIDO e veja se o número possui casa decimal. Casa decimal significa que sua data possui valores de Hora/Minuto e Segundo.
Deixa a linha assim
SET vDataPedido=14/09/2015;
Não funcionou
Marcio, o seu campo DTPEDIDO precisa ser uma data DD/MM/YYYY. Tome esse cuidado, pois a data que te é apresentada, visualmente, é apenas uma mascara. Talvez esse seu campo possua os valores de Hora/Minuto e Segundo. Neste caso a sua expressão não vai funcionar mesmo.
Faça um teste simples: Crie um objeto de Texto com o seguinte valor: =DTPEDIDO+0, selecione qualquer valor da coluna DTPEDIDO e veja se o número possui casa decimal. Casa decimal significa que sua data possui valores de Hora/Minuto e Segundo.
Oi, Marcio Moraes.
Tente:
LET vDataPedido = MakeDate(Year(Now()),Month(Now()),Day(Now()));
Count({<DATPEDIDO={$(vDataPedido)}>} CODPEDIDO);
Olá Yuri,
Fiz o seu teste e não retornou nenhuma decimal.
Eu confirmei que o formato que vem do banco de dados é DD/MM/YYYY idêntico ao valor da minha variável.
Que negócio doido já tentei de tudo dentro do meu conhecimento básico
Deu erro na expressão
ErrorL Error in set modifier ad hoc element list:
','or ')' expected
Marcio Moraes.
Desculpe-me, coloque a variável entre apóstrofe.
Count({<DATPEDIDO={'$(vDataPedido)'}>} CODPEDIDO)
Não funcionou.
O resultado fica = 0
Sendo que se eu usar objeto lista e filtrar 14/09/2015 em um objeto texto com o conteudo
Count(CODPEDIDO)
o resultado aparece certo.
Será que pode ser erro de modelagem?