Definição

As variáveis globais permitem manipular dados com visibilidade (scope) da aplicação ou do módulo e tem extensão (extent) inter-execução.

O nome da variável é composto por o nome do grupo a qual pertence e um identificador e são acessadas a través da instancia da classe gVars exposta por o script frame sf.

Para criar uma variável num script, basta atribuir um valor. O código abaixo, verifica se a variável grupo1.Dias já tem valor, se não tiver atribui o inteiro 15.

if arVarEmpty( sf.gVars['grupo1', 'Dias'] ) then sf.gVars['grupo1', 'Dias']:= 15;

Tabela Virtual

Também é possível fazer uma ligação (bind) de um grupo de variáveis globais é uma Tabela Virtual. (Uma tabela virtual é especificada atribuindo verdeiro em dicTable.virtual.) As propriedades da tabela e suas colunas (inclusive controle de acesso, tipo de dado e editor mas não os relacionamentos) são acessados usando o nome da tabela em lugar do grupo e o nome da coluna como identificador.

Por exemplo, para usar o valor da coluna int ANO_CORRENTE da tabela virtual PARAMS em um script:

i:= arValueFromSQL( 'select count(*) from NOTAFISCAL ' +
    'where year(EMISSAO) = ' + intToStr( sf.gVars['PARAMS', 'ANO_CORRENTE'] );

Interação

Para solicitar ao usuário que informe valores de um grupo de variáveis globais ligada a uma tabela virtual, basta especificar o nome da tabela virtual no menu da solução (dicAppMenu.tableName).

Para realizar a operação desde um script, utilize o método sf.gVars.getFromUser

Armazenamento

O armazenamento dos valores das variáveis globais é realizado no arquivo de configuração do usuário (araUserInfo.USER_CONFIG) ou no arquivo global da solução (visível para todos os usuários). Para salvar desde um script, utilize um dos método sf.gVars.saveLocal ou saveGlobal.