Realiza a definição de alguns parâmetros do sistema, permite também retornar o valor previamente definido.
Sintaxe
Set( < nParam >, [ xValue ] )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
nParam | numérico | Parâmetro a ser definido ou consultado | X |
|
xValue | qualquer | Valor a ser definido para o parâmetro |
|
|
Retorno
Nome | Tipo | Descrição |
---|---|---|
xRet | qualquer | Retorna o valor previamente definido para o parâmetro. |
Exemplos
Exemplo 1
#include "TOTVS.CH" user function tstSet() // Define formato da data do sistema // Exemplo mm(mes)/dd(dia)/yyyy(ano) dDate1 := CtoD("04/05/78") dDate2 := CtoD("04/05/92") Set(_SET_DATEFORMAT, 'mm/dd/yy') // Data com DOIS digitos para Ano conout("","Teste do _SET_DATEFORMAT: Usando DOIS digitos para o ano") conout(dDate1) conout(dDate2) Set(_SET_DATEFORMAT, 'mm/dd/yyyy') // Data com QUATRO digitos para Ano conout("Teste do _SET_DATEFORMAT: Usando QUATRO digitos para o ano") conout(dDate1) conout(dDate2) // Permite um maior controle das datas com apenas dois digitos, exemplo: // Se definido 1980, a data "04/05/78" será igual a 04/05/2078 // e a data "04/05/92" será igual a 04/05/1992 Set(_SET_EPOCH, 1980) dDate1 := CtoD("04/05/78") dDate2 := CtoD("04/05/92") conout("","Teste do _SET_EPOCH: Usando valor 1980") conout(dDate1) conout(dDate2) // Exibe ou omite os registros marcados para deleção no bando de dados // Se definido: // .T. ou "ON" - Omite os registros deletados // .F. ou "OFF" - Exibe os registros deletados Set(_SET_DELETED, .T.) conout("","Teste do _SET_DELETED: Usando valor TRUE") DBSelectArea("SA1") DbGoTop() i := 0 While !Eof() i++ DBSkip() endDo conout( "Quantidade de registros: " + cValToChar( i ) ) Set(_SET_DELETED, .F.) conout("Teste do _SET_DELETED: Usando valor FALSE") DbGoTop() i := 0 While !Eof() i++ DBSkip() endDo conout( "Quantidade de registros: " + cValToChar( i ) ) // Liga ou desliga a pesquisa relativa da função DBSEEK // Se definido: // .T. - Efetuara a busca parcial do registro, exemplo: // Buscando pelo texto "TN", não encontrando um registro, // será apontado para o registro aproximado, exemplo "TOTVS" // .F. - Efetuara apenas a busca exata de um registro, exemplo: // Buscando pelo texto "TO" será apontado para o registro que contenha // o texto, exemplo "TOTVS", neste caso a busca por "TN" retorná FALSO DBSelectArea("SA1") DbSetOrder(2) // FILIAL+NOME Set(_SET_SOFTSEEK, .T.) conout("","Teste do _SET_SOFTSEEK: Usando valor TRUE") DbSeek(xFilial("SA1") + "VA") // Busca registro parcial "VA" nao consta no banco conout( "Registro" + iif(Eof(), " nao", "") + " localizado" ) Set(_SET_SOFTSEEK, .F.) conout("Teste do _SET_SOFTSEEK: Usando valor FALSE") DbSeek(xFilial("SA1") + "VA") conout( "Registro" + iif(Eof(), " nao", "") + " localizado" ) // Caso a função SET seja chamada apenas com o parâmetro, sem a definição de valores // sera retornado o valor previamente definido para este parâmetro // // Observação: // O tipo do retorno irá variar dependendo do parâmetro selecionado // os tipos retornados poderão ser Texto, Numérico ou Lógico Set(_SET_DATEFORMAT) Set(_SET_EPOCH) Set(_SET_DELETED) Set(_SET_SOFTSEEK) Return
Resultado do Exemplo
Abrangência
Advanced Protheus 6.09 , Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas