Res: [delphi-br] Problemas com MySQL 5.1 e Delphi 2010

2010-08-27 Por tôpico Lucas Eduardo Barao Neves
O problema foi resolvido. Deletei os campos no mySQL e criei novamente. Depois 
exclui os componentes MyQuery e MyDataSource do DataModule, adicionei de novo e 
passou a funcionar...

Vai entender...





De: Alan ricardo Souza 
Para: delphi-br@yahoogrupos.com.br
Enviadas: Quinta-feira, 26 de Agosto de 2010 17:06:01
Assunto: Re: [delphi-br] Problemas com MySQL 5.1 e Delphi 2010

   
Boa tarde,
 
Ao invés de colocar a virgula no dbedit tente colocar no displayformat do 
clientdataset (obs cito o clientdataset mas o mydac tambem da por uso o corelab 
da devart) que vc nescessita pois normalmente campo decimal é somente colocar a 
mascara no display format ex(###,##0.00).

--- Em qui, 26/8/10, Eduardo Silva dos Santos  escreveu:

De: Eduardo Silva dos Santos 
Assunto: Re: [delphi-br] Problemas com MySQL 5.1 e Delphi 2010
Para: delphi-br@yahoogrupos.com.br
Data: Quinta-feira, 26 de Agosto de 2010, 12:14

Lucas, não uso DbEdit mais vou fazer um teste aqui. Qual versão do MyDAC
você ta usando?

Att,
...
Eduardo Silva dos Santos
DRD SISTEMAS
(27) 3218-4201
(27) 9961-7095
MSN: eduardo@gmail.com
Site: http://www.drdsistemas.com.br/
...

Em 26 de agosto de 2010 08:33, Lucas Eduardo Barao Neves <
lucas_del...@yahoo.com.br> escreveu:

>
>
> Bom dia pessoal.
>
> Estou com um problema com campos do tipo float e DBEdit no Delphi 2010 com
> MySQL5.1.
>
> O problema é o seguinte: crio meu campo no MySQL como float de 16,2. Na
> aplicação coloco um dbedit e quando tento preenchê-lo colocando vírgula
> como
> separador decimal ele dá o seguinte erro:
>
> ---
> Project raised exception class EDatabaseError with message ''1,25' is not a
>
> valid floating point value for field 'Valor Gasolina''.
> ---
>
> Se eu apagar o valor e digitar ponto como separador, por ex. 1.25, ele não
> aceita, aliás, o dbedit nem deixa eu digitar o '.', aceitando somente a
> vírgula.
>
> Alguém saberia por que isso acontece e como posso resolver?
>
> Para referência, estou usando os componentes MyDAC.
>
> Grato a todos,
>
> Lucas Neves
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>

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



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

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


 


  

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



Res: [delphi-br] Problemas com MySQL 5.1 e Delphi 2010

2010-08-27 Por tôpico Lucas Eduardo Barao Neves
Bom dia, Alan, já tentei isso também e ainda assim não dá certo.

Lucas






De: Alan ricardo Souza 
Para: delphi-br@yahoogrupos.com.br
Enviadas: Quinta-feira, 26 de Agosto de 2010 17:06:01
Assunto: Re: [delphi-br] Problemas com MySQL 5.1 e Delphi 2010

   
Boa tarde,
 
Ao invés de colocar a virgula no dbedit tente colocar no displayformat do 
clientdataset (obs cito o clientdataset mas o mydac tambem da por uso o corelab 
da devart) que vc nescessita pois normalmente campo decimal é somente colocar a 
mascara no display format ex(###,##0.00).

--- Em qui, 26/8/10, Eduardo Silva dos Santos  escreveu:

De: Eduardo Silva dos Santos 
Assunto: Re: [delphi-br] Problemas com MySQL 5.1 e Delphi 2010
Para: delphi-br@yahoogrupos.com.br
Data: Quinta-feira, 26 de Agosto de 2010, 12:14

Lucas, não uso DbEdit mais vou fazer um teste aqui. Qual versão do MyDAC
você ta usando?

Att,
...
Eduardo Silva dos Santos
DRD SISTEMAS
(27) 3218-4201
(27) 9961-7095
MSN: eduardo@gmail.com
Site: http://www.drdsistemas.com.br/
...

Em 26 de agosto de 2010 08:33, Lucas Eduardo Barao Neves <
lucas_del...@yahoo.com.br> escreveu:

>
>
> Bom dia pessoal.
>
> Estou com um problema com campos do tipo float e DBEdit no Delphi 2010 com
> MySQL5.1.
>
> O problema é o seguinte: crio meu campo no MySQL como float de 16,2. Na
> aplicação coloco um dbedit e quando tento preenchê-lo colocando vírgula
> como
> separador decimal ele dá o seguinte erro:
>
> ---
> Project raised exception class EDatabaseError with message ''1,25' is not a
>
> valid floating point value for field 'Valor Gasolina''.
> ---
>
> Se eu apagar o valor e digitar ponto como separador, por ex. 1.25, ele não
> aceita, aliás, o dbedit nem deixa eu digitar o '.', aceitando somente a
> vírgula.
>
> Alguém saberia por que isso acontece e como posso resolver?
>
> Para referência, estou usando os componentes MyDAC.
>
> Grato a todos,
>
> Lucas Neves
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>

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



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

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


 


  

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



Res: [delphi-br] Problemas com MySQL 5.1 e Delphi 2010

2010-08-26 Por tôpico Lucas Eduardo Barao Neves
Eu não queria mudar uma configuração regional, pelo menos em nível de SO... 
usuário sabe como é... se muda a cor da grama, ele morre de fome... compensa 
encher a tela de edits e tratar dentro da aplicação, hehehehe. Mas vou tentar 
sua segunda dica. Obrigado.






De: Alisson 
Para: delphi-br@yahoogrupos.com.br
Enviadas: Quinta-feira, 26 de Agosto de 2010 9:58:59
Assunto: Re: [delphi-br] Problemas com MySQL 5.1 e Delphi 2010

  
Isso está parecendo erro de configuraçãode configurações regionais o caracter 
para valor decimal. No painel de controle-configurações regionais e estiver 
configurado com ".", mude para ",". Você pode fazer essa mudança no seu 
aplicatico colocando na seção Initialization :DecimalSeparator := ',';

- Original Message ----- 
From: Lucas Eduardo Barao Neves 
To: delphi-br@yahoogrupos.com.br 
Sent: Thursday, August 26, 2010 8:33 AM
Subject: [delphi-br] Problemas com MySQL 5.1 e Delphi 2010

Bom dia pessoal.

Estou com um problema com campos do tipo float e DBEdit no Delphi 2010 com 
MySQL5.1.

O problema é o seguinte: crio meu campo no MySQL como float de 16,2. Na 
aplicação coloco um dbedit e quando tento preenchê-lo colocando vírgula como 
separador decimal ele dá o seguinte erro:

---
Project raised exception class EDatabaseError with message ''1,25' is not a 
valid floating point value for field 'Valor Gasolina''.
---

Se eu apagar o valor e digitar ponto como separador, por ex. 1.25, ele não 
aceita, aliás, o dbedit nem deixa eu digitar o '.', aceitando somente a vírgula.

Alguém saberia por que isso acontece e como posso resolver?

Para referência, estou usando os componentes MyDAC.

Grato a todos,

Lucas Neves

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


 


  

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



[delphi-br] Monitorar execução de programas

2010-08-05 Por tôpico Lucas Eduardo Barao Neves
Bom dia a todos,

Estou desenvolvendo uma aplicação que possui o seguinte recurso: o usuário tem 
uma lista dos programas instalados no computador. Para os programas que ele 
seleciona, minha aplicação deverá monitorá-la e quando a mesma for aberta, sua 
execução deverá ser pausada, ou, uma tela da minha aplicação será aberta e 
apenas após o fechamento dela, a aplicação que ele chamou é liberada.

Meu problema está sendo quando o usuário chama algum programa fora da minha 
aplicação. Eu deveria ter um serviço rodando que monitorasse isso.

Alguém saberia me informar como fazê-lo?

Desde já agradeço.

Lucas



  

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



[delphi-br] Problema MySQL 5 e Zeos 7

2010-06-07 Por tôpico Lucas Eduardo Barao Neves
Bom dia a todos, estou com um problema muito chato com MySQL 5 e ZeosLib 7

Quando eu estou em ambiente de desenvolvimento e tento abrir o componente 
ZConnection eu recebo a seguinte mensagem de erro:

SQL Error: Client does not support authentication protocol requested by server; 
consider upgrading MySQL client.

O protocolo MySql 5 existe na listagem do componente ZConnection, então não 
creio que esse seja o problema, além disso, quando eu executo a aplicação, tudo 
funciona corretamente, ou seja, o problema ocorre apenas em design time.

Reparei no seguinte: o projeto executa normalmente quando coloco o arquivo 
libmySQL.dll na pasta do executável, tanto que fiz testes com aplicações 
criadas do zero e todas elas abriram normalmente, porém todas elas deram o erro 
citado acima quando o Connected do ZConnection foi mudado para True "na mão".

Isso é muito chato pois quando preciso utilizar propriedades como MasterFields 
ou mesmo definir nomes dos campos dentro do FieldList dos compoentes Query. não 
consigo, preciso colocar tudo em código, o que é voltar no tempo.

Vocês tiveram algum problema parecido com isso e tem alguma dica para me dar? 
Esse erro está atrapalhando demais meus prazos, hehehehe.

Obrigado a todos.

Lucas Neves


  

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



[delphi-br] Problemas com BDE em windows vista 64

2008-11-07 Por tôpico Lucas Eduardo Barao Neves
Boa tarde, pessoal,

Estamos com um problema muito chato aqui na empresa. Dois clientes compraram 
notebook ja com tecnologia de 64bit e esse maldito windows vista 64. Depois de 
instalar, ao inicializar o BDE ele da um erro dizendo que nao encontra a o 
arquivo de configuracao e usara a config padrao. Tentamos varias coisas, mexer 
no registro, mudar arquivos de nada.

Voces ja tiveram esse problema? Sabem como resolver? Lembrando que eles usam os 
notes em rede com dominio.

Muito obrigado desde ja!

Lucas Neves



  Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

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



RE: [delphi-br] Lentidao com ClientDataset

2008-07-04 Por tôpico Lucas Eduardo Barao Neves
Bruno, quando voce menciona Transacoes Monitoradas, voce quer dizer no famoso 
dbxConnection.StartTransacation?

Obrigado mais uma vez!

--- Em sex, 4/7/08, Bruno Lichot <[EMAIL PROTECTED]> escreveu:
De: Bruno Lichot <[EMAIL PROTECTED]>
Assunto: RE: [delphi-br] Lentidao com ClientDataset
Para: "delphi-br@yahoogrupos.com.br" 
Data: Sexta-feira, 4 de Julho de 2008, 15:41











Então, mas foi como te falei, operações em lotes, não use o 
ClientDataSet para inclui, alterar e excluir. Faça através da montagem dinâmica 
de sqls e use o método executedirect do sqlconnection para isso, sempre dentro 
de transações monitoradas.





Desta forma ficará ainda mais rápido e sem nenhum problema.





Abs





BL





From: [EMAIL PROTECTED] os.com.br [mailto:[EMAIL PROTECTED] os.com.br] On 
Behalf Of Lucas Eduardo Barao Neves


Sent: sexta-feira, 4 de julho de 2008 13:46


To: [EMAIL PROTECTED] os.com.br


Subject: RE: [delphi-br] Lentidao com ClientDataset








Bruno, muito obrigado! O processo ficou absurdamente mais rapido, mas ainda tem 
um problema:





Eu estou mandando o ApplyUpdates a cada 3000 registros e ainda assim, mais pro 
final do processo ele me retorna o erro "SQLDA error or incorrect version / 
types of variables", coisa assim. Ja verifiquei e nao e inconsistencia nos 
dados. Isso acontecia muito quando eu usava close/open toda hora.





Alguma sugestao?





Obrigado





--- Em qua, 2/7/08, Bruno Lichot mailto:bruno. 
lichot%40codegea r.com>> escreveu:


De: Bruno Lichot mailto:bruno. lichot%40codegea 
r.com>>


Assunto: RE: [delphi-br] Lentidao com ClientDataset


Para: "[EMAIL PROTECTED] os.com.br<mailto:delphi- br%40yahoogrupos .com.br>" 
<[EMAIL PROTECTED] os.com.br<mailto:delphi- br%40yahoogrupos .com.br>>


Data: Quarta-feira, 2 de Julho de 2008, 11:28





Salve Lucas,





É o seguinte.





Para fazer estes processamentos em lotes o ideal é ler os dados e navegar por 
eles com clientdatasets mesmo. Só que para navegação não use locate, use setkey 
com índices dinâmicos em memória no CDS que é estupidamente rápido. No meu 
primeiro exemplo do meu link de downloads gratuitos (HTTP://cc.codegear. 
com/author/ 795118) tem uma aplicações sobre recursos do ClientDataSet que 
implementa em um dos exemplos o setkey. Em tempo, estarei no FireBird 
Developers Day – FDD – dia 19/07 (WWW.firebirddevelo persday.com. br) fazendo 
uma palestra sobre estes e outros recursos.





Para manipular os dados, ou seja fazer inserts, deletes e updates dos 
registros, o melhor a se fazer e montar dinamicamente os comandos SQL e 
executá-los sempre dentro de uma transação monitorada usando o método 
ExecuteDirect do SQLConnection. No mesmo exemplo que indiquei na aplicação 
servidora, tem uma função na classe principal chamada incluipedidos que faz 
algo parecido desta forma que expliquei.





Faça o processamento em lote separado por tabelas e para cada um deles abra uma 
transação monitorada, processe o lote e feche a transação.





Desta forma ficará rápido o processamento e não trará problemas para o seu 
banco.





Dicas:





Tenha total controle das conexões que você utilizar, bem como das transações 
monitoradas.





Cuidado para não deixar objetos instanciados desnecessariamente, feche sempre 
os datasets quando não utilizar mais.





Verifique o tamanho de buffer em memória do FireBird para que não incorra no 
erro de ter um banco de 100 mb e um espaço em memória de 12 mb. O seu espaço em 
memória deve ser relativo ao tamanho do seu banco e limitado ao que você tem de 
RAM disponível e ao que outros recursos no Server também podem consumir. Ou 
seja não tenha de mais, mas também não tenha de menos.





Abraços,





BL





From: [EMAIL PROTECTED] os.com.br [mailto:delphi- [EMAIL PROTECTED] os.com.br] 
On Behalf Of Lucas Eduardo Barao Neves





Sent: quarta-feira, 2 de julho de 2008 10:33





To: [EMAIL PROTECTED] os.com.br





Subject: [delphi-br] Lentidao com ClientDataset





Bom dia pessoal, gostaria de uma ajuda de voces,





Estou trabalhando em um sistema de importacao de dados via arquivo TXT. Ele=





tem mais ou menos a seguinte estrutura:





Arquivo: +- 56000 linhas





Ele atualizara da seguinte forma:





Tabela 1 - 85000 registros





Para cada sequencial encontrado / criado, ele atualizara uma tabela 2 =3D 1=





 registros





Para cada um da tabela 2 ele atualizara ou fara insercoes em uma tabela 3 =





=3D 900 registroa





A tabela 3 fara a mesma coisa na tabela 4: 56000 registros (todos os regist=





ros do TXT)





Ja tentei das seguintes formas:





Somente com queries, uma para selecao, uma para insercao, uma para alteraca=





o;





Somente com queries, somente uma para selecao, insercao e alteracao,





Somente uma query com ClientDataSet para selecao, insercao e alteracao.





Essas tres primeiras tentativas geravam tantos acessos ao banco de d

RE: [delphi-br] Lentidao com ClientDataset

2008-07-04 Por tôpico Lucas Eduardo Barao Neves
Bruno, muito obrigado! O processo ficou absurdamente mais rapido, mas ainda tem 
um problema:

Eu estou mandando o ApplyUpdates a cada 3000 registros e ainda assim, mais pro 
final do processo ele me retorna o erro "SQLDA error or incorrect version / 
types of variables", coisa assim. Ja verifiquei e nao e inconsistencia nos 
dados. Isso acontecia muito quando eu usava close/open toda hora. 

Alguma sugestao?

Obrigado

--- Em qua, 2/7/08, Bruno Lichot <[EMAIL PROTECTED]> escreveu:
De: Bruno Lichot <[EMAIL PROTECTED]>
Assunto: RE: [delphi-br] Lentidao com ClientDataset
Para: "delphi-br@yahoogrupos.com.br" 
Data: Quarta-feira, 2 de Julho de 2008, 11:28











Salve Lucas,





É o seguinte.





Para fazer estes processamentos em lotes o ideal é ler os dados e navegar por 
eles com clientdatasets mesmo. Só que para navegação não use locate, use setkey 
com índices dinâmicos em memória no CDS que é estupidamente rápido. No meu 
primeiro exemplo do meu link de downloads gratuitos (HTTP://cc.codegear. 
com/author/ 795118) tem uma aplicações sobre recursos do ClientDataSet que 
implementa em um dos exemplos o setkey. Em tempo, estarei no FireBird 
Developers Day – FDD – dia 19/07 (WWW.firebirddevelo persday.com. br) fazendo 
uma palestra sobre estes e outros recursos.





Para manipular os dados, ou seja fazer inserts, deletes e updates dos 
registros, o melhor a se fazer e montar dinamicamente os comandos SQL e 
executá-los sempre dentro de uma transação monitorada usando o método 
ExecuteDirect do SQLConnection. No mesmo exemplo que indiquei na aplicação 
servidora, tem uma função na classe principal chamada incluipedidos que faz 
algo parecido desta forma que expliquei.





Faça o processamento em lote separado por tabelas e para cada um deles abra uma 
transação monitorada, processe o lote e feche a transação.





Desta forma ficará rápido o processamento e não trará problemas para o seu 
banco.





Dicas:


Tenha total controle das conexões que você utilizar, bem como das transações 
monitoradas.


Cuidado para não deixar objetos instanciados desnecessariamente, feche sempre 
os datasets quando não utilizar mais.


Verifique o tamanho de buffer em memória do FireBird para que não incorra no 
erro de ter um banco de 100 mb e um espaço em memória de 12 mb. O seu espaço em 
memória deve ser relativo ao tamanho do seu banco e limitado ao que você tem de 
RAM disponível e ao que outros recursos no Server também podem consumir. Ou 
seja não tenha de mais, mas também não tenha de menos.





Abraços,





BL





From: [EMAIL PROTECTED] os.com.br [mailto:[EMAIL PROTECTED] os.com.br] On 
Behalf Of Lucas Eduardo Barao Neves


Sent: quarta-feira, 2 de julho de 2008 10:33


To: [EMAIL PROTECTED] os.com.br


Subject: [delphi-br] Lentidao com ClientDataset








Bom dia pessoal, gostaria de uma ajuda de voces,





Estou trabalhando em um sistema de importacao de dados via arquivo TXT. Ele=


tem mais ou menos a seguinte estrutura:





Arquivo: +- 56000 linhas


Ele atualizara da seguinte forma:





Tabela 1 - 85000 registros





Para cada sequencial encontrado / criado, ele atualizara uma tabela 2 =3D 1=


 registros


Para cada um da tabela 2 ele atualizara ou fara insercoes em uma tabela 3 =


=3D 900 registroa


A tabela 3 fara a mesma coisa na tabela 4: 56000 registros (todos os regist=


ros do TXT)





Ja tentei das seguintes formas:


Somente com queries, uma para selecao, uma para insercao, uma para alteraca=


o;


Somente com queries, somente uma para selecao, insercao e alteracao,


Somente uma query com ClientDataSet para selecao, insercao e alteracao.





Essas tres primeiras tentativas geravam tantos acessos ao banco de dados qu=


e chegava uma hora que dava um overflow dentro do banco (o famoso e misteri=


oso erro SQLDA);





Sendo assim tentei de outra forma:





Um ClientDataSet para cada tabela da situacao informada, todos eles com sel=


ect * e carregamento na memoria, procura pelo comando Locate.





Dessa forma ate funciona sem dar erro no banco, porem ele esta a uma veloci=


dade de 1 a 2 registros por segundo!





Das outras formas eu ate conseguia uma marca maior, o problema e o erro que=


acontece apos tantas requisicoes com o banco.





Estou utilizando Delphi 6, dbExpress e Firebird 2.0. Sei que e uma mistura =


assassina, mas e so o que tem aqui na empresa.





Alguem tem sugestoes de o que eu posso fazer para melhorar a performance ne=


sse sentido? O processo da maneira que esta demora uma noite inteira para t=


erminar, sendo que no sistema antigo deles, a mesma rotina feita em Clipper=


e DBF levava em torno de 30 minutos.





Agradeco antecipadamente!





Lucas Neves





Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua cara 
@ymail.com ou @rocketmail. com.


http://br.new. mail.yahoo. com/addresses





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


[delphi-br] Lentidao com ClientDataset

2008-07-02 Por tôpico Lucas Eduardo Barao Neves
Bom dia pessoal, gostaria de uma ajuda de voces,

Estou trabalhando em um sistema de importacao de dados via arquivo TXT. Ele=
 tem mais ou menos a seguinte estrutura:

Arquivo: +- 56000 linhas
Ele atualizara da seguinte forma:

Tabela 1 - 85000 registros

Para cada sequencial encontrado / criado, ele atualizara uma tabela 2 =3D 1=
 registros
Para cada um da tabela 2 ele atualizara ou fara insercoes em uma tabela 3 =
=3D 900 registroa
A tabela 3 fara a mesma coisa na tabela 4: 56000 registros (todos os regist=
ros do TXT)

Ja tentei das seguintes formas:
Somente com queries, uma para selecao, uma para insercao, uma para alteraca=
o;
Somente com queries, somente uma para selecao, insercao e alteracao,
Somente uma query com ClientDataSet para selecao, insercao e alteracao.

Essas tres primeiras tentativas geravam tantos acessos ao banco de dados qu=
e chegava uma hora que dava um overflow dentro do banco (o famoso e misteri=
oso erro SQLDA);

Sendo assim tentei de outra forma:

Um ClientDataSet para cada tabela da situacao informada, todos eles com sel=
ect * e carregamento na memoria, procura pelo comando Locate.

Dessa forma ate funciona sem dar erro no banco, porem ele esta a uma veloci=
dade de 1 a 2 registros por segundo!

Das outras formas eu ate conseguia uma marca maior, o problema e o erro que=
 acontece apos tantas requisicoes com o banco.

Estou utilizando Delphi 6, dbExpress e Firebird 2.0. Sei que e uma mistura =
assassina, mas e so o que tem aqui na empresa.

Alguem tem sugestoes de o que eu posso fazer para melhorar a performance ne=
sse sentido? O processo da maneira que esta demora uma noite inteira para t=
erminar, sendo que no sistema antigo deles, a mesma rotina feita em Clipper=
 e DBF levava em torno de 30 minutos.

Agradeco antecipadamente!

Lucas Neves


  Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

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