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

Variáveis e expressões OPUS

A linguagem de programação OPUS permite que sejam declarados vários tipos de variáveis e expressões.

Variáveis da OPUS

Variáveis são locais da memória que contém por um determinado tempo valores de um tipo de dado. Toda variável em OPUS deve ser referenciada por um nome que a identifique entre as demais.

Em OPUS a criação das variáveis é realizada em tempo de compilação, possibilitando uma modularidade no processo de programação, já que para entender uma rotina deve-se entender todas as rotinas envolvidas com a sua chamada. Cada rotina é um procedimento que deve ser compreendido no contexto de sua definição no arquivo-fonte. Isto proporciona um aumento de velocidade na execução do programa, já que nada é resolvido em tempo de execução (processo interpretativo).

As variáveis da OPUS estão divididas em classes, dependendo de sua duração e abrangência.

São elas:

Variáveis locais ou privadas

Variáveis locais ou privadas são todas as variáveis de um programa. Tem tempo de vida curto, duram somente enquanto durar o procedimento.

Podem ser declaradas com o comando STORE (=) ou com o comando PRIVATE.

Quando um programa-fonte descrever somente um módulo, não há necessidade de se declarar variáveis locais com o comando PRIVATE. Isto só é necessário Quando for necessário que a variável caractere tenha tamanho maior que o definido na opção $LEN (default=127).

Variáveis globais ou públicas

Variáveis globais ou públicas são todas as variáveis de um programa declaradas pelo comando PUBLIC. Tem tempo de vida enquanto durar o programa.

Seu conteúdo é reconhecido por todos os módulos do programa em que tenha sido declarada, podendo ser alterado em qualquer parte do programa, alterando assim seu valor para todo o programa.

Variáveis estáticas

Variáveis estáticas são variáveis que não perdem seu valor durante todo o programa. Tem escopo local, isto é, são entendidas somente pelo módulo que as declarou.

Este tipo de variável é uma mescla de variável privada e pública, pois tem escopo local, mas armazenam seus valores durante todo o programa.

São declaradas pelo comando STATIC.

Vetores

Vetores são variáveis indexadas por um número de 1 a N e seguem o mesmo esquema de definição de qualquer variável de memória. É permitido a um vetor pertencer a qualquer uma das classes descritas anteriormente. São declaradas pelo comando DECLARE [STATIC] [PUBLIC]. Se N for maior que 65535 usar DECLARE LONG

Expressões OPUS

Expressões são combinações de valores de mesmo tipo, e ficam armazenadas durante a combinação em variáveis temporárias, que são variáveis internas que a OPUS utiliza para trabalhar com expressões e variáveis do usuário. Os tipos de variáveis utilizadas na linguagem OPUS, dentro de expressões, são:

Uma variável Dinâmica é uma variável cadeia de caracteres com tamanho variável.

Regras para criação de variáveis

As variáveis de memória são aquelas criadas pelo usuário e identificadas por um nome.

As variáveis de banco de dados OpenBASE ou de arquivos externos, são aquelas referenciadas pelo programa, mas declaradas em um esquema. Elas são reconhecidas pelo seu nome no esquema.

Toda variável de memória tem um nome definido pelo usuário. O nome pode ser formado pela combinação de até 127 caracteres, sendo que o primeiro deles é obrigatoriamente uma letra e os demais podem ser algarismos ou caractere sublinhado.

Variáveis do Banco e externas

Podem ser utilizadas diretamente pelo programa através da referência ao seu nome, conforme declarado no arquivo. Quando uma variável de memória recebe o conteúdo de um item de um BD OpenBASE ou de um arquivo externo, ou a operação inversa, todas as conversões necessárias são realizadas de forma transparente conforme a seguinte tabela:

Item do

Arquivo

Variável de memória

tipo I

Tipo numérico (binário sem sinal)

tipo B

Tipo numérico (binário com sinal)

tipo N

Tipo numérico

tipo S

Tipo numérico (com sinal)

tipo I

Tipo numérico (sem sinal)

tipo H

Tipo numérico (com sinal)

tipo U

Tipo cadeia

tipo D

Tipo data ou caractere (ver $DATE)

tipo L

Tipo lógico

tipo F

Tipo ponto flutuante

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