Ir para conteúdo

POWERED BY:

Arquivado

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

Marcos Barbosa

[Resolvido] Relacionar dados entre tabelas

Recommended Posts

Seguinte, tenho um relatório no Quickrep, que deverá ficar assim:

 

Paciente Data / Hora

Joao 01/01/2011 08:00

Maria 05/03/2011 09:00

Jose 06/05/2011 10:00

Pedro 03/02/2010 11:00

 

Tenho 2 tabelas assim:

exames

id

idpaciente

data

hora

unidade

 

pacientes

id

nome

idade

 

Para gerar o relatório eu tenho condições para escolher a unidade e período de datas, faço o filtro que já está funcionando, mas pego os dados da tabela exames.

Na tabela exames eu não guardo o nome do paciente e sim o id dele, como faço para sair o nome e não o id do paciente.

 

Abaixo segue o código de como estou fazendo, tô usando o innet join e me parece que está certo, mas no qreport, como devo fazer para apercer o nome relacionado ao id.

DM.QR_REL_UND_SSA.Close;
   DM.QR_REL_UND_SSA.SQL.Text :=
     ' SELECT pac.NOME As NomePaciente,'+
     '    exa.ID, '+
     '    exa.DATA, '+
     '    exa.HORA, '+
     '    exa.IDPACIENTE' +
     ' FROM'+
     '    EXAMES exa'+
     '        INNER JOIN pacientes pac ON (exa.IDPACIENTE = pac.ID)' +
     ' WHERE'+
     '   exa.ORIGEMEXP =:UNIDADE'+
     '   AND exa.DATA BETWEEN :DATA_INI AND :DATA_FIM'+
     ' ORDER BY'+
     '   exa.DATA, '+
     '   exa.HORA';

   // PASSO OS PARAMENTROS
   DM.QR_REL_UND_SSA.Params.ParamByName('UNIDADE').Value := idorigem;
   DM.QR_REL_UND_SSA.Params.ParamByName('DATA_INI').Value := FormatDateTime('DD/MM/YYYY', DTP_data_ini.Date);
   DM.QR_REL_UND_SSA.Params.ParamByName('DATA_FIM').Value := FormatDateTime('DD/MM/YYYY', DTP_data_fim.Date);

   DM.QR_REL_UND_SSA.Open;

   DM.CDS_REL_UND_SSA.Active := True;

   QR_unidade_SSA.QRLabel7.Caption := nome_unidade;
   QR_unidade_SSA.QRLabel11.Caption:= nome_unidade;
   QR_unidade_SSA.Preview;

Compartilhar este post


Link para o post
Compartilhar em outros sites

RESOLVIDO

COLOQUEI NO SQL DO DO COMPENTENTE O CÓDIGO

SELECT e.ID, e.IDPACIENTE, e.DATA, e.HORA   , p.ID,  p.NOME
FROM EXAMES e, PACIENTES p
WHERE 
e.ORIGEMEXP =:UNIDADE
AND

e.DATA BETWEEN  :DATA_INI AND :DATA_FIM
AND
e.IDPACIENTE = p.ID

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.