Visual Basic - comparar fechas, una de un registro, la otra de u

Life is soft - evento anual de software empresarial
 
Vista:

comparar fechas, una de un registro, la otra de u

Publicado por Franco (1 intervención) el 10/09/2008 22:43:40
Hola, tengo que hacer un sistema de bases de datos para una materia de la escuela, es una sistema de gestion de librerias desde visual basic con bases de datos acces, una de las consignas es que el sistema emita un listado con los clientes que cumplen años el día de la fecha, ahora viene mi problema, puse el código para que compare la fecha de nacimiento del cliente con la del sistema, obvio que solo compara el mes y el dia, pero cuando ejecuto el programa me muestra todos los registros solo los que cumplen años, puse el código en un boton,este es el codigo: la variable fecha ya fue declarada como date

Dim fecha As Date
Dim conn As ADODB.Connection
Dim RsRecordset As ADODB.Recordset
Dim nodo As ListItem

fecha = Date
ListView1.ColumnHeaders.Clear
ListView1.ColumnHeaders.Add 1, "", "idCliente"
ListView1.ColumnHeaders.Add 2, "", "Nombre"
ListView1.ColumnHeaders.Add 3, "", "Apellido"
ListView1.ColumnHeaders.Add 4, "", "Teléfono"
ListView1.ColumnHeaders.Add 5, "", "E-mail"
ListView1.ColumnHeaders.Add 6, "", "Fecha de nacimiento"
ListView1.ColumnHeaders.Add 7, "", "DNI"

Set conn = New ADODB.Connection
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source =" & App.Path & "ase.mdb;Persist Security Info=False"
Set RsRecordset = New ADODB.Recordset
RsRecordset.Open "clientes", conn, adOpenDynamic, adLockOptimistic
ListView1.ListItems.Clear
RsRecordset.Requery
RsRecordset.MoveFirst
If Mid(Date, 1, 5) = Mid(RsRecordset("fechanacimiento"), 1, 5) Then
MsgBox ("Los siguientes clientes cumplen años en el día de la fecha"), vbInformation, ("Cumpleaños")
While Not RsRecordset.EOF

Set nodo = ListView1.ListItems.Add(, , RsRecordset("idcliente"))
nodo.SubItems(1) = RsRecordset("nombre")
nodo.SubItems(2) = RsRecordset("apellido")
nodo.SubItems(3) = RsRecordset("telefono")
nodo.SubItems(4) = RsRecordset("e-mail")
nodo.SubItems(5) = RsRecordset("fechanacimiento")
nodo.SubItems(6) = RsRecordset("dni")


RsRecordset.MoveNext
Wend
Else
MsgBox ("No hay cumpleaños de clientes en el día de la fecha"), vbInformation, ("Cumpleaños")

End If

RsRecordset.Close
ListView1.Refresh

Seía muy bueno si me pueden ayudar a resolver el problema. Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder