Insere ou Atualiza o valor de uma "chave" na "Tabela X" de uma determinada sessão, e faz bloqueio da "chave" <cChave>.
Sintaxe
lRet := VarSetX( <cUID>, <cChave>, <xValor> )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência | Observações |
---|---|---|---|---|---|
cUID | Caractere | Identificador da sessão de Variáveis Globais | X | ||
cChave | Caractere | Identificador da chave | X | ||
xValor | Numérico / Caractere / Data / Lógico | Valor a ser armazenado | X | O "Lógico" só está disponível em Build igual ou superior a 7.00.131227A NG |
Retorno
Nome | Tipo | Descrição | Observações |
---|---|---|---|
lRet | Lógico | Indica se conseguiu armazenar o valor na sessão <cUID> e na chave <cChave> | Retorna .T. se a função foi executada corretamente e se houver algum erro retorna .F. |
Observações
Se a chave <cChave> já existir, o valor armazenado será substituído pelo novo valor <xValor>.
Como esta função faz o bloqueio da chave não deve ser usada dentro de transações ("VarBeginT" na chave <cChave>).
Todavia se você só quiser atualizar o valor após o término de uma transação, esta função só irá executar após o término efetivo da transação ("VarEndT" na chave <cChave>).
Por conta de fazer bloqueio na chave esta função é mais lenta que a função "VarSetXD".
Disponível em Build igual ou superior a 7.00.131227A
Exemplos
Exemplo
User Function exemplo() Local cMyUID := "teste_UID_RL" Local cChave := "chave" Local nValor := 32 Local lRet := .F. lRet := VarSetUID(cMyUID, .T.) If(!lRet) ConOut("Erro na criação da sessão: " + cMyUID) EndIf lRet := VarSetX(cMyUID, cChave, nValor) If(!lRet) ConOut("Erro na atualização da chave: " + cChave) EndIf Return .T.