SET() Inspeciona ou modifica uma configuraçao global ------------------------------------------------------------------------------ Sintaxe SET(<nEspecificador>, [<expNovaConfig>]) --> ConfigCorrente Argumentos <nEspecificador> é um valor numérico que especifica a configuraçao a ser inspecionada ou modificada. O <nEspecificador> deve ser fornecido na forma de uma constante manifesta (ver abaixo). <expNovaConfig> é um parâmetro opcional que especifica um novo valor para a configuraçao especificada. O tipo de <expNovaConfig> depende do <nEspecificador>. Retorno SET() retorna o valor corrente da configuraçao especificada. Descriçao SET() é uma funçao do sistema que permite a você inspecionar ou modificar os valores das configuraçoes globais do Clipper. Para informaçoes a respeito do significado e valores reais para uma configuraçao em particular, consulte o comando ou funçao associada. A configuraçao a ser inspecionada ou modificada é especificada através de uma constante manifesta. Estas constantes estao definidas em um arquivo header chamado Set.ch. Este arquivo header deve estar incluido no início de qualquer arquivo fonte que utiliza SET(). Set.ch também define uma constante chamada _SET_COUNT. Esta constante é igual ao número de configuraçoes que podem ser modificadas ou inspecionadas com a funçao SET(), permitindo a construçao de uma funçao genérica que preserva todas as configuraçoes (veja o exemplo abaixo). ----------------------------------------------------------------------- . Nota Os valores numéricos das constantes manifestas em Set.ch dependem de versao e nao devem nunca ser utilizadas diretamente; as constantes manifestas sempre devem ser usadas. ----------------------------------------------------------------------- Caso <nEspecificador> ou <expNovaConfig> seja inválido, a chamada a SET() é ignorada. Tabela 5-28: Valores SET definidos em Set.ch ------------------------------------------------------------------------ Constante Tipo de Valor Comando ou Funçao Associada ------------------------------------------------------------------------ _SET_EXACT Lógico SET EXACT _SET_FIXED Lógico SET FIXED _SET_DECIMALS Numérico SET DECIMALS _SET_DATEFORMAT Caractere SET DATE _SET_EPOCH Numérico SET EPOCH _SET_PATH Caractere SET PATH _SET_DEFAULT Caractere SET DEFAULT _SET_EXCLUSIVE Lógico SET EXCLUSIVE _SET_SOFTSEEK Lógico SET SOFTSEEK _SET_UNIQUE Lógico SET UNIQUE _SET_DELETED Lógico SET DELETED _SET_CANCEL Lógico SETCANCEL() _SET_DEBUG Lógico ALTD() _SET_COLOR Caractere SETCOLOR() _SET_CURSOR Numérico SETCURSOR() _SET_CONSOLE Lógico SET CONSOLE _SET_ALTERNATE Lógico SET ALTERNATE _SET_ALTFILE Caractere SET ALTERNATE TO _SET_DEVICE Caractere SET DEVICE _SET_PRINTER Lógico SET PRINTER _SET_PRINTFILE Caractere SET PRINTER TO _SET_MARGIN Numérico SET MARGIN _SET_BELL Lógico SET BELL _SET_CONFIRM Lógico SET CONFIRM _SET_ESCAPE Lógico SET ESCAPE _SET_INSERT Lógico READINSERT() _SET_EXIT Lógico READEXIT() _SET_INTENSITY Lógico SET INTENSITY _SET_SCOREBOARD Lógico SET SCOREBOARD _SET_DELIMITERS Lógico SET DELIMITERS _SET_DELIMCHARS Caractere SET DELIMITERS TO _SET_WRAP Lógico SET WRAP _SET_MESSAGE Numérico SET MESSAGE _SET_MCENTER Lógico SET MESSAGE ------------------------------------------------------------------------ Exemplos O exemplo a seguir ilustra uma funçao definida pelo usuário que preserva ou recupera todas as configuraçoes globais. Esta funçao pode ser utilizada na entrada para um subsistema, para assegurar que este nao afete o estado do programa que o chamou. #include "Set.ch" // FUNCTION SetAll( aNewSets ) LOCAL aCurrentSets[_SET_COUNT], nCurrent IF ( aNewSets != NIL ) // Configura novo e // retorna corrente FOR nCurrent := 1 TO _SET_COUNT aCurrentSets[n] := SET(n, aNewSets[n]) NEXT ELSE // Apenas retorna corrente FOR n := 1 TO _SET_COUNT aCurrentSets[n] := SET(nCurrent) NEXT ENDIF RETURN (aCurrentSets) Arquivos: Biblioteca CLIPPER.LIB, arquivo header Set.ch.