Estou com uma dúvida e bronca que não consigo resolver, sou iniciante em programação, mexo apenas com delphi e pouquíssimos em outras linguagens, enfim, vamos lá.
Meu problema é o seguinte, fiz um programa para uma clínica médica, bem básico, marca consulta, retorno, imprimi prontuário, exames, etc, o programa já está sendo usado, só que estou fazendo uma atualização e estou com problemas para desenvolver, é o seguinte.
Na minha aba relatório, tenho uma função que pega os dados das consultas que estão marcadas e imprimi para o médico ter em mãos as consultas, o recepcionista seleciona pela data desejada (ATUAL) e o sistema busca as consultas normais pela data desejada, enfim, dentro da minha tabela "Marcar_consultas" existe um campo chamado "data" que pelo comando sql faço essa busca, só que nesta mesma tabela "marcar_consultas" existe um campo chamado "data_retorno" que é os pacientes que já vieram de uma consulta, estão em um retorno, então o problema é que eu consiga fazer meu código buscar pelos 2 campos, não só por um. Irei mandar aqui como está meu código.
begin
if CheckBox3.Checked = true then // pesquisa por data
begin// faz a pesquisa pela data solicitada
ADOQuery1_Consultas_Marcadas.Close;
ADOQuery1_Consultas_Marcadas.SQL.Clear;
ADOQuery1_Consultas_Marcadas.SQL.Add(' Select *');
ADOQuery1_Consultas_Marcadas.SQL.Add(' From marcar_consultas where data between :h1 and :h2');
ADOQuery1_Consultas_Marcadas.SQL.Add ('and Nome_Convenio like ' + quotedstr('%' +edit5.Text+'%')); // pesquisa por conv
ADOQuery1_Consultas_Marcadas.SQL.Add ('and Nome like ' + quotedstr('%' +edit4.Text+'%')); // pesquisa por conv
ADOQuery1_Consultas_Marcadas.SQL.Add ('and `Consulta/Retorno` like ' + quotedstr('%' +edit8.Text+'%')); // consulta retorno ou fechada
ADOQuery1_Consultas_Marcadas.SQL.Add ('and `Consulta/Retorno` like ' + quotedstr('%' +edit9.Text+'%')); // consulta retorno ou fechada
ADOQuery1_Consultas_Marcadas.SQL.Add ('ORDER BY hora ASC');
ADOQuery1_Consultas_Marcadas.Parameters[0].Value:=ConverteData(DateTimePicker3.DateTime);
ADOQuery1_Consultas_Marcadas.Parameters[1].Value:=ConverteData(DateTimePicker4.DateTime);
begin
if CheckBox10.Checked = true then // pesquisa por data_retorno
begin// faz a pesquisa pela data solicitada
//if (Edit1.Text<>'') and(Edit4.Text<>'')then
ADOQuery1_Consultas_Marcadas.Close;
ADOQuery1_Consultas_Marcadas.SQL.Clear;
ADOQuery1_Consultas_Marcadas.SQL.Add(' Select *');
ADOQuery1_Consultas_Marcadas.SQL.Add(' From marcar_consultas where data_retorno between :h1 and :h2');
ADOQuery1_Consultas_Marcadas.SQL.Add ('and Nome_Convenio like ' + quotedstr('%' +edit5.Text+'%')); // pesquisa por conv
ADOQuery1_Consultas_Marcadas.SQL.Add ('and Nome like ' + quotedstr('%' +edit4.Text+'%')); // pesquisa por conv
ADOQuery1_Consultas_Marcadas.SQL.Add ('and `Consulta/Retorno` like ' + quotedstr('%' +edit8.Text+'%')); // consulta retorno ou fechada
ADOQuery1_Consultas_Marcadas.SQL.Add ('and `Consulta/Retorno` like ' + quotedstr('%' +edit9.Text+'%')); // consulta retorno ou fechada
ADOQuery1_Consultas_Marcadas.SQL.Add ('ORDER BY hora_retorno ASC');
ADOQuery1_Consultas_Marcadas.Parameters[0].Value:=ConverteData(DateTimePicker3.DateTime);
ADOQuery1_Consultas_Marcadas.Parameters[1].Value:=ConverteData(DateTimePicker4.DateTime);
ADOQuery1_Consultas_Marcadas.open;
end;
Será que alguém pode me ajudar? queria que ao invés de ter dois checkbox pra ele escolher uma por vez, ter data e data_retorno na mesma pesquisa por data.
OBS: Este código está funcionando perfeitamente, só precisando destes ajustes rs!
Pergunta
felipeecampos
Estou com uma dúvida e bronca que não consigo resolver, sou iniciante em programação, mexo apenas com delphi e pouquíssimos em outras linguagens, enfim, vamos lá.
Meu problema é o seguinte, fiz um programa para uma clínica médica, bem básico, marca consulta, retorno, imprimi prontuário, exames, etc, o programa já está sendo usado, só que estou fazendo uma atualização e estou com problemas para desenvolver, é o seguinte.
Na minha aba relatório, tenho uma função que pega os dados das consultas que estão marcadas e imprimi para o médico ter em mãos as consultas, o recepcionista seleciona pela data desejada (ATUAL) e o sistema busca as consultas normais pela data desejada, enfim, dentro da minha tabela "Marcar_consultas" existe um campo chamado "data" que pelo comando sql faço essa busca, só que nesta mesma tabela "marcar_consultas" existe um campo chamado "data_retorno" que é os pacientes que já vieram de uma consulta, estão em um retorno, então o problema é que eu consiga fazer meu código buscar pelos 2 campos, não só por um. Irei mandar aqui como está meu código.
begin
if CheckBox3.Checked = true then // pesquisa por data
begin// faz a pesquisa pela data solicitada
ADOQuery1_Consultas_Marcadas.Close;
ADOQuery1_Consultas_Marcadas.SQL.Clear;
ADOQuery1_Consultas_Marcadas.SQL.Add(' Select *');
ADOQuery1_Consultas_Marcadas.SQL.Add(' From marcar_consultas where data between :h1 and :h2');
ADOQuery1_Consultas_Marcadas.SQL.Add ('and Nome_Convenio like ' + quotedstr('%' +edit5.Text+'%')); // pesquisa por conv
ADOQuery1_Consultas_Marcadas.SQL.Add ('and Nome like ' + quotedstr('%' +edit4.Text+'%')); // pesquisa por conv
ADOQuery1_Consultas_Marcadas.SQL.Add ('and `Consulta/Retorno` like ' + quotedstr('%' +edit8.Text+'%')); // consulta retorno ou fechada
ADOQuery1_Consultas_Marcadas.SQL.Add ('and `Consulta/Retorno` like ' + quotedstr('%' +edit9.Text+'%')); // consulta retorno ou fechada
ADOQuery1_Consultas_Marcadas.SQL.Add ('ORDER BY hora ASC');
ADOQuery1_Consultas_Marcadas.Parameters[0].Value:=ConverteData(DateTimePicker3.DateTime);
ADOQuery1_Consultas_Marcadas.Parameters[1].Value:=ConverteData(DateTimePicker4.DateTime);
ADOQuery1_Consultas_Marcadas.open;
end;
////////////////////////////////////////////////////////////
begin
if CheckBox10.Checked = true then // pesquisa por data_retorno
begin// faz a pesquisa pela data solicitada
//if (Edit1.Text<>'') and(Edit4.Text<>'')then
ADOQuery1_Consultas_Marcadas.Close;
ADOQuery1_Consultas_Marcadas.SQL.Clear;
ADOQuery1_Consultas_Marcadas.SQL.Add(' Select *');
ADOQuery1_Consultas_Marcadas.SQL.Add(' From marcar_consultas where data_retorno between :h1 and :h2');
ADOQuery1_Consultas_Marcadas.SQL.Add ('and Nome_Convenio like ' + quotedstr('%' +edit5.Text+'%')); // pesquisa por conv
ADOQuery1_Consultas_Marcadas.SQL.Add ('and Nome like ' + quotedstr('%' +edit4.Text+'%')); // pesquisa por conv
ADOQuery1_Consultas_Marcadas.SQL.Add ('and `Consulta/Retorno` like ' + quotedstr('%' +edit8.Text+'%')); // consulta retorno ou fechada
ADOQuery1_Consultas_Marcadas.SQL.Add ('and `Consulta/Retorno` like ' + quotedstr('%' +edit9.Text+'%')); // consulta retorno ou fechada
ADOQuery1_Consultas_Marcadas.SQL.Add ('ORDER BY hora_retorno ASC');
ADOQuery1_Consultas_Marcadas.Parameters[0].Value:=ConverteData(DateTimePicker3.DateTime);
ADOQuery1_Consultas_Marcadas.Parameters[1].Value:=ConverteData(DateTimePicker4.DateTime);
ADOQuery1_Consultas_Marcadas.open;
end;
Será que alguém pode me ajudar? queria que ao invés de ter dois checkbox pra ele escolher uma por vez, ter data e data_retorno na mesma pesquisa por data.
OBS: Este código está funcionando perfeitamente, só precisando destes ajustes rs!
Obrigado desde já.
Felipe Campos,
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.