SOM ANIVERSARIANTE

JPAULO101 11/09/2009 09:29:31
#322587
Salve Salve galera blz. Depois de alguns dias estou de volta, e como sempre a pedir ajudar de todos meu companheiros do vbmania. é o seguinte estou desenvolvendo um cadastro de funcionario e quando o usuario abre o sistema o mesmo verifica no banco se existe aniversariante nesse dia, caso exista mostra uma mensagem e toca um som de parabéns. Até ai tudo bem mais gostaria de fazer com que o sistema verificasse apenas os funcionarios ativo, pois o mesmo está buscando todos o funcionario Ativo e Demitido. Lembrando que na minha estrutura do banco já existe um campo Status onde mostra se funcionario está Ativo ou Demitido.

Segue o código no qual já funcionam perfeito, mais queria que filtrasse apenas os aticos. Agradeço ajuda de todos.

Function AniversarianteHoje() As Boolean

Dim rs As New ADODB.Recordset, SQL As String
AniversarianteHoje = False

SQL = [Ô]SELECT DataNasc [Ô]
SQL = SQL & [Ô]FROM tblcadfun [Ô]
SQL = SQL & [Ô]WHERE DAY(DataNasc) = [Ô] & Day(Now) & [Ô] [Ô]
SQL = SQL & [Ô]AND MONTH(DataNasc) = [Ô] & Month(Now) & [Ô];[Ô]


rs.Open SQL, con
If Not rs.EOF Then AniversarianteHoje = True
rs.Close
Set rs = Nothing

End Function

Sub Aniversario()

If AniversarianteHoje = True Then

DirectShow_Load_Media App.Path & [Ô]\Sons\Parabéns.wav[Ô]

DirectShow_Volume 100
DirectShow_Balance 0
DirectShow_Speed 100
DirectShow_Set_Position 0, 0, 0, 0

DirectShow_Play
MsgBox [Ô]Atenção: Existe Aniversariante Hoje.[Ô], vbInformation, [Ô]Cadastro de Funcionário[Ô]
End If

End Sub
MAUMAU 11/09/2009 09:38:11
#322590
Inclui no Select a campo ativo...

SQL = [Ô]SELECT DataNasc [Ô]
SQL = SQL & [Ô]FROM tblcadfun [Ô]
SQL = SQL & [Ô]WHERE DAY(DataNasc) = [Ô] & Day(Now) & [Ô] [Ô]
SQL = SQL & [Ô]AND MONTH(DataNasc) = [Ô] & Month(Now) & [Ô] [Ô]
SQL = SQL & [Ô]AND Ativo = 1;[Ô]

Abraços
LEANDRO 11/09/2009 09:38:13
#322591
Resposta escolhida
Cara, no seu Select coloca outra codição

SQL = [Ô]SELECT DataNasc [Ô]
SQL = SQL & [Ô]FROM tblcadfun [Ô]
SQL = SQL & [Ô]WHERE DAY(DataNasc) = [Ô] & Day(Now) & [Ô] [Ô]
SQL = SQL & [Ô]AND MONTH(DataNasc) = [Ô] & Month(Now) & [Ô] [Ô]
SQL = SQL & [Ô] AND STATUS = [ô]ATIVO[ô] & [Ô];[Ô]


Ps: troque o STATUS pelo nome do seu campo na tabela e o ATIVO pela sua condição
JPAULO101 11/09/2009 11:23:01
#322600
OLÁ LEANDRO COLOQUEI MAIS UMA CONDIÇÃO MAIS DEU O SEGUINTE ERRO.
LEANDRO 11/09/2009 11:24:11
#322601
Como você colocou,
Poste o Codigo
JUNIORARI 11/09/2009 11:34:13
#322603
SQL = [Ô]SELECT DataNasc [Ô]
SQL = SQL & [Ô]FROM tblcadfun [Ô]
SQL = SQL & [Ô]WHERE DAY(DataNasc) = [Ô] & Day(Now) & [Ô] [Ô]
SQL = SQL & [Ô]AND MONTH(DataNasc) = [Ô] & Month(Now) & [Ô] [Ô]
SQL = SQL & [Ô] AND STATUS = [ô]ATIVO[ô] ;[Ô]

colocou um [Ô]&[Ô] no final, que nao precisava....
LEANDRO 11/09/2009 11:35:40
#322604

SQL = [Ô]SELECT DataNasc [Ô]
SQL = SQL & [Ô]FROM tblcadfun [Ô]
SQL = SQL & [Ô]WHERE DAY(DataNasc) = [Ô] & Day(Now) & [Ô] [Ô]
SQL = SQL & [Ô]AND MONTH(DataNasc) = [Ô] & Month(Now) & [Ô] [Ô]
SQL = SQL & [Ô] AND STATUS = [ô]ATIVO[ô] ;[Ô]


Exatamente
JPAULO101 12/09/2009 15:15:21
#322709
MUITO OBRIGADO AMIGOS PELA AJUDA, CONSEGUI RESOVER O PROBLEMA VALEU MESMO.
Tópico encerrado , respostas não são mais permitidas