Visual Basic - Problemas con este codigo

Life is soft - evento anual de software empresarial
 
Vista:

Problemas con este codigo

Publicado por Fernando (61 intervenciones) el 24/01/2006 01:57:39
Private Sub GuardarNPM(Posicion, strNumeroAuto, strPiloto, strMarca)

Dim db As Database
Dim rs As Recordset
Dim sql As String
Dim Vueltas, Paso As String
Dim rs2 As Recordset
Dim sql2 As String


Set db = OpenDatabase("e:\Gescar\Gescar.mdb")
sql = "SELECT * FROM Tiempos Where Paso ='" & Posicion & "'"
Set rs = db.OpenRecordset(sql)
sql2 = "SELECT * FROM Tiempos "
Set rs2 = db.OpenRecordset(sql2)

With rs2

Do While True

Coneccion.Recordset.MoveLast
Coneccion.Recordset.FindFirst (strNumero)

If rs2.NoMatch Then

Call Hacetodo

Else
Vueltas = !Vueltas
Exit Do
End If
Loop
End With


rs.Edit
rs("Numero") = strNumeroAuto
rs("Piloto") = strPiloto
rs("Marca") = strMarca
rs("Vueltas") = Vueltas + 1

rs.Update
rs.Close
db.Close

Call ActualizarDesarrollo

End Sub

Este es mi codigo se que puede ser un poc rebuscado pero es como lo se hacer.
Ahor ale problema es el siguiente:

Utilizo la linea " Coneccion.Recordset.MoveLast" para moverme hasta el final del recordset y Coneccion.Recordset.FindFirst (strNumero) para buscar el primer registro que contenga el valor de strNumero, el problema radica es que nunca busca y siempre me muestra el contenido del primer registro.
Desde ya muchas 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
sin imagen de perfil

RE:Problemas con este codigo

Publicado por kdlc (226 intervenciones) el 24/01/2006 07:00:09
Hola Fernando,
No me queda claro que es lo que tratas de hacer, explica un poco mas el proceso de lo que intentas hacer y con gusto te ayudo.

Suerte
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

RE:Problemas con este codigo

Publicado por fernando (61 intervenciones) el 25/01/2006 00:09:32
Bueno primero que nada gracias por tu dedicacion y soy bastante rebuscado pero espero poder explicarme para que puedas ayudarme:

El tema es el siguiente: este SOFT cronometrara una carrera de autos entonces al paso de cada competidor pulso la barra espaciadora y captura el tiempo y el orden de paso, lo que me permite despues posicionandome en el paso agragar lo que falta como es el nombre del piloto, la marca de auto y las vueltas que lleva, pero he aqui el problema ya que el soft debe llevar las vueltas de cada piloto y no puedo llevar un contador general ya que por ejemplo un piloto puede entrar a boxes, puede perder 1 o mas vueltas, me explico.
Entonces este es el codigo original que funciona de maravillas:

Private Sub GuardarNPM(Posicion, strNumeroAuto, strPiloto, strMarca)

Dim db As Database
Dim rs As Recordset
Dim sql As String
Dim Vueltas As String

Set db = OpenDatabase("e:\Gescar\Gescar.mdb")
sql = "SELECT * FROM Tiempos Where Paso ='" & Posicion & "'"
Set rs = db.OpenRecordset(sql)

With rs

Vueltas = !Vueltas

End With

rs.Edit
rs("Numero") = strNumeroAuto
rs("Piloto") = strPiloto
rs("Marca") = strMarca
rs("Vueltas") = Vueltas + 1

rs.Update
rs.Close
db.Close

Call ActualizarDesarrollo

End Sub

Pero que sucede que siempre trabajo sobre el nuevo registro ingresado y asi es imposible que pueda contar las vuelas de cada piloto, entonces la idea ol o que me gustaria hacer seria lo siguiente:

Enla primer pasada estaria bien que haga lo del codigo anterior, pero ya en la segunda deberia buscar un registro ya ingresado por ejemplo por el numero de auto y sobre escribir las vueltas, es decir sumarle una y sobre escribir el tiempo, para que lleve el tiempo total, por que esto es para la carrera y no me imorta tanto el conservar el paso a paso, que estaria buenisimo, por que despues para dar la clasificacion final solo bastaria con buscar el mayor numero de vueltas de cada piloto en el menor tiempo y ya tendria la calsificacion final.

Espero no haberte aburrido y que me puedas ayudar.
Un abrazo grande.
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