Árvore de páginas

Retorna os valores armazenados em uma variável global.

Sintaxe

GetGlbVars( < cGlbName >, < @xValue1...N > )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

cGlbName

caractere

Indica o nome da variável global.

X


xValue1...N

qualquer

Indica os nomes de uma ou mais variáveis, passadas por referência, que receberão os valores armazenados na variável global.

X

X

Retorno

Nome

Tipo

Descrição

lRet

lógico

Retorna verdadeiro (.T.) caso o identificador seja encontrado e as variáveis sejam retornadas; caso contrário, retorna falso (.F.).

Observações

  • Somente é possível recuperar através da função GetGlbVars() os valores atribuídos a uma variável global criada pela função PutGlbVars();
  • Uma variável global acessada pela função GetGlbVars() pode retornar de 1 até o número total de valores armazenados, com tipos respectivos aos usados quando do armazenamento via PutGlbVars();
  • Para recuperar o conteúdo de variáveis globais criadas via PutGlbValue(), capazes de armazenar somente valores do tipo string, deve-se utilizar a função GetGlbValue();
  • O escopo de uma variável global é a instância do serviço do Protheus Server que está executando a aplicação AdvPL. Assim, devido ao escopo não se restringir ao ambiente (Environment) ou ao processo (Thread) do programa AdvPL que criou a variável global, seu conteúdo somente será eliminado da memória mediante a chamada da função ClearGlbValue(), ou após a finalização de todos os programas AdvPL em execução na instância do Protheus Server onde a variável global foi criada.

Exemplos

User Function teste()
  // Alimenta valores das variáveis globais
  aGlbPut := {}
  aadd(aGlbPut,{"VarGlb01","Valor 01"})
  aadd(aGlbPut,{"VarGlb02","Valor 02"})
  aadd(aGlbPut,{"VarGlb03","Valor 03"})
  nValor := 123
  PutGlbVars("GlbNames",aGlbPut,nValor)
  // Retorna os valores das variáveis globais
  nValRet := 0
  aGlbRet := {}
  GetGlbVars("GlbNames",aGlbRet,nValRet)
Return

Abrangência

Microsiga Protheus 8.11 , Protheus 10, Protheus 11

Veja também

  • Sem rótulos