Error en codigo VB, actualizacion de tabla.
Hola que tal, tengo el siguiente código:
Option Compare Database
Option Explicit
Sub ActualizarFechasUrge()
Dim Atrasados As Integer, unaSql As String
Atrasados = DCount("*", "Mantenimiento", "Estado = 'Urge'")
unaSql = "SELECT TOP " & Atrasados & " [Serie] From Mantenimiento WHERE Estado <> 'Urge' AND (Format([Fecha],'yyyyww') = '" & Format(Date, "yyyyww") & "') Order by [Serie]"
CurrentDb.Execute "Update Mantenimiento Set Fecha = Fecha +7, Estado = 'Urge' Where Serie In (" & unaSql & ")"
CurrentDb.Execute "Update Mantenimiento Set Estado = '' Where Estado = 'Urge'"
End Sub
Pero para mi mala suerte, lo ejecuto y no actualiza nada.
Mi tabla mantenimiento tiene los siguientes datos:
Serie Fecha Estado
1 25/09/2009 Urge
2 25/09/2009 Urge
3 25/09/2009
4 25/09/2009
5 25/09/2009
El codigo hace esto:
Serie Fecha Estado
1 25/09/2009
2 25/09/2009
3 25/09/2009
4 25/09/2009
5 25/09/2009
Y lo que deberia hacer es actualizar a:
Serie Fecha Estado
1 25/09/2009
2 25/09/2009
3 25/09/2009
4 02/10/2009 Urge
5 02/10/2009 Urge
Según yo, el código esta perfecto. ¿Tu cómo ves? ¿No sera que tengo que cambiar el formato del campo "Fecha" de la tabla "Mantenimiento"?
Saludos y muchas gracias.
Option Compare Database
Option Explicit
Sub ActualizarFechasUrge()
Dim Atrasados As Integer, unaSql As String
Atrasados = DCount("*", "Mantenimiento", "Estado = 'Urge'")
unaSql = "SELECT TOP " & Atrasados & " [Serie] From Mantenimiento WHERE Estado <> 'Urge' AND (Format([Fecha],'yyyyww') = '" & Format(Date, "yyyyww") & "') Order by [Serie]"
CurrentDb.Execute "Update Mantenimiento Set Fecha = Fecha +7, Estado = 'Urge' Where Serie In (" & unaSql & ")"
CurrentDb.Execute "Update Mantenimiento Set Estado = '' Where Estado = 'Urge'"
End Sub
Pero para mi mala suerte, lo ejecuto y no actualiza nada.
Mi tabla mantenimiento tiene los siguientes datos:
Serie Fecha Estado
1 25/09/2009 Urge
2 25/09/2009 Urge
3 25/09/2009
4 25/09/2009
5 25/09/2009
El codigo hace esto:
Serie Fecha Estado
1 25/09/2009
2 25/09/2009
3 25/09/2009
4 25/09/2009
5 25/09/2009
Y lo que deberia hacer es actualizar a:
Serie Fecha Estado
1 25/09/2009
2 25/09/2009
3 25/09/2009
4 02/10/2009 Urge
5 02/10/2009 Urge
Según yo, el código esta perfecto. ¿Tu cómo ves? ¿No sera que tengo que cambiar el formato del campo "Fecha" de la tabla "Mantenimiento"?
Saludos y muchas gracias.
1 Respuesta
Respuesta de mrtool
1