Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Portuguese

Realiza a definição de alguns parâmetros do sistema, permite também retornar o valor previamente definido.

Sintaxe

Bloco de código
Set( < nParam >, < xValue > ) -> xValue

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

nParam

Numérico

Parâmetro a ser definido ou consultado

X

 

xValue

Variante

Valor a ser definido para o parâmetro

 

 

Retorno

Nome

Tipo

Descrição

xValue

Variante

Retorna o valor previamente definido para o parâmetro.

Exemplos dos parâmetros suportados:

Bloco de código
themeEclipse
languagecpp
linenumberstrue
collapsefalse
#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 bancobando 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 da execução

...

Image Added