Re: [delphi-br] Solução Seria eliminar Filtro????

2008-05-05 Por tôpico Sandro
Sim, Roberto é com tabelas.

2008/4/30 Roberto [EMAIL PROTECTED]:

   Sandro, te pergunto, é com Tabelas ou SQL?
 Roberto


 - Original Message -
 From: Sandro
 To: delphi-br
 Sent: Wednesday, April 30, 2008 9:42 AM
 Subject: [delphi-br] Solução Seria eliminar Filtro

 Bom dia!
 Peguei um sistema ja pronto com o seguinte problema, o programador
 anterior
 implementou os modulos de contas a receber e pagar utilizando uma tela de
 entrada onde o usuário escolhe se quer visualizar contas baixadas, em
 aberto, por periodo, por valor por cliente todos os tipos de
 possibilidades
 possíveis para o usuário visualizar o lançamento da maneira que ele
 desejar.
 Mas a questão é que isso foi implemetado utilizando-se de filtro (BD
 PARADOX)depois de ecolher o lançameto que ele quer visualizar o mesmo
 clica
 em visualizar e o sistema implementa o filtro necessário àquela pesquisa e
 abre o formulario principal. São duas tabelas, uma receber onde constam os
 lançamentos e outra Ireceber onde o usuário formaliza a baixa sendo que
 esta
 ireceber é uma DETAIL da receber.
 O que ocorre é que a uns tempos atras o sistema TODO ao abrir, estava
 implementado para abrir todas as tabelas deste cerca de 300 tabelas
 abertas
 ao mesmo tempo (em uma rede de 10 maquinas com um servidor dedicado ao BD)
 o
 que começou a me causar problemas de falta de memória na maioria dos
 computadores (Todos minimo celeron 1.1 com 512 rede 10/100 com swith).
 Durante este tempo em que todas as tab. eram abertas ao mesmo tempo os
 modulos receber e pagar deste sistema por incrivel que pareça funcionavam
 muito bem. Quando digo muito bem quero dizer que quando o usuário baixava
 um
 determinado lançamento esta baixa era quase instantanea.
 Mas eu tive que resolver o problema de falata de memoria. E fiz da
 seguinte
 forma simplesmente acabei com as funçoes que abriam todas as tabelas ao
 entrar no sistema e agora só abro as mesmas quando necessito (on Demanda)
 ou
 seja quando estou com o modulo receber aberto só estou com as tabelas
 necessárias àquele modulo aberta, quando antes estavam todas as tab. do
 sistema abertas. O sistema todo ficou muito mais leve, o problema de falta
 de memoria foi resolvido.
 Mas para o meu espanto tanto o modulo de receber (só baixa) quanto pagar
 (só
 baixa) ficaram extremamente lentos cerca de 5m para realizarem uma baixa.
 Intervi novamente da seguinte forma verifiquei nas duas tabelas do sistema
 receber quais eventos eram estartados desde o momentos em que as tabelas
 são
 abertas até o momento em que elas são fechadas ( o formulario de receber é
 composto por dois grids um para mostrar os dados da tab receberr e outro
 para a tab. ireceber.) fiz o seguinte removi todos os eventos (on insert,
 on
 after insert, onedit, Before post, after post) ao inves de fazer as baixas
 direto dentro da grid da tab ireceber, inseri campos edit, dateedit, enfim
 todoas os campos da grid ireceber eu inseri campos identicos logo abaixo
 da
 grid e passei a mesma para read only ou seja a baixa que era feita na grid
 agora é feita em componetes tEdit e os eventos que eram estartados na tab
 ireceber eu inseri em um botão, nomeado de efetuar baixa, que contem todos
 os processos de verificação utilizados nos eventos citados acima da tab.
 Ireceber.
 O sistema melhorou muito quando efetuei a primeira baixa depois de
 implemetado isso tudo. Porem esta ocorrendo o seguinte se faço mais que
 cinco baixas direto sem fechar o sistema ele volta a ficar lento como
 antes.
 (Normalmento processamos a cada entrada neste modulos cerca de 20 a 25
 baixas.
 Qual seria a solução definitiva e viavel para essa situação. (A lentidão
 se
 da na hora do sistema baixar o lançamento e dar o feedback para o usuario
 na
 grid ou seja dar o refresh na tab receber e remover aquele registo do
 filtro
 utilizado na consulta.)

 Conto com a ajuda de voces.
 Grande Abraço a todos.
 Sandro Cardoso

 [As partes desta mensagem que não continham texto foram removidas]

 --

 No virus found in this incoming message.
 Checked by AVG.
 Version: 7.5.524 / Virus Database: 269.23.6/1407 - Release Date: 4/30/
 11:35

 [As partes desta mensagem que não continham texto foram removidas]

 



[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Solução Seria eliminar Filtro????

2008-05-05 Por tôpico Sandro
Já pensei nessa possibilidade, mas o sistema é muito grande e funciona
relativamente bem!

Grato,
Sandro

2008/4/30 Guionardo Furlan [EMAIL PROTECTED]:

   BDE... Argh!

 Qual a chance de trocar por um SGDB de verdade?
 Sugestão rápida: Firebird.
 Aí, vc teria muito mais recursos e eficiência no trato aos dados.

 2008/4/30 Sandro [EMAIL PROTECTED] sacguimaraes%40gmail.com:
 
  Bom dia!
  Peguei um sistema ja pronto com o seguinte problema, o programador
 anterior
  implementou os modulos de contas a receber e pagar utilizando uma tela
 de
  entrada onde o usuário escolhe se quer visualizar contas baixadas, em
  aberto, por periodo, por valor por cliente todos os tipos de
 possibilidades
  possíveis para o usuário visualizar o lançamento da maneira que ele
  desejar.
  Mas a questão é que isso foi implemetado utilizando-se de filtro (BD
  PARADOX)depois de ecolher o lançameto que ele quer visualizar o mesmo
 clica
  em visualizar e o sistema implementa o filtro necessário àquela pesquisa
 e
  abre o formulario principal. São duas tabelas, uma receber onde constam
 os
  lançamentos e outra Ireceber onde o usuário formaliza a baixa sendo que
  esta
  ireceber é uma DETAIL da receber.
  O que ocorre é que a uns tempos atras o sistema TODO ao abrir, estava
  implementado para abrir todas as tabelas deste cerca de 300 tabelas
 abertas
  ao mesmo tempo (em uma rede de 10 maquinas com um servidor dedicado ao
 BD)
  o
  que começou a me causar problemas de falta de memória na maioria dos
  computadores (Todos minimo celeron 1.1 com 512 rede 10/100 com swith).
  Durante este tempo em que todas as tab. eram abertas ao mesmo tempo os
  modulos receber e pagar deste sistema por incrivel que pareça
 funcionavam
  muito bem. Quando digo muito bem quero dizer que quando o usuário
 baixava
  um
  determinado lançamento esta baixa era quase instantanea.
  Mas eu tive que resolver o problema de falata de memoria. E fiz da
 seguinte
  forma simplesmente acabei com as funçoes que abriam todas as tabelas ao
  entrar no sistema e agora só abro as mesmas quando necessito (on
 Demanda)
  ou
  seja quando estou com o modulo receber aberto só estou com as tabelas
  necessárias àquele modulo aberta, quando antes estavam todas as tab. do
  sistema abertas. O sistema todo ficou muito mais leve, o problema de
 falta
  de memoria foi resolvido.
  Mas para o meu espanto tanto o modulo de receber (só baixa) quanto pagar
  (só
  baixa) ficaram extremamente lentos cerca de 5m para realizarem uma
 baixa.
  Intervi novamente da seguinte forma verifiquei nas duas tabelas do
 sistema
  receber quais eventos eram estartados desde o momentos em que as tabelas
  são
  abertas até o momento em que elas são fechadas ( o formulario de receber
 é
  composto por dois grids um para mostrar os dados da tab receberr e outro
  para a tab. ireceber.) fiz o seguinte removi todos os eventos (on
 insert,
  on
  after insert, onedit, Before post, after post) ao inves de fazer as
 baixas
  direto dentro da grid da tab ireceber, inseri campos edit, dateedit,
 enfim
  todoas os campos da grid ireceber eu inseri campos identicos logo abaixo
 da
  grid e passei a mesma para read only ou seja a baixa que era feita na
 grid
  agora é feita em componetes tEdit e os eventos que eram estartados na
 tab
  ireceber eu inseri em um botão, nomeado de efetuar baixa, que contem
 todos
  os processos de verificação utilizados nos eventos citados acima da tab.
  Ireceber.
  O sistema melhorou muito quando efetuei a primeira baixa depois de
  implemetado isso tudo. Porem esta ocorrendo o seguinte se faço mais que
  cinco baixas direto sem fechar o sistema ele volta a ficar lento como
  antes.
  (Normalmento processamos a cada entrada neste modulos cerca de 20 a 25
  baixas.
  Qual seria a solução definitiva e viavel para essa situação. (A lentidão
 se
  da na hora do sistema baixar o lançamento e dar o feedback para o
 usuario
  na
  grid ou seja dar o refresh na tab receber e remover aquele registo do
  filtro
  utilizado na consulta.)

 --
 Timeo hominem unius libri
 Cogito ergo sum - Carpe diem

 []s
 Guionardo Furlan
 http://guionardo.blogspot.com
 



[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Questão de eficiência no S GDB. Para discussão....

2008-05-05 Por tôpico Valfrid-Ly Silva Couto
Flávio,

Pode até reduzir a manutenção das queries, porém, na execução, isso é mais 
lento, pois o SGBD fará uma consulta as suas tabelas internas para determinar 
quais são as colunas pertencentes aquela tabela e, caso você tenha colunas que 
não necessita na consulta, também aumentará o tamanho do resultset, pois as 
mesmas também serão retornadas!

Rgs,

Valfrid

Flavio [EMAIL PROTECTED] escreveu: Olá galera do mal, bom dia,

então, esses dias atrás o meu chefe disse para eu não colocar ' * ' nas 
consultas feitas em banco de dados, porque prejudicava a velocidade da consulta 
(uso Oracle 9i). Pois bem, não tive tempo de pesquisar, mas andei pensando 
sobre. Vamos supor que então não coloco ' * ' nas consultas e sim todos os 
nomes dos campos q serão úteis. Certo, mas pensando na futura manutenção do 
software, caso precisemos adicionar um campo na tabela e que será util nas 
pesquisas, fazendo assim precisaremos acrescentar o campo em todas as consultas 
feitas por todo o programa, o que seria completamente aborrecedor. Porém, 
podemos colocar essas consultas em métodos de classes, sendo assim, alterando 
só os métodos que utilizem essa query em questão.

Sobre isso, gostaria de ouvir a sugestão do pessoal, para tentar chegarmos ao 
melhor caminho.

Obrigado pela atenção de todos.
Flávio.

   
-
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! 

[As partes desta mensagem que não continham texto foram removidas]




-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 







   
-
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! 

[As partes desta mensagem que não continham texto foram removidas]



[delphi-br] RAD Studio 2007 X Paleta SERVERS

2008-05-05 Por tôpico dangra2008
Utilizo os componentes ExcelApplication,ExcelWorkSheet e ExcelWorkBook 
e a unit Excel2000 no Delphi 7.
Mas ao converter o projeto para o RAD não encontrou esses componentes. 
Não tem, tem que adicionar ou tem que substituir por outro?
Graça




RE: [delphi-br] RAD Studio 2007 X Paleta SERVERS

2008-05-05 Por tôpico Bruno Lichot
É só ir em install componentes e adicionar se não estiver instalado.

Abs
BL

From: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of 
dangra2008
Sent: segunda-feira, 5 de maio de 2008 10:12
To: delphi-br@yahoogrupos.com.br
Subject: [delphi-br] RAD Studio 2007 X Paleta SERVERS


Utilizo os componentes ExcelApplication,ExcelWorkSheet e ExcelWorkBook
e a unit Excel2000 no Delphi 7.
Mas ao converter o projeto para o RAD não encontrou esses componentes.
Não tem, tem que adicionar ou tem que substituir por outro?
Graça



[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Gravar imagens no Banco Interbase/Firebir

2008-05-05 Por tôpico Ricardo Cabral
Acho que seria mais interessante gravar somento o caminho da imagem no BD e 
gravar a imagem numa pasta.
   
  

rafaelpinto19 [EMAIL PROTECTED] escreveu:
  

Olá galera, 

Alguém poderia me explicar como gravar imagens no Banco de
dados pelo delphi, Estou usandon o componente Tcamera para Visualizar
a imagem pela webcam e o componente TImage para Capturar. Agora salvar
a imagem no Banco eu nnão sei ainda. Se tive rum rotina ou um código
simples. Eu vou agradecer bastante. Obrigado pela atenção!!!



   


Abraços,

Ricardo Cabral
   
-
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! 

[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Solução Seria eliminar Filtr o????

2008-05-05 Por tôpico Roberto
Sandro, já que é com tabelas, e com filtro, é fundamental para evitar erros 
malucos que vc faça mais ou menos assim em cada tabela

Deixe  no componente Table1.Filtered := False;

No DataMódulo ou no create do Form, coloque:
Table1.Open;
Table1.Filtered := True;


No OnClose do form coloque:

Table1.Filtered := False;
Table1.Close;
///


Limpe o form,
close o form etc


Resumindo Todas as tabelas com filtros := TRUE, somente depois do Open e antes 
do Close de cada tabela;

Se vai ver como melhora tudo.
Roberto


  - Original Message - 
  From: Sandro 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Monday, May 05, 2008 9:24 AM
  Subject: Re: [delphi-br] Solução Seria eliminar Filtro


  Sim, Roberto é com tabelas.

  2008/4/30 Roberto [EMAIL PROTECTED]:

   Sandro, te pergunto, é com Tabelas ou SQL?
   Roberto
  
  
   - Original Message -
   From: Sandro
   To: delphi-br
   Sent: Wednesday, April 30, 2008 9:42 AM
   Subject: [delphi-br] Solução Seria eliminar Filtro
  
   Bom dia!
   Peguei um sistema ja pronto com o seguinte problema, o programador
   anterior
   implementou os modulos de contas a receber e pagar utilizando uma tela de
   entrada onde o usuário escolhe se quer visualizar contas baixadas, em
   aberto, por periodo, por valor por cliente todos os tipos de
   possibilidades
   possíveis para o usuário visualizar o lançamento da maneira que ele
   desejar.
   Mas a questão é que isso foi implemetado utilizando-se de filtro (BD
   PARADOX)depois de ecolher o lançameto que ele quer visualizar o mesmo
   clica
   em visualizar e o sistema implementa o filtro necessário àquela pesquisa e
   abre o formulario principal. São duas tabelas, uma receber onde constam os
   lançamentos e outra Ireceber onde o usuário formaliza a baixa sendo que
   esta
   ireceber é uma DETAIL da receber.
   O que ocorre é que a uns tempos atras o sistema TODO ao abrir, estava
   implementado para abrir todas as tabelas deste cerca de 300 tabelas
   abertas
   ao mesmo tempo (em uma rede de 10 maquinas com um servidor dedicado ao BD)
   o
   que começou a me causar problemas de falta de memória na maioria dos
   computadores (Todos minimo celeron 1.1 com 512 rede 10/100 com swith).
   Durante este tempo em que todas as tab. eram abertas ao mesmo tempo os
   modulos receber e pagar deste sistema por incrivel que pareça funcionavam
   muito bem. Quando digo muito bem quero dizer que quando o usuário baixava
   um
   determinado lançamento esta baixa era quase instantanea.
   Mas eu tive que resolver o problema de falata de memoria. E fiz da
   seguinte
   forma simplesmente acabei com as funçoes que abriam todas as tabelas ao
   entrar no sistema e agora só abro as mesmas quando necessito (on Demanda)
   ou
   seja quando estou com o modulo receber aberto só estou com as tabelas
   necessárias àquele modulo aberta, quando antes estavam todas as tab. do
   sistema abertas. O sistema todo ficou muito mais leve, o problema de falta
   de memoria foi resolvido.
   Mas para o meu espanto tanto o modulo de receber (só baixa) quanto pagar
   (só
   baixa) ficaram extremamente lentos cerca de 5m para realizarem uma baixa.
   Intervi novamente da seguinte forma verifiquei nas duas tabelas do sistema
   receber quais eventos eram estartados desde o momentos em que as tabelas
   são
   abertas até o momento em que elas são fechadas ( o formulario de receber é
   composto por dois grids um para mostrar os dados da tab receberr e outro
   para a tab. ireceber.) fiz o seguinte removi todos os eventos (on insert,
   on
   after insert, onedit, Before post, after post) ao inves de fazer as baixas
   direto dentro da grid da tab ireceber, inseri campos edit, dateedit, enfim
   todoas os campos da grid ireceber eu inseri campos identicos logo abaixo
   da
   grid e passei a mesma para read only ou seja a baixa que era feita na grid
   agora é feita em componetes tEdit e os eventos que eram estartados na tab
   ireceber eu inseri em um botão, nomeado de efetuar baixa, que contem todos
   os processos de verificação utilizados nos eventos citados acima da tab.
   Ireceber.
   O sistema melhorou muito quando efetuei a primeira baixa depois de
   implemetado isso tudo. Porem esta ocorrendo o seguinte se faço mais que
   cinco baixas direto sem fechar o sistema ele volta a ficar lento como
   antes.
   (Normalmento processamos a cada entrada neste modulos cerca de 20 a 25
   baixas.
   Qual seria a solução definitiva e viavel para essa situação. (A lentidão
   se
   da na hora do sistema baixar o lançamento e dar o feedback para o usuario
   na
   grid ou seja dar o refresh na tab receber e remover aquele registo do
   filtro
   utilizado na consulta.)
  
   Conto com a ajuda de voces.
   Grande Abraço a todos.
   Sandro Cardoso
  
   [As partes desta mensagem que não continham texto foram removidas]
  
   --
  
   No virus found in this incoming message.
   Checked 

RE: [delphi-br] Gravar imagens no Banco Interbase/Firebir

2008-05-05 Por tôpico Bruno Lichot
Eu prefiro gravar imagens no banco, é mais rápido de trabalhar e no meu modo de 
ver mais seguro também.

Abs

BL

From: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of 
Ricardo Cabral
Sent: segunda-feira, 5 de maio de 2008 13:34
To: delphi-br@yahoogrupos.com.br
Subject: Re: [delphi-br] Gravar imagens no Banco Interbase/Firebir


Acho que seria mais interessante gravar somento o caminho da imagem no BD e 
gravar a imagem numa pasta.



rafaelpinto19 [EMAIL PROTECTED]mailto:rafaelpinto%40cdsol.com.br escreveu:


Olá galera,

Alguém poderia me explicar como gravar imagens no Banco de
dados pelo delphi, Estou usandon o componente Tcamera para Visualizar
a imagem pela webcam e o componente TImage para Capturar. Agora salvar
a imagem no Banco eu nnão sei ainda. Se tive rum rotina ou um código
simples. Eu vou agradecer bastante. Obrigado pela atenção!!!

Abraços,

Ricardo Cabral

-
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!

[As partes desta mensagem que não continham texto foram removidas]



[As partes desta mensagem que não continham texto foram removidas]



RE: [delphi-br] Gravar imagens no Banco Interbase/Firebir

2008-05-05 Por tôpico Ricardo Cabral
Bruno,
   
  Gravando no banco não deixaria o mesmo muito pesado ?
   
   

Bruno Lichot [EMAIL PROTECTED] escreveu:
  Eu prefiro gravar imagens no banco, é mais rápido de trabalhar e no 
meu modo de ver mais seguro também.

Abs

BL

From: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of 
Ricardo Cabral
Sent: segunda-feira, 5 de maio de 2008 13:34
To: delphi-br@yahoogrupos.com.br
Subject: Re: [delphi-br] Gravar imagens no Banco Interbase/Firebir

Acho que seria mais interessante gravar somento o caminho da imagem no BD e 
gravar a imagem numa pasta.

rafaelpinto19 [EMAIL PROTECTED]mailto:rafaelpinto%40cdsol.com.br escreveu:

Olá galera,

Alguém poderia me explicar como gravar imagens no Banco de
dados pelo delphi, Estou usandon o componente Tcamera para Visualizar
a imagem pela webcam e o componente TImage para Capturar. Agora salvar
a imagem no Banco eu nnão sei ainda. Se tive rum rotina ou um código
simples. Eu vou agradecer bastante. Obrigado pela atenção!!!

Abraços,

Ricardo Cabral

-
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento!

[As partes desta mensagem que não continham texto foram removidas]

[As partes desta mensagem que não continham texto foram removidas]



   


Abraços,

Ricardo Cabral
   
-
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! 

[As partes desta mensagem que não continham texto foram removidas]



[delphi-br] Re: URGENTE: Consulta incremental LIKE

2008-05-05 Por tôpico carlos alberto do amaral
Olá Jorge,

   Bom, pelo menos no exemplo, não vejo a necessidade de utilização 
do upper...   Cuidado, dependendo da situação, vc terá que criar um 
índice para a consulta com a função...  Seria interessante, gravar já 
com o upper para evitar transtornos...

  Quando vc utiliza um select assim:  Select co_agrupado from tabela 
where
 upper(co_agrupado) like   Vc tem que ter um índice com a função 
upper, correndo o risco de caso não tê-lo, o banco fazer um full scan 
na table...  Claro, caso a sua table tenha muitas linhas...

Por que não assim ??

 Select co_agrupado from tabela where
   co_agrupado like '%E668%A668%D654%C333%';



  Um abraço,

   Carlos

P.S.: A primeira vez que vi desta forma o like, foi aqui na lista...


--- Em delphi-br@yahoogrupos.com.br, Jorge Ericsson 
[EMAIL PROTECTED] escreveu

 Olá amigos delphianos,
 
 Meio confuso meu problema, mas crio que a solução está apenas na 
monstagem
 da minha instrução SQL.
 
 Bom, eu estou com um problema de pesquisa incremental genérica pois 
utilizo
 uma aplicação que pode retorna informções de 3 bancos Firebird, 
PostgreeSql
 e Oracle ao mesmo tempo.
 
 Na minha tabela eu possuo campos da seguinte forma:
 
 CO_AGRUPADO
 A124|B545|C785|D999|E478
 *A334|B767|C333|D354|E809
 B786|A792|D654|C333|E668
 *
 Eu gostaria de ao pesquisar por um código tipo E668A334D654C333 - 
sem
 informa a barra de divisão -  ele me retornasse por exemplo a *2ª e 
3ª
 linhas de registro apenas*, ignorando a 1ª linha pois não existem 
nenhuma
 informação nela que atenda a solicitação do usuário.
 
 Eu tentei da seguinte forma:
 
 Select co_agrupado from tabela where
 upper(co_agrupado) like upper(E668) or
 upper(co_agrupado) like upper(A668) or
 upper(co_agrupado) like upper(D654) or
 upper(co_agrupado) like upper(C333)
 
 Mas, apresenta problemas na montagem do FILTER nos componentes 
usando
 Zeos(Firebird), ADO(Oarcle) e DBExpress(PostgreSql) dando erro.
 
 Alguém poderia dar uma dica ?
 
 Valew pessoal
 
 Att,
 
 Jorge Ericsson S. Pinheiro
 Analista/Projetista de Sistemas
 Ericsson Sistemas e Soluções
 http://www.jericsson.com.br
 61 9227.4785 / 3967.6172
 Brasília - DF
 
 
 [As partes desta mensagem que não continham texto foram removidas]





Re: [delphi-br] Gravar imagens no Banco Interbase/Firebir

2008-05-05 Por tôpico Vinicius Santos - MSI
Cara, existe uma discussão um pouco mais afundo sobre isso, o banco não fica 
mais pesado, a menos lógico que vc faça um select * ...
vc tem que analisar certinho oq deve ser feitousado o BD ou o sistema de 
arquivos e gravar o caminho

i)Backup's são complicados quando vc usa sistema de arquivos, tem que fazer 
backup de todas as imagens;
ii)Se for usar o Banco existe um limite teórico para o tamanho da imagem, 
existe tbem o limite prático para o tamanho das imagens;
existe mais variáveis a ser analizada, mas vc tem que colocar as coisas na 
balança.

Vinicius dos Santos
Analista de Desenvolvimento Júnior
MSI SOLUÇÕES
Av. Dr. Altino Arantes, 131 Sala 145 - 146 Centro - Ourinhos/Sp - Brasil
Fone/Fax: +55 (14) 3324-8181  www.msisolucoes.com.br


  - Original Message - 
  From: Ricardo Cabral 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Monday, May 05, 2008 2:02 PM
  Subject: RE: [delphi-br] Gravar imagens no Banco Interbase/Firebir


  Bruno,

  Gravando no banco não deixaria o mesmo muito pesado ?



  Bruno Lichot [EMAIL PROTECTED] escreveu:
  Eu prefiro gravar imagens no banco, é mais rápido de trabalhar e no meu modo 
de ver mais seguro também.

  Abs

  BL

  From: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of 
Ricardo Cabral
  Sent: segunda-feira, 5 de maio de 2008 13:34
  To: delphi-br@yahoogrupos.com.br
  Subject: Re: [delphi-br] Gravar imagens no Banco Interbase/Firebir

  Acho que seria mais interessante gravar somento o caminho da imagem no BD e 
gravar a imagem numa pasta.

  rafaelpinto19 [EMAIL PROTECTED]mailto:rafaelpinto%40cdsol.com.br escreveu:

  Olá galera,

  Alguém poderia me explicar como gravar imagens no Banco de
  dados pelo delphi, Estou usandon o componente Tcamera para Visualizar
  a imagem pela webcam e o componente TImage para Capturar. Agora salvar
  a imagem no Banco eu nnão sei ainda. Se tive rum rotina ou um código
  simples. Eu vou agradecer bastante. Obrigado pela atenção!!!

  Abraços,

  Ricardo Cabral

  -
  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!

  [As partes desta mensagem que não continham texto foram removidas]

  [As partes desta mensagem que não continham texto foram removidas]

  Abraços,

  Ricardo Cabral

  -
  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento! 

  [As partes desta mensagem que não continham texto foram removidas]



   

[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Gravar imagens no Banco Interbase/Firebir

2008-05-05 Por tôpico Alessandro DUARTE de Moraes
Essa discussão é bem relevante, então cito alguns pontos a favor:

1) Para acessos remotos, isto é, o servidor está em uma localidade e o cliente 
em outra, não vejo uma forma mais coerente do que ter a imagem tb no banco de 
dados
2) Menos gambiarra qdo for executar uma select para relatórios ...

Para completar, sugiro que seja criada uma tabela no banco que seja dedicada a 
armazenar imagens, apenas com 2 campos: id INTEGER e imagem BLOB
e nas tabelas que são necessárias ter uma ou mais imagens basta colocar campos 
referenciando ao id desta tabela de imagens.

Tive experiências traumáticas com as imagens em uma pasta ... mas uma solução 
bem elaborada pode dar certo, exceto no caso do item 1 que citei acima.

Abraços,

Alessandro DUARTE de Moraes
A.C. Santa Casa do Rio Grande.
http://www.santacasarg.com.br

  - Original Message - 
  From: Ricardo Cabral 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Monday, May 05, 2008 2:02 PM
  Subject: RE: [delphi-br] Gravar imagens no Banco Interbase/Firebir


  Bruno,

  Gravando no banco não deixaria o mesmo muito pesado ?



  Bruno Lichot [EMAIL PROTECTED] escreveu:
  Eu prefiro gravar imagens no banco, é mais rápido de trabalhar e no meu modo 
de ver mais seguro também.

  Abs

  BL

  From: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] On Behalf Of 
Ricardo Cabral
  Sent: segunda-feira, 5 de maio de 2008 13:34
  To: delphi-br@yahoogrupos.com.br
  Subject: Re: [delphi-br] Gravar imagens no Banco Interbase/Firebir

  Acho que seria mais interessante gravar somento o caminho da imagem no BD e 
gravar a imagem numa pasta.

  rafaelpinto19 [EMAIL PROTECTED]mailto:rafaelpinto%40cdsol.com.br escreveu:

  Olá galera,

  Alguém poderia me explicar como gravar imagens no Banco de
  dados pelo delphi, Estou usandon o componente Tcamera para Visualizar
  a imagem pela webcam e o componente TImage para Capturar. Agora salvar
  a imagem no Banco eu nnão sei ainda. Se tive rum rotina ou um código
  simples. Eu vou agradecer bastante. Obrigado pela atenção!!!

  Abraços,

  Ricardo Cabral

  -
  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!

  [As partes desta mensagem que não continham texto foram removidas]

  [As partes desta mensagem que não continham texto foram removidas]

  Abraços,

  Ricardo Cabral

  -
  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento! 

  [As partes desta mensagem que não continham texto foram removidas]



   
  -- 
  E-mail Seguro Vetorial.net 

  Mensagem classificada como NÃO-SPAM. Para classificar como SPAM, 
  encaminhe para [EMAIL PROTECTED] 

  Chave de Identificação: 54568,481f3db9196851913172569 


[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Questão de eficiência no SGDB. Par a discussão....

2008-05-05 Por tôpico Julio Cesar
no caso de usar a msm consulta em varios lugares, cria uma constante com o 
conteudo da query dai quando voce for alterar, acrescentar ou excluir campos e 
so alterar a constante...


julio cesar



  - Original Message - 
  From: Valfrid-Ly Silva Couto 
  To: delphi-br@yahoogrupos.com.br 
  Sent: Monday, May 05, 2008 2:02 PM
  Subject: Re: [delphi-br] Questão de eficiência no SGDB. Para discussão


  Flávio,

  Pode até reduzir a manutenção das queries, porém, na execução, isso é mais 
lento, pois o SGBD fará uma consulta as suas tabelas internas para determinar 
quais são as colunas pertencentes aquela tabela e, caso você tenha colunas que 
não necessita na consulta, também aumentará o tamanho do resultset, pois as 
mesmas também serão retornadas!

  Rgs,

  Valfrid

  Flavio [EMAIL PROTECTED] escreveu: Olá galera do mal, bom dia,

  então, esses dias atrás o meu chefe disse para eu não colocar ' * ' nas 
consultas feitas em banco de dados, porque prejudicava a velocidade da consulta 
(uso Oracle 9i). Pois bem, não tive tempo de pesquisar, mas andei pensando 
sobre. Vamos supor que então não coloco ' * ' nas consultas e sim todos os 
nomes dos campos q serão úteis. Certo, mas pensando na futura manutenção do 
software, caso precisemos adicionar um campo na tabela e que será util nas 
pesquisas, fazendo assim precisaremos acrescentar o campo em todas as consultas 
feitas por todo o programa, o que seria completamente aborrecedor. Porém, 
podemos colocar essas consultas em métodos de classes, sendo assim, alterando 
só os métodos que utilizem essa query em questão.

  Sobre isso, gostaria de ouvir a sugestão do pessoal, para tentar chegarmos ao 
melhor caminho.

  Obrigado pela atenção de todos.
  Flávio.

  -
  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento! 

  [As partes desta mensagem que não continham texto foram removidas]

  

  -- 
   FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

  -
  Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento! 

  [As partes desta mensagem que não continham texto foram removidas]



   

[As partes desta mensagem que não continham texto foram removidas]



[delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Rafael Jorge
Vamos lá...

Tenho uma aplicação que roda numa rede.. ai um cliente meu quer que ele
possa pegar o note book dele por exemplo, com o sistema instalado nele sair
mexendo a vontade no sistema na rede.. Incluindo, excluindo e alteando
registros, ate ai tudo bem.. o trivial. Só que ele quer de vez em quando
levar o note book pra casa e ainda assim trabalhar no sistema. E depois
quando voltar sincronizar as informações.

Minha pergunta é qual o melhor jeito de fazer isso?

Tive a idéia de colocar uma tela de sincronização de dados. Onde eu digo o
banco de origem e o destino.. Ai o sistema sai tabela por tabela, registro
por registro vendo o que foi esta cadastrado no banco de origem que não tem
no de destino e colocar ele la..

Bem não to louco de fazer isso via programação, se eu abrir tabela por
tabela (são 326) e registro por registro de cada uma procurando pra ver se
já ta cadastrado alem de ser um trabalho gigante vai demorar muito. Então
como faço isso via SQL? Como eu consulto em dois bancos ao mesmo tempo?
Estou usando firebird 1.5.

Outra coisa, como deve proceder de uma forma pra saber qual os registros
foram inseridos em off-line (o PC fora da rede)? Pensei em colocar um campo
pra servir como flag e quando o sistema tiver off line todo registro
alterado ou incluído ficaria com essa flag. Ai quando a maquina voltasse pra
rede ele sincronizava.

Alguém já teve que fazer isso? Outra coisa... não vai ser apenas um pc que
vai ficar off line não. Vai ser vários. E entre esse meio tempo os pc´s on
line serão alimentados e tal.

Obrigado.

T+

---
Rafael jorge alves (Analista/desenvolvedor)

www.sistemafocus.com.br
sistema focus de gestão comercial e serviços em informatica.
---


[As partes desta mensagem que não continham texto foram removidas]



Res: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Luciano Calenzani Simões
Antes de pensar em programação. Já pensou em fazer uma conexão remota via 
internet?
 
Luciano Calenzani Simões



- Mensagem original 
De: Rafael Jorge [EMAIL PROTECTED]
Para: delphi-br delphi-br@yahoogrupos.com.br
Enviadas: Segunda-feira, 5 de Maio de 2008 16:49:20
Assunto: [delphi-br] Sistema on-line X off-line

Vamos lá...

Tenho uma aplicação que roda numa rede.. ai um cliente meu quer que ele
possa pegar o note book dele por exemplo, com o sistema instalado nele sair
mexendo a vontade no sistema na rede.. Incluindo, excluindo e alteando
registros, ate ai tudo bem.. o trivial. Só que ele quer de vez em quando
levar o note book pra casa e ainda assim trabalhar no sistema. E depois
quando voltar sincronizar as informações.

Minha pergunta é qual o melhor jeito de fazer isso?

Tive a idéia de colocar uma tela de sincronização de dados. Onde eu digo o
banco de origem e o destino.. Ai o sistema sai tabela por tabela, registro
por registro vendo o que foi esta cadastrado no banco de origem que não tem
no de destino e colocar ele la..

Bem não to louco de fazer isso via programação, se eu abrir tabela por
tabela (são 326) e registro por registro de cada uma procurando pra ver se
já ta cadastrado alem de ser um trabalho gigante vai demorar muito. Então
como faço isso via SQL? Como eu consulto em dois bancos ao mesmo tempo?
Estou usando firebird 1.5.

Outra coisa, como deve proceder de uma forma pra saber qual os registros
foram inseridos em off-line (o PC fora da rede)? Pensei em colocar um campo
pra servir como flag e quando o sistema tiver off line todo registro
alterado ou incluído ficaria com essa flag. Ai quando a maquina voltasse pra
rede ele sincronizava.

Alguém já teve que fazer isso? Outra coisa... não vai ser apenas um pc que
vai ficar off line não. Vai ser vários. E entre esse meio tempo os pc´s on
line serão alimentados e tal.

Obrigado.

T+

 - - - - - -
Rafael jorge alves (Analista/desenvolv edor)

www.sistemafocus. com.br
sistema focus de gestão comercial e serviços em informatica.
 - - - - - -

[As partes desta mensagem que não continham texto foram removidas]




!--

#ygrp-mkp{
border:1px solid #d8d8d8;font-family:Arial;margin:14px 0px;padding:0px 14px;}
#ygrp-mkp hr{
border:1px solid #d8d8d8;}
#ygrp-mkp #hd{
color:#628c2a;font-size:85%;font-weight:bold;line-height:122%;margin:10px 0px;}
#ygrp-mkp #ads{
margin-bottom:10px;}
#ygrp-mkp .ad{
padding:0 0;}
#ygrp-mkp .ad a{
color:#ff;text-decoration:none;}
--

!--

#ygrp-sponsor #ygrp-lc{
font-family:Arial;}
#ygrp-sponsor #ygrp-lc #hd{
margin:10px 0px;font-weight:bold;font-size:78%;line-height:122%;}
#ygrp-sponsor #ygrp-lc .ad{
margin-bottom:10px;padding:0 0;}
--

!--

#ygrp-mlmsg {font-size:13px;font-family:arial, helvetica, clean, 
sans-serif;}
#ygrp-mlmsg table {font-size:inherit;font:100%;}
#ygrp-mlmsg select, input, textarea {font:99% arial, helvetica, clean, 
sans-serif;}
#ygrp-mlmsg pre, code {font:115% monospace;}
#ygrp-mlmsg * {line-height:1.22em;}
#ygrp-text{
font-family:Georgia;
}
#ygrp-text p{
margin:0 0 1em 0;}
#ygrp-tpmsgs{
font-family:Arial;
clear:both;}
#ygrp-vitnav{
padding-top:10px;font-family:Verdana;font-size:77%;margin:0;}
#ygrp-vitnav a{
padding:0 1px;}
#ygrp-actbar{
clear:both;margin:25px 0;white-space:nowrap;color:#666;text-align:right;}
#ygrp-actbar .left{
float:left;white-space:nowrap;}
.bld{font-weight:bold;}
#ygrp-grft{
font-family:Verdana;font-size:77%;padding:15px 0;}
#ygrp-ft{
font-family:verdana;font-size:77%;border-top:1px solid #666;
padding:5px 0;
}
#ygrp-mlmsg #logo{
padding-bottom:10px;}

#ygrp-reco {
margin-bottom:20px;padding:0px;}
#ygrp-reco #reco-head {
font-weight:bold;color:#ff7900;}

#reco-grpname{
font-weight:bold;margin-top:10px;}
#reco-category{
font-size:77%;}
#reco-desc{
font-size:77%;}

#ygrp-vital{
background-color:#e0ecee;margin-bottom:20px;padding:2px 0 8px 8px;}
#ygrp-vital #vithd{
font-size:77%;font-family:Verdana;font-weight:bold;color:#333;text-transform:uppercase;}
#ygrp-vital ul{
padding:0;margin:2px 0;}
#ygrp-vital ul li{
list-style-type:none;clear:both;border:1px solid #e0ecee;
}
#ygrp-vital ul li .ct{
font-weight:bold;color:#ff7900;float:right;width:2em;text-align:right;padding-right:.5em;}
#ygrp-vital ul li .cat{
font-weight:bold;}
#ygrp-vital a{
text-decoration:none;}

#ygrp-vital a:hover{
text-decoration:underline;}

#ygrp-sponsor #hd{
color:#999;font-size:77%;}
#ygrp-sponsor #ov{
padding:6px 13px;background-color:#e0ecee;margin-bottom:20px;}
#ygrp-sponsor #ov ul{
padding:0 0 0 8px;margin:0;}
#ygrp-sponsor #ov li{
list-style-type:square;padding:6px 0;font-size:77%;}
#ygrp-sponsor #ov li a{
text-decoration:none;font-size:130%;}
#ygrp-sponsor #nc{
background-color:#eee;margin-bottom:20px;padding:0 8px;}
#ygrp-sponsor .ad{
padding:8px 0;}
#ygrp-sponsor .ad #hd1{

RE: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Rubem Nascimento da Rocha

De prima, uma alternativa seria fazer as manutenções com ClientDataSet, 
mantendo os dados salvos localmente em um arquivo binário ou XML. Soh teria que 
ver a questão de segurança pra esses dados não serem corrompidos ou sofrerem 
intervenção externa(proteção dos dados).

Usaria um ClientDataSet pra editar os dados localmente, e quando fosse aplicar 
isso em um banco de dados, copiaria os dados deste ClientDataSet para um outro 
devidamente ligado ao provider de dados e neste ultimo aplicaria tudo no banco 
de dados. Obviamente q os dois ClientDataSets deveriam ter a mesma estrutura.

Esta eh a minha humilde sugestao. Se alguem tiver ideia melhor, eh sempre bom 
compartilhar e discutir, principalmente aqui no grupo!
Sds.



To: delphi-br@yahoogrupos.com.br
From: [EMAIL PROTECTED]
Date: Mon, 5 May 2008 16:49:20 -0300
Subject: [delphi-br] Sistema on-line X off-line

Vamos lá...

Tenho uma aplicação que roda numa rede.. ai um cliente meu quer que ele
possa pegar o note book dele por exemplo, com o sistema instalado nele sair
mexendo a vontade no sistema na rede.. Incluindo, excluindo e alteando
registros, ate ai tudo bem.. o trivial. Só que ele quer de vez em quando
levar o note book pra casa e ainda assim trabalhar no sistema. E depois
quando voltar sincronizar as informações.

Minha pergunta é qual o melhor jeito de fazer isso?

Tive a idéia de colocar uma tela de sincronização de dados. Onde eu digo o
banco de origem e o destino.. Ai o sistema sai tabela por tabela, registro
por registro vendo o que foi esta cadastrado no banco de origem que não tem
no de destino e colocar ele la..

Bem não to louco de fazer isso via programação, se eu abrir tabela por
tabela (são 326) e registro por registro de cada uma procurando pra ver se
já ta cadastrado alem de ser um trabalho gigante vai demorar muito. Então
como faço isso via SQL? Como eu consulto em dois bancos ao mesmo tempo?
Estou usando firebird 1.5.

Outra coisa, como deve proceder de uma forma pra saber qual os registros
foram inseridos em off-line (o PC fora da rede)? Pensei em colocar um campo
pra servir como flag e quando o sistema tiver off line todo registro
alterado ou incluído ficaria com essa flag. Ai quando a maquina voltasse pra
rede ele sincronizava.

Alguém já teve que fazer isso? Outra coisa... não vai ser apenas um pc que
vai ficar off line não. Vai ser vários. E entre esse meio tempo os pc´s on
line serão alimentados e tal.

Obrigado.

T+

--
Rafael jorge alves (Analista/desenvolvedor)

www.sistemafocus.com.br
sistema focus de gestão comercial e serviços em informatica.
--

[As partes desta mensagem que não continham texto foram removidas]









_
Conheça o Windows Live Spaces, a rede de relacionamentos do Messenger!
http://www.amigosdomessenger.com.br/

Re: [delphi-br] Re: URGENTE: Consulta incremental LIKE

2008-05-05 Por tôpico Jorge Ericsson
Na verdade eu andei verificando a minha situação e o like não resolve o meu
problema.

Eu preciso usar a claúsula IN para retorna dados entre determinando
intervalo da seguinte forma:

select co_agrupado from tabela where co_agrupado in ['A001'..'A999'], onde
ele precisa me retornar todos os registro dentro desse intervalo tipo:

A119|B333|C8282|D822
A113|B323|A003|D8292
A559|B343|C223|D6552

Obs: Esse select eu não tó conseguindo montar.

Valew pessoal



2008/5/5 carlos alberto do amaral [EMAIL PROTECTED]:

   Olá Jorge,

 Bom, pelo menos no exemplo, não vejo a necessidade de utilização
 do upper... Cuidado, dependendo da situação, vc terá que criar um
 índice para a consulta com a função... Seria interessante, gravar já
 com o upper para evitar transtornos...

 Quando vc utiliza um select assim: Select co_agrupado from tabela
 where
 upper(co_agrupado) like Vc tem que ter um índice com a função
 upper, correndo o risco de caso não tê-lo, o banco fazer um full scan
 na table... Claro, caso a sua table tenha muitas linhas...

 Por que não assim ??

 Select co_agrupado from tabela where
 co_agrupado like '%E668%A668%D654%C333%';

 Um abraço,

 Carlos

 P.S.: A primeira vez que vi desta forma o like, foi aqui na lista...

 --- Em delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br,
 Jorge Ericsson
 [EMAIL PROTECTED] escreveu

 
  Olá amigos delphianos,
 
  Meio confuso meu problema, mas crio que a solução está apenas na
 monstagem
  da minha instrução SQL.
 
  Bom, eu estou com um problema de pesquisa incremental genérica pois
 utilizo
  uma aplicação que pode retorna informções de 3 bancos Firebird,
 PostgreeSql
  e Oracle ao mesmo tempo.
 
  Na minha tabela eu possuo campos da seguinte forma:
 
  CO_AGRUPADO
  A124|B545|C785|D999|E478
  *A334|B767|C333|D354|E809
  B786|A792|D654|C333|E668
  *
  Eu gostaria de ao pesquisar por um código tipo E668A334D654C333 -
 sem
  informa a barra de divisão - ele me retornasse por exemplo a *2ª e
 3ª
  linhas de registro apenas*, ignorando a 1ª linha pois não existem
 nenhuma
  informação nela que atenda a solicitação do usuário.
 
  Eu tentei da seguinte forma:
 
  Select co_agrupado from tabela where
  upper(co_agrupado) like upper(E668) or
  upper(co_agrupado) like upper(A668) or
  upper(co_agrupado) like upper(D654) or
  upper(co_agrupado) like upper(C333)
 
  Mas, apresenta problemas na montagem do FILTER nos componentes
 usando
  Zeos(Firebird), ADO(Oarcle) e DBExpress(PostgreSql) dando erro.
 
  Alguém poderia dar uma dica ?
 
  Valew pessoal
 
  Att,
 
  Jorge Ericsson S. Pinheiro
  Analista/Projetista de Sistemas
  Ericsson Sistemas e Soluções
  http://www.jericsson.com.br
  61 9227.4785 / 3967.6172
  Brasília - DF
 
 
  [As partes desta mensagem que não continham texto foram removidas]
 

 




-- 
Att,

Jorge Ericsson S. Pinheiro
Analista/Projetista de Sistemas
Ericsson Sistemas e Soluções
http://www.jericsson.com.br
61 9227.4785 / 3967.6172
Brasília - DF


[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Rafael Jorge
primeiro respondendo a sugestao da conexao via internet.. nao é viavel pois
é justamente nao ter internet e um requisito dessa estrututra de off-line.
ja sobre quardar os arquivos em XML eu ja tinha pensado.. mas ai nao resolve
o problema de sincronismo. pq minha principal duvida e como eu vou
sincronizar a base sem ser uma rotina trabalhosa e demorada.
valeu pela atencao.
t+

2008/5/5 Rubem Nascimento da Rocha [EMAIL PROTECTED]:


 De prima, uma alternativa seria fazer as manutenções com ClientDataSet,
 mantendo os dados salvos localmente em um arquivo binário ou XML. Soh teria
 que ver a questão de segurança pra esses dados não serem corrompidos ou
 sofrerem intervenção externa(proteção dos dados).

 Usaria um ClientDataSet pra editar os dados localmente, e quando fosse
 aplicar isso em um banco de dados, copiaria os dados deste ClientDataSet
 para um outro devidamente ligado ao provider de dados e neste ultimo
 aplicaria tudo no banco de dados. Obviamente q os dois ClientDataSets
 deveriam ter a mesma estrutura.

 Esta eh a minha humilde sugestao. Se alguem tiver ideia melhor, eh sempre
 bom compartilhar e discutir, principalmente aqui no grupo!
 Sds.

 

 To: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br
 From: [EMAIL PROTECTED] rafael.jorge%40gmail.com
 Date: Mon, 5 May 2008 16:49:20 -0300
 Subject: [delphi-br] Sistema on-line X off-line


 Vamos lá...

 Tenho uma aplicação que roda numa rede.. ai um cliente meu quer que ele
 possa pegar o note book dele por exemplo, com o sistema instalado nele
 sair
 mexendo a vontade no sistema na rede.. Incluindo, excluindo e alteando
 registros, ate ai tudo bem.. o trivial. Só que ele quer de vez em quando
 levar o note book pra casa e ainda assim trabalhar no sistema. E depois
 quando voltar sincronizar as informações.

 Minha pergunta é qual o melhor jeito de fazer isso?

 Tive a idéia de colocar uma tela de sincronização de dados. Onde eu digo o
 banco de origem e o destino.. Ai o sistema sai tabela por tabela, registro
 por registro vendo o que foi esta cadastrado no banco de origem que não
 tem
 no de destino e colocar ele la..

 Bem não to louco de fazer isso via programação, se eu abrir tabela por
 tabela (são 326) e registro por registro de cada uma procurando pra ver se
 já ta cadastrado alem de ser um trabalho gigante vai demorar muito. Então
 como faço isso via SQL? Como eu consulto em dois bancos ao mesmo tempo?
 Estou usando firebird 1.5.

 Outra coisa, como deve proceder de uma forma pra saber qual os registros
 foram inseridos em off-line (o PC fora da rede)? Pensei em colocar um
 campo
 pra servir como flag e quando o sistema tiver off line todo registro
 alterado ou incluído ficaria com essa flag. Ai quando a maquina voltasse
 pra
 rede ele sincronizava.

 Alguém já teve que fazer isso? Outra coisa... não vai ser apenas um pc que
 vai ficar off line não. Vai ser vários. E entre esse meio tempo os pc´s on
 line serão alimentados e tal.

 Obrigado.

 T+

 --
 Rafael jorge alves (Analista/desenvolvedor)

 www.sistemafocus.com.br
 sistema focus de gestão comercial e serviços em informatica.
 --

 [As partes desta mensagem que não continham texto foram removidas]

 __
 Conheça o Windows Live Spaces, a rede de relacionamentos do Messenger!
 http://www.amigosdomessenger.com.br/
 




-- 
---
Rafael jorge alves (Analista/desenvolvedor)

www.sistemafocus.com.br
sistema focus de gestão comercial e serviços em informatica.
---


[As partes desta mensagem que não continham texto foram removidas]



RE: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Rubem Nascimento da Rocha

Particularmente, num vejo problema em codificar uma rotina que copie os dados 
de um clientdataset local para um clientdataset com um provider para um banco 
de dados ou aplicação servidora e, neste ultimo, executar um ApplyUpdates. Que 
tipo de dificuldade vc vê na sincronização? Poderia enumerá-las para 
discutirmos no grupo?

Sds.





To: delphi-br@yahoogrupos.com.br
From: [EMAIL PROTECTED]
Date: Mon, 5 May 2008 17:06:14 -0300
Subject: Re: [delphi-br] Sistema on-line X off-line


primeiro respondendo a sugestao da conexao via internet.. nao é viavel pois
é justamente nao ter internet e um requisito dessa estrututra de off-line.
ja sobre quardar os arquivos em XML eu ja tinha pensado.. mas ai nao resolve
o problema de sincronismo. pq minha principal duvida e como eu vou
sincronizar a base sem ser uma rotina trabalhosa e demorada.
valeu pela atencao.
t+

2008/5/5 Rubem Nascimento da Rocha [EMAIL PROTECTED]:


 De prima, uma alternativa seria fazer as manutenções com ClientDataSet,
 mantendo os dados salvos localmente em um arquivo binário ou XML. Soh teria
 que ver a questão de segurança pra esses dados não serem corrompidos ou
 sofrerem intervenção externa(proteção dos dados).

 Usaria um ClientDataSet pra editar os dados localmente, e quando fosse
 aplicar isso em um banco de dados, copiaria os dados deste ClientDataSet
 para um outro devidamente ligado ao provider de dados e neste ultimo
 aplicaria tudo no banco de dados. Obviamente q os dois ClientDataSets
 deveriam ter a mesma estrutura.

 Esta eh a minha humilde sugestao. Se alguem tiver ideia melhor, eh sempre
 bom compartilhar e discutir, principalmente aqui no grupo!
 Sds.

 

 To: delphi-br@yahoogrupos.com.br 
 From: [EMAIL PROTECTED] 
 Date: Mon, 5 May 2008 16:49:20 -0300
 Subject: [delphi-br] Sistema on-line X off-line


 Vamos lá...

 Tenho uma aplicação que roda numa rede.. ai um cliente meu quer que ele
 possa pegar o note book dele por exemplo, com o sistema instalado nele
 sair
 mexendo a vontade no sistema na rede.. Incluindo, excluindo e alteando
 registros, ate ai tudo bem.. o trivial. Só que ele quer de vez em quando
 levar o note book pra casa e ainda assim trabalhar no sistema. E depois
 quando voltar sincronizar as informações.

 Minha pergunta é qual o melhor jeito de fazer isso?

 Tive a idéia de colocar uma tela de sincronização de dados. Onde eu digo o
 banco de origem e o destino.. Ai o sistema sai tabela por tabela, registro
 por registro vendo o que foi esta cadastrado no banco de origem que não
 tem
 no de destino e colocar ele la..

 Bem não to louco de fazer isso via programação, se eu abrir tabela por
 tabela (são 326) e registro por registro de cada uma procurando pra ver se
 já ta cadastrado alem de ser um trabalho gigante vai demorar muito. Então
 como faço isso via SQL? Como eu consulto em dois bancos ao mesmo tempo?
 Estou usando firebird 1.5.

 Outra coisa, como deve proceder de uma forma pra saber qual os registros
 foram inseridos em off-line (o PC fora da rede)? Pensei em colocar um
 campo
 pra servir como flag e quando o sistema tiver off line todo registro
 alterado ou incluído ficaria com essa flag. Ai quando a maquina voltasse
 pra
 rede ele sincronizava.

 Alguém já teve que fazer isso? Outra coisa... não vai ser apenas um pc que
 vai ficar off line não. Vai ser vários. E entre esse meio tempo os pc´s on
 line serão alimentados e tal.

 Obrigado.

 T+

 --
 Rafael jorge alves (Analista/desenvolvedor)

 www.sistemafocus.com.br
 sistema focus de gestão comercial e serviços em informatica.
 --

 [As partes desta mensagem que não continham texto foram removidas]

 __
 Conheça o Windows Live Spaces, a rede de relacionamentos do Messenger!
 http://www.amigosdomessenger.com.br/



--
--
Rafael jorge alves (Analista/desenvolvedor)

www.sistemafocus.com.br
sistema focus de gestão comercial e serviços em informatica.
--

[As partes desta mensagem que não continham texto foram removidas]









_
Conheça o Windows Live Spaces, a rede de relacionamentos do Messenger!
http://www.amigosdomessenger.com.br/

Re: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Rafael Jorge
vamos la..
quando o sistema estiver off line nao vai estar conectado na net.. intao nao
tem como sincronizar usando a net.
e tipo.. um sistema de agronomia.. o agornomo vai pro meio do mato e lanca
os dados.. so depois quando chegar na cidade e que vai siscronizar com o
sistema on line.

passo a passo:
1) o sistema vai estar rodando em rede.. todo mundo insere, exclui e altera
tudo.
2) um dia alquem sai e ela o sistema consigo. antes de sair ele tem que
rodar a rotina de preparação para levar consigo os dados. vai ser gerado
tudo em XML e tal (tudo mesmo. pois ele precisa de todas as infos do
sistema) eu to falando de 326 tabelas e milhares de regsitros.
3) ele vai e lanca seus dados off line.
4) ele volta pra rede onde roda a rotina de sincronismo onde o sistrma vai
colocar no banco de dados tudo que ele cadastrou quando estava off line.
(aqui esta minha maior bronca). e pegar tudo o que cadastraram quando ele
estava off tambem.

analizando bem agora.. nao vi bronca do jeito que eu estou fazendo
atualmente. minha bronca é, se dois ou mais pc´s estiverem off line quando
eles voltarem e lancarem como proceder pra nao haver conflitos de chaves e
etc. usando o XML resolve muita coisa em vez de um bando de dados off (outro
.FDB). mas ai fica no ar..como resolver os conflitos de chaves?



2008/5/5 Rubem Nascimento da Rocha [EMAIL PROTECTED]:


 Particularmente, num vejo problema em codificar uma rotina que copie os
 dados de um clientdataset local para um clientdataset com um provider para
 um banco de dados ou aplicação servidora e, neste ultimo, executar um
 ApplyUpdates. Que tipo de dificuldade vc vê na sincronização? Poderia
 enumerá-las para discutirmos no grupo?


 Sds.

 

 To: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br
 From: [EMAIL PROTECTED] rafael.jorge%40gmail.com
 Date: Mon, 5 May 2008 17:06:14 -0300
 Subject: Re: [delphi-br] Sistema on-line X off-line


 primeiro respondendo a sugestao da conexao via internet.. nao é viavel
 pois
 é justamente nao ter internet e um requisito dessa estrututra de off-line.
 ja sobre quardar os arquivos em XML eu ja tinha pensado.. mas ai nao
 resolve
 o problema de sincronismo. pq minha principal duvida e como eu vou
 sincronizar a base sem ser uma rotina trabalhosa e demorada.
 valeu pela atencao.
 t+

 2008/5/5 Rubem Nascimento da Rocha [EMAIL 
 PROTECTED]djpardalrocha%40hotmail.com
 :

 
  De prima, uma alternativa seria fazer as manutenções com ClientDataSet,
  mantendo os dados salvos localmente em um arquivo binário ou XML. Soh
 teria
  que ver a questão de segurança pra esses dados não serem corrompidos ou
  sofrerem intervenção externa(proteção dos dados).
 
  Usaria um ClientDataSet pra editar os dados localmente, e quando fosse
  aplicar isso em um banco de dados, copiaria os dados deste ClientDataSet
  para um outro devidamente ligado ao provider de dados e neste ultimo
  aplicaria tudo no banco de dados. Obviamente q os dois ClientDataSets
  deveriam ter a mesma estrutura.
 
  Esta eh a minha humilde sugestao. Se alguem tiver ideia melhor, eh
 sempre
  bom compartilhar e discutir, principalmente aqui no grupo!
  Sds.
 
  
 
  To: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br
  From: [EMAIL PROTECTED] rafael.jorge%40gmail.com
  Date: Mon, 5 May 2008 16:49:20 -0300
  Subject: [delphi-br] Sistema on-line X off-line
 
 
  Vamos lá...
 
  Tenho uma aplicação que roda numa rede.. ai um cliente meu quer que ele
  possa pegar o note book dele por exemplo, com o sistema instalado nele
  sair
  mexendo a vontade no sistema na rede.. Incluindo, excluindo e alteando
  registros, ate ai tudo bem.. o trivial. Só que ele quer de vez em quando
  levar o note book pra casa e ainda assim trabalhar no sistema. E depois
  quando voltar sincronizar as informações.
 
  Minha pergunta é qual o melhor jeito de fazer isso?
 
  Tive a idéia de colocar uma tela de sincronização de dados. Onde eu digo
 o
  banco de origem e o destino.. Ai o sistema sai tabela por tabela,
 registro
  por registro vendo o que foi esta cadastrado no banco de origem que não
  tem
  no de destino e colocar ele la..
 
  Bem não to louco de fazer isso via programação, se eu abrir tabela por
  tabela (são 326) e registro por registro de cada uma procurando pra ver
 se
  já ta cadastrado alem de ser um trabalho gigante vai demorar muito.
 Então
  como faço isso via SQL? Como eu consulto em dois bancos ao mesmo tempo?
  Estou usando firebird 1.5.
 
  Outra coisa, como deve proceder de uma forma pra saber qual os registros
  foram inseridos em off-line (o PC fora da rede)? Pensei em colocar um
  campo
  pra servir como flag e quando o sistema tiver off line todo registro
  alterado ou incluído ficaria com essa flag. Ai quando a maquina voltasse
  pra
  rede ele sincronizava.
 
  Alguém já teve que fazer isso? Outra coisa... não vai ser apenas um pc
 que
  vai ficar off line não. Vai ser vários. E entre esse meio 

RE: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Ricardo César Cardoso
Tb não consigo enxergar essa dificuldade de sincronização. Vc iria trabalhar 
com o Delta que é a grosso modo o conjunto de alterações que os dados 
receberam. Não há muito motivo pra preocupação com isso.

Atte,
Ricardo.

Rubem Nascimento da Rocha [EMAIL PROTECTED] escreveu: 

 Particularmente, num vejo problema em codificar uma rotina que copie os dados 
de um clientdataset local para um clientdataset com um provider para um banco 
de dados ou aplicação servidora e, neste ultimo, executar um ApplyUpdates. Que 
tipo de dificuldade vc vê na sincronização? Poderia enumerá-las para 
discutirmos no grupo?
 
 Sds.
 
 
 
 To: delphi-br@yahoogrupos.com.br
 From: [EMAIL PROTECTED]
 Date: Mon, 5 May 2008 17:06:14 -0300
 Subject: Re: [delphi-br] Sistema on-line X off-line
 
 primeiro respondendo a sugestao da conexao via internet.. nao é viavel pois
 é justamente nao ter internet e um requisito dessa estrututra de off-line.
 ja sobre quardar os arquivos em XML eu ja tinha pensado.. mas ai nao resolve
 o problema de sincronismo. pq minha principal duvida e como eu vou
 sincronizar a base sem ser uma rotina trabalhosa e demorada.
 valeu pela atencao.
 t+
 
 2008/5/5 Rubem Nascimento da Rocha [EMAIL PROTECTED]:
 
 
  De prima, uma alternativa seria fazer as manutenções com ClientDataSet,
  mantendo os dados salvos localmente em um arquivo binário ou XML. Soh teria
  que ver a questão de segurança pra esses dados não serem corrompidos ou
  sofrerem intervenção externa(proteção dos dados).
 
  Usaria um ClientDataSet pra editar os dados localmente, e quando fosse
  aplicar isso em um banco de dados, copiaria os dados deste ClientDataSet
  para um outro devidamente ligado ao provider de dados e neste ultimo
  aplicaria tudo no banco de dados. Obviamente q os dois ClientDataSets
  deveriam ter a mesma estrutura.
 
  Esta eh a minha humilde sugestao. Se alguem tiver ideia melhor, eh sempre
  bom compartilhar e discutir, principalmente aqui no grupo!
  Sds.
 
  
 
  To: delphi-br@yahoogrupos.com.br 
  From: [EMAIL PROTECTED] 
  Date: Mon, 5 May 2008 16:49:20 -0300
  Subject: [delphi-br] Sistema on-line X off-line
 
 
  Vamos lá...
 
  Tenho uma aplicação que roda numa rede.. ai um cliente meu quer que ele
  possa pegar o note book dele por exemplo, com o sistema instalado nele
  sair
  mexendo a vontade no sistema na rede.. Incluindo, excluindo e alteando
  registros, ate ai tudo bem.. o trivial. Só que ele quer de vez em quando
  levar o note book pra casa e ainda assim trabalhar no sistema. E depois
  quando voltar sincronizar as informações.
 
  Minha pergunta é qual o melhor jeito de fazer isso?
 
  Tive a idéia de colocar uma tela de sincronização de dados. Onde eu digo o
  banco de origem e o destino.. Ai o sistema sai tabela por tabela, registro
  por registro vendo o que foi esta cadastrado no banco de origem que não
  tem
  no de destino e colocar ele la..
 
  Bem não to louco de fazer isso via programação, se eu abrir tabela por
  tabela (são 326) e registro por registro de cada uma procurando pra ver se
  já ta cadastrado alem de ser um trabalho gigante vai demorar muito. Então
  como faço isso via SQL? Como eu consulto em dois bancos ao mesmo tempo?
  Estou usando firebird 1.5.
 
  Outra coisa, como deve proceder de uma forma pra saber qual os registros
  foram inseridos em off-line (o PC fora da rede)? Pensei em colocar um
  campo
  pra servir como flag e quando o sistema tiver off line todo registro
  alterado ou incluído ficaria com essa flag. Ai quando a maquina voltasse
  pra
  rede ele sincronizava.
 
  Alguém já teve que fazer isso? Outra coisa... não vai ser apenas um pc que
  vai ficar off line não. Vai ser vários. E entre esse meio tempo os pc´s on
  line serão alimentados e tal.
 
  Obrigado.
 
  T+
 
  --
  Rafael jorge alves (Analista/desenvolvedor)
 
  www.sistemafocus.com.br
  sistema focus de gestão comercial e serviços em informatica.
  --
 
  [As partes desta mensagem que não continham texto foram removidas]
 
  __
  Conheça o Windows Live Spaces, a rede de relacionamentos do Messenger!
  http://www.amigosdomessenger.com.br/
 
 
 
 --
 --
 Rafael jorge alves (Analista/desenvolvedor)
 
 www.sistemafocus.com.br
 sistema focus de gestão comercial e serviços em informatica.
 --
 
 [As partes desta mensagem que não continham texto foram removidas]
 
 __
 Conheça o Windows Live Spaces, a rede de relacionamentos do Messenger!
 http://www.amigosdomessenger.com.br/
 
 _



   
-
Abra sua conta no Yahoo! Mail, o único sem limite de 

Re: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Ricardo César Cardoso
Eu tentaria resolver os conflitos de chaves usando um valor provisório para 
elas. Por exemplo, quando sua aplicação perceber que está offline, ao invés 
de usar uma determinada política de geração de chaves primárias, usa outra.

Quando eu fiz meu TCC eu fazia isso gerando números negativos em sequência, já 
que a política que eu adotava pra geração de chaves primárias era uma sequência 
numérica. Quando eu ia sincronizar, bastava eu varrer todos os pontos onde 
haviam valores negativos e fazer a substituição pelos respectivos valores 
obtidos do banco ( os valores reais ).

Veja se isso já resolve.

Atte,
Ricardo.

Rafael Jorge [EMAIL PROTECTED] escreveu: vamos 
la..
 quando o sistema estiver off line nao vai estar conectado na net.. intao nao
 tem como sincronizar usando a net.
 e tipo.. um sistema de agronomia.. o agornomo vai pro meio do mato e lanca
 os dados.. so depois quando chegar na cidade e que vai siscronizar com o
 sistema on line.
 
 passo a passo:
 1) o sistema vai estar rodando em rede.. todo mundo insere, exclui e altera
 tudo.
 2) um dia alquem sai e ela o sistema consigo. antes de sair ele tem que
 rodar a rotina de preparação para levar consigo os dados. vai ser gerado
 tudo em XML e tal (tudo mesmo. pois ele precisa de todas as infos do
 sistema) eu to falando de 326 tabelas e milhares de regsitros.
 3) ele vai e lanca seus dados off line.
 4) ele volta pra rede onde roda a rotina de sincronismo onde o sistrma vai
 colocar no banco de dados tudo que ele cadastrou quando estava off line.
 (aqui esta minha maior bronca). e pegar tudo o que cadastraram quando ele
 estava off tambem.
 
 analizando bem agora.. nao vi bronca do jeito que eu estou fazendo
 atualmente. minha bronca é, se dois ou mais pc´s estiverem off line quando
 eles voltarem e lancarem como proceder pra nao haver conflitos de chaves e
 etc. usando o XML resolve muita coisa em vez de um bando de dados off (outro
 .FDB). mas ai fica no ar..como resolver os conflitos de chaves?
 
 2008/5/5 Rubem Nascimento da Rocha [EMAIL PROTECTED]:
 
 
  Particularmente, num vejo problema em codificar uma rotina que copie os
  dados de um clientdataset local para um clientdataset com um provider para
  um banco de dados ou aplicação servidora e, neste ultimo, executar um
  ApplyUpdates. Que tipo de dificuldade vc vê na sincronização? Poderia
  enumerá-las para discutirmos no grupo?
 
 
  Sds.
 
  
 
  To: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br
  From: [EMAIL PROTECTED] rafael.jorge%40gmail.com
  Date: Mon, 5 May 2008 17:06:14 -0300
  Subject: Re: [delphi-br] Sistema on-line X off-line
 
 
  primeiro respondendo a sugestao da conexao via internet.. nao é viavel
  pois
  é justamente nao ter internet e um requisito dessa estrututra de off-line.
  ja sobre quardar os arquivos em XML eu ja tinha pensado.. mas ai nao
  resolve
  o problema de sincronismo. pq minha principal duvida e como eu vou
  sincronizar a base sem ser uma rotina trabalhosa e demorada.
  valeu pela atencao.
  t+
 
  2008/5/5 Rubem Nascimento da Rocha [EMAIL 
  PROTECTED]djpardalrocha%40hotmail.com
  :
 
  
   De prima, uma alternativa seria fazer as manutenções com ClientDataSet,
   mantendo os dados salvos localmente em um arquivo binário ou XML. Soh
  teria
   que ver a questão de segurança pra esses dados não serem corrompidos ou
   sofrerem intervenção externa(proteção dos dados).
  
   Usaria um ClientDataSet pra editar os dados localmente, e quando fosse
   aplicar isso em um banco de dados, copiaria os dados deste ClientDataSet
   para um outro devidamente ligado ao provider de dados e neste ultimo
   aplicaria tudo no banco de dados. Obviamente q os dois ClientDataSets
   deveriam ter a mesma estrutura.
  
   Esta eh a minha humilde sugestao. Se alguem tiver ideia melhor, eh
  sempre
   bom compartilhar e discutir, principalmente aqui no grupo!
   Sds.
  
   
  
   To: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br
   From: [EMAIL PROTECTED] rafael.jorge%40gmail.com
   Date: Mon, 5 May 2008 16:49:20 -0300
   Subject: [delphi-br] Sistema on-line X off-line
  
  
   Vamos lá...
  
   Tenho uma aplicação que roda numa rede.. ai um cliente meu quer que ele
   possa pegar o note book dele por exemplo, com o sistema instalado nele
   sair
   mexendo a vontade no sistema na rede.. Incluindo, excluindo e alteando
   registros, ate ai tudo bem.. o trivial. Só que ele quer de vez em quando
   levar o note book pra casa e ainda assim trabalhar no sistema. E depois
   quando voltar sincronizar as informações.
  
   Minha pergunta é qual o melhor jeito de fazer isso?
  
   Tive a idéia de colocar uma tela de sincronização de dados. Onde eu digo
  o
   banco de origem e o destino.. Ai o sistema sai tabela por tabela,
  registro
   por registro vendo o que foi esta cadastrado no banco de origem que não
   tem
   no de destino e colocar ele la..
  
   Bem 

[delphi-br] Off - Banco de dados distribuido

2008-05-05 Por tôpico Márcio Cota
Alguem aqui ja teve experiencia com banco de dados distribuido?

Existe algum banco free que tenha essa funcionalidade?

Meu problema é o seguinte:
Como o cliente pode ficar sem acesso ao servidor de banco de dados que pode 
estar em outra cidade, e por algum motivo a conexão ficou fora do ar, e o 
trabalho não pode parar, quando a conexão voltar ao normal, os dados 
gravados localmente seriam atualizado no servidor.

O banco de dados distribuido é a melhor opção para meu problema?

E facil implementar sem mudar codigo do programa?




Re: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Rafael Jorge
gostei da ideia de usar campos negativos.
vou ver se isso resolve.
valeu a todos pela ajuda.
t+

2008/5/5 Ricardo César Cardoso [EMAIL PROTECTED]:

   Eu tentaria resolver os conflitos de chaves usando um valor provisório
 para elas. Por exemplo, quando sua aplicação perceber que está offline, ao
 invés de usar uma determinada política de geração de chaves primárias, usa
 outra.

 Quando eu fiz meu TCC eu fazia isso gerando números negativos em
 sequência, já que a política que eu adotava pra geração de chaves primárias
 era uma sequência numérica. Quando eu ia sincronizar, bastava eu varrer
 todos os pontos onde haviam valores negativos e fazer a substituição pelos
 respectivos valores obtidos do banco ( os valores reais ).

 Veja se isso já resolve.

 Atte,
 Ricardo.

 Rafael Jorge [EMAIL PROTECTED] rafael.jorge%40gmail.com escreveu:
 vamos la..

 quando o sistema estiver off line nao vai estar conectado na net.. intao
 nao
 tem como sincronizar usando a net.
 e tipo.. um sistema de agronomia.. o agornomo vai pro meio do mato e lanca
 os dados.. so depois quando chegar na cidade e que vai siscronizar com o
 sistema on line.

 passo a passo:
 1) o sistema vai estar rodando em rede.. todo mundo insere, exclui e
 altera
 tudo.
 2) um dia alquem sai e ela o sistema consigo. antes de sair ele tem que
 rodar a rotina de preparação para levar consigo os dados. vai ser gerado
 tudo em XML e tal (tudo mesmo. pois ele precisa de todas as infos do
 sistema) eu to falando de 326 tabelas e milhares de regsitros.
 3) ele vai e lanca seus dados off line.
 4) ele volta pra rede onde roda a rotina de sincronismo onde o sistrma vai
 colocar no banco de dados tudo que ele cadastrou quando estava off line.
 (aqui esta minha maior bronca). e pegar tudo o que cadastraram quando ele
 estava off tambem.

 analizando bem agora.. nao vi bronca do jeito que eu estou fazendo
 atualmente. minha bronca é, se dois ou mais pc´s estiverem off line quando
 eles voltarem e lancarem como proceder pra nao haver conflitos de chaves e
 etc. usando o XML resolve muita coisa em vez de um bando de dados off
 (outro
 .FDB). mas ai fica no ar..como resolver os conflitos de chaves?

 2008/5/5 Rubem Nascimento da Rocha [EMAIL 
 PROTECTED]djpardalrocha%40hotmail.com
 :

 
  Particularmente, num vejo problema em codificar uma rotina que copie os
  dados de um clientdataset local para um clientdataset com um provider
 para
  um banco de dados ou aplicação servidora e, neste ultimo, executar um
  ApplyUpdates. Que tipo de dificuldade vc vê na sincronização? Poderia
  enumerá-las para discutirmos no grupo?
 
 
  Sds.
 
  
 
  To: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.brdelphi-br%
 40yahoogrupos.com.br
  From: [EMAIL PROTECTED] rafael.jorge%40gmail.com rafael.jorge%
 40gmail.com
  Date: Mon, 5 May 2008 17:06:14 -0300
  Subject: Re: [delphi-br] Sistema on-line X off-line
 
 
  primeiro respondendo a sugestao da conexao via internet.. nao é viavel
  pois
  é justamente nao ter internet e um requisito dessa estrututra de
 off-line.
  ja sobre quardar os arquivos em XML eu ja tinha pensado.. mas ai nao
  resolve
  o problema de sincronismo. pq minha principal duvida e como eu vou
  sincronizar a base sem ser uma rotina trabalhosa e demorada.
  valeu pela atencao.
  t+
 
  2008/5/5 Rubem Nascimento da Rocha [EMAIL 
  PROTECTED]djpardalrocha%40hotmail.com
 djpardalrocha%40hotmail.com
  :
 
  
   De prima, uma alternativa seria fazer as manutenções com
 ClientDataSet,
   mantendo os dados salvos localmente em um arquivo binário ou XML. Soh
  teria
   que ver a questão de segurança pra esses dados não serem corrompidos
 ou
   sofrerem intervenção externa(proteção dos dados).
  
   Usaria um ClientDataSet pra editar os dados localmente, e quando fosse
   aplicar isso em um banco de dados, copiaria os dados deste
 ClientDataSet
   para um outro devidamente ligado ao provider de dados e neste ultimo
   aplicaria tudo no banco de dados. Obviamente q os dois ClientDataSets
   deveriam ter a mesma estrutura.
  
   Esta eh a minha humilde sugestao. Se alguem tiver ideia melhor, eh
  sempre
   bom compartilhar e discutir, principalmente aqui no grupo!
   Sds.
  
   
  
   To: delphi-br@yahoogrupos.com.br 
   delphi-br%40yahoogrupos.com.brdelphi-br%
 40yahoogrupos.com.br
   From: [EMAIL PROTECTED] rafael.jorge%40gmail.com rafael.jorge%
 40gmail.com

   Date: Mon, 5 May 2008 16:49:20 -0300
   Subject: [delphi-br] Sistema on-line X off-line
  
  
   Vamos lá...
  
   Tenho uma aplicação que roda numa rede.. ai um cliente meu quer que
 ele
   possa pegar o note book dele por exemplo, com o sistema instalado nele
   sair
   mexendo a vontade no sistema na rede.. Incluindo, excluindo e alteando
   registros, ate ai tudo bem.. o trivial. Só que ele quer de vez em
 quando
   levar o note book pra casa e ainda assim trabalhar no sistema. E
 depois
   quando voltar sincronizar as informações.
  
   

RES: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Gerhard Roger Nack
Como não?

Esse é um problema barra pesada.

 

Então vamos a um exemplo pratico para analisarmos o problema do colega.

 

O cara leva o note pra casa com a base toda sincronizada e tudo igual ao 
servidor.

 

Chega em casa ou no cliente e começa a cadastrar digamos um PEDIDO gerando com 
isso um novo código auto-incremento para este pedido.

Começa a incluir itens nesse pedido (gerando códigos auto-incremento para cada 
item) e pendurando esses itens no pedido.

Ai ele nota que esta faltando um produto no cadastro dele e cadastra esse 
produto.

 

Enquanto isso, na empresa o pessoal também esta lançando PEDIDOS e cadastrando 
outros produtos.

 

Quando ele voltar como vocês acham que vão conciliar isso tudo? Pela chave 
primaria (auto-incremento)?

 

Quando for jogar isso tudo no servidor, primeiro vai precisar incluir o produto 
que provavelmente vai ganhar um código diferente, depois incluir o pedido que 
também vai ter um código diferente e depois disso tudo inserir os itens e desse 
pedido apontando para o produto correto.

 

Ou seja, ClientDataSet não vai resolver. Ele não faz milagres. Isso requer uma 
ótima lógica, e muito trabalho.

 

[ ] s

 

 

De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Ricardo 
César Cardoso
Enviada em: segunda-feira, 5 de maio de 2008 17:27
Para: delphi-br@yahoogrupos.com.br
Assunto: RE: [delphi-br] Sistema on-line X off-line

 

Tb não consigo enxergar essa dificuldade de sincronização. Vc iria trabalhar 
com o Delta que é a grosso modo o conjunto de alterações que os dados 
receberam. Não há muito motivo pra preocupação com isso.

Atte,
Ricardo.

Rubem Nascimento da Rocha [EMAIL PROTECTED] 
mailto:djpardalrocha%40hotmail.com  escreveu: 
Particularmente, num vejo problema em codificar uma rotina que copie os dados 
de um clientdataset local para um clientdataset com um provider para um banco 
de dados ou aplicação servidora e, neste ultimo, executar um ApplyUpdates. Que 
tipo de dificuldade vc vê na sincronização? Poderia enumerá-las para 
discutirmos no grupo?

Sds.



To: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br 
From: [EMAIL PROTECTED] mailto:rafael.jorge%40gmail.com 
Date: Mon, 5 May 2008 17:06:14 -0300
Subject: Re: [delphi-br] Sistema on-line X off-line

primeiro respondendo a sugestao da conexao via internet.. nao é viavel pois
é justamente nao ter internet e um requisito dessa estrututra de off-line.
ja sobre quardar os arquivos em XML eu ja tinha pensado.. mas ai nao resolve
o problema de sincronismo. pq minha principal duvida e como eu vou
sincronizar a base sem ser uma rotina trabalhosa e demorada.
valeu pela atencao.
t+

2008/5/5 Rubem Nascimento da Rocha [EMAIL PROTECTED] 
mailto:djpardalrocha%40hotmail.com :


 De prima, uma alternativa seria fazer as manutenções com ClientDataSet,
 mantendo os dados salvos localmente em um arquivo binário ou XML. Soh teria
 que ver a questão de segurança pra esses dados não serem corrompidos ou
 sofrerem intervenção externa(proteção dos dados).

 Usaria um ClientDataSet pra editar os dados localmente, e quando fosse
 aplicar isso em um banco de dados, copiaria os dados deste ClientDataSet
 para um outro devidamente ligado ao provider de dados e neste ultimo
 aplicaria tudo no banco de dados. Obviamente q os dois ClientDataSets
 deveriam ter a mesma estrutura.

 Esta eh a minha humilde sugestao. Se alguem tiver ideia melhor, eh sempre
 bom compartilhar e discutir, principalmente aqui no grupo!
 Sds.

 

 To: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br  
 From: [EMAIL PROTECTED] mailto:rafael.jorge%40gmail.com  
 Date: Mon, 5 May 2008 16:49:20 -0300
 Subject: [delphi-br] Sistema on-line X off-line


 Vamos lá...

 Tenho uma aplicação que roda numa rede.. ai um cliente meu quer que ele
 possa pegar o note book dele por exemplo, com o sistema instalado nele
 sair
 mexendo a vontade no sistema na rede.. Incluindo, excluindo e alteando
 registros, ate ai tudo bem.. o trivial. Só que ele quer de vez em quando
 levar o note book pra casa e ainda assim trabalhar no sistema. E depois
 quando voltar sincronizar as informações.

 Minha pergunta é qual o melhor jeito de fazer isso?

 Tive a idéia de colocar uma tela de sincronização de dados. Onde eu digo o
 banco de origem e o destino.. Ai o sistema sai tabela por tabela, registro
 por registro vendo o que foi esta cadastrado no banco de origem que não
 tem
 no de destino e colocar ele la..

 Bem não to louco de fazer isso via programação, se eu abrir tabela por
 tabela (são 326) e registro por registro de cada uma procurando pra ver se
 já ta cadastrado alem de ser um trabalho gigante vai demorar muito. Então
 como faço isso via SQL? Como eu consulto em dois bancos ao mesmo tempo?
 Estou usando firebird 1.5.

 Outra coisa, como deve proceder de uma forma pra saber qual os registros
 foram inseridos em off-line (o PC fora da rede)? Pensei em 

Re: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Rafael Jorge
bem.. erra isso que eu queria dizer des do inicio.. mas a logina da chave
negativa me pareceu bastante legal.
vou fazer o sequinte..
vou criar uma tabela de sinconismo onde vou dizer tabela, chave e campo..
com base nessa tabela vou pegar tudo que nao tem no banco online e vou
colocar nela.
exemplo um produto. ai ficaria quardado a chave dele e os campos (no sistema
off line). ai vou inserir o produto com a chave nova e colocar la na tabela
a chave nova.. ai vou fazer uma troca onde tiver a chave antiga pela nova e
vou sair inserindo..
vai ser um processo meio gambiarra..e to vendo que é muito facil de dar
pau.. mas ate agora é a melhor solução.


2008/5/5 Gerhard Roger Nack [EMAIL PROTECTED]:

   Como não?

 Esse é um problema barra pesada.

 Então vamos a um exemplo pratico para analisarmos o problema do colega.

 O cara leva o note pra casa com a base toda sincronizada e tudo igual ao
 servidor.

 Chega em casa ou no cliente e começa a cadastrar digamos um PEDIDO gerando
 com isso um novo código auto-incremento para este pedido.

 Começa a incluir itens nesse pedido (gerando códigos auto-incremento para
 cada item) e pendurando esses itens no pedido.

 Ai ele nota que esta faltando um produto no cadastro dele e cadastra esse
 produto.

 Enquanto isso, na empresa o pessoal também esta lançando PEDIDOS e
 cadastrando outros produtos.

 Quando ele voltar como vocês acham que vão conciliar isso tudo? Pela chave
 primaria (auto-incremento)?

 Quando for jogar isso tudo no servidor, primeiro vai precisar incluir o
 produto que provavelmente vai ganhar um código diferente, depois incluir o
 pedido que também vai ter um código diferente e depois disso tudo inserir os
 itens e desse pedido apontando para o produto correto.

 Ou seja, ClientDataSet não vai resolver. Ele não faz milagres. Isso requer
 uma ótima lógica, e muito trabalho.

 [ ] s

 De: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br [mailto:
 delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br] Em nome de
 Ricardo César Cardoso
 Enviada em: segunda-feira, 5 de maio de 2008 17:27
 Para: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br
 Assunto: RE: [delphi-br] Sistema on-line X off-line


 Tb não consigo enxergar essa dificuldade de sincronização. Vc iria
 trabalhar com o Delta que é a grosso modo o conjunto de alterações que os
 dados receberam. Não há muito motivo pra preocupação com isso.

 Atte,
 Ricardo.

 Rubem Nascimento da Rocha [EMAIL 
 PROTECTED]djpardalrocha%40hotmail.commailto:
 djpardalrocha%40hotmail.com djpardalrocha%2540hotmail.com  escreveu:
 Particularmente, num vejo problema em codificar uma rotina que copie os
 dados de um clientdataset local para um clientdataset com um provider para
 um banco de dados ou aplicação servidora e, neste ultimo, executar um
 ApplyUpdates. Que tipo de dificuldade vc vê na sincronização? Poderia
 enumerá-las para discutirmos no grupo?

 Sds.

 

 To: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br mailto:
 delphi-br%40yahoogrupos.com.br delphi-br%2540yahoogrupos.com.br
 From: [EMAIL PROTECTED] rafael.jorge%40gmail.com mailto:
 rafael.jorge%40gmail.com rafael.jorge%2540gmail.com
 Date: Mon, 5 May 2008 17:06:14 -0300
 Subject: Re: [delphi-br] Sistema on-line X off-line

 primeiro respondendo a sugestao da conexao via internet.. nao é viavel
 pois
 é justamente nao ter internet e um requisito dessa estrututra de off-line.
 ja sobre quardar os arquivos em XML eu ja tinha pensado.. mas ai nao
 resolve
 o problema de sincronismo. pq minha principal duvida e como eu vou
 sincronizar a base sem ser uma rotina trabalhosa e demorada.
 valeu pela atencao.
 t+

 2008/5/5 Rubem Nascimento da Rocha [EMAIL 
 PROTECTED]djpardalrocha%40hotmail.commailto:
 djpardalrocha%40hotmail.com djpardalrocha%2540hotmail.com :

 
  De prima, uma alternativa seria fazer as manutenções com ClientDataSet,
  mantendo os dados salvos localmente em um arquivo binário ou XML. Soh
 teria
  que ver a questão de segurança pra esses dados não serem corrompidos ou
  sofrerem intervenção externa(proteção dos dados).
 
  Usaria um ClientDataSet pra editar os dados localmente, e quando fosse
  aplicar isso em um banco de dados, copiaria os dados deste ClientDataSet
  para um outro devidamente ligado ao provider de dados e neste ultimo
  aplicaria tudo no banco de dados. Obviamente q os dois ClientDataSets
  deveriam ter a mesma estrutura.
 
  Esta eh a minha humilde sugestao. Se alguem tiver ideia melhor, eh
 sempre
  bom compartilhar e discutir, principalmente aqui no grupo!
  Sds.
 
  
 
  To: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.brmailto:
 delphi-br%40yahoogrupos.com.br delphi-br%2540yahoogrupos.com.br
  From: [EMAIL PROTECTED] rafael.jorge%40gmail.com mailto:
 rafael.jorge%40gmail.com rafael.jorge%2540gmail.com
  Date: Mon, 5 May 2008 16:49:20 -0300
  Subject: [delphi-br] Sistema on-line X off-line
 
 
  Vamos lá...
 

Re: [delphi-br] Off - Banco de dados distribuido

2008-05-05 Por tôpico Rafael Jorge
no meu posto de sistema on line X off line to discutindo isso ai que tu ta
querendo..
to nesse barco tambem..
t+

2008/5/5 Márcio Cota [EMAIL PROTECTED]:

   Alguem aqui ja teve experiencia com banco de dados distribuido?

 Existe algum banco free que tenha essa funcionalidade?

 Meu problema é o seguinte:
 Como o cliente pode ficar sem acesso ao servidor de banco de dados que
 pode
 estar em outra cidade, e por algum motivo a conexão ficou fora do ar, e o
 trabalho não pode parar, quando a conexão voltar ao normal, os dados
 gravados localmente seriam atualizado no servidor.

 O banco de dados distribuido é a melhor opção para meu problema?

 E facil implementar sem mudar codigo do programa?

  




-- 
---
Rafael jorge alves (Analista/desenvolvedor)

www.sistemafocus.com.br
sistema focus de gestão comercial e serviços em informatica.
---


[As partes desta mensagem que não continham texto foram removidas]



Re: RES: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Joao Morais
Gerhard Roger Nack wrote:
 Quando ele voltar como vocês acham que vão conciliar isso tudo?
 Pela chave primaria (auto-incremento)?

GUID.




Re: RES: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Rafael Jorge
se os campos fossem string ai resolvia..
mas e um sistema ja rodando a 3 anos.. com chaves do tipo inteiro..
pensei em GUID tambem.. mas nao tem como restruturar a essa altura.
t+

2008/5/5 Joao Morais [EMAIL PROTECTED]:

   Gerhard Roger Nack wrote:
  Quando ele voltar como vocês acham que vão conciliar isso tudo?
  Pela chave primaria (auto-incremento)?

 GUID.

  




-- 
---
Rafael jorge alves (Analista/desenvolvedor)

www.sistemafocus.com.br
sistema focus de gestão comercial e serviços em informatica.
---


[As partes desta mensagem que não continham texto foram removidas]



[delphi-br] Int64 x Variant no Delphi 6

2008-05-05 Por tôpico Joao Morais

Pessoal,

algum dos presentes poderia mandar um Ctrl+C + Ctrl+V da função 
TLargeintField.GetAsVariant, que encontra-se na unit source\vcl\db.pas 
do Delphi 6? Gostaria de conhecer a compatibilidade do Int64 do Delphi 6 
com Variant.

Obrigado,
Joao Morais



Re: [delphi-br] Off - Banco de dados distribuido

2008-05-05 Por tôpico Márcio Cota
Não estava pensando em criar codigo no programa para poder fazer isso.

Tenho certeza que os bancos de dados ja tem essa funcionalidade.

Não estou querendo programar para uma funcionalidade que ja existe e que 
funciona.

Só não sei se consigo isso com banco de dados distribuido

Nem como fazer.

Por isso estou perguntando se alguem ja tem expericia com isso e pode me dar 
alguma sugestao

Abraços


- Original Message - 
From: Rafael Jorge
To: delphi-br@yahoogrupos.com.br
Sent: Monday, May 05, 2008 5:47 PM
Subject: Re: [delphi-br] Off - Banco de dados distribuido


no meu posto de sistema on line X off line to discutindo isso ai que tu ta
querendo..
to nesse barco tambem..
t+

2008/5/5 Márcio Cota [EMAIL PROTECTED]:

 Alguem aqui ja teve experiencia com banco de dados distribuido?

 Existe algum banco free que tenha essa funcionalidade?

 Meu problema é o seguinte:
 Como o cliente pode ficar sem acesso ao servidor de banco de dados que
 pode
 estar em outra cidade, e por algum motivo a conexão ficou fora do ar, e o
 trabalho não pode parar, quando a conexão voltar ao normal, os dados
 gravados localmente seriam atualizado no servidor.

 O banco de dados distribuido é a melhor opção para meu problema?

 E facil implementar sem mudar codigo do programa?




-- 



Re: [delphi-br] Off - Banco de dados distribuido

2008-05-05 Por tôpico Alexandre Rodrigues
De uma pesquisada sobre replicação do banco de dados. O MySQL eu sei que 
possui isso.

Márcio Cota escreveu:
 
 
 Não estava pensando em criar codigo no programa para poder fazer isso.
 
 Tenho certeza que os bancos de dados ja tem essa funcionalidade.
 
 Não estou querendo programar para uma funcionalidade que ja existe e que
 funciona.
 
 Só não sei se consigo isso com banco de dados distribuido
 
 Nem como fazer.
 
 Por isso estou perguntando se alguem ja tem expericia com isso e pode me 
 dar
 alguma sugestao
 
 Abraços
 
 - Original Message -
 From: Rafael Jorge
 To: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br
 Sent: Monday, May 05, 2008 5:47 PM
 Subject: Re: [delphi-br] Off - Banco de dados distribuido
 
 no meu posto de sistema on line X off line to discutindo isso ai que tu ta
 querendo..
 to nesse barco tambem..
 t+
 
 2008/5/5 Márcio Cota [EMAIL PROTECTED] mailto:marciocota%40gmail.com:
 
   Alguem aqui ja teve experiencia com banco de dados distribuido?
  
   Existe algum banco free que tenha essa funcionalidade?
  
   Meu problema é o seguinte:
   Como o cliente pode ficar sem acesso ao servidor de banco de dados que
   pode
   estar em outra cidade, e por algum motivo a conexão ficou fora do ar, e o
   trabalho não pode parar, quando a conexão voltar ao normal, os dados
   gravados localmente seriam atualizado no servidor.
  
   O banco de dados distribuido é a melhor opção para meu problema?
  
   E facil implementar sem mudar codigo do programa?
  
  
  
 
 -- 
 
 
__
Faça ligações para outros computadores com o novo Yahoo! Messenger 
http://br.beta.messenger.yahoo.com/ 


Re: RES: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Ricardo César Cardoso
No ponto, João! A evolução do meu TCC ( ou seja, quando entrou em produção ), 
foi abandonar chaves primárias geradas por incremento por chave primária 
baseada em GUID. 

Resolveu o problema por completo. 

Atte,
Ricardo.

Joao Morais [EMAIL PROTECTED] escreveu: Gerhard 
Roger Nack wrote:
  Quando ele voltar como vocês acham que vão conciliar isso tudo?
  Pela chave primaria (auto-incremento)?
 
 GUID.
 





   
-
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! 

[As partes desta mensagem que não continham texto foram removidas]



Re: RES: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Ricardo César Cardoso
Nesse caso então o melhor mesmo é usar os números negativos.

Foi justamente nesse momento que descobri o ponto fraco de chaves primárias 
geradas por incremento... quando precisava usar o sistema offline. Dava muito 
trabalho, mesmo com os números negativos.

E como ia entrar em produção ainda, pude mudar pra usar os GUIDs.

Espero que lhe seja útil,
Ricardo.

Rafael Jorge [EMAIL PROTECTED] escreveu: se os 
campos fossem string ai resolvia..
 mas e um sistema ja rodando a 3 anos.. com chaves do tipo inteiro..
 pensei em GUID tambem.. mas nao tem como restruturar a essa altura.
 t+
 
 2008/5/5 Joao Morais [EMAIL PROTECTED]:
 
Gerhard Roger Nack wrote:
   Quando ele voltar como vocês acham que vão conciliar isso tudo?
   Pela chave primaria (auto-incremento)?
 
  GUID.
 
   
 
 
 -- 
 --
 Rafael jorge alves (Analista/desenvolvedor)
 
 www.sistemafocus.com.br
 sistema focus de gestão comercial e serviços em informatica.
 --
 
 [As partes desta mensagem que não continham texto foram removidas]
 
 
 
 



   
-
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! 

[As partes desta mensagem que não continham texto foram removidas]



Re: RES: [delphi-br] Sistema on-line X off-line

2008-05-05 Por tôpico Ricardo César Cardoso
Retificação da resposta:

Fui pesquisar na Wikipedia sobre GUID e vejo a seguinte informação:
The GUID is a 16-byte (128-bit) number.  
[ http://en.wikipedia.org/wiki/GUID ]

Então acho que há esperança! Ou não... 

Alguém pode tirar a dúvida?

Grato,
Ricardo.

Ricardo César Cardoso [EMAIL PROTECTED] escreveu: 
Nesse caso então o melhor mesmo é usar os números negativos.
 
 Foi justamente nesse momento que descobri o ponto fraco de chaves primárias 
geradas por incremento... quando precisava usar o sistema offline. Dava muito 
trabalho, mesmo com os números negativos.
 
 E como ia entrar em produção ainda, pude mudar pra usar os GUIDs.
 
 Espero que lhe seja útil,
 Ricardo.
 






   
-
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! 

[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Off - Banco de dados distribuido

2008-05-05 Por tôpico Ricardo César Cardoso
Só complementando:

* Os bancos majors ( MySQL, MSSQL e Oracle ) já tem isso embutido.

* Para o IB e o FB tem uma ferramenta de terceiros, paga, que faz a replicação.

* PostGre provavelmente deve ter nativo tb , assim como o DB2.

Atte,
Ricardo.

Alexandre Rodrigues [EMAIL PROTECTED] escreveu: 
De uma pesquisada sobre replicação do banco de dados. O MySQL eu sei que 
 possui isso.
 
 Márcio Cota escreveu:
  
  
  Não estava pensando em criar codigo no programa para poder fazer isso.
  
  Tenho certeza que os bancos de dados ja tem essa funcionalidade.
  
  Não estou querendo programar para uma funcionalidade que ja existe e que
  funciona.
  
  Só não sei se consigo isso com banco de dados distribuido
  
  Nem como fazer.
  
  Por isso estou perguntando se alguem ja tem expericia com isso e pode me 
  dar
  alguma sugestao
  
  Abraços
  
  - Original Message -
  From: Rafael Jorge
  To: delphi-br@yahoogrupos.com.br mailto:delphi-br%40yahoogrupos.com.br
  Sent: Monday, May 05, 2008 5:47 PM
  Subject: Re: [delphi-br] Off - Banco de dados distribuido
  
  no meu posto de sistema on line X off line to discutindo isso ai que tu ta
  querendo..
  to nesse barco tambem..
  t+
  
  2008/5/5 Márcio Cota [EMAIL PROTECTED] mailto:marciocota%40gmail.com:
  
Alguem aqui ja teve experiencia com banco de dados distribuido?
   
Existe algum banco free que tenha essa funcionalidade?
   
Meu problema é o seguinte:
Como o cliente pode ficar sem acesso ao servidor de banco de dados que
pode
estar em outra cidade, e por algum motivo a conexão ficou fora do ar, e o
trabalho não pode parar, quando a conexão voltar ao normal, os dados
gravados localmente seriam atualizado no servidor.
   
O banco de dados distribuido é a melhor opção para meu problema?
   
E facil implementar sem mudar codigo do programa?
   
   
   
  
  -- 
  
  
 __
 Faça ligações para outros computadores com o novo Yahoo! Messenger 
 http://br.beta.messenger.yahoo.com/  
 
 
   

   
-
Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! 

[As partes desta mensagem que não continham texto foram removidas]