[delphi-br] Ajuda com Filtro para abrir formulario..

2010-01-15 Thread dssmoura
Boa noite senhores, me desculpe fazer duas perguntas mas eu estou precisando de 
uma grande ajuda,

1- Tenho uma aplicação de filtro de agenda medica onde tem um form inicial onde 
e informdo o nome do medico 

através de um dbedit onde e informado o nome do medico e um Edit que e 
informado a data, e um botão que chama 

um formulário com um grid com as consultas do dia, após chamar a primeira vez o 
grid vem em branco apos fechar 

e chamar a segunda vez pelo botão ele abre com a consulta, o codigo do botão e 
o seguinte:

procedure TFrmCons.SpeedButton1Click(Sender: TObject);
Var
EdtMedico :Integer;
EdtData:String;
begin
   FrmConsultaMedico.ShowModal;
   FrmConsultaMEdico.ADOQuery1.Close;
   frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtMedico'] 
:=Edmedico.Text;
   frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtData'] := EdData.Text;
   frmConsultaMedico.ADOQuery1.Open; 
end;

2 - Neste mesmo Grid inseri um função no evento OnDbClick, para chamar o 
formulário de Prontuário medico, após 

click duplo ele abre o form com o registro selecionado no grid, mas se fecho o 
formulario e seleciono o 

registro ele abre com o mesmo selecionado anteriormente o código e o seguinte:

procedure TFrmConsultamedico.DBGrid1DblClick(Sender: TObject);
begin
 
DadosMedico.AdConsulta1.Locate('Medico',AdoQuery1.fieldbyname('codigo').asInteger,[]);
 FrmModMedicoConsulta.Showmodal;
end;

Como devo fazer nestes casos ?


Desde já agradeço a atenção de todos.


Danilo Moura







RES: [delphi-br] Ajuda com Filtro para abrir formulario..

2010-01-15 Thread Vitor Yahoo
Opa, tudo certo?

Seguinte, você está chamando o formulário 2 com ShowModal, isso quer dizer
que sistema irá esperar os processos serem executados no formulário 2, para
depois passar pelo código que existe abaixo dele.

Faça assim e deve funcionar ok.

 

Var
EdtMedico :Integer;
EdtData:String;
begin

FrmConsultaMEdico.ADOQuery1.Close;
frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtMedico']
:=Edmedico.Text;
frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtData'] :=
EdData.Text;
frmConsultaMedico.ADOQuery1.Open;
FrmConsultaMedico.ShowModal;

 

Aconselho você a criar parâmetros no formulário 2, para evitar código
manipulando o formulário de outro formulário, por exemplo:

 

No formulário 2:

 

Public

VMedido : Integer;

VData : TDateTime;

 

No FormShow (ou em qualquer outro evento do segundo formulário):

 

FrmConsultaMEdico.ADOQuery1.Close;
frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtMedico'] :=VMedico;
frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtData'] := VData;
frmConsultaMedico.ADOQuery1.Open;

 

No primeiro formulário, o código ficaria reduzido a:


Var
EdtMedico :Integer;
EdtData:String;
begin

FrmConsultaMedico.VMedido := EdtMedido;

FrmConsultaMedico.VData := EdtData; (aqui o edtdata deve seguir um typecast
ou ser do tipo date)

FrmConsultaMedico.ShowModal;


Quanto a segunda duvida:

 

Não existe nenhum tipo de enablecontrols/disablecontrols no
FrmModMedicoConsulta né? Tente fechar e abrir novamente o dataset, caso o
resultado seja positivo poste aqui para que possamos melhorar isso.

 

Até mais.

Vitor.

 

 

  _  

De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em
nome de dssmoura
Enviada em: quinta-feira, 14 de janeiro de 2010 21:36
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] Ajuda com Filtro para abrir formulario..

 

  

Boa noite senhores, me desculpe fazer duas perguntas mas eu estou precisando
de uma grande ajuda,

1- Tenho uma aplicação de filtro de agenda medica onde tem um form inicial
onde e informdo o nome do medico 

através de um dbedit onde e informado o nome do medico e um Edit que e
informado a data, e um botão que chama 

um formulário com um grid com as consultas do dia, após chamar a primeira
vez o grid vem em branco apos fechar 

e chamar a segunda vez pelo botão ele abre com a consulta, o codigo do botão
e o seguinte:

procedure TFrmCons.SpeedButton1Click(Sender: TObject);
Var
EdtMedico :Integer;
EdtData:String;
begin
FrmConsultaMedico.ShowModal;
FrmConsultaMEdico.ADOQuery1.Close;
frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtMedico']
:=Edmedico.Text;
frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtData'] :=
EdData.Text;
frmConsultaMedico.ADOQuery1.Open; 
end;

2 - Neste mesmo Grid inseri um função no evento OnDbClick, para chamar o
formulário de Prontuário medico, após 

click duplo ele abre o form com o registro selecionado no grid, mas se fecho
o formulario e seleciono o 

registro ele abre com o mesmo selecionado anteriormente o código e o
seguinte:

procedure TFrmConsultamedico.DBGrid1DblClick(Sender: TObject);
begin
DadosMedico.AdConsulta1.Locate('Medico',AdoQuery1.fieldbyname('codigo').asIn
teger,[]);
FrmModMedicoConsulta.Showmodal;
end;

Como devo fazer nestes casos ?

Desde já agradeço a atenção de todos.

Danilo Moura





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



Re: RES: [delphi-br] Ajuda com Filtro para abrir formulario..

2010-01-20 Thread dssmoura
Boa noite vitor , seguinte a primeira duvida foi resonvida , pela sua primeira 
sugestão matou o problema, agora quanto ao segundo voce perguntou "Não existe 
nenhum tipo de enablecontrols/disablecontrols.." desculpe minha ignorancia mas 
eu não sei do qeu se trata essas funções, voce disse tambem "ente fechar e 
abrir novamente o dataset" no caso como seria aplicado esta função ?

Obrigado pela atenção.

Danilo Moura






--- Em delphi-br@yahoogrupos.com.br, "Vitor Yahoo"  
escreveu
>
> Opa, tudo certo?
> 
> Seguinte, você está chamando o formulário 2 com ShowModal, isso quer dizer
> que sistema irá esperar os processos serem executados no formulário 2, para
> depois passar pelo código que existe abaixo dele.
> 
> Faça assim e deve funcionar ok.
> 
>  
> 
> Var
> EdtMedico :Integer;
> EdtData:String;
> begin
> 
> FrmConsultaMEdico.ADOQuery1.Close;
> frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtMedico']
> :=Edmedico.Text;
> frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtData'] :=
> EdData.Text;
> frmConsultaMedico.ADOQuery1.Open;
> FrmConsultaMedico.ShowModal;
> 
>  
> 
> Aconselho você a criar parâmetros no formulário 2, para evitar código
> manipulando o formulário de outro formulário, por exemplo:
> 
>  
> 
> No formulário 2:
> 
>  
> 
> Public
> 
> VMedido : Integer;
> 
> VData : TDateTime;
> 
>  
> 
> No FormShow (ou em qualquer outro evento do segundo formulário):
> 
>  
> 
> FrmConsultaMEdico.ADOQuery1.Close;
> frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtMedico'] :=VMedico;
> frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtData'] := VData;
> frmConsultaMedico.ADOQuery1.Open;
> 
>  
> 
> No primeiro formulário, o código ficaria reduzido a:
> 
> 
> Var
> EdtMedico :Integer;
> EdtData:String;
> begin
> 
> FrmConsultaMedico.VMedido := EdtMedido;
> 
> FrmConsultaMedico.VData := EdtData; (aqui o edtdata deve seguir um typecast
> ou ser do tipo date)
> 
> FrmConsultaMedico.ShowModal;
> 
> 
> Quanto a segunda duvida:
> 
>  
> 
> Não existe nenhum tipo de enablecontrols/disablecontrols no
> FrmModMedicoConsulta né? Tente fechar e abrir novamente o dataset, caso o
> resultado seja positivo poste aqui para que possamos melhorar isso.
> 
>  
> 
> Até mais.
> 
> Vitor.
> 
>  
> 
>  
> 
>   _  
> 
> De: delphi-br@yahoogrupos.com.br [mailto:delphi...@yahoogrupos.com.br] Em
> nome de dssmoura
> Enviada em: quinta-feira, 14 de janeiro de 2010 21:36
> Para: delphi-br@yahoogrupos.com.br
> Assunto: [delphi-br] Ajuda com Filtro para abrir formulario..
> 
>  
> 
>   
> 
> Boa noite senhores, me desculpe fazer duas perguntas mas eu estou precisando
> de uma grande ajuda,
> 
> 1- Tenho uma aplicação de filtro de agenda medica onde tem um form inicial
> onde e informdo o nome do medico 
> 
> através de um dbedit onde e informado o nome do medico e um Edit que e
> informado a data, e um botão que chama 
> 
> um formulário com um grid com as consultas do dia, após chamar a primeira
> vez o grid vem em branco apos fechar 
> 
> e chamar a segunda vez pelo botão ele abre com a consulta, o codigo do botão
> e o seguinte:
> 
> procedure TFrmCons.SpeedButton1Click(Sender: TObject);
> Var
> EdtMedico :Integer;
> EdtData:String;
> begin
> FrmConsultaMedico.ShowModal;
> FrmConsultaMEdico.ADOQuery1.Close;
> frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtMedico']
> :=Edmedico.Text;
> frmConsultaMedico.ADOQuery1.Parameters.ParamValues['EdtData'] :=
> EdData.Text;
> frmConsultaMedico.ADOQuery1.Open; 
> end;
> 
> 2 - Neste mesmo Grid inseri um função no evento OnDbClick, para chamar o
> formulário de Prontuário medico, após 
> 
> click duplo ele abre o form com o registro selecionado no grid, mas se fecho
> o formulario e seleciono o 
> 
> registro ele abre com o mesmo selecionado anteriormente o código e o
> seguinte:
> 
> procedure TFrmConsultamedico.DBGrid1DblClick(Sender: TObject);
> begin
> DadosMedico.AdConsulta1.Locate('Medico',AdoQuery1.fieldbyname('codigo').asIn
> teger,[]);
> FrmModMedicoConsulta.Showmodal;
> end;
> 
> Como devo fazer nestes casos ?
> 
> Desde já agradeço a atenção de todos.
> 
> Danilo Moura
> 
> 
> 
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>