Composition Setup |
---|
import.css=/download/attachments/3279126062824/newLayouttecnologia.css |
portuguese
|
...
Retorna os valores armazenados em uma variável global
...
.
Sintaxe
Bloco de código |
---|
|
GetGlbVars( < cGlbName >, < xValue1@xValue1...N > )
|
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|
cGlbName | caractere | Indica o nome |
...
...
|
|
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 |
...
Retorno
Nome | Tipo | Descrição |
---|
lRet | lógico | Retorna verdadeiro (.T.) caso o identificador |
...
seja encontrado e as variáveis |
...
...
; caso contrário, retorna falso (.F.). |
Informaçõ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
Observações- Variáveis globais são visíveis por todos os processos em execução dentro da instância de Application Server na qual elas foram criadas, mesmo entre ambientes / environments distintos. Isto significa que, caso não seja a intenção do desenvolvedor em compartilhar um conteúdo de variável global com outro ambiente, deve-se usar por exemplo o próprio nome do ambiente como parte do nome do identificador global a ser criado e/ou acessado.Enquanto houver pelo menos um processo em execução em uma instância de Application Server, as variáveis globais criadas nesta instância são mantidas na memória, e limpas apenas caso a aplicação assim o faça, explicitamente. Caso todos os processos AdvPl dessa instância sejam finalizados, na saída do último processo, todas as variáveis globais na memória serão limpas / eliiminadas.
|
Exemplos
Bloco de código |
---|
language | cpp |
---|
theme | Eclipse |
---|
linenumbers | true |
---|
collapse | false |
---|
|
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", <at:var at:name="aGlbRet, " />nValRetnValRet)
Return
|
Abrangência
Microsiga Protheus 8.11 , Protheus 10, Protheus 11
Veja também