Jump to content
Fórum Script Brasil

Daniel Sanches

Membros
  • Content Count

    127
  • Joined

  • Last visited

Community Reputation

0 Neutro

About Daniel Sanches

  1. tente isso: vBanco : String; IniFileName : TIniFile; begin IniFileName := TIniFile.Create(ExtractFilePath(ParamStr(0))+FileName); vBanco := Trim(IniFileName.ReadString('acesso','BancoRemto','')); Dirlocal := Trim(IniFileName.ReadString('acesso','PastasRemto','')); frmPrincipal.Edit1.text := Dirlocal; Dirtrabalho := (ExtractFilePath(Application.ExeName)); Conection.ConnectionString := vBanco; // não sei qual connection está usando, aki você tenta conecta-lo. Ex: connection.Connect; if not COMPONENTE_DE_CONEXÃO.connected then //cheque se seu componente conseguiu conectar... begin vBanco := Trim(IniFileName.ReadString('acesso','banco','')); Dirlocal := Trim(IniFileName.ReadString('acesso','PastasLocais','')); frmPrincipal.Edit1.text := Dirlocal; Dirtrabalho := (ExtractFilePath(Application.ExeName)); end; IniFileName.Free; end;
  2. como você está fazendo para importar os dados ?? está usando algum componente ??? está fazendo um while eof na tabela e importando 1 a 1 ?? tente usar algo assim: 'insert into TABELA1 (CAMPO1,CAMPO2,CAMPO3) values(select CAMPO1,CAMPO2,CAMPO3 from TABELA2)' colocando os campos das tabelas 1 e 2 nas respectivas ordens ...
  3. tentei dar uma reestruturada no seu código... substitua a linha que comentei pelo comando de conexão do seu Connection... vBanco : String; IniFileName : TIniFile; begin IniFileName := TIniFile.Create(ExtractFilePath(ParamStr(0))+FileName); Try vBanco := Trim(IniFileName.ReadString('acesso','BancoRemto','')); Dirlocal := Trim(IniFileName.ReadString('acesso','PastasRemto','')); frmPrincipal.Edit1.text := Dirlocal; Dirtrabalho := (ExtractFilePath(Application.ExeName)); Conection.ConnectionString := vBanco; // não sei qual connection está usando, aki você tenta conecta-lo. Ex: connection.Connect; except begin Try vBanco := Trim(IniFileName.ReadString('acesso','banco','')); Dirlocal := Trim(IniFileName.ReadString('acesso','PastasLocais','')); frmPrincipal.Edit1.text := Dirlocal; Dirtrabalho := (ExtractFilePath(Application.ExeName)); Finally end; end; end; IniFileName.Free; end;
  4. cola aki o código da unit do form que fecha sozinho pra gente dar uma olhada ...
  5. se for pra copiar tudo de uma tabela para outra idêntica, você pode tentar com SQL: insert into TABELA1 (select * from TABELA2) já não sei se a velocidade será melhor ...
  6. só para ficar registrado, há algum tempo atrás tive a mesma dúvida do nosso colega e cheguei na conclusão que aprender uma nova linguagem (como php por exemplo) seria inviável ... após diversas consultas na internet, optei por hospedar meu banco MYSQL no provedor UOL, onde conto com um excelente grupo de apoio e nunca tive problemas, além do preço ser bem em conta (hoje 02/06/2010 na faixa de R$ 14,90 mês para 5GB de espaço para banco de dados, sendo ilimitado o número de bancos) ... utilizo diversos sistemas on-line e a velocidade é muuuito boa (utilizo conexão de apenas 1mb)... é lógico que a forma que o sistema é desenvolvido influencia muito na velocidade. para quem nunca hospedou nenhum banco de dados em um provedor, é realmente difícil encontrar algum tutorial completo sobre o assundo na net... mas fica aki registrado minha opnião. abraço !!
  7. você pode fazer assim: procedure Tform1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin if data.query.RecNo = 4 then //se for o item 4 ... DBGrid1.Canvas.Font.Color:= ClRed; DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State); end;
  8. não entendi muito bem o que você deseja, mas para você fazer uma pergunta com 3 opções, você poderia fazer algo assim: case MessageDlg('Pergunta que você quiser.',mtConfirmation,[mbYes,mbNo,mbCancel],0) of 2: begin showmessage('Selecionado botão Cancela'); ...comandos... end; 6: begin showmessage('Selecionado botão Sim'); ...comandos... end; 7: begin showmessage('Selecionado botão Não'); ...comandos... end; end; obs: declare Dialogs na cláusula uses... abraços !!!
  9. olha, da forma que você usou, era pra funcionar, pois todos os comandos que estão entre o try...except, serão testados e caso dê alguma exceção, vao para os comandos após o except. tente fazer um teste: try fdados.clientdataset.Post; fdados.clientdataset.ApplyUpdates(0); except on e: Exception do showmessage('Erro ao gravar o registro.'+#13+E.Message); end; com o código "except on E: Exception", você trata qualquer tipo de exceção ... talves com o EDataBaseError você não esteja conseguindo capturar o erro ... sempre utilizei o código acima com sucesso ... abraços !!!
  10. não entendi bem a pergunta, mas seria você conseguir ler os dados selecionados ??? se for isso, você utiliza os dados selecionados na tabela que está linkada com o DbGrid ... tipo: Tabela1.FieldByName('CAMPO').AsString, assim, você acessa o campo CAMPO selecionado na DBGrid ... se não for bem isso, post aki especificando melhor a dúvida ... abraços !!!
  11. para selecionar a linha toda, mude a em Options do DbGrid a opção dbRowSelect = True... abraços !!!
  12. olha, tente descobrir exatamente onde e quando está dando o erro, para filtrar as possibilidades. uma vez tive um problema idêntico: eu usava todo o sistema normalmente, e de repente a tal mensagem: Acess Violation; descobri que o erro ocorria quando eu passava o mouse sobre determinados botões. eu utilizava um componente para modificação do hint dos botões e esse componente estava com pau.... simplesmente troquei o componente e recompilei... problema resolvido... abraços !!!
  13. veja se estes links te ajudam: http://scriptbrasil.com.br/forum/index.php...94&hl=tecla http://scriptbrasil.com.br/forum/index.php...90&hl=tecla abraços !!!
  14. uma dica: sempre que quiser ordenar datas, para facilitar, utilize o formato aaaammdd, assim, não precisa ficar convertendo para classificar... abraços !!!
×
×
  • Create New...