[firebase-br] POST EVENT

Gladiston Santana gladiston em vidy.com.br
Seg Set 21 15:58:49 -03 2015


Crie uma tabela de eventos com id sequencial.
Quando o app iniciar-se saberá o ultimo id processo, e então inicia-se
sozinho a execução da fila com id>ultimoid.
Quando o post event for disparado voce saberá qual foi o ultimo id
processado e prosseguirá dali em diante.
Se algo de sinistro acontecer e post events forem perdidos, você deixa uma
salvaguarda para o programa de monitoramento fazer a varredura a cada n
minutos. Um post event não confere se o evento foi capturado por uma app,
então não dá para confiar 100% nele.
O programa de monitor, enxerga o post event E TAMBEM a fila e dá um shell
execute no app apropriado conforme as informações da fila forem chegando.
Se você já estiver habituado a codigo XML, essa tabela de eventos só
precisa de campos como id, datahora, xml, status, no xml vocÊ pode colocar
qualquer informação que seja pertinente a ser processada ao repassar para
outro app/dll que retornando OK voce muda o status daquele processo na
fila.
Se estiver usando uma versão XE do Delphi pode aproveitar o template para
uma aplicação de serviço e com isso ter o suporte de serviços do windows
que permite administrar falhas com opçoes como reexecutar, reiniciar ou
disparar algo diferente.

inte+


Em 21 de setembro de 2015 14:54, Marcos Weimer <marcosweimer em gmail.com>
escreveu:

> Cantu,
>
> não são apenas notas, são CT-e, NFC-e, MDF-e, enfim, os doc. eletrônicos
> gerados para a receita.
>
> Minha principal duvida é como funcionaria em um ambiente com emissão de
> muitos documentos por hora, se não haveria uma lentidão ou até mesmo um
> evento não disparado.
>
> Oque facilitaria era o evento poder possuir um nome personalizado... tipo
> NFE + id, assim saberia exatamente que teria de imprimir uma NF-e com o ID
> tal, mas não funciona, o IB_EVENTS monitora o nome idêntico ao do evento.
> (acredito que seja limitação do próprio banco).
>
> Estou alterando e vou testar, espero que não seja muitas horas de trabalho
> "perdido".
>
>
>
>
> -=Ma®©oS=-
> Marcos R. Weimer
> Delphi / C# / ASP.NET / PHP / WebServices / Firebird
>
>
> Em 21 de setembro de 2015 14:45, Carlos H. Cantu <listas em warmboot.com.br>
> escreveu:
>
> > Os core-developers costumavam dizer que a implementação dos eventos no
> > Firebird era "fraca". Sei que houve várias correções de bugs há alguns
> > anos, e acredito que no momento esta tudo ok.
> >
> > Acredito que a maior parte dos problemas relacionados a eventos
> > geralmente está na forma que o componente de acesso implementou esse
> > recurso. Pelo que me lembro, o IBObjects sofreu um refactoring recente
> > que deixou o mecanismo muito mais robusto.
> >
> > No seu caso, creio que vale a pena experimentar, mas não sei se iria
> > mudar algo em relação aos 20GB/48h, afinal, quando tivesse algo pra
> > imprimir, a informação teria que ser trafegada de qualquer forma.
> >
> > PS: 20GB em 48h me parece um tanto quanto exagerado :) Pelo que vc
> > disse, seria algo em torno de 9.600 impressoes/notas, ou 2MB por
> > impressão/nota... A não ser que vc tenha notas com centenas de
> > produtos, é difícil imaginar o trafego dos dados de uma nota
> > consumindo 2MB.
> >
> > []s
> > Carlos H. Cantu
> > www.FireBase.com.br - www.firebirdnews.org
> > www.warmboot.com.br - blog.firebase.com.br
> >
> > MW> Bom Dia!
> >
> > MW> Alguem utiliza POST EVENT?
> >
> > MW> Estou com dúvidas quanto ao seu funcionamento/desempenho.
> >
> > MW> Tenho o seguinte cenario:
> > MW> - aplicativo de impressão que faz select em algumas tabelas do banco
> > (nfe,
> > MW> mdfe, cte, cce de nfe) buscando o ID, com where para verificar se o
> > MW> documento está pronto para impressão. Executado a cada 5 segundos
> > MW> - aplicativo de envio de doc.e eletrônicos para o sefaz, mesmo caso
> da
> > MW> impressão.
> >
> > MW> Estava vendo o POST EVENT, em um teste basico aqui consegui fazer ele
> > MW> funcionar, as minhas principais dúvidas são as seguintes:
> > MW> - para empresa com poucos documentos eletrônicos sendo
> > gerados/impressos
> > MW> acredito que tudo ocorre bem, a não ser caso esteja com o aplicativo
> > MW> fechado e quando abrir não vai enviar (hj envia assim que o
> aplicativo
> > é
> > MW> aberto, se houver pendentes)
> > MW> - Para "grandes empresas", com emissão média de 200 documentos por
> > hora,
> > MW> como se comportaria? existe um possível gargalo?
> >
> > MW> Enfim, alguem tem experiência com o POST EVENT e gostaria de
> > compartilhar
> > MW> seu caso de uso?
> >
> > MW> É uma alteração considerável, então só quero por a "mão na massa"
> > quando
> > MW> estiver certo do que fazer.
> >
> > MW> Estou pensando na alteração pois adquirimos o sinatica monitor a
> algum
> > MW> tempo e apenas agora estamos tendo algum tempo disponível para
> > melhorar os
> > MW> processos, em uma empresa média, o consumo só do select da impressão
> > chega
> > MW> a acumular em 48 horas mais de 20gb de tráfego.
> >
> > MW> enfim, aguardo a opinião de vcs.
> >
> >
> > MW> -=Ma®©oS=-
> > MW> Marcos R. Weimer
> > MW> Delphi / C# / ASP.NET / PHP / WebServices / Firebird
> > MW> ______________________________________________
> > MW> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > MW> Para saber como gerenciar/excluir seu cadastro na lista, use:
> > MW> http://www.firebase.com.br/fb/artigo.php?id=1107
> > MW> Para consultar mensagens antigas:
> > MW> 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
>



-- 
--
B em B@BU     iB em M@B.  B em MBBO   MBBMMB em B@BZLr    E@@@@i      r@@@BU
vB em M@O     E em B@Bu   BBBM em 0   G em MMM@N8MBB em ZP5r  B em B@k      8B@@O
 OB em B@q   2 em BBBM    B em B@BO   BB em B@B,.:,7B em B@@L uB em B@,    OB em B@.
 ,@@@B@   @BBB@,    @BBB em 8   M em M@@@     PB em B@B  @@@BN   iB em B@L
  U em B@B2 LB em B@X     B em MBBO   MBBM em B     i em BBB@. 7 em B@Bi  B em B@E
   B@@@BiM em M@B.     @BBM em G   M em MMB@     v@@M em B,  G em B@Z v em B@B.
   7B em B@O em B@B5      B em B@B8   BBBM em B     Z@@@B@   iB@@@2 em B@Br
    NB em M@B em B8       @B em B@8   M em B@B em i:i75 em B@B em r    E@@B em B@Bq
    . em B@@@B@:       B em B@B@   @B@@@B em B@B@@@ME;     .BB em MBB@
     55.ANOS        OMOGBS   PBZGGOOMOO117,        7 em BBB@r
     ==============================================r@@@@F=====
     Gladiston Santana                             8 em B@B,
     Supervisor de TI                             G em B@B7
     Tel.:+551147873122 R:228                    :@B em B0
     Grupo VIDY - SGQ ISO9001 - 55 ANOS          @B em B@.
     Visite nosso site: www·vidy·com·br         BB@@@u
     Visite também : www·expolabor·com·br      GB em B@N



Mais detalhes sobre a lista de discussão lista