[delphi-br] driver dbexpress da UIB com novas atualizacoes

2008-06-04 Por tôpico alineri
://rapidshare.com/files/120098709/DBExpress_drivers.rar

Um forte abraço a todos
Alineri



Re: Res: [delphi-br] DBExpress x FireBird 2 x UIB IMPORTANTE LEIAM POR FAVOR

2008-05-30 Por tôpico alineri
Ola Luciano,

Estou utilizando firebird 2.1 + dbexpress com o Driver da UIB 
E esta tudo funcionando perfeitamente, inclusive campos Blobs.

Vamos aos seu problema primeiro.

Realmente o seu codigo utilizando o driver do Interbase funciona Ok, a
diferenca acredito que esta realmente na forma como ambos os drivers
tratam as transacoes no dbexpress.

Faca o seguinte:

SQLDataSet1. CommandText := 'insert into table (codigo) values (1)';
SQLDataSet1. ExecSQL;
StartTransaction;
commit;

basta voce startar a transacao apos o execsql e nao antes. 

essa foi a unica diferenca que encontrei dos drivers para IB e FB.

Blobs funcionam normalmente com o drive da UIB

Testa ai e verifica se vai funcionar.

Em relacao ao close comitar esse problema nao sei como resolver
principalmente se estiver setado no driver da UIB Default Transaction
= TACommit, ele vai comitar assim que o close for chamado.

a unica forma para evitar seria ao dar um open em uma consulta
relalizar todos os procedimentos dentro das suas rotinas e ao termino
da um close.

um problema que estou tendo e para compilar a a dll da UIB
http://www.progdigy.com/modules.php?name=UIB

existe um pacote novo a UIB2.1 ( componente de acesso ) so que essa
dll utiliza as implementacoes desse pacote de componentes que ja esta
adaptado para firebird 2.x, entao acredito que eeses error devam estar
 corrigidos, o problema e que nao consigo compilar,utilizo o BDS 2006,
e nao reconhece o tipo de dados DBINAME e OIDViewFields no BDS 2006
existe DBINAME32 e OIDViewField se altero no font a Dll e gerada
normalmente mas nao funciona.

Em alguns foruns ja verifiquei que a Dll consegue ser compilada sem
problemas na versao 7 do Delphi que nao tenho no momento. Um detalhe
antes de compilar o pacote da UIB e compilar a Dll e necessario
instalar o pacote SynEdit disponivel no link abaixo
http://sourceforge.net/project/downloading.php?group_id=3221use_mirror=ufprfilename=SynEdit-2_0_6.zip75620534

quem sabe se com esse compilacao o problema de controle de transacao
nao esta resolvido ?

um forte abarco a todos

[]s
alineri






--- Em delphi-br@yahoogrupos.com.br, Luciano Calenzani Simões
[EMAIL PROTECTED] escreveu

 Ninguém passou por este problema?
 Alguém está usando FireBirs 2 com esse driver UIB FireBird15?
 
  Luciano Calenzani Simões
 
 
 
 
 
 - Mensagem original 
 De: Luciano Calenzani Simões [EMAIL PROTECTED]
 Para: delphi-br@yahoogrupos.com.br
 Enviadas: Quinta-feira, 29 de Maio de 2008 19:39:41
 Assunto: [delphi-br] DBExpress x FireBird 2 x UIB FireBird15
 
 
 O UIB FireBird15 para DBExpress com FireBird 2 tem problemas no
gerenciamento de transação. Além daquele do campo BLOB já relatado
nesta lista.
 
 Explico: Se dentro do contexto da transação tiver um
SQLDataSet/SQLQuery /... fazendo um select em uma tabela, ao executar
o SQLDataSet.Close ele commita a transação, e continua o
procedimento normalmente. Se ocorrer algum erro após esse
SQLDataSet.Close, as operações de I/O que foram feitas no início não
serão desfeitas, mesmo sendo executado o RoolBack. Não deve estar
acreditando, na hora eu também não acreditei.
 
 Fiz um teste com o mesmo código com o dirver Interbase e funciona
perfeitamente. Mas esse driver não funciona perfeitamente com o
FireBird 2.
 Isso só acontece com operação de SELECT, se dentro da transação só
tiver INSERT, UPDATE e DELETE irá funcionar perfeitamente.
 
 Código exemplo (síntese):
 
 begin
 ...
 StartTransaction;
 try
 SQLDataSet1. CommandText := 'insert into table (codigo) values (1)';
 SQLDataSet1. ExecSQL;
 SQLDataSet1. Close;
 
 SQLDataSet1. CommandText := 'select * from table';
 SQLDataSet1. Open;
 SQLDataSet1. Close; // Aqui ele comita a transação automaticamente.
 
 // Quando chegar aqui, o 1º insert já está comitado, se houver erro
daqui para frente ele não será desfeito.
 SQLDataSet1. CommandText := 'insert into table (codigo) values (2)';
 SQLDataSet1. ExecSQL;
 SQLDataSet1. Close;
 
 CommitWork;
 except
 RollBack;
 end;
 end;
 
 Luciano Calenzani Simões
 
 
 
   Abra sua conta no Yahoo! Mail, o único sem limite de espaço
para armazenamento!
 http://br.mail.yahoo.com/
 
 [As partes desta mensagem que não continham texto foram removidas]





Re: Res: [delphi-br] DBExpress x FireBird 2 x UIB IMPORTANTE LEIAM POR FAVOR

2008-05-30 Por tôpico alineri
Oi Eduardo,

Isso depende, porque o execsql e uma instrucao que ira gerar
gravacao no banco essa gravacao  ainda nao esta salva, quando
inicio uma transacao comecamos a salvar essa gravacao identificando
atraves da transacao ( id transaction ) depois termino de salvar dando
um commit.

quando o Default Transaction = TACommit; sempre que um dataset for
fechado ele vai dar um commit; se voce chamar uma transacao em
seguida, vai dar erro, porque nao podemos iniciar transacoes em
tabelas fechadas.

no caso do nosso amigo que esta utilizando sqldatasets para as
operacoes insert , delete, update e consulta, para dar um rollback
utilizando o exemplo que passei seria assim


try 
  dataset1.close;
  
  Sqldataset1.commandtext := 'insert .';
  Sqldataset1.parambyname( .

  SqlDataSet.ExecSQL;
  MinhaTransacao.TransactionID := 1;
  MinhaTransacao.IsolationLevel := xilREPEATABLEREAD;
  SQLConnection.StartTransaction(Transacao)
  SQLConnection.Commit(Transacao);

  SqlDataSet.Close;


Except
  on Exc:Exception do
   begin
SQLConnection.Rollback(Transacao);
MessageDlg('Erro:'+#10#10+Exc.Message,mtError,[mbOK],0); 
   end; 
end;

dessa forma temos tudo transacoes commit e rollback

voltando ao assunto de compilar uma nova dll , se alguem tiver o
delphi 7 por ai, tenta compilar novamente essa dll da UIB novamente
para verificar se tiveram realmente melhorias ou nao

volto a dizer que o driver que utilizo e o UIB trabalho com meus
sistemas com o formato que coloquei acima com campos blob e esta tudo
funcionando

mas confesso que se tivesse grana hoje compraria o drive da crlab,
testei o demo, e o muito bom

um forte abarco a todos
[]s
alineri
  








--- Em delphi-br@yahoogrupos.com.br, Eduardo Silva dos Santos
[EMAIL PROTECTED] escreveu

 Faca o seguinte:
 
  SQLDataSet1. CommandText := 'insert into table (codigo) values (1)';
  SQLDataSet1. ExecSQL;
  StartTransaction;
  commit;
 
 Olá Alineri... Startar a transação depois de executar o comando não faz
 sentido.. e se quiser fazer um rollback..??
 
 2008/5/30 alineri [EMAIL PROTECTED]:
 
Ola Luciano,
 
  Estou utilizando firebird 2.1 + dbexpress com o Driver da UIB
  E esta tudo funcionando perfeitamente, inclusive campos Blobs.
 
  Vamos aos seu problema primeiro.
 
  Realmente o seu codigo utilizando o driver do Interbase funciona Ok, a
  diferenca acredito que esta realmente na forma como ambos os drivers
  tratam as transacoes no dbexpress.
 
  Faca o seguinte:
 
  SQLDataSet1. CommandText := 'insert into table (codigo) values (1)';
  SQLDataSet1. ExecSQL;
  StartTransaction;
  commit;
 
  basta voce startar a transacao apos o execsql e nao antes.
 
  essa foi a unica diferenca que encontrei dos drivers para IB e FB.
 
  Blobs funcionam normalmente com o drive da UIB
 
  Testa ai e verifica se vai funcionar.
 
  Em relacao ao close comitar esse problema nao sei como resolver
  principalmente se estiver setado no driver da UIB Default Transaction
  = TACommit, ele vai comitar assim que o close for chamado.
 
  a unica forma para evitar seria ao dar um open em uma consulta
  relalizar todos os procedimentos dentro das suas rotinas e ao termino
  da um close.
 
  um problema que estou tendo e para compilar a a dll da UIB
  http://www.progdigy.com/modules.php?name=UIB
 
  existe um pacote novo a UIB2.1 ( componente de acesso ) so que essa
  dll utiliza as implementacoes desse pacote de componentes que ja esta
  adaptado para firebird 2.x, entao acredito que eeses error devam estar
  corrigidos, o problema e que nao consigo compilar,utilizo o BDS 2006,
  e nao reconhece o tipo de dados DBINAME e OIDViewFields no BDS 2006
  existe DBINAME32 e OIDViewField se altero no font a Dll e gerada
  normalmente mas nao funciona.
 
  Em alguns foruns ja verifiquei que a Dll consegue ser compilada sem
  problemas na versao 7 do Delphi que nao tenho no momento. Um detalhe
  antes de compilar o pacote da UIB e compilar a Dll e necessario
  instalar o pacote SynEdit disponivel no link abaixo
 
 
http://sourceforge.net/project/downloading.php?group_id=3221use_mirror=ufprfilename=SynEdit-2_0_6.zip75620534
 
  quem sabe se com esse compilacao o problema de controle de transacao
  nao esta resolvido ?
 
  um forte abarco a todos
 
  []s
  alineri
 
  --- Em delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br,
  Luciano Calenzani Simões
  simoesluciano@ escreveu
  
   Ninguém passou por este problema?
   Alguém está usando FireBirs 2 com esse driver UIB FireBird15?
  
   Luciano Calenzani Simões
  
  
  
  
  
   - Mensagem original 
   De: Luciano Calenzani Simões simoesluciano@
   Para: delphi-br@yahoogrupos.com.br delphi-br%40yahoogrupos.com.br
   Enviadas: Quinta-feira, 29 de Maio de 2008 19:39:41
   Assunto: [delphi-br] DBExpress x FireBird 2 x UIB FireBird15
  
  
   O UIB FireBird15 para DBExpress com FireBird 2 tem problemas no
  gerenciamento de transação. Além daquele do campo BLOB já relatado
  nesta lista.
  
   Explico: Se dentro do

[delphi-br] redimensionar form scaleBy nao funciona

2008-04-25 Por tôpico alineri
Ola Pessoal, 

Estou precisando adaptar uim sistema para uma empresa que nao tem 
padrao de computadores logo temos varias configuracoes de monitores 
crt 15 polegadas a lcd de 19. 

a versao do meu delphi e o bds 2006 

e meu equipamento de producao e um notebook de 15 polegadas wide com 
resolucaod e 1280 x 800 

peguei aquele exemplo classico de redimensionamento de forms aqui 
mesmo no forum e nao funiona quando testo com outras resolucoes como 
800 x 600 e 1024 x 768 

segue abaixo o codigo: 


implementation 

const 
ScreenWidth: LongInt = 1280; 
ScreenHeight: LongInt = 800; 



procedure TForm3.FormCreate(Sender: TObject); 
var 
  i: integer; 
begin 
scaled := true; 
if (screen.width  ScreenWidth) then 
  begin 
 height := longint(height) * longint(screen.height) DIV 
ScreenHeight; 
 width := longint(width) * longint(screen.width) DIV ScreenWidth; 
 scaleBy(screen.width, ScreenWidth); 
  
 for i := componentCount - 1 downto 0 do 
 with components[i] do 
begin 
   if GetPropInfo(ClassInfo, 'font')  nil then 
  font.size := (screen.width DIV ScreenWidth) * 
font.size; 
 end; 

   end; 
end; 


Deixo a font como arial, deixo o espaco de apoximadamente 5 px entre 
os componentes, deixo a propriedade parantfont = true e autosize do 
form e dos componenets = true e quando mudo a resolucao o que 
acontece e o seguinte, o tamanho do form e redimensionado, os 
componentes tambem, mas acabam um em cima do outro mesmo com espacos 
grandes e a font dos componentes ficam gigantes 

queria saber se algum tem algum exemplo que pudesse me enviar, um 
exemplo para testar, ou alguma dica de alguma coisa que esteja 
passando em branco e ainda nao percebi 

desde ja agradeco a todos 
um forte abraco 
alineri



[delphi-br] Re: distancia entre cidades para sistema de transportadora qual o melhor metodo

2008-04-14 Por tôpico alineri
Vamos que vamos,

valeu ai pessoal por todas as dicas e obervacoes que fizeram

Bem Andreano e exatamente isso, por incrivel que pareca nao poderei 
fazer esse processo online, senao seria moleza.

ja deram essa dica aqui na lista de gerar uma lista de cidades e 
cruza-las gerando as informacoes pelo google, vou fazer uns testes a 
respeito e posto aqui.

com relacao a brincadeira de dar uma voltinha pelo Brasil, agradeco 
bastante pois passei essa ideia para cliente e o mesmo adorou, afinal 
o ganha pao de uma transportadora e isso mesmo, rodar o Brasil 
fazendo entrega e coleta, e o motorista do caminhao ainda pode 
agregar mais os dados com informacoes sobre qualidade da estrada, 
postos de gasolina, transito etc... de qualquer forma preciso dos 
dados para gerar ao cliente um norte a seguir em rotas que ainda nao 
foram feitas sem contar para a base de calculo do frete e calculo de 
custos  agredados ao frete ( combustivel, pneu, manutencoes 
emergenciais etc... )

mais uma vez agradeco a todos e posto aqui na lista todos os 
progressos.

um forte abraco
alineri



--- Em delphi-br@yahoogrupos.com.br, Andreano Lanusse 
[EMAIL PROTECTED] escreveu

 Você disse que não pode usar o Google, entendo que não pode fazer 
isso online, certo? Mas você poderia pegar a lista de cidades e 
cruzar todas as possibilidade de caminho fazendo o cálculo pelo 
google para gerar um banco de dados com todas as possibilidades, ou 
seja, você usa o google para gerar a informação apenas uma vez e seu 
cliente consulta o banco de dados, poderia?
  
 Quando fizemos o cálculo, pegamos a informação de latitude e 
longitude do IBGE, eles tem a lat/long de todas as cidades do Brasil, 
fizemos uma conversão para poder calcular e ai foi.
  
 Quando você pega a lat/long de uma cidade, ela aponta para o ponto 
central, exemplo: em São Paulo é a praça da Sé, no caso de trechos de 
um ponto de São Paulo para outro ponto de São Paulo, você terá de 
dividir SP em vários pontos, pegando a lat/long de cada um.
  
 Tenta ver se essa do Google resolve o seu problema, na minha 
opinião seria o caminho mais fácil e preciso.
  
 []'s
 Andreano
 
 
 
 From: delphi-br@yahoogrupos.com.br on behalf of alineri
 Sent: Sun 13-Apr-08 16:09
 To: delphi-br@yahoogrupos.com.br
 Subject: [delphi-br] Re: distancia entre cidades para sistema de 
transportadora qual o melhor metodo
 
 
 
 Ola pessoal,
 
 mais uam vez obrigado pela ajuda de todos.
 
 bem, em relacao a precisao no calculo das distancias sei que e 
 dificil conseguir com coordenas geograficas, mas como voce falou 
 Adreano, se consegui-se um calculo com margem de erro como falou 
que 
 me levasse ao mais proximo possivel ja estaria otimo, se puder me 
 indicar onde posso encontrar informacoes a respeito seria uma 
grande 
 ajuda.
 
 Julio Cesar, tive essa ideia justamente hoje, de passar para 
 webservice uma sequencia de rotas ( as mais utilizadas pelo 
cliente ) 
 e popular uma tabela com os resultados, so acho que nao 
 posso abusar das requisicoes para nao ter problemas futuros, 
essa 
 e uma ideia que tambem gostei. 
 
 Nao poder utilizar a API do google e que me pegou, estava estudando 
a 
 API ontem ela e uma mao na roda, um presente do google.
 
 Tambem gostei da ideia do Alexandre Cesar Tabarin, ja peguei o guia 
4 
 rodas para analisar e bem interessante, ele calcula a distancia bem 
 proxima ao do google maps, e ainda traca a rotas entre as rodovias, 
 ja acessei o projeto http://www.tracksource.org.br 
http://www.tracksource.org.br/  onde tem varios 
 mapas so estou tendo dificuldades de encontrar disponivel para 
 download o software destinator, se alguem souber o link.
 
 e por ultimo, comunico a todos que esse modulo do projeto para 
 calculo e distancia entre as cidades vou deixar publico, todas as 
 documentacoes, referencias, base de dados, e fontes deixarei 
 disponivel na comunidade e em algum sourceforge da vida.
 
 porque acho que esse tipo de dado tinha que ser publico 
 principalmente no que se diz respeito as rodovias estaduais e 
 federais, por que somos nos que bancamos com nossos impostos e 
 pedagios.
 
 todo o progresso que obtiver comunicarei a voces e assim que tiver 
um 
 material que seja viavel torna-lo publico, assim o farei.
 
 espero continuar contando com a ajuda de todos
 
 um forte abraco a todos
 alineri
 
 --- Em delphi-br@yahoogrupos.com.br mailto:delphi-br%
40yahoogrupos.com.br , Andreano Lanusse 
 andreano.lanusse@ escreveu
 
  Alineri,
  
  
  
  Já desenvolvi um sistema que fazia isso a uns 7 anos atrás, foi 
 baseado em latitude e longetude, que não é preciso para percurso 
 terrestre, se fosse aéreo tudo bem, usavamos a margem de erro, mas 
em 
 vários casos onde você tem rotas com montanhas, pontes, desvios 
 ficava muito fora, ao longo dos anos fomos aperfeiçoando para 
 minimizar este erro, mas se você precisa com base na distância 
 calculos exatos, latitude e longetitude não é o caminho.
  
  
  
  Uma solução

[delphi-br] Re: distancia entre cidades para sistema de transportadora qual o melhor metodo

2008-04-14 Por tôpico alineri
Valeu pela dia Alexandre,

Vou buscar esse livro com certeza

Um forte abraco a todos
alineri

--- Em delphi-br@yahoogrupos.com.br, Alexandre Rodrigues 
[EMAIL PROTECTED] escreveu

 Cara, se tu popular uma tabela com as distâncias entre cidades, no 
livro 
   C Completo e Total tem um exemplo de inteligência artificial que 
faz 
 justamente o tu quer. Ou seja com base nas distância entre as 
cidades 
 ele calcula a rota com a menor distância. Na verdade ele dedica um 
 capitulo inteiro sobre isso, acho que vale a pena conferir.
 
 alineri escreveu:
  
  
  Ola Pessoal,
  
  Primeiro agradeco as observacoes e dicas de todos :)
  
  bem, passei alguns dias pesquisando bastante sobre o assunto
  
  primeiro explicarei minha necessidade. Estou desenvolvendo um 
projeto
  de um sistema de transportadora que tem como um dos seus objetivos
  calcular a distancias entre as cidades e posteriormente 
determinar a
  sua rota. nao e objetivo desenvolver um aplicativo de roteirizacao
  que determine o menor caminhor.
  
  O objetivo e ter como calcular os dados de distancia rodoviaria 
entre
  as cidades e posteriomente a sua rota rodoviaria ( rodovias 
federais
  e estaduais )
  
  o problema que estou encontrando esta justamente em onde 
conseguir os
  dados.
  
  ja consegui os dados de distancia geodesicas das cidades, e assim
  consigo as distancias entre as cidades, so que e diferente do que
  distancia rodoviaria ( que e a distancia percorrida ).
  
  Verifiquei que o programa do guia 4 rodas utiliza distancias
  geodesicas com latitude e longitude para realizar os calculos das
  distancia e que deve aplicar alguma margem de calculo para se
  aproximar da distancia rodoviaria real. o site
  http://www.abcr.org.br/geode/index.php 
  http://www.abcr.org.br/geode/index.php tambem utiliza calculo 
com
  coordenadas geodesicas e tambem nao se aproxima da realidade.
  
  encontrei ainda no site activedelphi um companheiro que
  disponibilizou um sistema com fonte em delphi para calculo de
  distancia geodesica que permite inclusive informar uma margem 
para
  aproximacao da distancia rodoviaria.
  
  http://www.tiggra.com.br/geoTiggra/GEOCalc.zip 
  http://www.tiggra.com.br/geoTiggra/GEOCalc.zip
  
  ai surgiu uam duvida em relacao a calculo com coordenada 
geodesicas.
  
  Se aplicar as coordenadas de latitude e longitude de duas cidades 
nas
  ferramentas descritas acima e no google maps as distancias em sua
  maioria sao diferentes, consegui a maior proximacao entre as
  ferramentas na Distancia Rio X Sao Paulo. Nas outras cidades que
  testei os resultados deram diferencas inclusive gritantes.
  
  Dessa forma nao senti seguranca em aplicar calculos com 
coordenadas
  geodesicas, principalmente porque conheco pouco sobre o assunto.
  
  Entao verifiquei que para obter uma maior precisao sera necessario
  obter os dados das distancias rodoviarias ( e o nome das 
rodovias )
  dessa forma sera possivel calcular com maior precisao a distancia
  entre cidades e determinar a sua rota rodoviaria.
  
  a questao e, onde conseguir esses dados ?
  
  no site do ministerio dos transportes tem uma planilha com a
  distancia rodoviaria das principais cidades brasileiras mas sem
  mencionar as rodovias.
  
  http://www.transportes.gov.br/bit/distancias/distancias.xls 
  http://www.transportes.gov.br/bit/distancias/distancias.xls
  
  Por especificacao do projeto nao posso utilizar API do google maps
  nem o webservice do maplink, o sistema tem que fazer esses 
calculos.
  
  e entao pessoal oq voces sugerem ?
  
  o pessoal que ja desenvolve aplicacao de roteirizacao, onde posso
  conseguir mais material de estudo e onde posso conseguir esses 
dados ?
  
  somente os dados mesmo, nao vou desenvolver aplicacao que 
segmente o
  percurso em mapas, isso requer muito conhecimento em 
geoprocessameto
  e processamento de imagens digitais o que nao tenho.
  
  um forte abraco a todos
  alineri
  
  --- Em delphi-br@yahoogrupos.com.br 
  mailto:delphi-br%40yahoogrupos.com.br, Odimar odimar_a@ 
escreveu
   
Ola
   
tem um site chamado MapLink( http://maplink.uol.com.br 
  http://maplink.uol.com.br ) eles tem
  um servico de webservice que pode ser integrado a qualquer sistema
  inclusive em delphi. Esse servico é pago mas tem um fazer uns 
testes
  gratis e baixar a documentação
   
Odimar
   
   
To: delphi-br@: seurico@: Thu, 10 Apr 2008 13:24:24 -
  0300Subject: Re: [delphi-br] distancia entre cidades para sistema 
de
  transportadora qual o melhor metodo
   
   
   
   
Hm... eu daria uma boa olhada na Google API, especialmente
  GoogleMaps/Earth.Em 09/04/08, alineri alineri@ escreveu: ola
  pessoal, acho que e um assunto que pode interessar a muitos.
  estou iniciando um projeto que tem como objetivo calcular a
  distancia e se for possivel as provaveis rotas rodoviarias 
entre
  duas cidades. sei que podemos fazer isso via equipamentos gps ou
  site como apontador e google maps mas a necessidade principal e

[delphi-br] Re: distancia entre cidades para sistema de transportadora qual o melhor metodo

2008-04-13 Por tôpico alineri
Ola pessoal,

mais uam vez obrigado pela ajuda de todos.

bem, em relacao a precisao no calculo das distancias sei que e 
dificil conseguir com coordenas geograficas, mas como voce falou 
Adreano, se consegui-se um calculo com margem de erro como falou que 
me levasse ao mais proximo possivel ja estaria otimo, se puder me 
indicar onde posso encontrar informacoes a respeito seria uma grande 
ajuda.

Julio Cesar, tive essa ideia justamente hoje, de passar para 
webservice uma sequencia de rotas ( as mais utilizadas pelo cliente ) 
e popular uma tabela com os resultados, so acho que nao 
posso abusar das requisicoes para nao ter problemas futuros, essa 
e uma ideia que tambem gostei. 

Nao poder utilizar a API do google e que me pegou, estava estudando a 
API ontem ela e uma mao na roda, um presente do google.

Tambem gostei da ideia do Alexandre Cesar Tabarin, ja peguei o guia 4 
rodas para analisar e bem interessante, ele calcula a distancia bem 
proxima ao do google maps, e ainda traca a rotas entre as rodovias, 
ja acessei o projeto http://www.tracksource.org.br onde tem varios 
mapas so estou tendo dificuldades de encontrar disponivel para 
download  o software destinator, se alguem souber o link.

e por ultimo, comunico a todos que esse modulo do projeto para 
calculo e distancia entre as cidades vou deixar publico, todas as 
documentacoes, referencias, base de dados, e fontes deixarei 
disponivel na comunidade e em algum sourceforge da vida.

porque acho que esse tipo de dado tinha que ser publico 
principalmente no que se diz respeito as rodovias estaduais e 
federais, por que somos nos que bancamos com nossos impostos e 
pedagios.

todo o progresso que obtiver comunicarei a voces e assim que tiver um 
material que seja viavel torna-lo publico, assim o farei.

espero continuar contando com a ajuda de todos

um forte abraco a todos
alineri



--- Em delphi-br@yahoogrupos.com.br, Andreano Lanusse 
[EMAIL PROTECTED] escreveu

 Alineri,
 
  
 
 Já desenvolvi um sistema que fazia isso a uns 7 anos atrás, foi 
baseado em latitude e longetude, que não é preciso para percurso 
terrestre, se fosse aéreo tudo bem, usavamos a margem de erro, mas em 
vários casos onde você tem rotas com montanhas, pontes, desvios 
ficava muito fora, ao longo dos anos fomos aperfeiçoando para 
minimizar este erro, mas se você precisa com base na distância 
calculos exatos, latitude e longetitude não é o caminho.
 
  
 
 Uma solução seria usar a API do google, mas você disse que não 
pode. Creio que você estaria considerando o tráfego, se sim, o Google 
no Brasil ainda não dá esta informação.
 
  
 
 Então te recomendo contactar a Webraska Brasil 
(http://www.webraska.com.br/), eles são os responsáveis pelo 
Apontador, e tem toda essa informação precisa e acho que em alguma 
cidades está integrado com o tráfego local, não será de graça mas 
certamente eles tem tudo isso e fornecem serviços para diversas 
empresa de transporte, call center, etc...
 
  
 
 []'s
 
  
 
 Andreano Lanusse
 CodeGear Product Line Manager  Evangelist Leader Latin America
 
 Blog: http://blogs.codegear.com/andreanolanusse
 
 Exemplos: http://cc.codegear.com/Author/38483
 
 
 
 From: delphi-br@yahoogrupos.com.br [mailto:delphi-
[EMAIL PROTECTED] On Behalf Of Marcelo Moacir Florindo
 Sent: Saturday, April 12, 2008 8:09 PM
 To: delphi-br@yahoogrupos.com.br
 Subject: Re: [delphi-br] Re: distancia entre cidades para sistema 
de transportadora qual o melhor metodo
 
  
 
 Isto é um pouco complicado de obter...afinalos mapas 
rodoviarios não
 sei com que tipo de régua eles usamhehehe
 pois realmente nunca bate a distancia.já peguei distancia de 
100 km a
 menos... (ainda bem)
 
 Existe uma situação que é complicada ... uma cidade pode ter N 
entradas de
 N lugares
 
 Bem.se a tua necessidade é regional (tipo região sul)
 e a empresa tem rotas especificas
 
 poderás implementar em uma tabela de distâncias e cidades...
 
 acho que vale a pena perder um tempo e fazer uns calculos em cima 
de algumas
 rodovias e suas principais cidades...e incrementando aos poucos..
 
 Garanto que será mais rapido do que ficar dependendo de dados de
 terceiros...
 
 E acho que terás uma estrutura bem exclusiva.
 
 :)
 
 Abraços
 
 Marcelo
 
 Em 12/04/08, alineri [EMAIL PROTECTED] mailto:alineri%40yahoo.com  
escreveu:
 
  Ola Pessoal,
 
  Primeiro agradeco as observacoes e dicas de todos :)
 
  bem, passei alguns dias pesquisando bastante sobre o assunto
 
  primeiro explicarei minha necessidade. Estou desenvolvendo um 
projeto
  de um sistema de transportadora que tem como um dos seus objetivos
  calcular a distancias entre as cidades e posteriormente 
determinar a
  sua rota. nao e objetivo desenvolver um aplicativo de roteirizacao
  que determine o menor caminhor.
 
  O objetivo e ter como calcular os dados de distancia rodoviaria 
entre
  as cidades e posteriomente a sua rota rodoviaria ( rodovias 
federais
  e estaduais

[delphi-br] Re: distancia entre cidades para sistema de transportadora qual o melhor metodo

2008-04-12 Por tôpico alineri
Ola Pessoal,

Primeiro agradeco as observacoes e dicas de todos :)

bem, passei alguns dias pesquisando bastante sobre o assunto

primeiro explicarei minha necessidade. Estou desenvolvendo um projeto 
de um sistema de transportadora que tem como um dos seus objetivos 
calcular a distancias entre as cidades e posteriormente determinar a 
sua rota. nao e objetivo desenvolver um aplicativo de roteirizacao 
que determine o menor caminhor.

O objetivo e ter como calcular os dados de distancia rodoviaria entre 
as cidades e posteriomente a sua rota rodoviaria ( rodovias federais 
e estaduais )

o problema que estou encontrando esta justamente em onde conseguir os 
dados.

ja consegui os dados de distancia geodesicas das cidades, e assim 
consigo as distancias entre as cidades, so que e diferente do que 
distancia rodoviaria ( que e a distancia percorrida ).

Verifiquei que o programa do guia 4 rodas utiliza distancias 
geodesicas com latitude e longitude para realizar os calculos das 
distancia e que deve aplicar alguma margem de calculo para se 
aproximar da distancia rodoviaria real. o site 
http://www.abcr.org.br/geode/index.php  tambem utiliza calculo com 
coordenadas geodesicas e tambem nao se aproxima da realidade.

encontrei ainda no site activedelphi um companheiro que 
disponibilizou um sistema com fonte em delphi para calculo de 
distancia geodesica que permite inclusive informar uma margem para 
aproximacao da distancia rodoviaria.

http://www.tiggra.com.br/geoTiggra/GEOCalc.zip 

ai surgiu uam duvida em relacao a calculo com coordenada geodesicas.

Se aplicar as coordenadas de latitude e longitude de duas cidades nas 
ferramentas descritas acima e no google maps as distancias em sua 
maioria sao diferentes, consegui a maior proximacao entre as 
ferramentas na Distancia Rio X Sao Paulo. Nas outras cidades que 
testei os resultados deram diferencas inclusive gritantes.

Dessa forma nao senti seguranca em aplicar calculos com coordenadas 
geodesicas, principalmente porque conheco pouco sobre o assunto.

Entao verifiquei que para obter uma maior precisao sera necessario 
obter os dados das distancias rodoviarias ( e o nome das rodovias ) 
dessa forma sera possivel calcular com maior precisao a distancia 
entre cidades e determinar a sua rota rodoviaria.

a questao e, onde conseguir esses dados ?

no site do ministerio dos transportes tem uma planilha com a 
distancia rodoviaria das principais cidades brasileiras mas sem 
mencionar as rodovias.

http://www.transportes.gov.br/bit/distancias/distancias.xls 

Por especificacao do projeto nao posso utilizar API do google maps 
nem o webservice do maplink, o sistema tem que fazer esses calculos.

e entao pessoal oq voces sugerem ?

o pessoal que ja desenvolve aplicacao de roteirizacao, onde posso 
conseguir mais material de estudo e onde posso conseguir esses dados ?

somente os dados mesmo, nao vou desenvolver aplicacao que segmente o 
percurso em mapas, isso requer muito conhecimento em geoprocessameto 
e processamento de imagens digitais o que nao tenho.

um forte abraco a todos 
alineri




 




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

 Ola 
  
 tem um site chamado MapLink( http://maplink.uol.com.br ) eles tem 
um servico de webservice que pode ser integrado a qualquer sistema 
inclusive em delphi. Esse servico é pago mas tem um fazer uns testes 
gratis e baixar a documentação
  
 Odimar
 
 
 To: [EMAIL PROTECTED]: [EMAIL PROTECTED]: Thu, 10 Apr 2008 13:24:24 -
0300Subject: Re: [delphi-br] distancia entre cidades para sistema de 
transportadora qual o melhor metodo
 
 
 
 
 Hm... eu daria uma boa olhada na Google API, especialmente 
GoogleMaps/Earth.Em 09/04/08, alineri [EMAIL PROTECTED] escreveu: ola 
pessoal, acho que e um assunto que pode interessar a muitos. 
estou iniciando um projeto que tem como objetivo calcular a 
distancia e se for possivel as provaveis rotas rodoviarias entre 
duas cidades. sei que podemos fazer isso via equipamentos gps ou 
site como apontador e google maps mas a necessidade principal e 
calcular a distancia entre duas cidades. ja consegui uma planilha 
no site do dnit.gov.br que tem a distancia em km das principais 
cidades do brasil. mas a intencao e calcular a distancia de todas 
as cidades. por isso a pergunta qual o melhor metodo ? pela 
diferenca da longitude e latitude de duas cidades conseguimos entrar 
a distancia geografica delas, mas nao e a mesma coisa que a 
distancia rodoviaria por exemplo, essa solucao nao atenderia a uma 
transportadora por exemplo por a distancia percorrida pelas rodovias 
sera na maioria das vezes maior que a distanca geografica ( latitude 
e longitude ) pensei em conseguir os dados rodoviarios ( rodovia e 
tamanho da rodovia entre as cidades ) assim tambem conseguiria 
calcular a distancia entre elas, com a vantagem de tracar a rota, 
mas a pergunta e onde conseguir esses dados rodoviarios ? ja 
pesquisei em varios site do governo e nao encontro. outra forma

[delphi-br] showmodal, como acessar um fsMDIChild

2008-03-28 Por tôpico alineri
Ola pessoal, 

tem um formulario que e fsMDIChild, que carrega uma tela de pesquisa 
que e fsnormal em showmodal 

essa tela de pesquisa tem um listview onde e carregado os resultados da 
pesquisa. 

no evento onselectitem eu tento passar os valores que estao no listview 
da tela de pesquisa para os edits do formulario fsMDIChild, o que gera 
sempre erro de acesso de memoria. 

nao tenho como habilitar ( enabled = true ) os edits do formulario 
fsMDIChild para que esses possam receber os valores que foram 
selecionados no listview do formulario de pesquisa fsnormal ? 

um forte abarco a todos 
alineri



[delphi-br] ajuda para executar procedure no adostoredproc

2008-02-29 Por tôpico alineri
Ola pessoal,

Estou utilziando o BDS 2006 + ADO + Oracle XE

Tenho uma procedure que tem como objetivo retornar os dados de um 
endereco informando o cep ( essa procedure foi baseada em uma do 
firebird disponivel na internet com dados de ceps)

A procedure esta funcionando, rodo ela no oracle perfeitamente, agora 
quando uso o  adostoredproc.open tenho o seguinte erro:

Commandtext does not return a result set

Se utilizo um objeto ADOQuery tenho outro erro informando que os 
paramettros estao errados, e todos ja foram verificados.

o que pode ser? 

segue abaixo o codigo da procedure:

create or replace PROCEDURE LISTA_LUGAR 
( 
  PCEP IN VARCHAR2, 
  PESTADO OUT VARCHAR2, 
  PCIDADE OUT VARCHAR2, 
  PBAIRRO OUT VARCHAR2, 
  PENDERECO OUT VARCHAR2, 
  PCEPS OUT VARCHAR2, 
  PCOMPLEMENTO OUT VARCHAR2 
) 
AS 

begin 
select a.uf_sigla, 
b.cidade_descricao, 
c.bairro_descricao, 
d.endereco_logradouro, 
d.endereco_cep, 
d.endereco_complemento 
into 
pestado, 
pcidade, 
pbairro, 
pendereco, 
pceps, 
pcomplemento 
from uf a,cidade b, bairro c,  endereco d 

where (a.uf_codigo = b.uf_codigo) and (b.cidade_codigo = 
c.cidade_codigo)  and (c.bairro_codigo = d.bairro_codigo) and  
(d.endereco_cep = pcep) 
order by c.bairro_descricao,d.endereco_logradouro,d.endereco_cep; 

end LISTA_LUGAR;

um forte abraco a todos
alineri





[delphi-br] delphi + dbexpress + oracle + driver

2008-02-27 Por tôpico alineri
bom dia pessoal,

ja li e re-li todos os documentos da lista e de outros foruns e blogs e 
acho que o problema pelo que pesquisei e o driver do dbexpress para 
oracle que acompanha o delphi.

alguem conhece algum driver dbexpress para oracle que seja free ?

testei com o crlab e nao tive problemas mas nao momento nao disponho de 
recursos para compra-lo.

existe algum outro fornecedor ?

oq voces indicam



Re: RES: [delphi-br] delphi + dbexpress + oracle + driver

2008-02-27 Por tôpico alineri
Estou utilizando o o BDS 2006 e o Oracle XE

a conexao e realizada numa boa, o problema esta quando utilizo o 
componente SQLStoredProc para executar uma procedure, fica dando 
direto um erro ORA-06512 E ORA-06502

estou utilizando uma tabela para teste com dois campos:

CODIGO - NUMBER
DESCRICAO - VARCHAR2

e da sempre erro na inclusao ( os erros do oracle descrito acima )

testando o drive da crlab funciona na boa

abracos
alineri

--- Em delphi-br@yahoogrupos.com.br, Bruno Lichot 
[EMAIL PROTECTED] escreveu

 Qual versão do Delphi você esta utilizando e qual versão do Oracle?
 
  
 
 Abs
 
  
 
 BL
 
  
 
 De: delphi-br@yahoogrupos.com.br [mailto:delphi-
[EMAIL PROTECTED] Em nome de alineri
 Enviada em: quarta-feira, 27 de fevereiro de 2008 10:33
 Para: delphi-br@yahoogrupos.com.br
 Assunto: [delphi-br] delphi + dbexpress + oracle + driver
 
  
 
 bom dia pessoal,
 
 ja li e re-li todos os documentos da lista e de outros foruns e 
blogs e 
 acho que o problema pelo que pesquisei e o driver do dbexpress para 
 oracle que acompanha o delphi.
 
 alguem conhece algum driver dbexpress para oracle que seja free ?
 
 testei com o crlab e nao tive problemas mas nao momento nao 
disponho de 
 recursos para compra-lo.
 
 existe algum outro fornecedor ?
 
 oq voces indicam
 
  
 
 
 
 [As partes desta mensagem que não continham texto foram removidas]





RES: [delphi-br] delphi + dbexpress + oracle + driver - resolvi com ADO

2008-02-27 Por tôpico alineri
Oi pessoal,

Bem parece que realmente existe alguma incompatibilidade no driver do 
dbexpress que vem na plataforma BDS 2006. Simplesmente o componente 
SQLStoredProc nao funciona na versao Oracle XE, apresenta varias 
incompatibilidades nos parametros de tipo de dados.

Resolvi da seguinte forma: Estou usando os componentes de acesso ADO, 
se sao os mais indicados nao sei, o que sei e que consigo rodar 
procedures do oracle, e o tempo de conexao e resposta e bem razoavel, 
e sinceramente nao deixou muito a desejar em relacao ao driver da 
crlab ( testei a versao demo ).

Agradeco a sugestao do Bruno de tentar fazer um upgrade mas mesmo com 
um bom desconto e preciso ter caixa ($).

Verifiquei que na versao RAD 2007 ainda tem suporte a ADO entao nao 
me preocupo por enquanto, e claro que utilizar o DBExpress seria 
muito melhor, principalmente com relacao a garantia de continuidade.

O pessoal da CodeGear que poderia pensar no assunto em disponibilizar 
para as versoes anteriores do Delphi atualizacoes ( correcoes ) do 
componente de acesso a dados tao defendido por voces ( dbexpress ), 
porque investir pesado em uma versao do delphi, para ainda ter que 
investir em driver de terceiros, ou so ter a correcao do produto 
comprando a versao mais atual e um pouco demais ao meu ver.

bem e so uma sugestao

um forte abraco a todos
alineri

--- Em delphi-br@yahoogrupos.com.br, Bruno Lichot 
[EMAIL PROTECTED] escreveu

 Acredito que este problema seja por conta da versão do driver do 
BDS 2006, que em sua época de lançamento não dava suporte ao 10g.
 
  
 
 Este erro no Delphi 2007 com DBX 4 não está ocorrendo.
 
  
 
 Por falar nisso, a CodeGear está com uma promoção para quem já tem 
qualquer licença de produtos Borland/CodeGear. Elas valem 60% de 
desconto na aquisição de Qualquer Delphi ou RAD Studio New User.  
 
  
 
 Bom só pra constar caso alguém não tenha recebido o email da 
promoção. Quem estiver interessado é só entrar em contato diretamente 
com a Graça (11-2165-8048 / [EMAIL PROTECTED]) que ela fornecerá todas as 
informações e valores.
 
  
 
 Abs
 
 BL 
 
  
 
 De: delphi-br@yahoogrupos.com.br [mailto:delphi-
[EMAIL PROTECTED] Em nome de alineri
 Enviada em: quarta-feira, 27 de fevereiro de 2008 11:53
 Para: delphi-br@yahoogrupos.com.br
 Assunto: Re: RES: [delphi-br] delphi + dbexpress + oracle + driver
 
  
 
 Estou utilizando o o BDS 2006 e o Oracle XE
 
 a conexao e realizada numa boa, o problema esta quando utilizo o 
 componente SQLStoredProc para executar uma procedure, fica dando 
 direto um erro ORA-06512 E ORA-06502
 
 estou utilizando uma tabela para teste com dois campos:
 
 CODIGO - NUMBER
 DESCRICAO - VARCHAR2
 
 e da sempre erro na inclusao ( os erros do oracle descrito acima )
 
 testando o drive da crlab funciona na boa
 
 abracos
 alineri
 
 --- Em delphi-br@yahoogrupos.com.br mailto:delphi-br%
40yahoogrupos.com.br , Bruno Lichot 
 bruno.lichot@ escreveu
 
  Qual versão do Delphi você esta utilizando e qual versão do 
Oracle?
  
  
  
  Abs
  
  
  
  BL
  
  
  
  De: delphi-br@yahoogrupos.com.br mailto:delphi-br%
40yahoogrupos.com.br  [mailto:delphi-
 [EMAIL PROTECTED] mailto:br%40yahoogrupos.com.br ] Em nome de 
alineri
  Enviada em: quarta-feira, 27 de fevereiro de 2008 10:33
  Para: delphi-br@yahoogrupos.com.br mailto:delphi-br%
40yahoogrupos.com.br 
  Assunto: [delphi-br] delphi + dbexpress + oracle + driver
  
  
  
  bom dia pessoal,
  
  ja li e re-li todos os documentos da lista e de outros foruns e 
 blogs e 
  acho que o problema pelo que pesquisei e o driver do dbexpress 
para 
  oracle que acompanha o delphi.
  
  alguem conhece algum driver dbexpress para oracle que seja free ?
  
  testei com o crlab e nao tive problemas mas nao momento nao 
 disponho de 
  recursos para compra-lo.
  
  existe algum outro fornecedor ?
  
  oq voces indicam
  
  
  
  
  
  [As partes desta mensagem que não continham texto foram removidas]
 
 
  
 
 
 
 [As partes desta mensagem que não continham texto foram removidas]





[delphi-br] DBEXPRESS + SQLStoredProc + ORACLE - isso realmente funciona ?

2008-02-26 Por tôpico alineri
Ola Pessoal,

Estou atravessando madrugada a dentro e ate agora nao estou 
conseguindo executar minhas procedures do Oracle utilizando 
SQLStoredProc do Dbexpress. A cada momento e um erro diferente, sera 
que essa combinacao realmente funciona ?

Estou fazendo um teste basico, uma procedure que inclui registro em 
dois campos, ( Codigo - Numerico, Descricao - Texto ) a procedure foi 
testada diretamente no oracle e esta funcionando.

Os erros sao o seguinte:

ORA-06502 e ORA-06512 esse erro se referindo a campo Codigo que e 
numerico

No Oracle esse campo esta como Number e em params do SQLStoredProc o 
datatype esta como ftFMTBcd, e o valor passado para esse parametro 
vai como AsBCD.

Ja testei com Float, com Integer e continua dando os mesmos erros.

Qual seria a configuracao correta desses parametros do Delphi ?

Ou o Dbexpress realmente nao e recomendado para o Oracle ?

Versoes que estou utilizando

Oracle XE
Delphi 2006 com update
Windows XP ´professional

Um forte abraco a Todos
alineri



Re: RES: RES: [delphi-br] dependência funcional normalização - detalhando

2007-12-18 Por tôpico alineri
Caro Gerhard,

Esclareceu e muito as minhas dúvidas.

Muito obrigado

Um forte abraço
Alinei


--- Em delphi-br@yahoogrupos.com.br, Gerhard Roger Nack [EMAIL PROTECTED] 
escreveu

 Bem vamos lá, a situação 2 eu, particularmente faria assim:
 
 Situação 2:
 
 TAB_PESSOA
 CODPESSOA
 NOME
 CPFCNPJ
 DATACAD
 CODENDERECO
 CODTELEFONE
 IDEMAIL
 EMAIL
 SEXO ( M - F )
 DATANASC
 
 TAB_ENDERECO
 CODENDERECO
 TIPOLOGADOURO
 ENDERECO
 NUMERO
 COMPLEMENTO
 CIDADE
 UF
 CEP
 
 TAB_TELEFONE
 CODTELEFONE
 IDTELEFONE
 TELEFONE
 TPTELEFONE ( TRABALHO - RESIDENCIAL - FAX - CELULAR )
 
 Ou seja, eu não criaria uma tabela para email pois é uma informação 
que dificilmente irá se repetir e geraria um overhead muito na hora 
dos join's, como também não criaria a tabela SEXO_DATANASC pelo mesmo 
motivo.
 
 Você colocou o CODPESSOA em todas as tabelas, o correto seria cada 
tabela ter o seu código próprio (ENDERECO, TELEFONE, etc) e a PESSOA 
ter o CODENDERECO, CODTELEFONE, etc., pois do contrario você nunca 
poderia utilizar um mesmo TELEFONE para mais de uma pessoa. Isso 
inviabilizaria a criação dessas tabelas de referência, pois no fundo 
você sempre teria um relacionamento de 1-1 e nunca de 1-N que é 
justamente o que justifica a normalização.
 
 Seria melhor normalizaria a tabela ENDERECO para algo assim:
 
 TAB_ENDERECO
 CODENDERECO
 TIPOLOGADOURO
 ENDERECO
 NUMERO
 COMPLEMENTO
 CODCIDADE
 CEP
 
 TAB_CIDADE
 CODCIDADE
 CIDADE
 UF
 
 Mas particularmente eu ainda utilizaria o campo CEP juntamente com 
a tabelas do correio ou da GSE Soft, normalizando a tabela ENDERECO 
para algo assim:
 
 TAB_ENDERECO
 CODENDERECO
 CEP
 NUMERO
 COMPLEMENTO
 
 Ou seja, deixaria apenas o CEP e restante dos dados como Endereco, 
Tipo Logradouro, Cidade, UF e Bairro buscaria na base dos correios e 
só teria os dados específicos daquele endereço como NUMERO e 
COMPLEMENTO.
 
 Resumindo, deve-se normalizar as tabelas sim, porém o bom censo 
deve prevalecer pois nem sempre pode-se levar a normalização até o 
último nível possível pois degradaria muito a performance do sistema.
 
 OBS: Para fins de clareza no email deixei o prefixo TAB_ que você 
utilizou, mas jamais, jamais utilizaria isso no mundo real, pois como 
se trata de uma tabela e sabendo-se que todas elas encontram-se no 
banco de dados não se justifica utilizar esse prefixo que seria igual 
a todas elas.
 
 Espero ter esclarecido um pouco, e qualquer dúvida estamos ai.
 
  
 
 Bem mas vamos ao assunto que venho estudando.
 
 Estou desenvolvendo um projeto que tem por objetivo ser multi-
banco, 
 estou utilizando o Oracle XE e o Firebird 2.0 para testes com 
tabelas 
 que têm em média 100.000 registros 
 
 Pesquisando o assunto, tenho observado que depende muito das regras 
 de negócio que cada um adota em seus projetos de modelagem.
 
 Minha dúvida é o que seria melhor, deixar os campos que têm ligação 
 de dependência funcional na mesma tabela ou dividi-los em tabelas 
 filhas ex:
 
 Situação 1: 
 
 Tab_Pessoa
 CODIGO
 NOMERAZAO
 CPFCNPJ
 IDENTESTADUAL
 SEXO
 DATANASC
 ENDERECO
 NUMERO
 COMPLEMENTO
 BAIRRO
 CIDADE
 CEP
 TELEFONE
 CELULAR
 EMAIL
 DATACAD
 
 Situação 2:
 
 TAB_PESSOA
 CODPESSOA
 NOME
 CPFCNPJ
 DATACAD
 
 TAB_ENDERECO
 CODPESSOA
 TIPOLOGADOURO
 ENDERECO
 NUMERO
 COMPLEMENTO
 CIDADE
 UF
 CEP
 
 TAB_TELEFONE
 CODPESSOA
 IDTELEFONE
 TELEFONE
 TPTELEFONE ( TRABALHO - RESIDENCIAL - FAX - CELULAR )
 
 TAB_EMAIL
 CODPESSOA
 IDEMAIL
 EMAIL
 
 TAB_SEXO_DATANASC
 CODPESSOA
 SEXO ( M - F )
 DATANASC
 
 Qual das situações é a mais correta ? Qual a melhor prática ? Na 
 Situação 1 podiamos desegregar os campos telefone e e-mail, e 
 manter os demais campos na tabela pessoa, dessa forma qual dos 
 modelos seria o mais correto.
 
 O que vocês recomendam ?
 
 Um forte abraço a todos
 
 alineri
 
 - Em delphi-br@yahoogrupos.com.br mailto:delphi-br%
40yahoogrupos.com.br , Gerhard Roger Nack ginho@ 
 escreveu
 
  Então comecemos a normalizar os textos.
  
  
  
  Não é campu é campo.
  
  
  
  Frase começar com maiúsculo e também existem palavras acentuadas 
na 
 língua portuguesa.
  
  
  
  
  
  De: delphi-br@yahoogrupos.com.br mailto:delphi-br%
40yahoogrupos.com.br  [mailto:delphi-
 [EMAIL PROTECTED] mailto:br%40yahoogrupos.com.br ] Em nome de 
alineri
  Enviada em: sexta-feira, 14 de dezembro de 2007 16:31
  Para: delphi-br@yahoogrupos.com.br mailto:delphi-br%
40yahoogrupos.com.br 
  Assunto: [delphi-br] dependencia funcional normalizacao e numero 
de 
 campos
  
  
  
  ola pessoal, sei que nao tem a ver com a ferramenta Delphi, e 
sobre 
  modelagem mas acredito ser a duvida de muitos tambem que pararam 
 para 
  observar essa questao.
  
  tenho uma duvida que carrego ja a um tempo. 
  
  um exemplo, tenho os dados de um formulario para ser modelado, ao 
  todo sao uns 80 campus e no formulario os campos sao subdivididos 
 em 
  categoria, ex: atendimento, execucao, entrega, quantidades etc... 
  
  a maioria desses campus seguem o conceito de dependencia 
funcional 
 so 
  que

[delphi-br] dependencia funcional normalizacao e numero de campos

2007-12-14 Por tôpico alineri
ola pessoal, sei que nao tem a ver com a ferramenta Delphi, e sobre 
modelagem mas acredito ser a duvida de muitos tambem que pararam para 
observar essa questao.

tenho uma duvida que carrego ja a um tempo. 

um exemplo, tenho os dados de um formulario para ser modelado, ao 
todo sao uns 80 campus e no formulario os campos sao subdivididos em 
categoria, ex: atendimento, execucao, entrega, quantidades etc... 

a maioria desses campus seguem o conceito de dependencia funcional so 
que dessa forma minha tabela fica com um numero de campus muito 
grande, entao eu geralmente normalizo a tabela criando tabelas filhas 
contendo esses outros campus, seguindo a ideia de subdivisao feita 
no formulario, isso esta correto ? e uma boa pratica ? 

minha duvida vem pq aplicando a 2FN ou a 3FN acabo tendo umas 4 a 5 
tabelas filhas, e na hora de fazer uma juncao eu acabo tendo uma 
lentidao que acredito ser disso pois se trata de muitos registros. 

Gostaria da opniao dos colegas a respeito disso, se e uma boa pratica 
ou nao ou oq e mais recomendado. 

um abarco a todos 
alineri 



Re: RES: [delphi-br] dependência funcional normalização - detalhando

2007-12-14 Por tôpico alineri
Prezado Sr. Gerhard,

Realmente não houve de minha parte a devida atenção as regras 
gramaticais devido a um hábito antigo de chats. E pela primeira vez 
vejo alguem manifestar o uso correto da linguagem.

Bem mas vamos ao assunto que venho estudando.

Estou desenvolvendo um projeto que tem por objetivo ser multi-banco, 
estou utilizando o Oracle XE e o Firebird 2.0 para testes com tabelas 
que têm em média 100.000 registros 

Pesquisando o assunto, tenho observado que depende muito das regras 
de negócio que cada um adota em seus projetos de modelagem.

Minha dúvida é o que seria melhor, deixar os campos que têm ligação 
de dependência funcional na mesma tabela ou dividi-los em tabelas 
filhas ex:

Situação 1: 

Tab_Pessoa
CODIGO
NOMERAZAO
CPFCNPJ
IDENTESTADUAL
SEXO
DATANASC
ENDERECO
NUMERO
COMPLEMENTO
BAIRRO
CIDADE
CEP
TELEFONE
CELULAR
EMAIL
DATACAD

Situação 2:

TAB_PESSOA
CODPESSOA
NOME
CPFCNPJ
DATACAD

TAB_ENDERECO
CODPESSOA
TIPOLOGADOURO
ENDERECO
NUMERO
COMPLEMENTO
CIDADE
UF
CEP

TAB_TELEFONE
CODPESSOA
IDTELEFONE
TELEFONE
TPTELEFONE ( TRABALHO - RESIDENCIAL - FAX - CELULAR )

TAB_EMAIL
CODPESSOA
IDEMAIL
EMAIL


TAB_SEXO_DATANASC
CODPESSOA
SEXO ( M - F )
DATANASC

Qual das situações é a mais correta ? Qual a melhor prática ? Na 
Situação 1 podiamos desegregar os campos telefone e e-mail, e 
manter os demais campos na tabela pessoa, dessa forma qual dos 
modelos seria o mais correto.

O que vocês recomendam ?

Um forte abraço a todos

alineri


- Em delphi-br@yahoogrupos.com.br, Gerhard Roger Nack [EMAIL PROTECTED] 
escreveu

 Então comecemos a normalizar os textos.
 
  
 
 Não é campu é campo.
 
  
 
 Frase começar com maiúsculo e também existem palavras acentuadas na 
língua portuguesa.
 
  
 
  
 
 De: delphi-br@yahoogrupos.com.br [mailto:delphi-
[EMAIL PROTECTED] Em nome de alineri
 Enviada em: sexta-feira, 14 de dezembro de 2007 16:31
 Para: delphi-br@yahoogrupos.com.br
 Assunto: [delphi-br] dependencia funcional normalizacao e numero de 
campos
 
  
 
 ola pessoal, sei que nao tem a ver com a ferramenta Delphi, e sobre 
 modelagem mas acredito ser a duvida de muitos tambem que pararam 
para 
 observar essa questao.
 
 tenho uma duvida que carrego ja a um tempo. 
 
 um exemplo, tenho os dados de um formulario para ser modelado, ao 
 todo sao uns 80 campus e no formulario os campos sao subdivididos 
em 
 categoria, ex: atendimento, execucao, entrega, quantidades etc... 
 
 a maioria desses campus seguem o conceito de dependencia funcional 
so 
 que dessa forma minha tabela fica com um numero de campus muito 
 grande, entao eu geralmente normalizo a tabela criando tabelas 
filhas 
 contendo esses outros campus, seguindo a ideia de subdivisao 
feita 
 no formulario, isso esta correto ? e uma boa pratica ? 
 
 minha duvida vem pq aplicando a 2FN ou a 3FN acabo tendo umas 4 a 5 
 tabelas filhas, e na hora de fazer uma juncao eu acabo tendo uma 
 lentidao que acredito ser disso pois se trata de muitos registros. 
 
 Gostaria da opniao dos colegas a respeito disso, se e uma boa 
pratica 
 ou nao ou oq e mais recomendado. 
 
 um abarco a todos 
 alineri 
 
  
 
 
 
 [As partes desta mensagem que não continham texto foram removidas]





[delphi-br] TISS + SIH ( sistema de informacao hospitalar )

2007-12-03 Por tôpico alineri
Boa Tarde Pessoal,

Espero contar com a ajuda de voces.

Fui contratado para um projeto em um segmento que nunca trabalhei que 
sao os sistemas de saudde hospitalar.

Primeiro foi desenvolver uma aplicacao para envio de formulario TISS, 
isso ja esta quase OK.

Agora preciso desenvolevr um sistema para uma clinica particular e um 
hospital particular que tambem atende pelo SUS.

Gostaria entao de saber se voces podem me indicar onde encontrar 
documentacao sobre SIH pois encontrei muito pouco e o que encontrei 
sao informacoes para quem ja desenvolve na area.

Existe algum modelo relacional disponivel para estudo ? os sistemas 
que encontro para download sao muito precarios, estou realmente 
preciso de uma luz por onde comecar 

PS: antes que perguntem sobre o TISS, estou utilizando um componente 
chamado ComponentTISS que esta disponivel nessa comunidade 

http://groups.google.com.br/group/comunidade-delphi-tiss

exelente grupo de discussao sobre TISS e o componente tambem e muito 
bom

Um forte abraco a todos
Alineri



[delphi-br] estudos sobre dbexpress aplicao multicamadas e oracle

2007-10-30 Por tôpico alineri
Boa tarde pessoa,

Onde posso encontrar um material de estudo pode ser apostila, artigo 
livro sobre esse assunto : dbexpress + multicamadas + oracle

a versao do delphi que utilizo e 2006
o oracle 10g express

O que tenho encontrado por ai e muito superficial se alguem puder me 
dar essa dica desde ja agradeco

Sempre trabalhei com os componentes IBX ou ADO e Bancos Firebird, SQL 
Server e Access, e estou precisando estudar bem o dbexpress com oracle 
para um novo projeto.

desde ja agradeco a todos 

um forte abraco
alineri



[delphi-br] histograma e segmentacao de imagem

2007-09-28 Por tôpico alineri
Bom dia pessoal,

Voces sabem onde posso encontrar material sobre como fazer um 
histograma e segmentacao de imagem utilizando delphi ?

E outros documentos que falem sobre manipulacao de imagens no delphi ?

um forte abraco a todos 
Eduardo



[delphi-br] esse procedimento pode estar gerando um Access violation ?

2007-09-10 Por tôpico alineri
Bom dia pessoal,

me deparei com o famoso Access violation em um procedimento simples 
que e fechar um formulario.

nunca tive esse erro em fechar forms, so que esse form e uma unica 
aplicacao ( nao tenho outros formularios ) e faco chamada a uma dll 
externa.

se abro o form sem executar nenhum procedimento e mando fechar ele 
fecha normalmente.

agora se abro a aplicacao e mando executar um procedimento que faz o 
seguinte:

1 - carrega um vetor com os dados dos edits
2 - chama as funcoes da dll

quando faco isso ja era, se mando fechar da Access violation

utilizo para fechar:

//evento onclose
action:=cafree

//ja tentei coloar no evento ondestroy
form1:= nil;
e tambem 
FreeAndNil(form1) ou
Form1.free ou 
form1.release

todos dao a mesma mensagem Access violation.

oq deve ser ?

um forte abraco a todos

eduardo



[delphi-br] Re: METODO MAQUINA DE ESTADO - EXPLICACOES

2007-08-31 Por tôpico alineri
Bom dia pessoal,

p problema que para acessar as catracas utilizo uma dll do 
fabricante  que no manual ja diz: A dll não é thread-safe ou multi-
thread, desse modo apenas uma thread deverá acessar as
funções da dll.

os terminais que utilizo sao IPs ON-LINE e fico fazendo pooling, o 
problema acho que esta justamente ai, porque tenho que fazer um 
pooling para cada terminal oq gera os problemas que mencionei, 
pesquisando na net as informacoes que obtive e que para esse tipo de 
equipamento o recomendado e esse metodo de programacao em ESTADO.

Outra coisa e que infelizmente tenho que usar o access por unica e 
exclusiva imposicao.

quando voces falam em trabalhar coim thread, e criar um executavel 
para cada terminal ?

a aplicao da forma como mencionei esta funcionando, so que tem horas 
que nao consegue conectar com todos os equipamentos, tenho esses 
mesmo problemas de conexao com banco de dados quando ocorrem conexoes 
simultaneas...etc.

bem pessoal e isso, oq voces recomendam ou sugerem ? se alguem souber 
onde tem um bom material de estudo sobre o assunto por favor post o 
link.

um forte abarco a todos 
eduardo

 

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

 Bom dia!!
 Kra seguinte os seus terminais sao SERIAIS ou IPs, se for controlar 
os
 dois tipos, vc tera q ter codigo diferentes, a naou ser que consiga
 fazer uma classe que trate, como nao tive tmp pra isso heheheh
 o conselho eh o mesmo da galera o caminho eh thread, outra pgt seus
 terminais sao On-line ou Realtime? Explico: On-Line vc tem q ficar
 perguntando ao terminal se tem algum registro pra validar dai fica
 dando pooling nele, o realtime te envia a requisicao de validacao
 deixando seu sistema em standby.
 No meu caso meu sistema usa threads cada terminal eh uma thread, um
 conselho qdo for fazer se usar o banco IB/FB crie uma conexao para
 cada terminal, assim vc poder fazer manutencao no banco sem 
prejudicar
 a comunicacao, explico, se vc tem uma conexao so com o banco quando
 uma thread faz um select e ao mesmo tmp outro terminal faz uma
 requisicao tambem dai uma thread vai esperar pela outra pq o banco 
nao
   esta como multi sessao, lembre-se disso, eu to com este problema 
mas
 a preguiça e o tamanho da mudanca nao me dar coragem de modificar, 
dai
 apesar de ter threads sepradas se tiver duas validacao para efetuar
 uma espera pela outra!
 
 bom espero ter ajudado qualquer coisa to por aqui!
 
 abracao
 
 Bit
 
 
 --- Em delphi-br@yahoogrupos.com.br, alineri alineri@ escreveu
 
  Boa noite pessoal
  
  Estou desenvolvendo uma aplicacao que utiliza o metodo de MAQUINA 
DE 
  ESTADO que e uma rotina que fica em loop testando uma variável
  que chamamos de Estado. Dependendo do estado atual, executamos 
alguns 
  procedimentos e em seguida alteramos o estado que será verificado 
  pela máquina de estados novamente no próximo passo do loop.
  
  Utilizo esse conceito para trabalhar com terminais onde o 
programa 
  fica rodando em loop aguardo informacoes do terminal. 
  
  queria saber dos amigos se conhecem esse conceito de programacao 
que 
  nao conhecia ate entao, se ja utilizaram em terminais ou em 
qualquer 
  outra aplicacao.
  
  mas ai vai a minha questao. Essa aplicao a para atender 11 
terminais 
  de acesso ( catracas ).
  
  quardo as informacoes desses terminais em um vetor e um dos 
campos 
  desse vetor chamo de estado que sera a variavel que ira 
armazenar o 
  estado atual de cada terminais, se foi acessado ou nao por 
exemplo.
  
  um pseudocodigo ficaria assim mais ou mesnos
  
  //Váriável para armazenar o estado atual de cada terminals 
  
  Inteiro VetorTerminal[32];
  
  //Variável que diz qual é o terminal que estamos tratando
  Inteiro TerminalAtual = 1
  
  while(TRUE){
  
  //Verifica qual é o estado do terminal atual
  
  Case VetorTerminal[TerminalAtual] 
  1:  // Procedimentos Primeiro passo inner
  //Seta o Terminal atual para o próximo estado
  VetorTerminal[TerminalAtual] = 2;
  
  2: //Executa o estado 2 para o Terminal atual
 //Seta o Terminal atual para o próximo estado
 VetorTerminal[TerminalAtual] = 3;
  
  .
  .
  . // Ate quantos passos achar necessario
  
  //Pula para o próximo Terminal
  TerminalAtual = TerminalAtual + 1;
  If(TerminalAtual  TOTALDETERMINAIS){
  TerminalAtual = 1;
  }
  
  Basicamente se eu nao estiver errado essa e a ideia de maquina de 
  estado, e foi o unico metodo que concegui para trabalhar com 
  terminais, e ai esta o problema.
  
  Pelo pseudocodigoa cada passo do CASE a variavel que controla  a 
  posicao do vetorterminal e incrementada, fazendo um loop assim em 
  todos os terminais. Nesses passos que estao dentro desse loop sao 
  testados as conexoes com cada terminal, verifica se as informcoes 
  foram passadas por esses terminais ( informacoes vindas de 
cartoes, 
  teclado, digitais etc )
  
  O problems que ja observei em pratica foi:
  
  1 - Quando um terminal sai do passo 1, para entrar

[delphi-br] Re: METODO MAQUINA DE ESTADO - EXPLICACOES - ENTENDI

2007-08-31 Por tôpico alineri
Blz Mario, 

Entendi a ideia,

so mas uma pergunta entao para voce e o pessoal, e que trabalho mais 
com PHP do que com Delphi, como eu posso trabalhar com Thread no 
Delphi ?

Voces conhecem algum site ou documenmtacao que fale bem do assunto ( 
Thread) com algum exemplo se possivel ?

Mas trabalhando com Thread tenho que mudar minha logica de utilizacao 
de maquina de estado ou posso continuar com ela ? e dependendo do 
procedimento exeecutado eu chamo um Thread para executa-la ?

um forte abraco a todos 
Eduardo

--- Em delphi-br@yahoogrupos.com.br, José Mário Silva Guedes 
[EMAIL PROTECTED] escreveu

 Insisto no uso de Thread, pois seu problema é, de fato, parecido 
com o meu.
 
 O pulo do gato (acho que estou ficando velho - já estou começando 
a usar
 essas expressões), o pulo do gato é você criar uma Thread para se
 comunicar com as catracas, por conta da DLL. Essa Thread se 
comunica com
 outras Threads, que tratam as catracas individualmente. Ao tratar o 
que tem
 que ser tratado, você devolve o que que tem fazer para a Thread que 
se
 comunica com a catraca.
 
 Esquema:
 
 1) ThreadEventos (Se comunica com as catracas)
 
 2) ThreadCatraca1 (Se comunica com o Access)
 
 3) ThreadCatarca2 (Se comunica com o Access)
 
 
 [As partes desta mensagem que não continham texto foram removidas]





[delphi-br] METODO MAQUINA DE ESTADO - DUVIDAS - ALGUEM CONHECE ?

2007-08-30 Por tôpico alineri
Boa noite pessoal

Estou desenvolvendo uma aplicacao que utiliza o metodo de MAQUINA DE 
ESTADO que e uma rotina que fica em loop testando uma variável
que chamamos de Estado. Dependendo do estado atual, executamos alguns 
procedimentos e em seguida alteramos o estado que será verificado 
pela máquina de estados novamente no próximo passo do loop.

Utilizo esse conceito para trabalhar com terminais onde o programa 
fica rodando em loop aguardo informacoes do terminal. 

queria saber dos amigos se conhecem esse conceito de programacao que 
nao conhecia ate entao, se ja utilizaram em terminais ou em qualquer 
outra aplicacao.

mas ai vai a minha questao. Essa aplicao a para atender 11 terminais 
de acesso ( catracas ).

quardo as informacoes desses terminais em um vetor e um dos campos 
desse vetor chamo de estado que sera a variavel que ira armazenar o 
estado atual de cada terminais, se foi acessado ou nao por exemplo.

um pseudocodigo ficaria assim mais ou mesnos

//Váriável para armazenar o estado atual de cada terminals 

Inteiro VetorTerminal[32];

//Variável que diz qual é o terminal que estamos tratando
Inteiro TerminalAtual = 1

while(TRUE){

//Verifica qual é o estado do terminal atual

Case VetorTerminal[TerminalAtual] 
1:  // Procedimentos Primeiro passo inner
//Seta o Terminal atual para o próximo estado
VetorTerminal[TerminalAtual] = 2;

2: //Executa o estado 2 para o Terminal atual
   //Seta o Terminal atual para o próximo estado
   VetorTerminal[TerminalAtual] = 3;

.
.
. // Ate quantos passos achar necessario

//Pula para o próximo Terminal
TerminalAtual = TerminalAtual + 1;
If(TerminalAtual  TOTALDETERMINAIS){
TerminalAtual = 1;
}

Basicamente se eu nao estiver errado essa e a ideia de maquina de 
estado, e foi o unico metodo que concegui para trabalhar com 
terminais, e ai esta o problema.

Pelo pseudocodigoa cada passo do CASE a variavel que controla  a 
posicao do vetorterminal e incrementada, fazendo um loop assim em 
todos os terminais. Nesses passos que estao dentro desse loop sao 
testados as conexoes com cada terminal, verifica se as informcoes 
foram passadas por esses terminais ( informacoes vindas de cartoes, 
teclado, digitais etc )

O problems que ja observei em pratica foi:

1 - Quando um terminal sai do passo 1, para entrar no passo dois tem 
que esperar o loop percorrer todos os outros terminais, oq as vezes 
gera um pouco de lentidao.

2 - Problemas no momento da validacao de dados, se dois ou mais 
usuarios fizerem uma validacao ( passaram um cartao ) ao mesmo tempo 
as variaveis que utilizo para armazenar por exemplo o codigo do 
cartao que foi passado ou informacoes do teclado perdem as 
referencias.

3 - um meio de tratar dentro desse loop terminais a parte, por 
exemplo, um terminais perdeu a conexao, ter um meio dentro dese loop 
de ficar testando a conexao com esse termianal isoladamente, sem que 
o teste de conexao do mesmo  tenha o mesmo problema que relatei na 
questao 1.

Bem pessoal queria ver se alguem pode me dar uma ideia para melhorar 
esse pseudo codigo, se alguem conehce esse metodo de maquina de 
estado e possa dar uma ideia de como melhorar o desempenho, e ainda 
se alguem trabalha com terminais utilizando esse conceito para 
trocarmos experiencia.

Vou ficando por aqui, o texto ja esta grande.


Um forte abraco a todos
eduardo



[delphi-br] inverter bloco hexadecimal

2007-08-29 Por tôpico alineri
Bom Dia pessoal,

Preciso inverter um bloco Hexadecimal ( no caso inverter um bloco de 
caracteres ) como no exemplo abaixo:

BLOCO INICIAL4A7C7DB5
BLOCO INVERTIDO  B57D7C4A

So que preciso inverter a posicao dos blocos e nao colocar de tras 
para frente, so que preciso fazer isso independete do numero de 
blocos serem pares ou impares exemplo:

BLOCO INICIAL   C4D5A9B
BLOCO INVERTIDO 9B5A4DC

E assim por diante independete do numero de caracteres.

Alguem pode me ajudar

Um forte abraco a todos
Eduardo 



[delphi-br] Re: inverter bloco hexadecimal - Funcionou e Explicacoes

2007-08-29 Por tôpico alineri
Mais uma vez obrigado ai pessoal pela ajuda, todas as funcoes deram 
certo.

estava precisando dessa funcao por que tenho dois modelos de leitores 
de cartao de proximidade MIFARE 1K diferentes, um do fabricante ACG e 
outro do fabricante ACURA. O retorno que ambos leitores dao e em 
haxadecimal, so a posicao dos blocos hexadecimais de um e invertido 
se comparado ao outro. No caso a ACG responponde na posicao correta 
se comparada a outros leitores a o leitor da ACURA responde com a 
posicao dos blocos invertida.


mas uma vez obrigado e um forte abraco a todos
eduardo

--- Em delphi-br@yahoogrupos.com.br, Joao Morais [EMAIL PROTECTED] escreveu

 alineri wrote:
  Bom Dia pessoal,
  
  Preciso inverter um bloco Hexadecimal ( no caso inverter um bloco 
de 
  caracteres ) como no exemplo abaixo:
  
  BLOCO INICIAL4A7C7DB5
  BLOCO INVERTIDO  B57D7C4A
  
  So que preciso inverter a posicao dos blocos e nao colocar de 
tras 
  para frente, so que preciso fazer isso independete do numero de 
  blocos serem pares ou impares exemplo:
  
  BLOCO INICIAL   C4D5A9B
  BLOCO INVERTIDO 9B5A4DC
 
 Você quis dizer 9B5A4D0C, correto?
 
  E assim por diante independete do numero de caracteres.
 
 function Revert(const AHex: string): string;
 var
VHex: string;
VLen, I: Integer;
 begin
if Odd(Length(AHex)) then
  VHex := '0' + AHex
else
  VHex := AHex;
VLen := Length(VHex);
SetLength(Result, VLen);
for I := 0 to Pred(VLen div 2) do
  Move(VHex[2 * I + 1], Result[VLen - 2 * I - 1], 2);
 end;
 
 Testa aí e diz se funciona.
 
 Curiosidade: em que circunstância você precisa disto? Dump de 
memória? 
 Faculdade?
 
 --
 Joao Morais





[delphi-br] funcao hexadecimal para inteiro para acima de 7 digitos

2007-08-27 Por tôpico alineri
Boa tarde pessoal,

Estou com dificuldades em converter numeros hexadecimais grandes em 
decimais.

todas as funcoes que peguei na net e que fiz quando tem mais de 7 
digitos nao funciona, verifico se esta certo pela calculadora do 
windows.

alguem pode me ajudar estou precisando muito dessa funcao

exemplo de uma funcao que peguei aqui no grupo e que nao funcionou 
com 
o seguinte numero hexadecimal C5E57F15

o resultado que a funcao retorna e: -974815467
 quando a conversao correta e: 3320151829

Um forte abraco a todos
Eduardo


function TForm1.HexToInt(const HexStr: string): longint;
var iNdx: integer;
cTmp: Char;

begin
Result := 0;
for iNdx := 1 to Length(HexStr) do
begin
cTmp := HexStr[iNdx];
case cTmp of
'0'..'9': Result := 16 * Result + (Ord(cTmp) - $30);
'A'..'F': Result := 16 * Result + (Ord(cTmp) - $37);
'a'..'f': Result := 16 * Result + (Ord(cTmp) - $57);
else
raise EConvertError.Create('Illegal character in hex string');
end;
end;
end;





[delphi-br] Re: funcao hexadecimal para inteiro para acima de 7 digitos FUNCIONOU

2007-08-27 Por tôpico alineri
Obrigado pessoal utilizei a funcao strtoint64 como descrito abaixo e 
pronto, funcionou que e uma beleza. E o melhor de tudo com uma linha 
so.

Mais uma vez obrigado e um forte abraco a todos
Eduardo

--- Em delphi-br@yahoogrupos.com.br, Desenvolvimento \(Anderson\) 
[EMAIL PROTECTED] escreveu

 use a função strtoint64... assim:
 
 caption := inttostr(strtoint64('$C5E57F15'))
 
 
 
 
   - Original Message - 
   From: alineri 
   To: delphi-br@yahoogrupos.com.br 
   Sent: Monday, August 27, 2007 5:35 PM
   Subject: [delphi-br] funcao hexadecimal para inteiro para acima 
de 7 digitos
 
 
   Boa tarde pessoal,
 
   Estou com dificuldades em converter numeros hexadecimais grandes 
em 
   decimais.
 
   todas as funcoes que peguei na net e que fiz quando tem mais de 7 
   digitos nao funciona, verifico se esta certo pela calculadora do 
   windows.
 
   alguem pode me ajudar estou precisando muito dessa funcao
 
   exemplo de uma funcao que peguei aqui no grupo e que nao 
funcionou 
   com 
   o seguinte numero hexadecimal C5E57F15
 
   o resultado que a funcao retorna e: -974815467
   quando a conversao correta e: 3320151829
 
   Um forte abraco a todos
   Eduardo
 
   function TForm1.HexToInt(const HexStr: string): longint;
   var iNdx: integer;
   cTmp: Char;
 
   begin
   Result := 0;
   for iNdx := 1 to Length(HexStr) do
   begin
   cTmp := HexStr[iNdx];
   case cTmp of
   '0'..'9': Result := 16 * Result + (Ord(cTmp) - $30);
   'A'..'F': Result := 16 * Result + (Ord(cTmp) - $37);
   'a'..'f': Result := 16 * Result + (Ord(cTmp) - $57);
   else
   raise EConvertError.Create('Illegal character in hex string');
   end;
   end;
   end;
 
 
 

 
   __ Informação do NOD32 IMON 2486 (20070827) __
 
   Esta mensagem foi verificada pelo NOD32 sistema antivírus
   http://www.eset.com.br
 
 
 [As partes desta mensagem que não continham texto foram removidas]