Compartir a través de


Tutorial: Imprimir y configurar opciones de impresión

Introducción

Puede configurar opciones de impresión y llamar a una impresora mediante el código, en lugar de mediante la UI de Crystal Reports. Para hacerlo, utilizará la clase PrintOptions y el método PrintToPrinter() del modelo de objetos ReportDocument.

Si el botón Imprimir de la barra de herramientas del control CrystalReportViewer satisface sus necesidades de impresión, no tendrá que escribir código para configurar opciones de impresión adicionales.

Sin embargo, un método basado en el código para imprimir informes resulta útil en casos especializados:

  • Puede controlar cuándo, dónde y cómo se realiza la impresión. Para hacerlo, deberá desactivar el botón Imprimir de la barra de herramientas del control CrystalReportViewer y administra toda la impresión mediante código.
  • Puede imprimir un informe en segundo plano, sin mostrarlo. Todas las opciones de configuración de Imprimir las contiene el modelo ReportDocument, del que se puede crear una instancia y configurar sin mostrar nunca el informe con un control CrystalReportViewer.
  • Puede centralizar toda la impresión en el servidor Web de un cliente Web. Use el método PrintToPrinter() para enviar tareas de impresión a una impresora conectada al servidor Web, en lugar de a una impresora local conectada al cliente Web.
    Nota

    Esta funcionalidad de impresión de servidor no es tan amplia como el marco de trabajo de programación de informes suministrado con Crystal Reports Server o BusinessObjects Enterprise. Para obtener más información sobre estos productos, vea Opciones de actualización.

Para empezar este tutorial, agregará varios controles de lista para configurar opciones de impresión sobre el control CrystalReportViewer en el formulario Web o para Windows.

A continuación, en la clase de código subyacente, creará una constante de cadena CURRENT_PRINTER, a la que asignará la ruta de la impresora que desee usar.

Después, enlazará cada control de lista a una enumeración que contiene opciones de impresión para la orientación del papel, su tamaño y la configuración dúplex de la impresora. Un control de lista adicional muestra la configuración del origen del papel personalizado de la impresora designada actualmente en la constante CURRENT_PRINTER. Para el control del origen del papel personalizado, creará un método auxiliar que genera una instancia de PrinterSettings, la asigna a la impresora actual y devuelve una selección de orígenes de papel para dicha impresora.

A continuación, creará un método de evento de clic de botón para el botón Imprimir informe. En dicho método de evento, a cada propiedad de opción de impresión se le asignará un valor basado en las selecciones realizadas en los controles de lista. Finalmente, se imprimirá el informe en la impresora designada en la constante CURRENT_PRINTER.

Código de ejemplo

Este tutorial incluye código de ejemplo de C# y Visual Basic que muestra la versión finalizada del proyecto. Siga las instrucciones de este tutorial para crear un nuevo proyecto o para abrir el proyecto de código de ejemplo y trabajar con una versión finalizada.

El código de ejemplo se almacena en carpetas que están clasificadas por idioma y tipo de proyecto. Los nombres de las carpetas de cada versión del código de ejemplo son los siguientes:

  • Sitio Web en C#: CS_Web_RDObjMod_SetPrintOptions
  • Proyecto para Windows en C#: CS_Win_RDObjMod_SetPrintOptions
  • Sitio Web en Visual Basic: VB_Web_RDObjMod_SetPrintOptions
  • Proyecto para Windows en Visual Basic: VB_Win_RDObjMod_SetPrintOptions

Para localizar las carpetas que contienen estos ejemplos, vea Directorio del código de ejemplo de los tutoriales.

En esta sección