NETERR()
 Determina se um comando de rede falhou
------------------------------------------------------------------------------

 Sintaxe

     NETERR() --> lErro

 Retorno

     NETERR() retorna verdadeiro (.T.) se um comando USE ou APPEND BLANK
     falhar.  O valor inicial de NETERR() é falso (.F.).  Se o processo
     corrente nao estiver rodando em um sistema operacional de rede,
     NETERR() sempre retorna falso (.F.).

 Descriçao

     NETERR() é uma funçao de tratamento de ambientes rede.  É um flag
     global configurado por USE, USE...EXCLUSIVE, e APPEND BLANK em
     ambientes de rede.  É utilizado para testar se algum destes comandos
     falhou por ter retornado verdadeiro (.T.) nas seguintes
     situaçoes:

     Tabela 5-26: Causas de NETERR()
     ------------------------------------------------------------------------
     Comando              Causa
     ------------------------------------------------------------------------
     USE                  USE EXCLUSIVE por outro processo
     USE...EXCLUSIVE      USE EXCLUSIVE ou USE por outro processo
     APPEND BLANK         FLOCK() ou RLOCK() de LASTREC() + 1 por outro
                          usuário
     ------------------------------------------------------------------------

     NETERR() geralmente é aplicada em programas após um comando USE ou
     APPEND BLANK.  Caso ela retorne falso (.F.), você poderá executar a
     próxima operaçao.  Se o comando for USE, você poderá abrir arquivos de
     índice.  Se for APPEND BLANK, você poderá atribuir valores ao novo
     registro com um comando REPLACE ou @...GET.  Caso contrário, você deve
     manipular o erro insistindo no comando USE ou APPEND BLANK, ou
     terminando a operaçao corrente com um comando BREAK ou RETURN.

 Exemplos

     Este exemplo demonstra uma utilizaçao típica de NETERR().  Caso o
     comando USE seja bem sucedido, os arquivos de índice sao abertos e o
     processamento continua. Se USE falhar, é exibida uma mensagem e o
     controle retorna à próxima construçao BEGIN SEQUENCE:

     USE Customer SHARED NEW
     IF !NETERR()
        SET INDEX TO CustNum, CustOrders, CustZip
     ELSE
        ? "Arquivo em uso"
        BREAK
     ENDIF

 Arquivos:  Biblioteca CLIPPER.LIB.
 To download this example - click here.

See Also: FLOCK() RLOCK() APPEND BLANK USE