SOMAR DATAS POSTERIORES
Boa noite galera, é assim, queria saber como posso fazer isso..
Quero somar os valores com datas maiores do que a data informada mas não sei bem como posso fazer isso, sei que o BETWEEN, usa-se para ver entre 2 datas, agora como seria pra fazer com datas maiores do que a informada?
Quero somar os valores com datas maiores do que a data informada mas não sei bem como posso fazer isso, sei que o BETWEEN, usa-se para ver entre 2 datas, agora como seria pra fazer com datas maiores do que a informada?
como assim adilson não entendi?
posta um exemplo
posta um exemplo
Aew Marcelo, blz?
Então, to tentando fazer assim..
A ideia é, vou pegar e fazer um loop e sair somando alguns campos, até que a soma desses campos satisfaça o critério(Valor) solicitado pelo usuário, assim que o valor for alcançado, vou pegar a data do registro em que o valor estipulado pelo está, ex: o usuário informa [Ô]01/01/2012[Ô] eu vou sair somando somente as datas posteriores a esta, assim que chegar no valor solicitado sai do loop, pega a data e fim, eu tentei fazer dessa forma, mas está retornando erro...
Então, to tentando fazer assim..
sSQL = [Ô]SELECT * FROM lancamentofuncionario WHERE dtlanc < #[Ô] & Format(txtdtini.Text, [Ô]yyyy/mm/dd[Ô]) & [Ô]# and codfunc = [ô][Ô] & txtcodfunc.Text & [Ô][ô][Ô]
A ideia é, vou pegar e fazer um loop e sair somando alguns campos, até que a soma desses campos satisfaça o critério(Valor) solicitado pelo usuário, assim que o valor for alcançado, vou pegar a data do registro em que o valor estipulado pelo está, ex: o usuário informa [Ô]01/01/2012[Ô] eu vou sair somando somente as datas posteriores a esta, assim que chegar no valor solicitado sai do loop, pega a data e fim, eu tentei fazer dessa forma, mas está retornando erro...
bom vamos primeiro posterior então o sinal deve ser [ô]>[ô] e não [ô]<[ô]
está meio confuso, o valor esta dentro do banco de dados?
exemplo o usuario inforama a datainicial e um valor, e vc vai fazer a soma na query para verificar este valor?
ou vc vai fazer a soma fora da quey?
ainda não entendi
está meio confuso, o valor esta dentro do banco de dados?
exemplo o usuario inforama a datainicial e um valor, e vc vai fazer a soma na query para verificar este valor?
ou vc vai fazer a soma fora da quey?
ainda não entendi
Sim Marcelo, eu inverti o sinal, desculpa aÃ, mas então, eu acho que teria que fazer fora e em Loop, por que a hora que chegar no valor ele tem que pegar em que data deu aquele valor e apresentar para o usuário, por ex: o usuário informa a data [Ô]01/08/2012[Ô] o funcionário [Ô]8[Ô] e o valor de [Ô]R$ 1.000,00[Ô] vou sair somando o dia 01/08/2012, 02/08/2012, 03/08/2012, e aà vai, a hora que chegar no valor [Ô]R$ 1.000,00[Ô] sai do loop, pega a data vamos supor a data [Ô]16/08/2012[Ô] e apresenta que o valor de [Ô]R$ 1.000,00[Ô] é atingido até o dia [Ô]16/08/2012[Ô]..
O nome do campo data é: [Ô]dtlanc[Ô] --- esse em [Ô]date[Ô]
O nome do campo funcionário é: [Ô]codfunc[Ô] --- esse em [Ô]INT[Ô]
Os campos a serem somados é: [Ô]rendimento, hetinerebag, hetinerecx, dsrbag, dsrcx[Ô] ---- esses em [Ô]double[Ô]
Será que deu pra entender mais ou menos agora?
O nome do campo data é: [Ô]dtlanc[Ô] --- esse em [Ô]date[Ô]
O nome do campo funcionário é: [Ô]codfunc[Ô] --- esse em [Ô]INT[Ô]
Os campos a serem somados é: [Ô]rendimento, hetinerebag, hetinerecx, dsrbag, dsrcx[Ô] ---- esses em [Ô]double[Ô]
Será que deu pra entender mais ou menos agora?
Quase, estes campos a serem somados é que ficaram pendentes, porém vamos lá
você teria de fazer algo mais ou menos assim:
você teria de fazer algo mais ou menos assim:
Dim Soma As Double
sSQL = [Ô]SELECT * FROM lancamentofuncionario WHERE dtlanc > = #[Ô] & Format(txtdtini.Text, [Ô]yyyy/mm/dd[Ô]) & [Ô]#[Ô]
Set RS = CNN.Execute(sSQL)
Do While Not RS.EOF
Soma = Soma + rs!campoqueserásomado
If Soma = ValorInformado Then
msgbox [Ô]Valor atingido em [Ô] & format(Rs!dtlanc,[Ô]dd/mm/yyyy[Ô])
Exit Do
End If
Rs.MoveNext
Loop
Então, dessa forma segue o mesmo erro anterior..
ta explicado vc ta usando o MySQL nele vc não usa # usa sempre apostrofo ([ô]) isso para qualquer tipo de de campo (data,integer, moeda, etc), e o formato de data é YYYY-MM-DD
tente assim
tente assim
sSQL = [Ô]SELECT * FROM lancamentofuncionario WHERE dtlanc > = [ô][Ô] & Format(txtdtini.Text, [Ô]YYYY-MM-DD[Ô]) & [Ô][ô][Ô]
Vou fazer os testes, por enquanto obrigado Marcelo, até mais, abraços.
Tópico encerrado , respostas não são mais permitidas