Fórum Loop com Impressão !!!!! #150562
31/03/2003
0
Caros colegas estou com o seguinte problema.....
Criei uma rotina com um loop ´´ While ´´ e toda vez que ele passa pelo while é refeita uma consulta e então esta é impressa ( quick report ) só que a rotina para imprimir esta dentro do loop ( quickrep1.print ) desta forma se este loop for executado 20 vezes estarei mandando 20 vezes para impressão então eu gostaria de saber como faço para iniciar a impressão e cada volta no loop apenas incrementer uma pagina.
Vejam um trecho da rotina.....
While not (frmprincipal.qyrecebevalores.RecordCount = 0) do
Begin
new:=frmprincipal.qyrecebevalores.RecordCount;
frmprincipal.qyrecebevalores.First; // tabela auxilar já preenchida
recebe:=frmprincipal.qyrecebevaloresBcmedico.Value;
frmprincipal.qyimpressao.Close; frmprincipal.qyimpressao.ParamByName´medico´).AsString:=recebe; frmprincipal.qyimpressao.Open;
frmprincipal.qydel.Close;
frmprincipal.qydel.SQL.Clear;
frmprincipal.qydel.SQL.Add(´DELETE FROM AUXILIAR WHERE BCMEDICO = ´ + ´´´´ + RECEBE + ´´´´);
frmprincipal.qydel.ExecSQL;
frmprincipal.qyrecebevalores.Refresh;
old:=frmprincipal.qyrecebevalores.RecordCount;
contador:=contador + (new-old);
P1.AddProgress(contador);[b:cdd71d0e7c][color=red:cdd71d0e7c]
frmroteiro.QuickRep1.Print; // quickrep inicia impressão de dados da qyimpressão
[/color:cdd71d0e7c][/b:cdd71d0e7c]end;
[]´s
Oscar Luiz
Criei uma rotina com um loop ´´ While ´´ e toda vez que ele passa pelo while é refeita uma consulta e então esta é impressa ( quick report ) só que a rotina para imprimir esta dentro do loop ( quickrep1.print ) desta forma se este loop for executado 20 vezes estarei mandando 20 vezes para impressão então eu gostaria de saber como faço para iniciar a impressão e cada volta no loop apenas incrementer uma pagina.
Vejam um trecho da rotina.....
While not (frmprincipal.qyrecebevalores.RecordCount = 0) do
Begin
new:=frmprincipal.qyrecebevalores.RecordCount;
frmprincipal.qyrecebevalores.First; // tabela auxilar já preenchida
recebe:=frmprincipal.qyrecebevaloresBcmedico.Value;
frmprincipal.qyimpressao.Close; frmprincipal.qyimpressao.ParamByName´medico´).AsString:=recebe; frmprincipal.qyimpressao.Open;
frmprincipal.qydel.Close;
frmprincipal.qydel.SQL.Clear;
frmprincipal.qydel.SQL.Add(´DELETE FROM AUXILIAR WHERE BCMEDICO = ´ + ´´´´ + RECEBE + ´´´´);
frmprincipal.qydel.ExecSQL;
frmprincipal.qyrecebevalores.Refresh;
old:=frmprincipal.qyrecebevalores.RecordCount;
contador:=contador + (new-old);
P1.AddProgress(contador);[b:cdd71d0e7c][color=red:cdd71d0e7c]
frmroteiro.QuickRep1.Print; // quickrep inicia impressão de dados da qyimpressão
[/color:cdd71d0e7c][/b:cdd71d0e7c]end;
[]´s
Oscar Luiz
Oscarluiz
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)