[firebase-br] Variáveis de contexto

Gladiston Santana gladiston em vidy.com.br
Seg Dez 15 10:55:44 -03 2014


Hélio,

Cuidado com as variaveis de contexto, elas precisam ser usadas de um jeito
que não engesse sua aplicação e parece que é exatamente o que você está
tentando fazer, submetendo um valor deterministico de um lado cliente.
Variaveis de contexto nascem primeiro em triggers/procedures verificando se
uma variavel de contexto não existir então então que sete um com um valor
inicial e que daí em diante suas triggers/procedures saibam exatamente o
que estão fazendo quando essa variavel de contexto existir ou não existir.

Elas em geral resolvem situações como nearest triggers ou procedures
encadeadas que dependam dum valor acumulado em memoria.

Por isso, cuidado.


Em 11 de dezembro de 2014 15:54, Hélio Oliveira <hpensador em gmail.com>
escreveu:
>
> Boa tarde Colegas!
>
> Terei muitas triggers no meu banco de dados (multi – empresa) e irei
> utilizar as variáveis de contexto do Firebird para poder obter o código da
> empresa que o usuário está trabalhando no momento. Porém, a questão é:
>
> - Pedro acessou minha aplicação e selecionou a empresa de código 10, neste
> momento será feita a atualização da variável de contexto que armazena o
> código da empresa rdb$set_context(‘USER_SESSION’, ‘ID_EMPRESA’, 10);
>
> - Renato acessou minha aplicação e selecionou a empresa de código 33,
> neste momento será feita a atualização da variável de contexto que armazena
> o código da empresa rdb$set_context(‘USER_SESSION’, ‘ID_EMPRESA’, 33);
>
> Minha dúvida é: quando Renato acessou a aplicação e setou o novo valor da
> variável ID_EMPRESA, a mesma só terá apenas o valor 33 ou ambos 10 e 33? Se
> ambos, como é feita a distinção?
>
> Desculpe, posso até estar perguntando besteira... mais nunca vivenciei
> esta situação e meu cérebro neste momento deu um verdadeiro nó.
>
> [ ]'s,
>
> Hélio Oliveira
>



Mais detalhes sobre a lista de discussão lista