
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.
SET ALARM TO [<tempo>]
tempo – tempo em segundos, que o bdserv filho, inicializado pela aplicação cliente, permanecerá ativo, sem que haja, comunicação da aplicação cliente.
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).
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).
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.
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.
Desabilita o posicionamento do cursor.
SET CURSORPOS ON|OFF
Ú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.
|
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). |
$noclear
prog
xind = 0
set cursorpos off
Do while xind < 200
?xind
sleep (1)
++xind
Enddo
Return
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.
set demo on
Ú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.
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.
Set exact on
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.
Indica o tamanho máximo da mensagem que um programa cliente, em Opus, utiliza para se comunicar com o servidor (bdserv).
SET MESSLEN TO <NUM>
|
<num> |
Tamanho, em bytes, da mensagem a ser enviada pelo programa cliente, na conexão com o servidor. |
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.
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.
SET NOTIMESTAMP ON
Ú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.
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).
? PHONETIC ("MENESES") se exibirá MENE
? PHONETIC ("MENEZES") se exibirá MENEZ
SET PHONEND ON
? PHONETIC ("MENESES") se exibirá MENEZES
? PHONETIC ("MENEZES") se exibirá MENEZES
PHONAME( ) PHONETS( ), PHONETIC ( ), PHONOPT E WORD ( ).
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.
SET PPID ON <número de segundos>
Ú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.
Gravar em um arquivo os endereços dos registros ordenados.
SET SORT TO [<expC>]
|
<expC> |
Representa um nome de arquivo. |
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.
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.
Indica o tempo (Timeout) que um programa cliente espera pela conexão ao servidor.
SET TIMEOUT TO <num>.
|
<num> |
Representa um número em segundos. |
Permite o aumento do número default (atualmente 10), para um número maior, quando sua rede estiver lenta.
Truncar valores numéricos maiores que suas máscaras.
SET TRUNCATE ON / off
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.
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 **,**
