Sql Server 2008 R2

Bom Dia

Tenho um Xobjet chamado xoHorimetro e o mesmo contem 4 históricos, um para salvar as paradas das bombas diariamento outro mensalmente, outro as horas das bombas trabalhadas diariamente e memnsalmente.

o mesmo tem 4 tags timescom seu determinado script para realizar a rotina no tempo determinado em suas configurações.

na hora determinada para realizar este processos é normal um atraso para que seja salvo os alarmes e outros históricos no banco?

no caso eu não perco informação nenhuma mas aparece por exemplo no histórico depois de um determinado tempo

Bom Resolvi parcialmente o problema. parou o delay quando o servidor já se encontra aberto os meus dados estão aparecendo instantaneamente nos históricos.

Pórem quando inicio a aplicação com o servidor parado/ fechado demora serca de 1 a 1:30 minutos para que seja mostrado no banco mas os dados vem corretamente. o que será este atraso somente quando inicio o sistema?

Pelo que entendi seu servidor de banco de dados não está iniciado antes da aplicação. Logo o Elipse não tem como gravar os dados, mas os mesmos não são perdidos pois o Elipse grava os mesmos nos arquivos *.e3i e .e3o que funcionam como um buffer de memória do dados. (O que é bastante útil quando você trabalha com um BD remoto e tem problema com a conexão).
Quando o Elipse consegue conexão com o banco de dados, esses arquivos (
.e3o no caso) começam a ser transferidos para o bd, por isso você percebe um atraso na gravação (somente até que o arquivo seja esvaziado, depois o atraso é imperceptivel) embora os dados estejam com a data (E3Timestamp) correta.
Leia o FAQ sobre o assunto, talvez você entenda melhor.
FAQ Arquivos *.e3i e *.e3o

Boa Tarde Marcel

Isto tem como ser contornado? Será que poderá acorrer algum problema com a minha aplicação Futuramente?

Ronaldo,

De que forma exatamente você está constatando o atraso?

O servidor a que você se refere é o servidor do banco de dados mesmo?

Boa Tarde Paulo

Eu uso o banco de dados SqlServer 2008 R2 .

1- Para que todo dia ele pegue o valor de um tag Iterno responsável pelo
acumulo diário de horas trabalhadas pela bomba e salve em um histórico

2 -Para que todo mês o valor de um tag interno correspondente ao acumulo
mensal de horas trabalhadas pela bomba seja salvo em outro histórico

3- Para que todo dia ele pegue o valor de um tag Iterno responsável pela
Acumulo diário de paradas da bomba e salve em outro histórico

4 -Para que todo mês o valor de um tag interno Respponsável pelo acumulo
mensal de Paradas da bomba seja salvo em outro histórico

Estou com um dúvida ao rodar a aplicação :

minha aplicação não dá problema após a inclusão destes históricos ela recebe os valores normalmente mas…

Se eu parar o servidor e fechar o e3Admim e abri-lo novamente, ele
demora cerca de 1 minuto a 1:20 minutos para que eu visualize as novas
informações nos históricos, MAS EU NÃO PERCO NENHUMA INFORMAÇÃO. depois
deste tempo informado ao fazer as pesquisas nos históricos ele me mostra
as informações normalmente.

Exemplo: Se ao abrir aplicação e surgirem alarmes ou outros dados a
serem guardados no banco de dados dentro de 1 a 1:30 minutos, o meu
sistema reconhece os alarmes , dados, etc, ( faz todos os processos
normalmente) mas somente depois de 1 minuto consigo visualiza-lo nas
pesquisas.

depois disso por exemplo se chegar um alarme ou outra informação (status
modificado por exemplo, consigo visualiza-lo imediatamente nos
históricos).

Isto seria normal do E3? ou Alguma configuração a ser realizada.

Se quiser posso lhe enviar o log e a aplicação com seu respectivo banco

Paulo outra Coisa Com o Servidor do E3 Aberto os registros aparecem imediatamente

Você quer dizer que demora para os dados aparecerem no E3Browser?

exatamentente Paulo, isto ocorre quando fecho tuto ( supervisorio, servidor, e3 admin) . e reiniciop tudo acontece isto depois do tempo informado . ele registra instantaneamente.

Por acaso tem algum script executado no OnStartRunning de algum objeto?

Bom Dia Paulo
A unica coisa que roda o OnStartRunning, é o seguinte eu mando na pasta criada no meu Servidor de Dados no seu OnStopRunnig quardar em um Tag os valores de Comando das minhas Digitais de Saída e no OnstartRunnig de cada Biblioteca de Drive Stanciado eu mando recebe-lo de volta com se fosse a receita. e no On StartRunnig do Viewer eu tenho um tagContador para Disparar uma condição para só abrir a tela de alarme ( Quando houver Alarme Ativo) quando chegar no preset do tag. mas o que lhe mencionei sobre o atraso no Banco está acontecendo após ter incluído estes 2 históricos e 4 tagsTimer. todos os históricos (Acionamentos de Bombas, comandos etc, só estão aparecendo no histórico cerca de :20 após ter sido realizado a operação ( no caso isto só acontece após ter fechado servidor do E3 e E3 admim 0 E aberto novamente, caso contrário esatá sendo instantâneo

Ronaldo, não tem por que fechar o E3 Admin.

Feche o servidor, rode o domínio novamente e envie o log do E3 para que possamos analisar.

Paulo Enviei para o email pgustavo@elipse.com.br

meu email é tecnico@flextelecom.ind.br

Att

Ronaldo

Ronaldo,

Conforme análise dos logs enviados, as estatísticas servidor de banco de dados (DB) mostram que no primeiro minuto foram geradas 5228 operações e consumidas apenas 1211.

Não há como saber se essas 1211 operações já não estavam nos arquivos E3I/E3O antes do aplicativo rodar (podem ter sobrado de execuções anteriores). Daí em diante, o aplicativo continuou gerando de 400 a 600 operações por minuto e conseguiu enviar para o banco de 1200 a 1700 operações por minuto.

Ao final do log (6 minutos de execução), o aplicativo tinha gerado 7548 operações e consumido 9110 (clara indicação de que tinham operações pendentes no E3I/E3O remanescentes de execuções anteriores do aplicativo).

Conclusão: não há nada de errado. O aplicativo gera ao iniciar uma quantidade de operações que só consegue ser consumida depois de aproximadamente 5 minutos (5228/1211). Durante esse tempo, o usuário não irá enxergar dados atualizados no E3Browser, já que o E3 está ainda enviando as operações para o banco. Depois de alguns minutos com o domínio rodando a situação deve normalizar, já que a taxa normal de envio de dados para o banco supera a quantidade de dados que o aplicativo está gerando.

Paulo

Acho que esta grande taxa de envio para o banco deve-se porque eu estou testando e no caso são muitas tabelas e eu deixei sendo enviado a cada 1 segundo um valor pro banco. a ideia nestas HIstóricos um deles o envio de informações a cada 10 minutos , outros 2 históricos 1 vez por semana e os outros 2, 1 vez por mês. vez acho que com isto deverá diminuir este atraso não é?

teria algo a ser feito para melhorar a velocidade deste consumo dessas operações?

Ronaldo,

Tem que ver qual é a necessidade de tantas tabelas e tentar otimizar a aplicação.