[firebase-br] Refresh em Rede

firebase em dominioinf.com.br firebase em dominioinf.com.br
Ter Ago 11 12:10:14 -03 2015


Alguem usa o mesmo sistema e conseguiu fazer?

Grato

Em 2015-07-31 12:27, firebase em dominioinf.com.br escreveu:
> Bom dia,
> 
> Consegui abrir o arquivo de help do ibo no windows xp, e tentei
> entender o que estava escrito no
> Global DML Caching
> 
> Tentei fazer assim:
> 
> Criei a tabela
> CREATE TABLE IBO$DMLCACHE (
>   DMLID           INTEGER              NOT NULL  /* mapped by
> ColIDName property */
> , DMLACTION  CHAR( 1 )            NOT NULL  /* mapped byColActionName
> property - this stores A, U or D according to the DML Action requested
> by an announcing dataset */
> , KEYFIELDS     VARCHAR( 128  ) NOT NULL /* mapped by ColKeyFieldsName
> property, a column for storing a  semicolon-separated list of the
> names of up to three key fields, in KeyLinks order,  in the announcing
> or receiving  dataset's KeyLinks.  Another property, ColValuesNames,
> is a comma-separated list of the names of the columns, in KeyLinks
> order,  where the values of these columns from the announcing dataset
> will be stored in the DML cache table */
> , KEYVALUE1   VARCHAR( 128 )  NOT NULL /* Name of the column to store
> announcing/receiving dataset's first or only KeyLinks value */
> , KEYVALUE2   VARCHAR( 128 )  /* ditto, second KeyLinks value, if 
> needed */
> , KEYVALUE3   VARCHAR( 128 )  /*ditto, third KeyLinks value, if needed 
> */
> , DMLUSER      VARCHAR( 32 )   NOT NULL /* mapped by property 
> ColUserName */
> );
> ALTER TABLE IBO$DMLCACHE
> ADD CONSTRAINT PK_IBO$DMLCACHE_1 PRIMARY KEY (DMLID);
> 
> Criei uma trigger
> 
> CREATE TRIGGER AI_IBO$DMLCACHE FOR IBO$DMLCACHE
> ACTIVE AFTER INSERT POSITION 0
> AS
> BEGIN
>   POST_EVENT 'IBO$DMLCACHE';
> END;
> 
> Aqui uma parte que não entendi muito bem
> 
> CREATE TRIGGER AI_QUESTION_IBO$DMLCACHE FOR CAIXASUP  // aqui inseri o
> nome da minha tabela
> ACTIVE AFTER INSERT POSITION 0
> AS
> BEGIN
>   INSERT INTO IBO$DMLCACHE( DMLACTION, KEYFIELDS, KEYVALUE1 )
>     VALUES ( 'I', 'QUESTIONID', NEW.CODIGO );  // aqui inseri a chave
> primaria da tabela caixasup
> END;
> 
> CREATE TRIGGER AU_SURVEY_IBO$DMLCACHE FOR CAIXASUP   // inseri o nome 
> da tabela
> ACTIVE AFTER UPDATE POSITION 0
> AS
> BEGIN
>   INSERT INTO IBO$DMLCACHE( DMLACTION, KEYFIELDS, KEYVALUE1 )
>     VALUES ( 'U', 'SURVEYID', OLD.CODIGO );  // inseri a chave
> primaria do caixasup
> 
> 
> Inseri um componente IB_SyncCursor1 ligado ao meu IBODatabase1
> 
> IBODatabase1.Open;
> IB_SyncCursor1.Active:= true;
> 
> Ai aparece uma mensagem ao executar a aplicaçaão: Unassigned
> application handler.
> 
> Com certeza estou fazendo algo errado.
> 
> Se puderem dar uma ajuda.
> 
> Grato
> 
> 
> 
> 
> Em 2015-07-30 14:08, Carlos H. Cantu escreveu:
>> Primeiro vc tem que verificar se o isolamento transacional que vc está
>> usando permite enxergar as informações que já foram commitadas (ex:
>> ReadCommited), caso contrário, enquanto a transação associada a query
>> estiver aberta, ela continuará enxergando as mesmas informações de
>> quanto ela foi iniciada.
>> 
>> Indo mais além, o IBO tem um recurso que faz a auto-atualização dos
>> buffers em memória automaticamente nas estações... pesquise sobre
>> DMLCaching em http://www.ibobjects.com/TechInfo.html
>> 
>> []s
>> Carlos H. Cantu
>> www.FireBase.com.br - www.firebirdnews.org
>> www.warmboot.com.br - blog.firebase.com.br
>> 
>> fdcb> Bom dia Todos,
>> 
>> fdcb> Estou com um problema e gostaria da opnião dos participantes 
>> sobre um
>> fdcb> problema que estou tendo aqui.
>> 
>> fdcb> Uso Delphi 7, IBO, Firebird 2.5
>> 
>> fdcb> Quando um usuario abre o sistema em varios computadores em rede, 
>> um
>> fdcb> altera uma informação, na outra estação esse registro não é
>> fdcb> alterado. Tenho que fechar a tabela e abri-la novamente, então 
>> aparece
>> fdcb> atualizado.
>> 
>> fdcb> As vezes em alguns o clientes, eles baixar um crediario em uma 
>> estação,
>> fdcb> o sistema baixa normalmente,
>> fdcb> derepente vão em outra estação consultar, o crediario ainda esta 
>> em
>> fdcb> aberto naquele computador, então
>> fdcb> eles tentam baixar novamente.
>> 
>> fdcb> Como vcs estão lidando com essa situação?
>> 
>> fdcb> Eu pensei em inserir um timer no formulario principal e ir dando 
>> refresh
>> fdcb> a cada 10 segundos.
>> 
>> fdcb> Mas surgiu algumas duvidas, isso poderia sobrecarregar os 
>> recursos da
>> fdcb> maquina? Se um usuario estivesse
>> fdcb> digitando um pedido, e em outra maquina executasse um refresh da 
>> tabela
>> fdcb> pedidos, isso poderia geral algum
>> fdcb> erro na outra maquina que esta gerando o pedido?
>> 
>> fdcb> Uma outra duvida seria se o proprio ibo ja não exista uma 
>> propriedade
>> fdcb> que faça isso automatico.
>> 
>> fdcb> Grato pela ajuda
>> 
>> 
>> 
>> fdcb> ______________________________________________
>> fdcb> FireBase-BR (www.firebase.com.br) - Hospedado em 
>> www.locador.com.br
>> fdcb> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> fdcb> http://www.firebase.com.br/fb/artigo.php?id=1107
>> fdcb> Para consultar mensagens antigas:
>> fdcb> http://www.firebase.com.br/pesquisa_lista.html
>> 
>> 
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas: 
>> http://www.firebase.com.br/pesquisa_lista.html
> 
> 
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: 
> http://www.firebase.com.br/pesquisa_lista.html





Mais detalhes sobre a lista de discussão lista