La solucion temporal que encontre es la siguiente funciona perfecto pero como podra imaginarse la consulta se vuelve muy lenta :
Código Delphi
[-]procedure TFormReportes.StringGrid1CellClick(const Column: TColumn;
const Row: Integer);
var
Filtro :string;
i:integer;
begin
DataModule1.UniQueryConsultaDOC.Close;
DataModule1.UniQueryConsultaDOC.sql.Clear;
DataModule1.UniQueryConsultaDOC.sql.Add('select REGFICHA, TIPODOCUMENTO,REGPAC, INSTRUT from fichadoc');
DataModule1.UniQueryConsultaDOC.SQL.Add('where instrut = :INSTRUT and REGFICHA = :REGFICHA and regpac =:regpac and TIPODOCUMENTO =:TIPODOCUMENTO');
DataModule1.UniQueryConsultaDOC.ParamByName('INSTRUT').AsString := datamodule1.InstRut;
DataModule1.UniQueryConsultaDOC.ParamByName('REGFICHA').AsString := Label1.text;
DataModule1.UniQueryConsultaDOC.ParamByName('REGPAC').AsString := Label2.text;
DataModule1.UniQueryConsultaDOC.ParamByName('TIPODOCUMENTO').AsString := 'TRATAMIENTO';
DataModule1.UniQueryConsultaDOC.open;
if not DataModule1.UniQueryConsultaDOC.eof then
begin
TMSFMXToolBarButton5.Enabled := true;
TMSFMXToolBarButton5.Opacity := 1;
end
else
begin
TMSFMXToolBarButton5.Enabled := False;
TMSFMXToolBarButton5.Opacity := 0.3;
end;
begin
DataModule1.UniQueryConsultaDOC.Close;
DataModule1.UniQueryConsultaDOC.sql.Clear;
DataModule1.UniQueryConsultaDOC.sql.Add('select REGFICHA, TIPODOCUMENTO,REGPAC, INSTRUT from fichadoc');
DataModule1.UniQueryConsultaDOC.SQL.Add('where instrut = :INSTRUT and REGFICHA = :REGFICHA and regpac =:regpac and TIPODOCUMENTO =:TIPODOCUMENTO');
DataModule1.UniQueryConsultaDOC.ParamByName('INSTRUT').AsString := datamodule1.InstRut;
DataModule1.UniQueryConsultaDOC.ParamByName('REGFICHA').AsString := Label1.text;
DataModule1.UniQueryConsultaDOC.ParamByName('REGPAC').AsString := Label2.text;
DataModule1.UniQueryConsultaDOC.ParamByName('TIPODOCUMENTO').AsString := 'LABORATORIO';
DataModule1.UniQueryConsultaDOC.open;
if not DataModule1.UniQueryConsultaDOC.eof then
begin
TMSFMXToolBarButton13.Enabled := true;
TMSFMXToolBarButton13.Opacity := 1;
end
else
begin
TMSFMXToolBarButton13.Enabled := False;
TMSFMXToolBarButton13.Opacity := 0.3;
end;
end;
begin
DataModule1.UniQueryConsultaDOC.Close;
DataModule1.UniQueryConsultaDOC.sql.Clear;
DataModule1.UniQueryConsultaDOC.sql.Add('select REGFICHA, TIPODOCUMENTO,REGPAC, INSTRUT from fichadoc');
DataModule1.UniQueryConsultaDOC.SQL.Add('where instrut = :INSTRUT and REGFICHA = :REGFICHA and regpac =:regpac and TIPODOCUMENTO =:TIPODOCUMENTO');
DataModule1.UniQueryConsultaDOC.ParamByName('INSTRUT').AsString := datamodule1.InstRut;
DataModule1.UniQueryConsultaDOC.ParamByName('REGFICHA').AsString := Label1.text;
DataModule1.UniQueryConsultaDOC.ParamByName('REGPAC').AsString := Label2.text;
DataModule1.UniQueryConsultaDOC.ParamByName('TIPODOCUMENTO').AsString := 'EXAMEN';
DataModule1.UniQueryConsultaDOC.open;
if not DataModule1.UniQueryConsultaDOC.eof then
begin
TMSFMXToolBarButton6.Enabled := true;
TMSFMXToolBarButton6.Opacity := 1;
end
else
begin
TMSFMXToolBarButton6.Enabled := False;
TMSFMXToolBarButton6.Opacity := 0.3;
end;
end;
begin
DataModule1.UniQueryConsultaDOC.Close;
DataModule1.UniQueryConsultaDOC.sql.Clear;
DataModule1.UniQueryConsultaDOC.sql.Add('select REGFICHA, TIPODOCUMENTO,REGPAC, INSTRUT from fichadoc');
DataModule1.UniQueryConsultaDOC.SQL.Add('where instrut = :INSTRUT and REGFICHA = :REGFICHA and regpac =:regpac and TIPODOCUMENTO =:TIPODOCUMENTO');
DataModule1.UniQueryConsultaDOC.ParamByName('INSTRUT').AsString := datamodule1.InstRut;
DataModule1.UniQueryConsultaDOC.ParamByName('REGFICHA').AsString := Label1.text;
DataModule1.UniQueryConsultaDOC.ParamByName('REGPAC').AsString := Label2.text;
DataModule1.UniQueryConsultaDOC.ParamByName('TIPODOCUMENTO').AsString := 'FICHA MEDICA';
DataModule1.UniQueryConsultaDOC.open;
if not DataModule1.UniQueryConsultaDOC.eof then
begin
TMSFMXToolBarButton17.Enabled := true;
TMSFMXToolBarButton17.Opacity := 1;
end
else
begin
TMSFMXToolBarButton17.Enabled := False;
TMSFMXToolBarButton17.Opacity := 0.3;
end;
end;