Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Ricardo M. Neitzer

[Resolvido] Pesquisa multiformularios

Recommended Posts

Pesquisei e não achei nada sobre o que preciso.

 

 

Preciso criar uma consulta, onde eu possa jogar o resultado para vários formularios, porem esses formularios não estão abertos.

 

explicando melhor

 

tenho o cadastro de fornecedores, com o campo fornecedor, tenho também a tela de compras de mercadorias que também tem o campo fornecedor, gostaria de criar uma pesquisa onde se eu estivesse no cadastro de fornecedores e pedisse para pesquisar abrisse o formulario de pesquisa e ao selecionar o dado me mostrasse o resultado na tela de cadastro de fornecedores, e também gostaria de aproveitar o mesmo formulario de pesquisa para a tela de compras.

 

Ccomo fazer para o delphi saber qual formulario chamou a pesquisa.

 

 

Grato.

 

Ricardo Neitzer

Compartilhar este post


Link para o post
Compartilhar em outros sites

Daniel, não sei se estou usando de forma errada, mas da erro de acesso a memoria.

 

estou usando da forma abaixo:

 

if FRMManCtPagar.showing then

FRMIncpagar.Edit2.Text:=IntToStr(DMGefin.CDSFornecedorcdigo.AsInteger);

if FRMaltpagar.showing then

FRMaltpagar.Edit3.Text:=IntToStr(DMGefin.CDSFornecedorcdigo.AsInteger);

if FRMIncpagar.showing then

FRMIncpagar.Edit2.Text:=IntToStr(DMGefin.CDSFornecedorcdigo.AsInteger);

 

mas irei pesquisar sobre o sender

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você criou os forms antes de tentar jogar valor nos edits?

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual a mensagem de erro que aparece e qual é o trecho do código em que ele ocorre? Debugou para ver onde ocorre o erro?

Compartilhar este post


Link para o post
Compartilhar em outros sites

no meu formulario tem um grid, e coloquei para dar dois cliques para retornar ao form requisitante; segue o codigo:

 

procedure TFRMPesqFornecedor.DBGrid1DblClick(Sender: TObject);
begin
if FRMManCtPagar.showing then
   begin
	FRMPesqFornecedor.close;
	FRMManCtPagar.Edit1.Text:=DMGefin.CDSFornecedornome.AsString;
	FRMPesqFornecedor.Edit1.Text:='';
   end
else if FRMaltpagar.showing then
   begin
	FRMPesqFornecedor.close;
	FRMaltpagar.Edit3.Text:=IntToStr(DMGefin.CDSFornecedorcdigo.AsInteger);
	FRMPesqFornecedor.Edit1.Text:='';
   end
else if FRMIncpagar.showing then
   begin
	FRMPesqFornecedor.close;
	FRMIncpagar.Edit3.Text:=IntToStr(DMGefin.CDSFornecedorcdigo.AsInteger);
	FRMPesqFornecedor.Edit1.Text:='';	
   end
end;

quando passa pelo segundo else if ele da erro, o erro é: access violation at adress 005122A9 in module gefin.exe read of address 000001DA.

 

 

Grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Resolvido pessoal.

Irei deixar aqui a solução para que se alguem estiver precisando, usar o mesmo

 

 

no meu formulario principal criei um label invisivel, onde quando aperto a tecla de pesquisa ele joga o nome do formulario para o label, e na tela de pesquisa eu faço a verificação do nome que esta no label e jogo a resposta para o edit do formulario que esta no label.

segue o codigo para exemplo.

 

 

if FRMMenu.Label1.Caption='FRMaltpagar' then

begin

FRMaltpagar.Edit2.Text:=IntToStr(DMGefin.CDSFilialfilial.AsInteger);

FRMaltpagar.Edit2.SetFocus;

FRMPesqFilial.Close;

end;

if FRMMenu.Label1.Caption='FRMIncpagar' then

begin

FRMIncpagar.Edit2.Text:=IntToStr(DMGefin.CDSFilialfilial.AsInteger);

FRMIncpagar.Edit2.SetFocus;

FRMPesqFilial.Close;

end

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.