< Características avanzadas > Programas xjs > Referencia de Objetos > Objeto Impresor

Referencia de extensiones de impresión

<< Click to Display Table of Contents >>

Navegación:  Características avanzadas > Programas xjs > Referencia de Objetos >

Referencia de extensiones de impresión

Objeto impresor

Métodos

Propiedades

Modificadores de formato

Métodos

imp.campo ([dato[, mod]]) - Añade un campo a la lista de campos a imprimir. Este es el método por defecto del objeto impresor, por lo que no es necesario incluir la palabra campo para invocarlo. El argumento dato puede ser: una cadena de texto, o un número, o una expresión que pueda evaluarse a una cadena de texto o a un número, o un objeto subtabla. El argumento mod es una cadena de texto conteniendo modificadores de formato del campo, estos modificadores determinarán el aspecto que tendrá el campo. Si no recibe ningún argumento, añadirá un campo vacío.

imp.global (mod) - Establece modificadores de formato que se aplicarán a todos los campos del informe. La cadena mod contendrá una combinación de modificadores de formato.

imp.grafico (archivo[, mod]) - Muestra el gráfico contenido en el archivo que recibe como argumento, archivo es el nombre completo de un archivo de tipo gráfico (gif, jpg, bmp, tif, etc.), por ejemplo c:\\Sigrid3\\Graficos\\migra.bmp. Opcionalmente puede especificar una cadena conteniendo modificadores de formato, como por ejemplo la posición dentro de la página en la que se quiere mostrar el gráfico. El tamaño del gráfico se ampliará o reducirá para ocupar el espacio vertical del campo en que se imprime sin perder su relación ancho-alto.

imp.grafico (bas, "cab"[, mod]) - Muestra el logo almacenado en los parámetros de la empresa de trabajo. El argumento bas es un objeto base que referencia a la base de datos abierta en la ventana principal.

imp.grafico (bas, "gra;"+ide[, mod]) - Muestra el gráfico de ide igual al parámetro ide que recibe, de entre los incrustados o vinculados a la base de datos representada por el parámetro bas. Por ejemplo:

var bas=base()

var imp=impresor()

imp.grafico (bas, "gra;"+1556, "v20")    // imprime el gráfico de ide=1556 con una altura de 20mm.

imp.hor ([x1][, x2][, y] [,mod]) - Muestra una línea horizontal desde el punto x1 al punto x2 expresados en milímetros desde el margen izquierdo de la página, a una distancia y en milímetros desde el margen superior de la página. Opcionalmente puede recibir una cadena de modificadores. Si no recibe ningún argumento muestra una línea horizontal ocupando el ancho de página disponible.

imp.linea ([mod[,une]]) - Muestra los campos definidos previamente con el método campo.

Si se ha invocado previamente el método tabla los campos se mostrarán en las columnas definidas para la tabla. En caso contrario, teniendo en cuenta el tamaño del papel, los márgenes establecidos, y el número de columnas del informe, el método linea divide el ancho disponible de la página en partes iguales, asignando este espacio a cada campo de la lista, y colocando en este él el valor de cada campo.

El argumento mod es una cadena de texto conteniendo modificadores de formato aplicables a la línea, si une es distinto de cero la línea irá unida a la siguiente, siempre que sea posible, quedando ambas en la misma página.

imp.pagina () - Equivale a un salto de página.

imp.tabla ([modc][, modt]) - Determinar el número total de columnas que se quiere mostrar cada vez que se llame al método linea, y el aspecto que tendrá cada una de ellas. El argumento modc es una cadena de texto que contiene los modificadores para las columnas de la tabla, los modificadores de cada columna se separan con un espacio. Si el modificador de columna es un punto, significa que no se aplicarán ningún modificador de columna. El argumento modt es una cadena que especifica los modificadores aplicables a todas las columnas de la tabla o modificadores de tabla. Si no se especifican argumentos el resultado será la eliminación de la anterior definición de tabla.

imp.ver ([y1][, x][, y2] [,mod]) - Muestra una línea vertical desde el punto y1 al punto y2 expresados en milímetros desde el margen superior de la página, a una distancia x en milímetros desde el margen izquierdo de la página. Opcionalmente puede recibir una cadena de modificadores. Si no recibe ningún argumento muestra una línea vertical ocupando el alto de página disponible.

Propiedades

col - Almacena la columna dentro del informe en la que se mostró la última línea al invocar el método linea. Si al inicializar el objeto impresor no se especificó el número de columnas del informe, o este número es 1, la propiedad col tendrá el valor 1 durante toda la ejecución del informe. Si por el contrario el número de columnas del informe es superior a 1, la propiedad col tendrá inicialmente el valor 1, y se incrementará de uno en uno al mostrar la primera línea de las sucesivas columnas del informe.

pag - Almacena el número de página actual. Para mostrar el número de página en el informe:

       imp ("Página: " + imp.pag);

 

x1 - Almacena el valor en milímetros del margen izquierdo establecido en Configuración Impresora.

COMImp4

x2 - Almacena la distancia en milímetros desde el borde izquierdo de la página al margen derecho establecido en Configuración Impresora.

xx - Diferencia entre x2 y x1.

y1 - Almacena la distancia en milímetros desde el borde superior de la página al comienzo de la línea que se imprime al llamar al método linea.

y2 - Almacena la distancia en milímetros desde el borde superior de la página al margen inferior definido en Configuración Impresora.

yy - Diferencia entre y2 e y1.

subtabla - es un objeto que tiene las mismas propiedades y métodos que impresor, siendo a su vez el objeto subtabla uno de sus miembros. Permite definir subtablas dentro de las tablas para poder diseñar informes de cualquier nivel de complejidad.

Para inicializar el objeto subtabla se utiliza la siguiente sintaxis:

s = imp.subtabla ([modsc[, mods[, modc]]]);

El primero de los argumentos especifica el ancho de las columnas de la subtabla y el número de estas, pueden también especificarse otros modificadores de formato que afectarán a las columnas de la subtabla. El segundo especifica los modificadores que afectarán a toda la subtabla. El tercero contiene modificadores para el campo de la tabla en el que se está definiendo la subtabla.

 

Modificadores de formato

Los métodos del objeto impresor reciben como argumento una cadena de texto conteniendo códigos que se interpretan como modificadores de la forma en que se muestran los datos. Estos códigos se conocen como modificadores de formato.

Cuando se definen modificadores a distintos niveles (invocando los distintos métodos del objeto impresor) que afectan al formato de un mismo atributo de un campo, se impone el siguiente criterio de precedencia de mayor a menor:

modificador de campo (especificado en el método campo)

modificador de línea (especificado en el método linea)

modificadores de columna (especificados como primer argumento del método tabla)

modificadores de tabla (especificados como segundo argumento del método tabla)

modificadores globales (especificados con el método global0)

xn, yn - Modificadores de posición que determinan una posición absoluta en mm, independiente del margen establecido. Por ejemplo imp.linea ("x50 y75"), mostrará los datos en el punto que se encuentra a 50 mm hacia la derecha desde el borde izquierdo de la página y 75 mm hacia abajo desde el borde superior, independientemente del margen establecido en la configuración de la página.

n, vn - Determinan el tamaño horizontal y vertical en mm. Por ejemplo, imp.tabla ("75 40 30") define una tabla de tres columnas de 75, 40 y 30 mm de ancho; imp.linea ("v20") mostrará los campos de la línea con una altura de 20 mm.

cn - Modificador de combinación de campos. Por ejemplo imp ("Cliente especial por su volumen de facturación", "c3"), unirá el campo actual con los dos siguientes dando formato al dato en el espacio correspondiente a los tres campos.

an - Alineación del dato dentro del campo:

COMImp2

ahn - Alineación horizontal: ah0 - Izquierda; ah1 - Centro; ah2 - Derecha.

avn - Alineación vertical: av0 - Superior; av1 - Centro; av2 - Inferior.

 

ln - Especifica un tipo de letra de los definidos el diálogo Configuración de Impresora , al que se accede desde la ventana Imprime con el botón Configura, n será un número del 0 al 4 referenciando los cinco tipos de letra definidos en dicho diálogo.

ln - Letra Negrita.

lc - Letra Cursiva.

ls - Letra Subrayada.

lt - Letra Tachada.

lf - Letra de paso fijo, cada carácter ocupa el mismo espacio horizontal, por ejemplo la letra Courier.

lo - Letra opaca: si se define para el interior del campo algún color y no se especifica lo, las letras aparecerán sobre dicho color de fondo sin sobrescribirlo, de forma que entre una letra y otra aparecerá el color del interior del campo. Sin embargo, el modificador lo hace que la letra sobrescriba sobre el color del fondo.

lhn - Tamaño horizontal de la letra en milímetros.

lvn - Tamaño vertical de la letra en puntos.

l#n - Color del texto. Por ejemplo l#CE40A7 para que la letra sea rosa.

lan - Angulo de giro del texto. Por ejemplo la45, texto girado 45º.

lrc - Rellena el espacio libre del campo con el carácter c. Por ejemplo: imp ("campo 1", "lr."), mostrará en el campo correspondiente campo 1.........., rellenando con puntos (.) el espacio disponible.

ljn - Texto justificado: lj0 - no justificado; lj1 - justificado; lj2 - justificado incluso en la última línea.

lgn - Guionado del texto: lg0 - no guionado; lg1 - guionado normal; lg2 - si el texto no cabe en el espacio horizontal del campo lo corta mostrando tres puntos (...).

bn - Borde del campo: b0 - sin borde; b1 - borde continuo; b2 - borde de puntos; b3 - borde de rayas.

bgn - Grosor del borde en milímetros.

bi, bd, bs, bn - Borde izquierdo, borde derecho, borde superior, borde inferior.

bh - Borde horizontal. Equivalente a bs bn.

bv - Borde vertical. Equivalente a bi bd.

b#n - Color del borde.

mn - Margen interno del campo en milímetros.

min, mdn, msn, mnn - Margen interno en milímetros: izquierdo, derecho, superior, inferior.

mhn - Margen interno horizontal en milímetros. Equivalente a ms mn.

mvn - Margen interno vertical en milímetros. Equivalente a mi md.

m#n - Color de relleno del margen interno.

en - Margen externo del campo en milímetros.

ein, edn, esn, enn - Margen externo en milímetros: izquierdo, derecho, superior, inferior.

ehn - Margen externo horizontal en milímetros. Equivalente a ms mn.

evn - Margen externo vertical en milímetros. Equivalente a mi md.

e#n - Color de relleno del margen externo.

COMImp3