Visual Basic - COMPLICADO (y largo)!!!

Life is soft - evento anual de software empresarial
 
Vista:

COMPLICADO (y largo)!!!

Publicado por Pepito (8 intervenciones) el 01/08/2007 15:09:02
Tengo un problema bastante complicadito para mi:
Dos tablas (en Access), una llamada “Socios” con un único código por cada socio (numérico) , sus datos (nombre,apellido,etc.) y un campo llamado Activo (del tipo Si/No). La otra tabla “Asistencia” con el código de los socios que se repite y un campo Fecha_asistencia (tipo fecha) donde se ingresa el día en el que el socio ingresa. Lo que quiero lograr es que si ha pasado un mes (aproximadamente) sin que un socio ingrese en la Asistencia, el campo Activo de la tabla Socios sea False (no), caso contrario que sea True(si). Con este código lo único que logro es que absolutamente todos los socios que tienen el campo Activo en True, se pongan en False:
With DataSocios.rsSocios
If .RecordCount > 0 Then
.MoveFirst
End If

.Filter = ""

Do While Not .EOF

VARCOD = Str(!codigo) ‘creo una variable para que se guarde el codigo del socio

With DataSocios.rsAsistencia
If .RecordCount > 0 Then
.MoveFirst
End If

criterio = "codigo= " + VARCOD
.Find criterio

VARFE = Date – 30 ‘variable para que la fecha sea un mes anterior aproximadamente

Do While Not .EOF

If !fecha_asistencia < VARFE Then ' si el campo fecha_asistencia es menor a 30 dias
VARACT = False
Else
VARACT = True
End If
.MoveNext
Loop

End With
!activo = VARACT ‘para que el campo ACTIVO me tome el valor de VARACT
.Update
.MoveNext

Loop

End With

Espero haber podido ser lo más claro posible. Es un quilombo terrible, pero si hay alguien que tenga las ganas de leer esto voy e estar muy agradecido!!! Saludos!!!
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

RE:COMPLICADO (y largo)!!!

Publicado por Luisito (2 intervenciones) el 01/08/2007 16:35:42
Asi cómo hiciste que la variable VARCOD = Str(!codigo), porque el campo código es numérico, ponele a la !fecha_asistencia Cdate, así: Cdate(!fecha_asistencia). Ese es el único error que tenés. Entendiste conejo Pepito?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Que nabo que soy. Gracias!!!

Publicado por Pepito (8 intervenciones) el 01/08/2007 16:40:14
Que nabo que soy!!! Estube renegando con esa boludés una noche entera. Me salvaste las papas Luisito. Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar