Neste capítulo iremos abordar os comando GET e READ, que juntos permitem que um sistema obtenha dados do usuário.
O comando GET tem como objetivo imprimir o conteúdo de uma variável ou campo de uma tabela. Deve ser precedido pelo @, com o uso do SAY opcional. Sua sintaxe [2] é:
@ y,x [SAY "<texto>"] GET <variável ou campo do registro> [PICTURE <formato>]
Exemplo de uso:
. store 40 to TEMP . @ 0,0 say "O valor da temperatura é: " GET TEMP
O exemplo a seguir utiliza a tabela alunos do curso básico de dBASE II.
. use alunos . go 1 . @ 0,0 SAY "Nome " GET nome
Saída no topo da tela:
Nome :Pablo Goncalves :
Observe que a saída do GET é delimitada sempre pelo caractere dois pontos ":".
Assim como o comando SAY possui a formatação através da cláusula USING, o comando GET é formatado através da cláusula PICTURE. As formatações desta cláusula [2] são apresentadas a seguir.
O comando GET será utilizado em parceria com o comando READ, no qual terá papel fundamental na formatação da entrada de dados pelo comando READ.
O comando READ tem como finalidade ler dados do usuário a partir do teclado. Ele só é valido após um ou mais comandos GET.
Exemplo:
store " " to data @ 0,0 SAY "Data " GET data picture "99/99/9999" read
Ao rodar o programa acima, a seguinte mensagem surge no topo da tela, juntamente com o cursor na posição da data.
Data : / / :
Ao digitarmos os números, o cursor salta automaticamente as barras de separação. Pode-se utilizar os comandos do editor CONTROL + D ou CONTROL + S para movimentar o cursor.
Quando o usuário tecla o último caractere, a interação é finalizada e o conteúdo variável utilizada no comando GET (neste caso a variável "data") é atualizado com o valor digitado pelo usuário. Veja o exemplo a seguir.
Data :01/02/2024: . ? data 01/02/2024
Podemos exigir que o dBASE II confirme a sua digitação através do comando SET CONFIRM ON. A partir do momento em que o comando for dado, todas as leituras do par GET / READ necessitarão da tecla RETURN para terminar o preenchimento do campo e saltar para o campo seguinte (se houver).
Podemos empilhar uma sequência de GETs, para o comando READ ler todos de uma só vez. Veja o exemplo a seguir.
store " " to nome @ 0,0 SAY "Nome " GET nome picture "XXXXXXXXXXXXXXX" store " " to data @ 1,0 SAY "Data " GET data picture "99/99/9999" read
Saída:
Nome : : Data : / / :
O comando CLEAR GETS impede que os comandos GETs imediatamente acima deste comando sejam utilizados pelo comando READ.
store " " to nome @ 0,0 SAY "Nome " GET nome picture "XXXXXXXXXXXXXXX" clear gets store " " to data @ 1,0 SAY "Data " GET data picture "99/99/9999" read
O programa imprime tanto o nome como a data, mas o cursor vai direto para a data. Somente a data terá interatividade.
O comando INPUT permite a leitura de dados do tipo numérico diretamente para uma variável. Sintaxe:
INPUT [<mensagem>] to <variável>
Exemplo:
. input "Valor do produto" to valor Valor do produto:150.32 150.32
O comando ACCEPT permite a leitura de dados do tipo alfanumérico diretamente para uma variável. Sintaxe:
ACCEPT [<mensagem>] to <variável>
Exemplo:
. accept "Nome" to nome Nome:Laura Laura
O comando RELEASE permite apagar da memória uma ou mais variáveis. Sintaxe:
RELEASE <variáveis> RELEASE ALL [LIKE/EXCEPT <chave>]
Onde:
Exemplos:
. release nome . release all . release all like no*
O último exemplo remove da memória todas as variáveis que começarem pelos caracteres "no".
O comando SAVE permite gravar em disco as variáveis de memória. Sintaxe:
SAVE to <arquivo> [ALL LIKE/EXCEPT <chave>]
Para gravar todas as variáveis da memória em disco, fazemos:
. save to variav
A cláusula ALL deverá ser utilizada juntamente com as outras cláusulas LIKE ou EXCEPT.
O comando RESTORE permite recuperar as variáveis de memória de um arquivo. A cláusula opcional ADDITIVE mantém as variáveis atuais. Caso seja omitida esta cláusula, as variáveis de memória são apagadas. Sintaxe:
RESTORE from <arquivo>
Exemplo:
. restore from variav
O comando DISPLAY MEMORY permite visualizar as variáveis armazenadas na memória.
. display memory NOME (C) MSX VERSAO (N) 1.1
Referências:
[1]- dBASE II PLUS para MSX interativo - curso prático, Nelson Casari, Ed. Atlas, 1990.
[2]- dBASE II PLUS para MSX programável - curso prático, Nelson Casari, Ed. Atlas, 1989.
[3]- dBASE III PLUS. Curso Data Rio, Rio de Janeiro, 1990.
<< Anterior | dBASE II | Próxima >> |