Hoje postarei aqui a solução de um pequeno problema que estava me tirando do sério, e pelo que percebi nas minhas buscas pela intenet muitas pessoas tem esse problema.
Fiz um relatório com o rave report com filtro de data, e também de código de produto, fiz o seguinte esquema, coloquei no comando SQL da minha Query, os parâmetros de data inicial e final e o codigo do produto, e no evento click do botão para gerar o relatório eu passo os parâmetros e executo o relatório, a primeira vez que usei esse esquema funcionou certinho, estava feliz da vida, mas quando fui fazer a mesma coisa em outro projeto, mandava gerar o relatório e ele não mostrava nada, depois de muito me descabelar, encontrei outra solução, trazer todas as informações do banco na Query e filtrar no client Data Set, e quando mandava gerar o relatório, nadaaaa, ele mostrava toda a informação do banco, como se o filtro não estive-se funcionando, foi então que enxerguei a luz, era algo tão simples que nem passava pela minha cabeça....o form que eu chamava o relatório estava como AUTO-CREATE....foi só tirar ele dessa opção que as duas maneiras que eu tinha feito funcionaram....=)
então fica ai a dica para quem estiver com o mesmo problema que eu :
VÁ EM - PROJECT -OPTIONS - e tire o form da opção AUTO-CREATE....e pronto, seja feliz
e para quem não sabe fazer o filtro nem passar parâmetros para a query aqui vai:
PASSANDO PARÂMETRO:
qry_relatorio.Close;
cds_relatorio.Close;
qry_relatorio.ParamByName('data_ini').AsDate := StrToDate(MaskEdit1.Text);
qry_relatorio.ParamByName('data_final').AsDate := StrToDate(MaskEdit2.Text);
qry_relatorio.ParamByName('codigo').AsInteger := StrToInt(edit11.Text);
qry_relatorio.ExecSQL();
qry_relatorio.Open;
qry_relatorio.Refresh;
cds_relatorio.Open;
FILTRANDO O CLIENT DATA SET: (AQUI ESTOU FILTRANDO APENAS POR DATA)
cds_fluxo.Close;
cds_fluxo.Filtered := false;
cds_fluxo.Filter := 'data >='+ QuotedStr(Edit1.Text)+'and data <='+ QuotedStr(Edit2.Text);
cds_fluxo.Filtered := true;
cds_fluxo.Open;
cds_fluxo.Refresh;
Espero ter ajudado, um abraço a todos e até a próxima
Olá Marcio Rodrigo,
ResponderExcluirMeu nome é Laércio,
Pesquisando na net exatamente sobre gerar relatório por um període de datas (inicial e final), o seu artigo foi o que mais se aproximou da minha dúvida. Gostei muito. Estou iniciando a programação com Delphi, tenho boa base lógica com outros sistemas.
Se voce tiver mais exemplos com datas, favor postar. Obrigado
Olá Laércio, fico feliz que tenha ajudado vc...com esses exemplos de data já da pra fazer muita coisa, mas explique pra mim o que mais vc precisa que eu vejo se posso te ajudar. obrigado por entra no meu blog !!
ResponderExcluirOlá, meu nome é daniel e fiquei o dia inteiro com esse problema, muito obrigado realmente era o auto-create
ResponderExcluirseu blog está nos meus favoritos a partir de hj.. xD
obrigado, realmente pensava que não tinha mais solução meu problema.
ResponderExcluirMuito obrigado mesmo hoje seu post foi de extrema ajuda, agora uma dúvida, você saber o motivo disso acontecer ?
ResponderExcluir