OpenBASE! o Banco de Dados Inteligente  Anterior  Sumário  Fale conosco!  Próximo

Cláusulas SET

SET ALARM TO

Propósito

Determina o tempo em segundo, que o bdserv inicializado por uma aplicação cliente, deva permanecer ativo, sem que haja comunicação da aplicação cliente.

Sintaxe

SET ALARM TO [<tempo>]

Argumentos

tempo – tempo em segundos, que o bdserv filho, inicializado pela aplicação cliente, permanecerá ativo, sem que haja, comunicação da aplicação cliente.

Utilização

Evitar que um processo filho bdserv, permaneça ativo infinitamente, caso a aplicação cliente seja finalizada de forma anormal, sem finalizar o bdserv (disconnect).

Exemplos

SET ALARM TO 3.600    Indica que após 3.600 segundos (1 hora) sem comunicação, o bdserv sairá do ar.

SET ALARM TO    Não determina nenhum tempo (tempo infinito), para que o bdserv saia do ar, caso a aplicação cliente não se comunique com o servidor (bdserv).

SET CENTURYWINDOW TO < num >

Para valores menores que num, o ano passa a ser admitido como 20num ou seja dois mil + o ano setado em num.

Para valores maiores do que num, o ano passa a ser admitido como 19num ou seja mil novecentos + ano setado em num.

Exemplos

Set centurywindow to 20.

Para ano menor do que 20, por exemplo 19, é admitido o ano 2019.

Para anos maiores ou igual a 20, por exemplo 21, é admitido o ano 1921.

SET CURSORPOS ONIOFF

Propósito

Desabilita o posicionamento do cursor.

Sintaxe

SET CURSORPOS ON|OFF

Utilização

Útil, quando se deseja exibir alguma expressão ou valor, através do comando ?, a partir da posição corrente do cursor, onde o programa foi executado.

Argumentos

OFF

Retira o posicionamento do cursor, fazendo com que a posição corrente do cursor onde o programa foi executado, seja assumida como posição inicial.

ON

Faz com que o posicionamento do cursor, seja controlado pelo programa (linha, coluna).

Exemplos

$noclear

prog

xind = 0

set cursorpos off

Do while xind < 200

  ?xind

  sleep (1)

  ++xind

Enddo

Return

SET DEMO on/off

Propósito

Permite a abertura de um banco de dados e seus respectivos arquivos de dados e de índice, em um CDROM. Os arquivos são lidos, e nada é gravado.

Sintaxe

set demo on

Utilização

Útil quando se deseja executar um programa a partir de um CDROM, estando o banco de dados no CDROM. Com esta opção ligada, o banco é aberto no diretório corrente onde foi executado o programa. É necessário que o percurso onde está o banco de dados e seus arquivos (dados e índices), sejam iguais, tanto no CDROM quanto no disco rígido. Caso contrário deve-se executar o comando NAME = "X:<Percurso BD> <Nome BD>". Neste caso, o banco será aberto de acordo com o conteúdo da variável NAME. Os comandos de gravação, tais como INSERT, DELETE, MODIFY, são ignorados.

SET EXACT

Propósito

Determina que ao se comparar expressões cadeias, estas sejam exatamente iguais. A opção set exact on, passa a ser default na Opus, ou seja, se no programa principal não for dado o comando, set exact off, assume-se que set exact on está habilitado.

Sintaxe

Set exact on

Utilização

Ao se tornar default, o set exact on, evita que ao se comparar uma expressão cadeia não vazia com uma expressão cadeia vazia, o resultado seja verdadeiro.

SET MESSLEN TO <num>

Propósito

Indica o tamanho máximo da mensagem que um programa cliente, em Opus, utiliza para se comunicar com o servidor (bdserv).

Sintaxe

SET MESSLEN TO <NUM>

Argumentos

<num>

Tamanho, em bytes, da mensagem a ser enviada pelo programa cliente, na conexão com o servidor.

Utilização

Permite que um cliente, envie uma mensagem de tamanho variável, na comunicação com o servidor. Caso não seja utilizado, o valor default da mensagem é de 1000 bytes. Útil na comunicação de redes WAN e LAN, onde se utiliza um MTU (Maximum Transfer Unit) de 296 bytes, já que neste caso, o tamanho máximo da mensagem que um programa cliente em Opus enviaria ao servidor, na abertura do banco, seria de 296 bytes (Set Messlen to 296), e não 1000 bytes.

SET NOTIMESTAMP ON

Propósito

Faz com que um registro que possua como primeiro item, um item T8, não tenham o valor deste item automaticamente atualizado, quando tal registro for incluído ou alterado.

Sintaxe

SET NOTIMESTAMP ON

Utilização

Útil em programas feitos para correções no banco de dados, onde não se deseja que registros que possuam itens do tipo T8, tenham o valor destes itens atualizado com a data e hora do sistema operacional, quando os registros forem incluídos ou alterados.

SET PHONEND ON

Propósito

Indica que na rotina PHONETIC, não será eliminado o gênero ( o e a finais) e o número (S e outras terminações de plural).

Exemplos

? PHONETIC ("MENESES") se exibirá MENE

? PHONETIC ("MENEZES") se exibirá MENEZ

SET PHONEND ON

? PHONETIC ("MENESES") se exibirá MENEZES

? PHONETIC ("MENEZES") se exibirá MENEZES

Consulte

PHONAME( ) PHONETS( ), PHONETIC ( ), PHONOPT E WORD ( ).

SET PPID ON|OFF

Propósito

Indica que de tempos em tempos, será verificado se o número do processo pai, do processo de um determinado programa, é 1 (INIT). Se for o programa será terminado.

Sintaxe

SET PPID ON <número de segundos>

Utilização

Útil em casos que na emulação de terminais (Telnet, Netterm) ou conexão via "Terminal burro" (por exemplo, terminal server), ao se desfazer a conexão com o servidor, estando um programa no ar, tal programa é terminado, mas o programa "chamado" por este programa permanece no ar.

SET SORT

Propósito

Gravar em um arquivo os endereços dos registros ordenados.

Sintaxe

SET SORT TO [<expC>]

Argumentos

<expC>

Representa um nome de arquivo.

Utilização

Quando se informar , através deste comando, a <exp.C> especificando o nome do arquivo, sempre que for executado um comando SORT ON os endereços dos registros ordenados serão gravados neste arquivo. Para se desligar esta característica basta invocar o comando SET SORT TO omitindo a expressão caractere.

Da mesma forma ocorre no uso do LOCATE, pois sempre que se informar um arquivo em SET SORT TO, os registros lidos pelo comando LOCATE e pelo comando CONTINUE serão lidos na ordem especificada por este arquivo.

SET STRLERR ON

Sintaxe    

OFF (default)

Se esta opção estiver ligada, as variáveis cadeias ao serem convertidas para itens tipo U tem seu tamanho verificado. Se maiores que o tamanho do item é emitida a mensagem:

OPUS (varite) = estouro em conversão de cadeia para item tipo U.

SET TIMEOUT

Propósito

Indica o tempo (Timeout) que um programa cliente espera pela conexão ao servidor.

Sintaxe

SET TIMEOUT TO <num>.

Argumentos

<num>

Representa um número em segundos.

Utilização

Permite o aumento do número default (atualmente 10), para um número maior, quando sua rede estiver lenta.

SET TRUNCATE

Propósito

Truncar valores numéricos maiores que suas máscaras.

Sintaxe

SET TRUNCATE ON / off

Utilização

Quando ligado (ON), os valores numéricos que tenham mais dígitos que os definidos em suas máscaras de edição (PICTURE E TRANSFORM), são truncados perdendo os dígitos mais a esquerda. Para que isto não ocorra, basta desligar (OFF) este comando. Neste caso, serão exibidos asteriscos no lugar dos valores truncados.

Exemplos

O exemplo a seguir mostra como utilizar este comando.

PROG

SET DECIMALS TO 2 ON var_num

var_num = 327654.88

@ 10,10 SAY "Valor Truncado (TRUNCATE ON)    = "

@ 10,45 SAY var_num PIC "99,99"   && Exibira 54,88

@ 11,45 SAY TRANSFORM ("99,99", var_num)    && Exibira 54,88

SET TRUNCATE OFF

@ 13,10 SAY "Valor Asteriscos (TRUNCATE OFF) = "

@ 13,45 SAY var_num PIC "99,99"   && Exibira **,**

@ 14,45 SAY TRANSFORM ("99,99", var_num)    && Exibira **,**

OpenBASE! o Banco de Dados Inteligente Anterior Sumário Fale conosco! Próximo