Histórico da Página
Al ejecutar un DbSeek() verifique siempre si se localizó el registro, por ejemplo:
// DbSeekSample.prw
If SB1->(DbSeek(XFilial("SB1") + cVar))
// Encontré el registro, por lo tanto hago lo que es necesario.
Else
// Genero el retorno negativo de la ejecución del procesamiento.
EndIf
Aunque sea obvia la existencia del registro, haga la prueba para evitar cualquier interrupción indeseada del programa o que se corrompa la integridad de los datos.
La no verificación de la marcación, en gran parte de los casos, no genera error o ningún problema aparente. La principal consecuencia de la no verificación es el uso de información equivocada. Por ejemplo, suponiendo que la rutina esté calculando un contador cualquiera, si no se confirma que el DbSeek encontró el registro correcto, de todas formas se realizará el cálculo, sin embargo, el resultado del cálculo estará equivocado, pues se utilizó información equivocada. Errores de integridad de este tipo son muy difíciles de encontrar y generalmente sólo ocurren en un determinado escenario y ese escenario generalmente no está en la máquina del programador o analista que está verificando la situación.