Acceso a distribuidores
Usuario:
Contraseña:

"Lo peor de la ignorancia, es que a medida que se prolonga, adquiere confianza"

CONTROL ACTIVEX PARA IMPRESIÓN DE FORMATOS

PrinteX es un control, invisible en tiempo de ejecución, que permite la impresión de los documentos generados por MultiPRINT desde los programas que lo contengan. El control no posee propiedades ni eventos, solo métodos que permiten abrir un archivo de MultiPrint (extensión fol) e imprimirlo, además de definir las páginas que se imprimirán, a que impresora se manda el archivo y el valor de los campos variables del formato.


INSTALACIÓN
Descargue el archivo printex.zip y desempaquelo a una carpeta. Copie los archivos PrinteX.ocx y PrinteX.hlp al directorio System de windows (normalmente c:\\windows\\system) y el resto de los archivos dejelos en la carpeta que creó para ello.
El archivo test.zip contiene un pequeño proyecto en Visual Basic 6.0 que muestra de manera muy sencilla el uso del control.
Antes de ejecutar el ejemplo o usar el control debe registrarlo, desde la linea de comandos utilice el programa regsvr32, incluido en la instalación, y pase como argumento la ruta completa del control: regsvr32 c:\\windows\\system\\printex.ocx.

METODOS

OpenFormat
Parámetros: LPSTR filename

Intenta abrir el archivo especificado en el parámetro. Al abrir exitosamento un archivo, todos los valores del documento toman sus valores por omisión.

PrintFormat
Imprime el documento en la impresora seleccionada

PrintOn
Parámetros: LPSTR printer

Define la impresora a la que se mandará el documento, el parámetro es el nombre de la impresora. Puede obtener los nombres de las impresoras instaladas en el sistema mediante GetNextInstalledPrinter y seleccionar de ellas una. Si no se utiliza este método, el método PrintFormat mandará el documento a la impresora predeterminada.

GetNextInstalledPrinter
Parámetros: BOOL from_start

Regresa: STR Nombre de la impresora

Este método lista todas las impresoras instaladas en el sistema, si el parámetro from_start es verdadero el método regresa siempre la primera impresora encontrada, si es falso regresa la siguiente impresora o una cadena vacia si no hay mas. El siguiente pseudocodigo muestra como se puede utilizar:

STR printer = printex.GetNextInstalledPrinter(Verdadero)

while(printer no sea vacio)

ListBox.Insert(printer) o hacer algo con la cadena

printer = printex.GetNextInstalledPrinter(Falso)

EndWhile

PrintPages
Parámetros: ULONG from, ULONG to

Especifíca el rango de páginas que se imprimirán. Por omisión, el método PrintFormat imprime sólo la primera página del documento, esto es el equivalente de llamar PrintPages(1,1). Al crear un documento en MultiPrint, se define en que página comienza a imprimirse cada elemento y cada cuantas páginas es valido dicho elemento. Cuando el formato a imprimir esta dividido en etiquetas, los valores de esta función se refieren al numero de etiquetas a imprimir y no al número de páginas.

SetFirstLabel
Parámetros: ULONG first_label

Cuando se define en MultiPrint que cada página del documento esta dividida en etiquetas, tiene la opción de definir en que etiqueta de la primera página comenzará la impresion. Por omisión, el valor de la primera etiqueta a imprimir es 0, que equivale a la primera etiqueta de la página, la numeración de las etiquetas en una página es como sigue: El número 0 equivale a la primera etiqueta de la esquina superior izquierda, el siguiente número equivale a la etiqueta suiguiente sobre la misma fila, cuando se terminan las filas, se continua con la primera etiqueta del lado izquierdo en la fila siguiente.

SetDocumentName
Parámetros: LPSTR doc_name

Define el nombre del documento que se muestra en los diálogos del proceso de impresión. El valor por omisión del nombre del documento es \'Printex\'.

SetVariableValue
Parámetros: ULONG idVariable, LPSTR varValue

En MultiPrint se pueden definir elementos de texto cuyos valores son variables y se determinan dinamicamente desde el programa que enlace con PrinteX, el nombre de la variable en MultiPrint debe ser un número, que equivale al primer parámetro de éste método e identifica al elemento. El segundo parámetro es el valor que tomará el elemento en la siguiente llamada a PrintFormat.

SetGridValue
Parámetros: LPSTR grid_name, ULONG row, ULONG col, LPSTR value

Otro de los elementos con valores variables que MultiPrint puede usar son las tablas, este método permite especificar el valor o texto que se imprimirá en cada celda de la tabla. El primer parámetro corresponde al nombre de la tabla tal y como se definió en MultiPrint, ya que en una sóla página podemos combinar mas de una tabla. Los parámetros row y col especifican de que celda de la tabla se trata como coordenadas en un plano, a la celda de la primera fila y la primera columna le corresponden los valores de 0 y 0 para row y col respectivamente.

ResetVariables
Elimina todos los valores de las variables que se especificaron con SetVariableValue, dejandolos como cadenas vacias.

ResetGrid
Parámetros: LPSTR grid_name

Elimina todos los valores de las celdas que se especificaron con SetGridValue de la tabla con nombre igual a grid_name, dejandolos como cadenas vacias. Si el parámetro grid_name es una cadena vacia, el proceso se hace en todas tablas del documento.


Los pasos a seguir para la impresión de un docmento son:
1 - Crear una instancia del control
2 - Abrir un documento con OpenFormat
3 - Si el documento tiene elementos variables, especificar sus valores con SetVariableValue y SetGridValue
4 - Especificar los parámetros de impresión con PrintPages, SetFirstLabel, PrintOn y SetDocumentName o tomar sus valores por omisión. Puede crear un diálogo para que el usuario seleccione algunos parámetros como las paginas a imprimir, la primera etiqueta y la impresora. Utilice GetNextInstalledPrinter para proporcionar al usuario una lista de impresoras instaladas
5 - Imprimir el documento con PrintFormat


Si tiene dudas, o sugerencias no dude en contactarnos a soporte@sibees.com

Juan Fernández Albarran Pte. 202-2 Col. Universidad. Toluca Estado de México. C.P. 50130