[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