[firebase-br] RES: Como fazer sincronismo entre base online e offline
Felix - SOL Informática
felix em solsistemas.com
Sex Jul 27 22:18:56 -03 2012
SET TERM ^ ;
CREATE PROCEDURE GET_HEX_UUID
RETURNS ( REAL_UUID Char(16) CHARACTER SET OCTETS,
HEX_UUID Varchar(32) )
AS
declare variable i integer;
declare variable c integer;
begin
real_uuid = GEN_UUID();
hex_uuid = '';
i = 0;
while (i < 16) do
begin
c = ascii_val(substring(real_uuid from i+1 for 1));
if (c < 0) then c = 256 + c;
hex_uuid = hex_uuid || substring('0123456789abcdef' from bin_shr(c, 4)
+ 1 for 1) || substring('0123456789abcdef' from bin_and(c, 15) + 1 for 1);
i = i + 1;
end
suspend;
end^
SET TERM ; ^
Francisco Felix
www.solsistemas.com
-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Tecnobyte Informática
Enviada em: sexta-feira, 27 de julho de 2012 22:01
Para: FireBase
Assunto: Re: [firebase-br] Como fazer sincronismo entre base online e
offline
Boa noite Carlos
Estamos trabalhando em um sistema de venda externa que faz exatamente isto
que você está pensando em fazer, ou seja, usamos uma chave do tipo UUID
(GUID no idioma Microsoft). Não existe um tipo de dado específico para UUID
no Firebird, mas você pode usar:
- CHAR(16) se for gravar como binário
- VARCHAR(32) se for gravar somente letras e números
- VARCHAR(36) se for gravar formatado (com tracinhos)
No Firebird 2.5 existem funções para gerar UUID e converter UUID de binário
para formatado e vice-versa. No Delphi também é possível criar UUID com
relativa facilidade, usando API do Windows que gera GUID (que é praticamente
a mesma coisa que UUID, exceto que na versão formatada vem com abre e fecha
chave).
Funções no Delphi (Api do Windows):
CreateGUID
GUIDToString
Atenciosamente.
Daniel P. Guimarães
Tecnobyte Informática
www.tecnobyte.com.br
-----Mensagem Original-----
From: Carlos Phelippe
Sent: Friday, July 27, 2012 7:47 PM
To: FireBase
Subject: [firebase-br] Como fazer sincronismo entre base online e offline
Olá pessoal,
como devo construir uma base de dados que permite o trabalho online e
offline(para posterior sincronização?).
Por exemplo, tenho uma tabela onde irei armazenar os dados de uma pessoa.
Nesta tabela tenho apenas: nome, endereço e telefone da pessoa.
Pensei em criar um campo chave do 'tipo' GUID(nem sei se tem esse tipo no
Firebird).
ID(GUID)
Nome (String)
....
Estou complicando as coisas?
Desculpem a ignorância!
[http://www.digilab.com.br/wp-content/themes/Digilab/images/logo_digilab.jpg
]
Carlos Phelippe
Analista de Sistemas
+55 48 3234 4041
digilab.com.br<http://www.digilab.com.br>
______________________________________________
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://firebase.com.br/pesquisa
______________________________________________
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://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista