Gente, necesito si alguien me puede ayudar con lo siguiente.
Espero poder explicarme bien.
Para imprimir Facturas tengo el siguiente código.
paso un seudo código.
nCopias=_Parametros.ParCopias
For x=1 To nCopias
REPORT FORM Factura
endfor
Supongamos dos copias.
Invoco dos veces REPORT FORM
Lo que quiero hacer, es directamente invocar una sola vez REPORT
FORM y
que este se encargue de repetir la factura dos veces o la que el
usuario defina, dos, tres, cuatro copias.
No encuentro la manera lógica de hacerlo.
Si alguien lo hace, por favor me puede pasar como lo hace.
Gracias
Arnaldo Toledano
Muchos clientes prefieren imprimir PDF, por lo factura electrónica.
Y es común, que hagan 30 o mas facturas juntas.
Es muy engorroso para ellos interactuar con el PREVIEW
Gracias Bernardo
Arnaldo Toledano
El 17/03/2017 a las 11:59 a.m., Ing. Bernardo José Martínez Pérez escribió:
Porque no le pones report form reporte to print prompt preview y que el usuario ponga la cantidad de copias que requiera.
Enviado desde mi Windows Phone
-----Mensaje original-----
De: "Arnaldo Toledano" <arnaldo....@gmail.com>
Enviado el: 17/03/2017 08:26
José,
Funciona la FUNCION, valga la redundancia, pero en el caso que
imprimas un PDF, con FoxyPreviewer,
imprime solo una copia.
Segure investigando.
Gracias José, muy buena tu función.
Lo que no me he fijado, es si vuelve la cantidad de copias al
original, una vez impreso.
Supongo que NO.
Arnaldo Toledano
Gracias Idalberto
No me funciona.
Arnado Toledano
algo por el estilo se me habia ocurrido hacer unos dias.
Pero no le encontraba la vuelta para saltar a la proxima pagina.
Voy a probar con ejectar la hoja, como vos indicas, cuando cambia
el nro. de copias
Gracias Marcos
Arnaldo Toledano
@Arnaldo: lo más sencillo es hacer algo como
nCopias = 5 && Cantidad de copias
sCursorOri = [Acum]
SELECT 0000 AS Nro_Copia, * FROM (sCursorOri) WHERE .F. INTO CURSOR c_Cur_Report READWRITE
FOR nCopia = 1 TO nCopias
SELECT nCopia AS Nro_Copia, * FROM (sCursorOri) INTO CURSOR c_Tmp
SELECT c_Cur_Report
APPEND FROM (DBF("c_Tmp"))
USE IN c_Tmp
NEXT
SELECT c_Cur_Report
* BROWSE NOCAPTION
REPORT FORM .....
Con lo que te quedaría en c_Cur_Report el cursor de reporte multiplicado por la cantidad de copias, después creás en el reporte un grupo por Nro_Copia tildando la opción de iniciar el grupo en una nueva página, pasá todo lo que tenés en Header a ese Group Header, lo mismo con el Group Footer y listo.
HTH
Mario