O TSQLI oferece um gerador de telas para consulta e inserção de dados e de telas de menu.
Uma tela deve ser previamente editada em um editor de textos externo e chamada a partir da opção "tEla" do menu principal.
Existem três tipos distintos de telas. Em todas elas, as linhas 1 a 20 do arquivo devem conter o desenho da tela que pode ser livremente definida pelo usuário.
As cadeias "XX/XX/XX" e "XX:XX:XX" especificam a posição da tela onde será colocada, respectivamente, a data e a hora corrente.
O primeiro caracter underline ("_") de uma seqüência de caracteres underline indica a posição do primeiro caracter da informação a ser colocada na tela. O conteúdo desta informação varia conforme o tipo de tela em que se está trabalhando.
O primeiro caracter percente ("%") de uma seqüência de caracteres percente indica a primeira posição de uma mensagem a ser colocada na tela. Esta opção só existe nas telas de definição de menu.
Esta forma de tela permite a criação de menus. São definidas opções que podem chamar outras telas, comandos SQL e programas executáveis do sistema.
As linhas de 1 a 20 definem o desenho da tela. Na linha 21 deve ser colocado um caracter arroba ("@") seguido de uma lista de opções do menu. Cada item da lista define uma opção do menu a ser posicionada nos grupos de underline seguindo uma precedência da esquerda para a direita, de cima para baixo.
A sintaxe de um item de opção é:
nome_arquivo ([código,] "opção", "mensagem")
nome_arquivo
Especifica o nome do arquivo a ser executado a partir desta opção. Como já foi dito, uma opção pode executar um arquivo executável, um comando SQL (previamente editado num editor de textos ou no próprio modo de edição de comandos do TSQLI), ou uma outra tela (submenu ou tela de dados).
código
Indica o conteúdo do arquivo. O código "X" indica programa executável, o código "P" indica um procedimento SQL e a ausência de código indica tela.
opção
Define o conteúdo da opção que aparecerá no menu da tela. Uma opção poderá ser selecionada com o uso das setas ou teclando a primeira letra maiúscula da opção. Esta aparecerá destacada no vídeo.
mensagem
Indica a mensagem que será mostrada a partir do 1Ί caracter percente ("%"), quando o cursor indicar esta opção. Só é permitida a definição de uma seqüência de caracteres "%" na tela.
XX/XX/XXXX:XX:XX
Menu Principal
.
.
.
.
.
%%%%%%%%%%%%%%%%%%%%%%
tela02.t ("Clientes", "Cadastro de Clientes")
com01.s (P, "produtos", "Consulta Produtos")
tela04.t ("Pedidos", "Cadastro de Pedidos")
nx(X, "Editor", "NOffice")
sh(X,"Shell", "Sistema")
O TSQLI oferece, ainda, uma outra forma de definição de menu. Neste modo o desenho da tela (nas linhas de 1 a 20) deve incluir o texto referente as opções do menu. Uma opção neste tipo de menu só pode ser selecionada por cursor que aparecerá nas posições indicadas pelo caracter underline ("_").
Na linha 21 do arquivo de tela deve aparecer o caracter "#" seguido de uma lista de opções. Cada uma delas contém o nome do arquivo, código e mensagem semelhante ao primeiro modo de tela:
nome_arquivo [ ([código,] [ "mensagem" ] ) ]
Estas opções são análogas as do item 3.1. Nome_arquivo especifica o arquivo a ser executado que pode ser um programa executável (código X), um procedimento SQL (código P) ou uma tela (código nulo).
XX/XX/XXXX:XX:XX
[_]Consulta tabela
[_]Insere e Seleciona Pedidos
%%%
# com04.s (P, "Mostra todos os pedidos")
tela03.t ("Tela de inserção e seleção de pedidos")
Uma tela de dados pode ser definida para inserir e consultar tabelas da base. O TSQLI traduz internamente as ações do usuário em comandos SQL para o TSQL.
Neste caso o desenho da tela nas linhas 1 a 20 devem ser em número proporcional ao número de opções de forma a tela possuir um ou mais registros da tabela ao mesmo tempo.
A partir da linha 21 do arquivo de definição da tela deve ser colocado o nome da tabela seguido de uma lista de itens.
Cada item define o nome de uma coluna da tabela e opcionalmente uma máscara, um número de ordem para a seleção:
nome_coluna (["máscara",][ordenação])
Ver máscara no capítulo "máscaras de edição".
A sintaxe de ordenação é On onde n é o número de ordem pela qual a seleção será ordenada.
Quando este tipo de tela é executada ficam disponíveis (se o usuário corrente tiver estes privilégios) as opções de inserção e seleção.
A seleção pode ser feita por um ou mais campos digitando as condições necessárias no campo referente a coluna. Esta condição deve seguir a mesma sintaxe das condições de seleção de uma cláusula WHERE da consulta SQL. O nome da coluna não é digitado.
Para que a seleção seja feita por mais de um campo as teclas PgDn e PgUp vão para o campo seguinte onde pode ser a colocada nova condição. Para concatenar condições um "AND", um ponto e vírgula ";" ou se nada é colocado indicam um conector AND SQL. Um "OR" ou uma vírgula "," indicam um conector OR SQL.
XX/XX/XXXX:XX:XX
Cadastro de Clientes
Código Clientes Crédito
-
-
-
-
-
-
-
clientes cod cliente ("9999")
nome ("@s20,01)
credito ("$ZZ.ZZZ.ZZ9,99")
XX/XX/XXXX:XX:XX
CADASTRO DE PEDIDOS
Código: _ _ _ _ _ _ _ _ Data: _ _ _ _ _ _ _ _
Fabricante: _ _ _ _ _ _
Produto:_ _ _ _ _ _ _ _ Quantidade: _ _ _ _ _
Código do Cliente:_ _ _
Preço:_ _ _ _ _ _ _ _
Código do Vendedor:_ _ _
pedidos pedido# ("999999")
data("@Dyd")
fabricante ("XXXX")
produto ("XXXXX")
quantidade ("z9")
cliente ("9999")
preco total ("zzz zzz,99")
vendedor ("999")