Leandro_Pirozzi Postado Fevereiro 19, 2009 Denunciar Share Postado Fevereiro 19, 2009 (editado) Porque não executa o que eu pedi?!?!não esconde datagrid e tb não altera o lblfeliz.caption.Function Exibiraniver() Dim SQL As String Dim Data As Date Data = Date Set cnaniver = New ADODB.Connection With cnaniver .Provider = "Microsoft.Jet.OLEDB.4.0" .ConnectionString = "Data Source=F:\Advanced\CONTATOS.mdb" .Open End With Set rsaniver = New ADODB.Recordset Set rsaniver.ActiveConnection = cnaniver rsaniver.CursorLocation = adUseClient SQL = "Select CODEMP, NOMEMPRESA, NOMCONT, ANIVERSARIO, CARGOCONT, EMAILCONT, TELCONT " & _ "FROM CONTATOS_CONTATO Where ANIVERSARIO = Date() " rsaniver.Open SQL Set Me.DataGrid4.DataSource = rsaniver If Data <> Date Then DataGrid4.Visible = False lblfeliz.Caption = "SEM ANIVERSARIANTES!" else DataGrid4.Visible = True lblfeliz.Caption = "FELIZ ANIVERSÁRIO!" End If End Function Editado Fevereiro 19, 2009 por Leandro_Pirozzi Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 raphael_suporte Postado Fevereiro 26, 2009 Denunciar Share Postado Fevereiro 26, 2009 o erro está no if, você está falando que se for maior que 0 então não mostra senão mostra é ao contrario só alterar o sinal de menor para o sinal de igual, mas isso já fez com que ele não aparecesse, como você queria.. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Leandro_Pirozzi Postado Fevereiro 26, 2009 Autor Denunciar Share Postado Fevereiro 26, 2009 então agora ele compila pelo menos, porém no grid ele não exibe nada, sendo q existe um aniversariante na data de hoje. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Fevereiro 26, 2009 Denunciar Share Postado Fevereiro 26, 2009 tem o recordcount sim, porém não exibe os dados no grid.tem certeza q alguém no banco faz aniversario hj??tenta fazer assim:With cnaniver .Provider = "Microsoft.Jet.OLEDB.4.0" .ConnectionString = "Data Source=" & App.Path & "\CONTATOS.mdb;" .CursorLocation = adUseClient .OpenEnd WithSet rsaniver = New ADODB.RecordsetSQL = "Select CODEMP, NOMEMPRESA, NOMCONT, ANIVERSARIO, CARGOCONT, EMAILCONT, TELCONT " & _"FROM CONTATOS_CONTATO Where ANIVERSARIO = Date() "Set rsaniver = cnaniver.Execute(SQL)Set Me.DataGrid4.DataSource = rsaniverIf rsaniver.RecordCount <= 0 Then DataGrid4.Visible = False lblfeliz.Caption = "SEM ANIVERSARIANTES!"Else DataGrid4.Visible = True lblfeliz.Caption = "FELIZ ANIVERSÁRIO!"End If[/code] Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Leandro_Pirozzi Postado Fevereiro 26, 2009 Autor Denunciar Share Postado Fevereiro 26, 2009 Agora sim ele ate exibiu, ai pra teste eu modifiquei a data para dia 27/02/2009 ai o sistema continua exibindo na grid o aniversariante. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Fevereiro 26, 2009 Denunciar Share Postado Fevereiro 26, 2009 Agora sim ele ate exibiu, ai pra teste eu modifiquei a data para dia 27/02/2009 ai o sistema continua exibindo na grid o aniversariante.q data?? a do windows??então ai, se você olha no grid o campo ANIVERSARIO, q data ele mostra?? dia 26 ou 27?? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Leandro_Pirozzi Postado Fevereiro 26, 2009 Autor Denunciar Share Postado Fevereiro 26, 2009 então antes estava 26/02/2009 ai ele exibiu certinho mostrou a msg de FELIZ ANIVERSARIO e tudo.AI pra teste eu mudei a data no BANCO DE DADOS pra dia 27/02/2009.Porem continua mostrando como o aniversario no dia 26/02/2009 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Fevereiro 26, 2009 Denunciar Share Postado Fevereiro 26, 2009 (editado) hum, note q se você abre o access e altera o campo, ele não considera q foi alterado enqto você não mover o cursor pra linha de baxo (ou fechar a tabela).ai então, tente executar a sua consulta direto no access. tipo, abra a opcao nova consulta, e ponha no modo sql e cole o codigo:Select CODEMP, NOMEMPRESA, NOMCONT, ANIVERSARIO, CARGOCONT, EMAILCONT, TELCONTFROM CONTATOS_CONTATO Where ANIVERSARIO = Date()[/code]clica na exclamacao e veja o q vai retornar. Editado Fevereiro 26, 2009 por kuroi Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Leandro_Pirozzi Postado Fevereiro 26, 2009 Autor Denunciar Share Postado Fevereiro 26, 2009 o problema é q é uma tabela ai não tenho opção de sql nela.consegui, ele mostrou uma linha em branco. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Leandro_Pirozzi Postado Fevereiro 27, 2009 Autor Denunciar Share Postado Fevereiro 27, 2009 (editado) Aeee agora foi hehehe... :D Muito obrigado Raphael_Suporte e Kuroi pela paciencia.Estou postando o codigo, caso alguém tenha a mesma dúvida.Function Exibiraniver() Dim SQL As String Dim Data As Date Data = Date Set cnaniver = New ADODB.Connection With cnaniver .Provider = "Microsoft.Jet.OLEDB.4.0" .ConnectionString = "Data Source=" & App.Path & "\CONTATOS.mdb;" .CursorLocation = adUseClient .Open End With Set rsaniver = New ADODB.Recordset SQL = "Select CODEMP, NOMEMPRESA, NOMCONT, ANIVERSARIO, CARGOCONT, EMAILCONT, TELCONT " & _ "FROM CONTATOS_CONTATO Where ANIVERSARIO = Date() " Set rsaniver = cnaniver.Execute(SQL) Set Me.DataGrid4.DataSource = rsaniver If rsaniver.RecordCount <= 0 Then DataGrid4.Visible = False lblfeliz.Caption = "SEM ANIVERSARIANTES!" Else DataGrid4.Visible = True lblfeliz.Caption = "FELIZ ANIVERSÁRIO!" End If End Function Editado Fevereiro 27, 2009 por Leandro_Pirozzi Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Leandro_Pirozzi
Porque não executa o que eu pedi?!?!
não esconde datagrid e tb não altera o lblfeliz.caption.
Function Exibiraniver()
Dim SQL As String
Dim Data As Date
Data = Date
Set cnaniver = New ADODB.Connection
With cnaniver
.Provider = "Microsoft.Jet.OLEDB.4.0"
.ConnectionString = "Data Source=F:\Advanced\CONTATOS.mdb"
.Open
End With
Set rsaniver = New ADODB.Recordset
Set rsaniver.ActiveConnection = cnaniver
rsaniver.CursorLocation = adUseClient
SQL = "Select CODEMP, NOMEMPRESA, NOMCONT, ANIVERSARIO, CARGOCONT, EMAILCONT, TELCONT " & _
"FROM CONTATOS_CONTATO Where ANIVERSARIO = Date() "
rsaniver.Open SQL
Set Me.DataGrid4.DataSource = rsaniver
If Data <> Date Then
DataGrid4.Visible = False
lblfeliz.Caption = "SEM ANIVERSARIANTES!"
else
DataGrid4.Visible = True
lblfeliz.Caption = "FELIZ ANIVERSÁRIO!"
End If
End Function
Editado por Leandro_PirozziLink para o comentário
Compartilhar em outros sites
34 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.