Res: [delphi-br] Problemas com MySQL 5.1 e Delphi 2010
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
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
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
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
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
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
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
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
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]