Como evitar un goto

10/08/2006 - 14:06 por Emilio | Informe spam
Hola a tod@s

estoy empezando a a hacer mis pinitos en VB 2005 y mas perdido que un pulpo
en un garaje :S

Trato de migrar un proceso VB6 y me quedaría algo así
If FFH_A_020.IsGood And FFH_A_020.IsTrigger Then

datEvento = FFH_A_020.PrevEvent(Now).LocalDate

sngValor = FFH_A_020.Value

strTag = FFH_A_020.GetAttribute("Tag")

GoTo Guardar

End If

este proceso muchas veces y como supondréis la etiqueta Guardar al final de
todo, puesto que se supone que goto está requete-obsoleto, ¿de que manera
puedo evitarlo?. El proceso se dispara y cada vez habrá de ejecutarse uno y
solo uno de los muchos if, de ese modo intento que al menos no recorra todos
los if restantes tras la primera y unica coincidencia.

¿Alguna alternativa?

Gracias anticipadas

Saludos a tod@s
Emilio [MVP Access 2005]
miliuco56 ALGARROBA hotmail.com
http://www.mvp-access.com/foro
http://www.mvp-access.com/emilio
 

Leer las respuestas

#1 Leonardo Azpurua [mvp vb]
10/08/2006 - 15:17 | Informe spam
"Emilio" <miliuco56 ARROBA hotmail.com> escribió en el mensaje
news:%
Hola a

estoy empezando a a hacer mis pinitos en VB 2005 y mas perdido que un
pulpo
en un garaje :S

Trato de migrar un proceso VB6 y me quedaría algo así
If FFH_A_020.IsGood And FFH_A_020.IsTrigger Then

datEvento = FFH_A_020.PrevEvent(Now).LocalDate

sngValor = FFH_A_020.Value

strTag = FFH_A_020.GetAttribute("Tag")

GoTo Guardar

End If

este proceso muchas veces y como supondréis la etiqueta Guardar al final
de
todo, puesto que se supone que goto está requete-obsoleto, ¿de que manera
puedo evitarlo?. El proceso se dispara y cada vez habrá de ejecutarse uno
y
solo uno de los muchos if, de ese modo intento que al menos no recorra
todos
los if restantes tras la primera y unica coincidencia.

¿Alguna alternativa?



Hola

Para sugerirte una solución habria que ver un poco mas del procedimiento.

Hasta donde entiendo, dependiendo de ciertas condiciones asignas a las
variables datEvento, sngValor y strTag diferentes valores, y luego los
guardas.

Una estructura posible seria esta:

If C1 Then
AsignarConjunto1
ElseIf C2 Then
AsignarConjunto2
...
Else
AsignarConjuntoN
End If
SecuenciaGuardar

Salud!

Preguntas similares