FILTAR DATAS
Print do meu form
Estou fazendo um tipo de controle de caixa (no visual basic 2012) e preciso fazer um filtro de datas, ou seja, filtrar uma data inicial até uma data final definida pelo usuário. Falei com meu professor e vi umas videos na aulas no youtube e elaborei o seguinte código:
SELECT Código, Data, [Nome/Motivo], Entrada, Saida
FROM fluxo
WHERE (Data >= data1) AND (Data <= data2)
(nome do método é FillByDATA)
data1 = data inicial e data2 = data final
Eu adicionei esse comando sql em um QUERY da minha tabela [ô]fluxo[ô]
Então quando digitamos as datas logo clicamos em Listar e a ideia é listar no grid o intervalo de datas que o usuário escolheu. Mas ai que esta o problema (eu acho)
o código para executar a QUERY (FillByDATA) quando clicamos em Listar é:
Me.FluxoTableAdapter.FillByDATA(BdfluxoDataSet.fluxo)
Só que quando clico em Listar ele da um erro semelhante a [Ô]Nenhum valor foi fornecido para um ou mais parâmetros necessários.[Ô]
Eu acho que eu deveria citar os campos data1 e data2 no código criado no botão listar as não faço nem ideia de como fazer isso!
RESUMINDO: Preciso filtrar datas no Visual Basic 2010!
Qualquer ajuda de você é bem vinda . . . Se alguém também tiver tutoriais para me indicar ficarei muito feliz! VLW PESSOAL
Estou fazendo um tipo de controle de caixa (no visual basic 2012) e preciso fazer um filtro de datas, ou seja, filtrar uma data inicial até uma data final definida pelo usuário. Falei com meu professor e vi umas videos na aulas no youtube e elaborei o seguinte código:
SELECT Código, Data, [Nome/Motivo], Entrada, Saida
FROM fluxo
WHERE (Data >= data1) AND (Data <= data2)
(nome do método é FillByDATA)
data1 = data inicial e data2 = data final
Eu adicionei esse comando sql em um QUERY da minha tabela [ô]fluxo[ô]
Então quando digitamos as datas logo clicamos em Listar e a ideia é listar no grid o intervalo de datas que o usuário escolheu. Mas ai que esta o problema (eu acho)
o código para executar a QUERY (FillByDATA) quando clicamos em Listar é:
Me.FluxoTableAdapter.FillByDATA(BdfluxoDataSet.fluxo)
Só que quando clico em Listar ele da um erro semelhante a [Ô]Nenhum valor foi fornecido para um ou mais parâmetros necessários.[Ô]
Eu acho que eu deveria citar os campos data1 e data2 no código criado no botão listar as não faço nem ideia de como fazer isso!
RESUMINDO: Preciso filtrar datas no Visual Basic 2010!
Qualquer ajuda de você é bem vinda . . . Se alguém também tiver tutoriais para me indicar ficarei muito feliz! VLW PESSOAL
Faltou você acrescentar alguns parâmetros na query.
Exemplo:
SELECT Código, Data, [Nome/Motivo], Entrada, Saida
FROM fluxo
WHERE (Data >= [txt-color=#e80000]@data1[/txt-color]) AND (Data <= [txt-color=#e80000]@data2[/txt-color])
Perceba que adicionei algumas variáveis local no contexto da consulta SQL.
Faça um Build no projeto e veja se o método FillByData irá solicitar a passagem de duas variáveis do tipo Date.
Exemplo:
SELECT Código, Data, [Nome/Motivo], Entrada, Saida
FROM fluxo
WHERE (Data >= [txt-color=#e80000]@data1[/txt-color]) AND (Data <= [txt-color=#e80000]@data2[/txt-color])
Perceba que adicionei algumas variáveis local no contexto da consulta SQL.
Faça um Build no projeto e veja se o método FillByData irá solicitar a passagem de duas variáveis do tipo Date.
TECLA . . .tai o Print do [Ô]erro[Ô] que ocorreu quando cliquei em [Ô]Query Builder...[Ô]
Não sei se isso que vc quiz dizer . . .
Não sei se isso que vc quiz dizer . . .
Fiz assim:
SELECT Código, Data, [Nome/Motivo], Entrada, Saida
FROM fluxo
WHERE (Data >= #data1#) AND (Data <= #data2#)
dei um build e me retornou a mensagem: [Ô]Cannot convert entry to valid date/time; TO_DATE function might be required.[Ô]
SELECT Código, Data, [Nome/Motivo], Entrada, Saida
FROM fluxo
WHERE (Data >= #data1#) AND (Data <= #data2#)
dei um build e me retornou a mensagem: [Ô]Cannot convert entry to valid date/time; TO_DATE function might be required.[Ô]
Pesquisa por periodo,tente isso:
SELECT * FROM FLUXO WHERE DATA BETWEEN ? AND ?
SELECT * FROM FLUXO WHERE DATA BETWEEN ? AND ?
Tópico encerrado , respostas não são mais permitidas