Armazenar um determinado valor na memória e identificar este valor com uma nomenclatura fixa, para posterior leitura utilizando a função LOG_getEnv.
Ao invocar a execução de novos programas a partir da execução do programa atual, mesmo que esta execução provoque a criação de novas Threads no AppServer através do componente LTHREAD, os valores armazenados em memória pela função LOG_setVar estarão disponíveis também nestas novas threads, sem a necessidade de realizar a passagem de parâmetros.
Sintaxe
LOG_setEnv( [ <l_identifier> ], [ <l_value> ] )
Parâmetros
Nome | Tipo | Obrigatório? | Descrição |
---|---|---|---|
l_identifier | CHAR | Sim | Nome fixo utilizado para identificar o valor a ser armazenado em memória. Limite de até 200 caracteres. |
l_value | CHAR | Sim | Valor a ser armazenado em memória. Tipos de valores ACEITOS: Qualquer tipo que permita conversão automática para CHAR na linguagem 4GL. Limite de até 10.000 caracteres. |
Exemplo
#--------------------------# FUNCTION LOG_setEnv_test() #--------------------------# DEFINE l_dat DATE #Registrando o valor "meu primeiro teste" na memória com o identificador "meuPrimeiroValor" CALL LOG_setEnv("meuPrimeiroValor","meu primeiro teste") LET l_dat = TODAY #Registrando na memória o identificador "dataAtual" com o conteúdo da data atual CALL LOG_setEnv("dataAtual",l_dat) #Recuperando o valor registrado em memória com o identificador "meuPrimeiroValor" CALL conout("Valor armazenado em 'MeuPrimeiroValor' = ["||LOG_getEnv("meuPrimeiroValor")||"]") #Recuperando o valor registrado em memória com o identificador "dataAtual" CALL conout("Valor armazenado em 'dataAtual' = ["||LOG_getEnv("dataAtual")||"]") END FUNCTION
Observações
Utilize esta função com cautela, pois ela armazena valores em memória durante a execução de cada Thread no Appserver e este valor só terá a memória alocada restaurada quando a Thread for finalizada. O uso excessivo pode onerar consumo de memória do AppServer.