Fórum Erro no Quick Report quando Filtrado..... #213960

13/02/2004

0

Ola eu criei uma tela para os usuario onde eles clicam para filtrar por nome dos clientes para emitir somente a que eles selecionaram para imprimir, ao invés de imprimir todas as etiquetas sempre... entende... vou passar os códigos ...

Criei uma ComboBox1 --> onde filtra e aparece todos os nomes.

Criei um botão para Filtrar sendo:
procedure TFfiltro.SpeedButton1Click(Sender: TObject);
begin
ComboBox1.Clear;
table1.First;
while not table1.Eof do
begin
ComboBox1.items.Add(table1.fieldbyname(´Nome´).asstring);
table1.Next;
SpeedButton2.Enabled := True; { Abilita o Botão}
end;


Criei mais um botão onde ele pega os dados filtrados para colocar no Quick Report sendo assim.

procedure TFfiltro.SpeedButton2Click(Sender: TObject);
var sIndice: string;
begin
sIndice := table1.IndexName;
table1.IndexName := ´inome´;
table1.Locate(´Nome´,combobox1.Text,[loCaseInsensitive,lopartialkey]);
table1.filter:=´Nome=´+chr(39)+table1.fIELDBYNAME(´Nome´).ASSTRING+chr(39);
table1.Filtered:=True;
QR.QuickRep1.Preview;
QR.close;
table1.Filtered := False;
table1.IndexName := sIndice;
close;
end;


Mais quando eu faço isso ele filtra certinho mais não me traz somente o registro selecionado ele me traz no quick report todos os registros... eu gostaria de saber o que esta dando de errado com isso.. ?????


Danielvbhp

Danielvbhp

Responder

Posts

13/02/2004

Danielvbhp

Alguém ja teve este problema????
por favor postem aqui....


Responder

Gostei + 0

13/02/2004

Adilsond

Você não precisa fazer um filtro para imprimir o registro corrente. Basta não definir nenhum DataSet na proprieda DataSet do QR. Apenas ligue os campos desejados a table que voce fez o locate.

if table1.Locate(´Nome´,combobox1.Text,[]) then
QR.QuickRep1.Preview;


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar