NETERR( )
Determina si ha fallado algún mandato o función de red
Sintaxis
NETERR([]) –> lError
Argumentos
: Si se especifica, selecciona el valor que devuelve NETERR() en el estado especificado. puede ser verdadero (.T.) o falso (.F.). El establecimiento de NETERR() en un valor especificado permite al manejador de errores de ejecución controlar el método de manejo de determinados errores. Si desea más información, consulte Errorsys.prg.
Devuelve
NETERR() devuelve verdadero (.T.) si ha fallado algún mandato USE o APPEND BLANK. El valor inicial de NETERR() es falso (.F.). Si el proceso actual no se ejecuta en un sistema operativo de red, NETERR() siempre devuelve falso (.F.).
Descripción
NETERR() es una función de red. Se trata de un indicador global que puede activarse por USE, USE…EXCLUSIVE y APPEND BLANK en un entorno de red. Permite comprobar si ha fallado alguno de estos mandatos, devolviendo verdadero (.T.) en las siguientes situaciones:
Causas de NETERR()
————————————————————————
Mandato Causa
————————————————————————
USE Abierto en modo exclusivo por otro proceso
USE…EXCLUSIVE Apertura en modo exclusivo o compartido por otro
proceso
APPEND BLANK Bloqueo por otro usuario con FLOCK() o RLOCK() de
LASTREC() + 1
————————————————————————
NETERR() se aplica normalmente a un programa para comprobarlo después de aplicar un mandato USE o APPEND BLANK. Si devuelve falso (.F.), se puede realizar la siguiente operación. Si el mandato es USE, se pueden abrir ficheros índice. Si se trata de APPEND BLANK, pueden asignarse valores al nuevo registro mediante un mandato REPLACE o @…GET. Si no devuelve el valor falso, es necesario manejar el error, bien volviendo a intentar el mandato USE o APPEND BLANK o finalizando la operación actual con BREAK o RETURN.
Ejemplos
¦ Este ejemplo muestra la forma de utilización de NETERR(). Si el mandato USE concluye satisfactoriamente, se abren los ficheros índice y el proceso continúa. Si el mandato USE falla, aparece un mensaje y el control vuelve a la estructura BEGIN SEQUENCE más cercana:
USE Cliente SHARED NEW
IF !NETERR()
SET INDEX TO NumCli, PedidosCli, CodPostCli
ELSE
? “Otro usuario está utilizando el fichero”
BREAK
ENDIF
Ficheros: La biblioteca asociada es DPXBASE.CH.