Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera, está dando este erro no meu projeto:
/applications/core/interface/imageproxy/imageproxy.php?img=http://img.photobucket.com/albums/v479/ZueRa/erro.jpg&key=6345c244fe51c3ffa32e0e7ed3f5cd0466ad1d32bfaee9427e70c8119d06df29" alt="Imagem Postada" />
o que eu posso ter feito de errado? Não entendi esta mensagem "memória insuficiente para esta operação" lol
viajei :unsure:
Alguma sugestão para resolver o programa?
Porque abrindo o mesmo BD várias vezes?
Mas, o user não sai do programa antes de fechar o BD, coloquei uma restrição enquanto a isso.
O.O
toda vez q você executa o sistema você sobe o serviço do BD...
ao fechar o programa, dá 1 active := false ou connected := false , vai depender o adapter q você ta usando... q deve ser TAble ou Query... entao seta o active := false...
É table o que estou usando =)
como está setado o Database Name do table?
Para o ALIAS cheque.
Aproveitando, eu fiz este código:
procedure TFcadchequep.DBEdit1KeyPress(Sender: TObject; var Key: Char);
begin
If Key= #13 then
begin
With Qconscheque do
begin
Dbedit1.Text:= 'Select '+dbedit1.Text+' from cheque = ';
Disablecontrols;
Close;
Open;
If Isempty then
begin
ShowMessage ('Registro não encontrado');
Dbedit1.Text:= '';
end;
Dbedit1.Text:='';
enablecontrols;
end;
end;
end;Irá abrir também o campo NOME, ENDEREÇO [...].
Mas, quando digito e aperto enter não acontece nada. O que poderá estar errado?
para você nao ter problema de memória, o mais certo é nao ficar conectado no banco o tempo todo... deixe os tables, querys sempre com active false e mude para true somente quando for usar, entende... mude pra true ao abrir 1 form, no clique do botao, no key press...
agora no seu caso você de nao ocorrer nada.... está entrando pelo menos na rotina?
independente disso, tem 1 erro ae ... você está passando 1 sql para 1 dbedit, você tem q passar pra 1 query...
sibstitua isso
Dbedit1.Text:= 'Select '+dbedit1.Text+' from cheque = '
por isso
SQL.Text:= 'Select '+dbedit1.Text+' from cheque = ';
para você nao ter problema de memória, o mais certo é nao ficar conectado no banco o tempo todo... deixe os tables, querys sempre com active false e mude para true somente quando for usar, entende... mude pra true ao abrir 1 form, no clique do botao, no key press...
agora no seu caso você de nao ocorrer nada.... está entrando pelo menos na rotina?
independente disso, tem 1 erro ae ... você está passando 1 sql para 1 dbedit, você tem q passar pra 1 query...
sibstitua isso
Dbedit1.Text:= 'Select '+dbedit1.Text+' from cheque = '
por isso
SQL.Text:= 'Select '+dbedit1.Text+' from cheque = ';
Não posso substituir assim:
SQL.Text:= 'Select '+dbedit1.Text+' from cheque = ';
por
SQL.Text:= 'Select '+dbedit1.Text+' from ALGUM CAMPO = ';
porque aí ele irá procurar exatamente o que eu quero, que no caso é o cpf da pessoa para abrir a table
algo assim:
SQL.Text:= 'Select '+dbedit1.Text+' from cpf_cgc = ';
o erro é
cheque = .... cheque tem q ser igual a alguma coisa
Você tem dado muito Program Reset ao Debugar ou Rodar a sua aplicação???
Normalmente esse erro pode acontecer por causa disso, acontecia muito comigo...
Tente reiniciar o PC quando der esse erro, e evite ao máximo Resetar o programa ou parar a execução do mesmo de forma inadequada, senão ele acaba ficando com rastros na memória.. e ai da esse erro, beleza?
Abraço! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
>
Você tem dado muito Program Reset ao Debugar ou Rodar a sua aplicação???
Normalmente esse erro pode acontecer por causa disso, acontecia muito comigo...
Tente reiniciar o PC quando der esse erro, e evite ao máximo Resetar o programa ou parar a execução do mesmo de forma inadequada, senão ele acaba ficando com rastros na memória.. e ai da esse erro, beleza?
Abraço! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Ah sim, realmente, eu usei muito reset mesmo.
Obrigado.
SQL.Text:= 'select * from cheque where cpf_cgc = ' +DBEdit1.Text;
coloquei o código assim, mas, quando aperto ENTER é a mesma coisa que nada. Não executa o comando de "pesquisa" que eu desejo =/
você está carregando o banco em memória varias vezes(provavelmente este erro aparece depois de varias execuções do seu sistema) e não está liberando, ao encerrar o programa.