La Web del Programador: Comunidad de Programadores
 
    Pregunta:  15798 - IMPRIMIR DETERMINADO NUMERO DE LINEAS CON EL REPORT FORM
Autor:  Ice Man
HOLA QUE TAL!!!

NECESITO SABER UNA FORMA PRACTICA DE ENVIAR A IMPRIMIR CON UN REPORT FORM DE VISUAL 6 UN NUMERO DE LINEAS ESPECIFICAS....PORQUE SI YO ENVIO UN REPORTE A VECES ENTRE PAGINA Y PAGINA NO IMPRIME UNA O DOS LINEAS O A VECES IMPRIME LAS LINEAS CORTADAS

LA VERDAD YA INTENTE SUBIRLE EL MARGEN PERO ESA NO ES UNA SOLUCION CONCRETA . SI ME PUEDEN AYUDAR SE LO AGRADECERIA MUCHISIMO......ME URGE MUCHO

GRACIAS DE ANTEMANO

  Respuesta:  Yavir Robles
Hola, lo que puedes hacer si es que te quieres evitar las secuencias de escape de la impresora es que tu controles el número de registros del reporte por medio del Recorset Intrínseco que se almacena en la Conexión siempre empieza con rs y el nombre del Comando con el que tienes asociado el reporte. Supongamos que tu reporte se llama HorasTrabajadas y que el comando con el que esta asociado se llama ComandoHoras:

'Abres un Recordset donde la consulta SQL tenga unn límite

ConsultaSQL="SELECT * FROM HORAS_TRABAJADAS WHERE id_empleado>=1 AND id_empleado<=50"
'Con esto aseguras que no regrese mas de 50 registros

With NuevoRecodset
.ActiveConnection = Environment1.Connection1 'Nombre de la conexion
.CursorLocation = adUseClient
.LockType = adLockOptimistic
.CursorType = adOpenDynamic
.Open ConsultaSQL
End With

'Despues solo le asignas éste recodset al del reporte

SET Environment1.rsComandoHoras =NuevoRecordset.Datasource
HorasTrabajadas.Refresh
HorasTrabajadas.print

' Si metes esto en un cíclo donde vayas cambiando el rango de la consulta podrás controlar el número de los registros, si tienes algúna duda escribeme y te mando un ejemplo más detallado