Maryanne 0 Denunciar post Postado Novembro 21, 2014 Olá estou necessitando de ajuda, preciso fazer uma pesquisa utilizando RadioGroup. O que ocorre é que não sei como fazer, pois é meu primeiro contato no Banco de Dados envolvendo o Delphi. Eu gostaria de "perguntar" qual foi a opção marcada no RadioGroup, e depois pesquisar e aparecer somente aqueles que possuem a caracteristica marcada. O que eu consegui fazer foi: Até agr fiz: Código: 2:begin if RadioGroup2.ItemIndex = 0 then begin sql[1] := 'Matutino'; end; end; Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Novembro 21, 2014 Você pode montar o sql dinamicamente e depois executar a pesquisa. Segue um exemplo: procedure TfrmPrincipal.PesquisaXML; var sSQL, sAviso : String; begin sSQL := 'SELECT TSD.DT_SITUACAO_DOCUMENTO, TSD.NM_PROPONENTE, ' + 'TSD.DS_XML.value(' + QuotedStr('(/controle/estudo/corretor)[1]') + ', ' + QuotedStr('VARCHAR(10)') + ') AS CORRETOR,' + 'TSD.DS_XML.value(' + QuotedStr('(/controle/estudo/sucursal)[1]') + ', ' + QuotedStr('VARCHAR(10)') + ') AS SUCURSAL,' + 'TSD.DS_XML ' + 'FROM TB_SEGURO_DOCUMENTO TSD WITH(NOLOCK) '; //Monta o SQL de acordo com os filtros case rgFiltroPesquisa.ItemIndex of 0 : begin //Pesquisa por Nome sAviso := 'Informe o nome a ser pesquisado para continuar...'; sSQL := sSQL + 'WHERE TSD.NM_PROPONENTE LIKE ' + QuotedStr('%' + edtFiltroPesquisa.Text + '%'); end; 1 : begin //Pesquisa por CPF sAviso := 'Informe o CPF a ser pesquisado para continuar...'; sSQL := sSQL + 'INNER JOIN TB_SEGURO TS WITH(NOLOCK) ON TS.ID = TSD.PID_SEGURO ' + 'INNER JOIN TB_CLIENTE TC WITH(NOLOCK)ON TC.ID = TS.PID_ESTIPULANTE ' + 'INNER JOIN TB_PESSOA TP WITH(NOLOCK) ON TP.ID = TC.PID_PESSOA ' + 'WHERE TP.NU_CPF_CNPJ = ' + Trim(edtFiltroPesquisa.Text); end; end; if (Trim(edtFiltroPesquisa.Text) = EmptyStr) then begin ShowMessage(sAviso); Exit; end; with ADOQryPesquisa do begin if Active then Close; SQL.Clear; SQL.Add(sSQL); Open; end; end; Compartilhar este post Link para o post Compartilhar em outros sites