Impressão por ListBox.
Olá o que eu preciso fazer é o seguinte eu ja tenho um form que faz o filtro e joga o campo nome em um combobox, depois seleciono o nome que desejo e mando imprimir com filtro no quickreport. o código que eu estou usando esta abaixo....
Mais eu gostaria de fazer o seguinte gostaria de criar um listbox, para selecionar mais de um funcionario para impressão de etiquetas, por que por equanto só seleciono um para impressão e muitas vezes preciso imprimir mais de um entende...
por exemplo fazer um form que consiga adicionar por exemplo 3 registros pelo nome em um listbox, e depois mandar imprimir os que estão no listbox...
Alguém poderia me ajudar com isso....
var sIndice: string; begin sIndice := datamodule4.table1.IndexName; datamodule4.table1.IndexName := ´inome´; datamodule4.table1.Locate(´Nome´,combobox1.Text,[loCaseInsensitive,lopartialkey]); datamodule4.table1.filter:=´Nome=´+chr(39)+datamodule4.table1.fIELDBYNAME(´Nome´).ASSTRING+chr(39); datamodule4.table1.Filtered:=True; QR.QuickRep1.Preview; QR.close; datamodule4.table1.Filtered := False; datamodule4.table1.IndexName := sIndice; ComboBox1.Clear; close; end;
Mais eu gostaria de fazer o seguinte gostaria de criar um listbox, para selecionar mais de um funcionario para impressão de etiquetas, por que por equanto só seleciono um para impressão e muitas vezes preciso imprimir mais de um entende...
por exemplo fazer um form que consiga adicionar por exemplo 3 registros pelo nome em um listbox, e depois mandar imprimir os que estão no listbox...
Alguém poderia me ajudar com isso....
Danielvbhp
Curtidas 0
Respostas
Danielvbhp
19/02/2004
Alguém poderia me mostrar um exemplo sobre isso...
Obrigado...
Obrigado...
GOSTEI 0
Acsandro
19/02/2004
Colega, você pode fazer o seguinte:
Var
Sele : string;
ind : integer;
Begin
Sele := ´´;
For ind := 0 to Listbox1.Count -1 do
begin
Sele := Sele + ´´´+Listbox1.itens[ind]+´´´´;
if ind < ListBox1.Count-1 then
Sele := Sele + ´,´;
end;
End;
Com isso você monta um select.
Select *from Table
Where id_cod in (sele)
Cara, espero ter dado uma luz.
Var
Sele : string;
ind : integer;
Begin
Sele := ´´;
For ind := 0 to Listbox1.Count -1 do
begin
Sele := Sele + ´´´+Listbox1.itens[ind]+´´´´;
if ind < ListBox1.Count-1 then
Sele := Sele + ´,´;
end;
End;
Com isso você monta um select.
Select *from Table
Where id_cod in (sele)
Cara, espero ter dado uma luz.
GOSTEI 0
Danielvbhp
19/02/2004
alguém teria um exemplo de como....
um botáo que pega todos os dados do datamodule e coloca no listbox.
depois disso gostaria de fazer um exemplo para imprimir os selecionados no listbox....
um botáo que pega todos os dados do datamodule e coloca no listbox.
depois disso gostaria de fazer um exemplo para imprimir os selecionados no listbox....
GOSTEI 0
Danielvbhp
19/02/2004
Olá, então eu consegui colocar os dados no listbox1, que pega os dados do dbgrid e coloca no listbox....
o codigo seria...
Mais eu gostaria de saber como eu faço a impressão com filtro, de todos os itens do listbox...
pegando os dados do listbox e imprimir...
o codigo seria...
//Listbox1.Items.Add(dm.ADOtable1.fieldbyname(´RG´).asinteger)+´ ´+dm.ADOtable1.fieldbyname(´NOME´).asstring);//esta parte copia do banco de dados para o listbox Listbox1.Items.Add(FormatFloat(´00´,dm.ADOtable1.fieldbyname(´idade´).AsInteger)+´ ´+dm.ADOtable1.fieldbyname(´NOME´).asstring);//esta parte copia do banco de dados para o listbox
Mais eu gostaria de saber como eu faço a impressão com filtro, de todos os itens do listbox...
pegando os dados do listbox e imprimir...
GOSTEI 0