Unofficial Content

Warning: The .NET Mobile generator has been discontinued. Refer to Native Mobile Applications Development.

Impresión

 

Introducción


Muchos sistemas móviles requieren la impresión, ya sea para facturas, boletas, recibos, etc...
Existen un conjunto de impresoras "móviles" que se conectan a los dispositivos vía conexión serial directa con el aparato o por medios inalámbricos (Infrarojo, Bluetooh, etc)
Es posible imprimir con estos dispositivos por medio de una aplicación .NET Mobile aunque no se pueden visualizar los mismos en pantalla

Se diferencian 2 casos, los reportes modo texto y los reportes modo gráfico.
 

Reportes Modo Texto


Los reportes modo texto pueden ser impresos en cualquier clase de impresora, sea modo texto o no.
Muchas veces no necesitamos grandes opciones de formato, lo que transforma a este tipo de reportes los mas sencillos de utilizar.
El único requerimiento es que en el caso de usar InfraRojo para conectarse a la impresora se debe tener en el sistema operativo el Printer port driver.

La operativa es hacer un reporte modo texto, al imprimir muestra un dialogo de selección de impresora o archivo, en caso de ser archivo el mismo queda con extensión txt.


 

Reportes Modo Gráfico


El caso de los reportes modo gráfico es un poco más complejo que los reportes modo texto, por lo que vale la pena analizar previamente si realmente son necesarios o se puden suplantar por reportes modo texto.

 

Printer API


A diferencia de Windows, no hay un standar definido dentro del sistema operativo Mobile para la impresión modo gráfico (a diferencia de modo texto que se manda el buffer a la impresora directamente).
Por esta razón existen productos de terceros que implementan la interfaz entre las aplicaciones y la impresora.
La idea no es seleccionar un unico producto como interfaz, sino presentar un esquema lo suficientemente flexible de manera que se pueda incorporar cualquier herramienta de terceros.
Como ejemplo el generador trae incroporado como sería la implementación con Printer CE
 

Printer CE


Printer CE es un producto de Fieldsoftware
Es necesario descargar las dll's del siguiente link
- PrinterCE.NetCF.dll
- PrCE_NetCF.dll
Copiandolas al directorio \bin del modelo y llevandolas al directorio de ejecución del dispositivo por medio del deployment de GeneXus .

De esta forma al ejecutar un reporte modo gráfico se presenta un dialogo de selección de la impresora.
 


ATENCION

En caso de usar la versión TRIAL de la Printer CE primero se presentan los siguientes dialogos que deben ser aceptados:
 



Como funciona?

En el directorio \bin del modelo existe un archivo PrinterAPI.dll que es la compilación de los archivos existentes en PrinterAPIsource.zip donde se muestra como es la implementación para usar un producto de terceros.
 

Usando otros productos de terceros


Nota: Se debe tener instalado el Visual Studio .NET para poder hacer lo siguiente

Si se necesita usar otro producto de terceros se debe instalar ese producto en el dispositivo o copiar las dll's al directorio de ejecución.
Por otro lado se debe modificar la PrinterAPI de la siguiente forma:

1 - Descomprimir el PrinterAPISource.zip en un directorio

2 - Copiar las dll's del producto de terceros a ese sirectorio y la gxclasses.dll

3 - Abrir el archivo PrinterAPI.csproj con lo que se abre el proyecto en el Visual Studio.NET

4 - En el proyecto abierto, se debe agregar la referencia a la GXclasses del directorio \bin

5 - A continuación se debe modificar la implementación de las siguientes funciones:
 
  • Initialize
  • NewPage
  • EndDoc
  • EndPrint
  • DrawLine
  • DrawRect
  • DrawPicture
  • DrawText
Usando las primitivas del producto a utilizar.

6 - Se debe compilar el proyecto copiando la PrinterAPI.dll generada al \bin


 
Last update: February 2024 | © GeneXus. All rights reserved. GeneXus Powered by Globant