Está en la página 1de 95

SOFTLAND LTDA.

Generador de Informes
Softland

Manual del Usuario


(Versión 1.1)

ADVERTENCIA:
Este producto es de propiedad intelectual de SOFTLAND LTDA. Toda reproducción total o parcial de él, está penada
por la Ley.
Windows es propiedad intelectual de Microsoft.
Manual editado por el Departamento de Publicaciones de SOFTLAND LTDA. 7º de Línea 1247 - Teléfono:
3889000 - Fax: 2355432 - Providencia - Santiago - Chile. (0408)
GENERADOR DE INFORMES SOFTLAND 1-1

INDICE ..................................................................................................................1

Generador de Informes Softland .....................................................................................................................................4


Tablas de diccionarios genéricos para cualquier sistema ERP..............................................................................7
Tablas de diccionarios sólo cuando la empresa exista por Activo Fijo ERP.........................................................7
Tablas de diccionarios sólo cuando la empresa exista por Contabilidad, Proveedores y Clientes ERP................7
Tablas de diccionarios sólo cuando la empresa exista por Notas de Venta ERP ..................................................8
Tablas de diccionarios sólo cuando la empresa exista por Órdenes de Compra ERP ...........................................9
Tablas de diccionarios sólo cuando la empresa exista por Recursos Humanos ERP ............................................9
Tablas de diccionarios sólo cuando la empresa exista por Inventario y Facturación ERP....................................9
Modificar un Informe .................................................................................................................................................17
Eliminar un Informe...................................................................................................................................................17
Imprimir un Informe ..................................................................................................................................................17
Seguridad .........................................................................................................................................................................18
Permiso por Usuario...................................................................................................................................................18
Cambio de Password ..................................................................................................................................................20
Expresiones......................................................................................................................................................................21
Introducción ...............................................................................................................................................................21
Texto en Expresiones .................................................................................................................................................21
Cálculos de Valores del Diccionario ..........................................................................................................................21
Multilínea en Expresiones..........................................................................................................................................22
Uso de Variables del Diccionario...............................................................................................................................22
Uso de Variables en el Código del Informe ...............................................................................................................22
Uso de los campos de Fuentes de Datos.....................................................................................................................23
Variables del Sistema .................................................................................................................................................24
Funciones de Expresión .............................................................................................................................................24
Texto de Información de Salida .....................................................................................................................................25
Introducción ...............................................................................................................................................................25
Parámetros de Salida de Texto ...................................................................................................................................25
Introducción ........................................................................................................................................................25
Múltiples Líneas.........................................................................................................................................................25
Arreglar ......................................................................................................................................................................25
Límite de Líneas.........................................................................................................................................................26
Líneas Subrayadas......................................................................................................................................................26
Número Máximo de Líneas........................................................................................................................................26
Ángulo........................................................................................................................................................................26
Procesando Duplicados ..............................................................................................................................................26
Condiciones................................................................................................................................................................27
Esconder Ceros ..........................................................................................................................................................27
Expresiones en el Texto ..................................................................................................................................................28
Texto sin Salida de Expresiones.................................................................................................................................28
Formato de Texto .......................................................................................................................................................28
Introducción ........................................................................................................................................................28
Formato General.........................................................................................................................................................29
Formato Numérico .....................................................................................................................................................29
Formato de Moneda Corriente ...................................................................................................................................30
Fecha Formato............................................................................................................................................................31
Formato de Hora ........................................................................................................................................................31
Formato de Porcentaje................................................................................................................................................32
1-2 Generador de Informes Softland

Formato de Valores Boléanos ....................................................................................................................................33


Formato Personalizado...............................................................................................................................................33
Sistema de Información..............................................................................................................................................34
Funciones (sumario)...................................................................................................................................................34
Variables del Sistema .................................................................................................................................................35
Expresiones ................................................................................................................................................................35
Información Gráfica de Salida.......................................................................................................................................36
Introducción ...............................................................................................................................................................36
Imágenes ....................................................................................................................................................................36
Carga de Imágenes .....................................................................................................................................................36
Códigos de Barras ......................................................................................................................................................36
Formas........................................................................................................................................................................37
Estilos de los Componentes ............................................................................................................................................38
Introducción ...............................................................................................................................................................38
Fuentes .......................................................................................................................................................................38
Fondo .........................................................................................................................................................................38
Bordes ........................................................................................................................................................................39
Alineamiento Horizontal ............................................................................................................................................39
Alineación Vertical ....................................................................................................................................................40
Informes ...........................................................................................................................................................................41
Introducción ...............................................................................................................................................................41
Código del Informe ....................................................................................................................................................41
Bandas..............................................................................................................................................................................43
Introducción ...............................................................................................................................................................43
Tipos de Bandas .........................................................................................................................................................43
Bandas de Salida ........................................................................................................................................................43
Bandas de Datos.........................................................................................................................................................45
Introducción ........................................................................................................................................................45
Fuente de Datos para la Banda de Datos .............................................................................................................45
Datos de la Banda Virtual ...................................................................................................................................45
Lista de Salida .....................................................................................................................................................46
Lista con Cabecera ..............................................................................................................................................46
Banda de Pie de Página .......................................................................................................................................47
Listar una Banda tras otra....................................................................................................................................48
Clasificación de Datos.........................................................................................................................................48
Filtro de Datos.....................................................................................................................................................49
Banda Páginas ............................................................................................................................................................52
Introducción ........................................................................................................................................................52
Cabecera de Página .............................................................................................................................................52
De Pie de Página .................................................................................................................................................53
Informes Agrupación .................................................................................................................................................54
Introducción ........................................................................................................................................................54
Condición de Agrupación....................................................................................................................................54
Encabezado Grupo ..............................................................................................................................................54
Grupo de Pie de Página .......................................................................................................................................54
Nueva Página.......................................................................................................................................................55
Sólo Salida de Pie de Grupo................................................................................................................................55
Grupos Anidados.................................................................................................................................................55
Los Totales de un Grupo .....................................................................................................................................55
Numeración en un Grupo ....................................................................................................................................55
GENERADOR DE INFORMES SOFTLAND 1-3

Contenedores ...................................................................................................................................................................56
Introducción ...............................................................................................................................................................56
Bandas de Posicionamiento en un Contenedor ..........................................................................................................56
Posición de Contenedores ..........................................................................................................................................56
Posicionamiento en una Página ...........................................................................................................................56
Posicionamiento sobre una Banda.......................................................................................................................57
Posicionamiento en un Contenedor .....................................................................................................................57
Informe de Lado a Lado.............................................................................................................................................57
Múltiples tablas en una Página de Salida ...................................................................................................................58
El Cálculo de los Totales.................................................................................................................................................59
Introducción ...............................................................................................................................................................59
Totales de la Producción en cualquier parte de un Informe .......................................................................................59
Totales con Condición................................................................................................................................................59
Cálculo de los Totales de una Página y de un Contenedor.........................................................................................59
Cálculo de los Totales de una Columna .....................................................................................................................59
Agregar Funciones de Sintaxis...................................................................................................................................60
Navegación.......................................................................................................................................................................61
Introducción ..............................................................................................................................................................61
Marcadores.................................................................................................................................................................61
Árbol del Reporte.......................................................................................................................................................61
Hyperlinks..................................................................................................................................................................61
Preguntas Frecuentes......................................................................................................................................................62
General .......................................................................................................................................................................62
Diseñador de Reportes ...............................................................................................................................................65
Trabajar con Informes ................................................................................................................................................66
El Acceso a los Datos..........................................................................................................................................66
Formateando y Convirtiendo...............................................................................................................................70
Variables..............................................................................................................................................................71
Temas Varios.......................................................................................................................................................72
Vista Previa .........................................................................................................................................................77
Impresión de Informes.........................................................................................................................................85
Exportadores e Informes .....................................................................................................................................89
Configuraciones ..................................................................................................................................................91
1-4 Generador de Informes Softland

Generador de Informes Softland

Objetivo
Esta aplicación permite generar informes a partir de un diccionario de datos Softland.

Importante
Para operar con esta aplicación, deberá tener creado el perfil asociado a un usuario dentro del Sistema ERP, el sistema chequeará
que los perfiles hayan sido creados, de lo contrario, desplegará un mensaje de advertencia, tal como se muestra a continuación:

Sr. Usuario:
Los informes generados por este sistema podrán ser visualizados por los usuarios que correspondan a algún perfil
especifico definido en uno o varios módulos Softland.
Es necesario antes de proceder a la generación de un informe, contar con perfiles definidos.
Por favor proceda a crearlos en el sistema ERP proceso Permiso por Perfiles menú Seguridad y luego acceda a generar los
informes.

Operatoria
Para ejecutar esta aplicación seleccione Inicio/Programa/Softland ERP/Generador de Informes:

Figura Nº 1

A continuación, se desplegará una pantalla con todas las empresas a las cuales puede acceder, indicando la unidad de localización,
nombre y razón social de las empresas generadas, las cuales pueden ser visualizadas por disco, razón social empresa o todas.
GENERADOR DE INFORMES SOFTLAND 1-5

Para seleccionar la empresa, haga clic en el botón , tras lo cual, el sistema solicitará ingresar el usuario y la password, tal como
se muestra en la siguiente pantalla:

A continuación, seleccione el botón Aceptar para continuar con el proceso.

Para agregar un nuevo informe, seleccione el botón desde la 2ª Barra de Herramientas, tras lo cual se desplegará la pantalla
para la Generación de Informes, tal como se muestra a continuación:
1-6 Generador de Informes Softland

En ella, podrá seleccionar los íconos: Informe en Blanco o Asistente de Informes para continuar con el proceso, los demás
íconos se encuentran deshabilitados en esta versión.

Al seleccionar el botón Cancelar, se carga la fuente de datos de la empresa y el correspondiente diccionario por defecto, donde el
usuario podrá crear a partir de estos datos sus propios informes, tal como se muestra en la siguiente pantalla:
GENERADOR DE INFORMES SOFTLAND 1-7

A continuación, describiremos de las tablas y campos que conforman el Diccionario de Datos:

Tablas de diccionarios genéricos para cualquier sistema ERP:


Ciudad:
Esta tabla del diccionario nos proporciona información sobre todas las Ciudades creadas en la base de datos.

Comuna:
Esta tabla del diccionario nos proporciona información sobre todas las Comunas creadas en la base de datos.

Meses:
Esta tabla del diccionario nos proporciona información sobre todos los meses creados en la base de datos.

Monedas:
Esta tabla del diccionario nos proporciona información sobre todas las monedas creadas en la base de datos.

Países:
Esta tabla del diccionario nos proporciona información sobre todos los países creados en la base de datos.

Provincia:
Esta tabla del diccionario nos proporciona información sobre todas las provincias creadas en la base de datos.

Regiones:
Esta tabla del diccionario nos proporciona información sobre todas las regiones creadas en la base de datos.

Tablas de diccionarios solo cuando la empresa exista por Activo Fijo ERP:
Activos Ficha:
Esta tabla del diccionario nos entrega información de la ficha de los activos fijos ingresados por el sistema. Usted podrá
seleccionar los campos que desee incluir en el informe que usted creará.

Activo Notas:
Esta tabla del diccionario nos proporciona información sobre las notas que poseen los activos fijos en su respectiva ficha.

Activos Producidos:
Esta tabla del diccionario nos proporciona información sobre la tabla de producción de los activos creados en el sistema.

Activos Readecuación:
Esta tabla del diccionario nos proporciona información sobre los movimientos que han tenido los activos fijos creados en el
sistema, donde podrá asociar

Activos Ubicaciones:
Esta tabla del diccionario nos proporciona información sobre donde se encuentran los activos fijos ingresados la sistema.

Tablas de diccionarios solo cuando la empresa exista por Contabilidad, Proveedores y


Clientes ERP:
Contabilidad Comprobantes:
Esta tabla del diccionario nos proporciona información sobre el encabezado del comprobante, donde podrá seleccionar los
campos de inicio de un comprobante.

Contabilidad Comprobante Movimientos:


Esta tabla del diccionario nos proporciona información sobre los movimientos contables asociado a un numero de
comprobante, donde se podrá vincular los campos referentes a la cuenta contable, Debe, Haber, Descripciones, etc... de un
comprobante contable.

Contabilidad Comprobante Movimientos Detalle:


Esta tabla del diccionario nos proporciona información sobre el detalle de libro por documentos rango de documentos.
1-8 Generador de Informes Softland

Contabilidad Plan Cuentas:


Esta tabla del diccionario nos proporciona información sobre el detalle de las cuentas contables creadas en la base de datos, los
campos códigos, descripción y tipo de cuentas.

Contabilidad Saldo de Cuentas:


Esta tabla del diccionario nos proporciona información sobre el saldo contable de los movimientos por cuentas contables.

Contabilidad Tipos Documento:


Esta tabla del diccionario nos proporciona información sobre los tipos de documentos creados en la base de datos, libro
compra, libro venta, libro retención y otros.

Proveedores:
Esta tabla del diccionario nos proporciona información sobre los auxiliares (Ficha de Auxiliar) que están clasificados como
proveedor.

Proveedores Saldo:
Esta tabla del diccionario nos proporciona información sobre el saldo por auxiliar por cuenta contable y monto, para aquellos
auxiliares que son proveedores.

Proveedores Saldo Documentos:


Esta tabla del diccionario nos proporciona información sobre el saldo por auxiliar por cuenta contable, tipo de documento,
fechas y monto, para aquellos auxiliares que son Proveedores.

Clientes:
Esta tabla del diccionario nos proporciona información sobre los auxiliares (Ficha de Auxiliar) que están clasificados como
clientes.

Clientes Saldo:
Esta tabla del diccionario nos proporciona información sobre el saldo por auxiliar por cuenta contable y monto, para aquellos
auxiliares que son Clientes

Clientes Saldo Documentos:


Esta tabla del diccionario nos proporciona información sobre el saldo por auxiliar por cuenta contable, tipo de documento,
fechas y monto, para aquellos auxiliares que son Clientes.

Tablas de diccionarios solo cuando la empresa exista por Notas de Ventas ERP:
Gestión Venta Cotizaciones:
Esta tabla del diccionario nos proporciona información sobre el encabezado de las cotizaciones ingresadas en la base de datos.

Gestión Venta Cotizaciones Detalle:


Esta tabla del diccionario nos proporciona información sobre los movimientos o detalle de las cotizaciones ingresadas en la
base de datos.

Gestión Venta Notas de Venta:


Esta tabla del diccionario nos proporciona información sobre el encabezado de las Notas de Ventas ingresadas en la base de
datos.

Gestión Venta Notas de Venta Detalle:


Esta tabla del diccionario nos proporciona información sobre los movimientos o detalle de las notas de ventas ingresadas en la
base de datos.

Gestión Venta Resumen:


Esta tabla del diccionario nos proporciona información sobre el estado de cada nota de venta por producto despachados,
reservados o facturados.

Producto:
Esta tabla del diccionario nos proporciona información sobre la ficha de producto creados en la base de datos.
GENERADOR DE INFORMES SOFTLAND 1-9

Producto Complementario:
Esta tabla del diccionario nos proporciona información sobre los productos complementario asociados en la ficha de
productos.

Producto Sustituto:
Esta tabla del diccionario nos proporciona información sobre los productos sustitutos asociados en la ficha de productos.

Tablas de diccionarios solo cuando la empresa exista por Órdenes Compra ERP:
Gestión Compra Orden Compra:
Esta tabla del diccionario nos proporciona información sobre el encabezado de las ordenes de compra ingresadas en la base de
datos.

Gestión Compra Orden Compra Detalle:


Esta tabla del diccionario nos proporciona información sobre los movimientos o detalles de ordenes de compra ingresadas en
la base de datos.

Gestión Compra Requisiciones:


Esta tabla del diccionario nos proporciona información sobre el encabezado de las requisiciones ingresadas en la base de datos.

Gestión Compra Requisiciones Detalle:


Esta tabla del diccionario nos proporciona información sobre los movimientos o detalle de las requisiciones ingresadas en la
base de datos.

Gestión Compra Resumen:


Esta tabla del diccionario nos proporciona información sobre el estado de las ordenes de compra por producto y cantidades.

Tablas de diccionarios solo cuando la empresa exista por Recursos Humanos ERP:
Empleados Ficha:
Esta tabla del diccionario nos proporciona información sobre la ficha de cada trabajador que se encuentre ingresado en la base
de datos.

Empleados Saldo:
Esta tabla del diccionario nos proporciona información sobre el saldo por cuenta y código de auxiliar que este marcado con
clasificación empleado.

Tablas de diccionarios solo cuando la empresa exista por Inventario y Facturación ERP:
Inventario Costo Promedio Actual:
Esta tabla del diccionario nos proporciona información sobre el costo promedio por producto.

Inventario Guías Despacho:


Esta tabla del diccionario nos proporciona información sobre el encabezado de las guías de despacho emitidas he ingresadas en
la base de datos.

Inventario Guías Despacho Detalle:


Esta tabla del diccionario nos proporciona información sobre los movimientos y detalle de las guías de despacho emitidas he
ingresadas en la base de datos.

Inventario Guías de Entrada:


Esta tabla del diccionario nos proporciona información sobre el encabezado de las guías de despacho recibidas he ingresadas
en la base de datos.

Inventario Guías de Entrada Detalle:


Esta tabla del diccionario nos proporciona información sobre los movimientos y detalle de las guías de despacho recibidas he
ingresadas en la base de datos.

Inventario Movimientos Entrada Salida:


Esta tabla del diccionario nos proporciona información sobre la entrada y salidas de los productos ingresados en base de datos.
1-10 Generador de Informes Softland

Inventario Stock Bodega Producto:


Esta tabla del diccionario nos proporciona información sobre el stock en cantidad de productos por bodega.

Inventario Stock Detallado:


Esta tabla del diccionario nos proporciona información sobre el stock detallado de movimientos de stock de productos por
bodega.

Inventario Stock Producto:


Esta tabla del diccionario nos proporciona información sobre el stock por producto que se encuentran por cada uno de ellos en
la base de datos.

Ventas:
Esta tabla del diccionario nos proporciona información sobre las venta totales por vendedor, fecha, tipo de documento y
auxiliar.

Ventas Boletas:
Esta tabla del diccionario nos proporciona información sobre las boletas emitidas.

Ventas Boletas Electrónicas:


Esta tabla del diccionario nos proporciona información sobre las boletas electrónicas emitidas.

Ventas Boletas Exentas Electrónicas:


Esta tabla del diccionario nos proporciona información sobre las boletas electrónicas Exentas Emitidas.

Ventas Boletas Exentas:


Esta tabla del diccionario nos proporciona información sobre las boletas Exentas Emitidas.

Ventas Detalle Boletas:


Esta tabla del diccionario nos proporciona información sobre los movimientos y detalle de las boletas emitidas.

Ventas Facturas:
Esta tabla del diccionario nos proporciona información sobre las Facturas emitidas.

Ventas Facturas Electrónicas:


Esta tabla del diccionario nos proporciona información sobre las Facturas electrónicas emitidas.

Ventas Facturas Exentas Electrónicas:


Esta tabla del diccionario nos proporciona información sobre las Facturas electrónicas Exentas Emitidas.

Ventas Facturas Exentas:


Esta tabla del diccionario nos proporciona información sobre las Facturas Exentas Emitidas.

Ventas Detalle Facturas:


Esta tabla del diccionario nos proporciona información sobre los movimientos y detalle de las Facturas emitidas.

Ventas Notas de Créditos:


Esta tabla del diccionario nos proporciona información sobre las Notas de Créditos emitidas.

Ventas Notas de Créditos Electrónicas:


Esta tabla del diccionario nos proporciona información sobre las Notas de Créditos electrónicas emitidas.

Ventas Notas de Créditos Exentas Electrónicas:


Esta tabla del diccionario nos proporciona información sobre las Notas de Créditos electrónicas Exentas Emitidas.

Ventas Notas de Créditos Exentas:


Esta tabla del diccionario nos proporciona información sobre las Notas de Créditos Exentas Emitidas.

Ventas Detalle Notas de Créditos:


Esta tabla del diccionario nos proporciona información sobre los movimientos y detalle de las Notas de Créditos emitidas.
GENERADOR DE INFORMES SOFTLAND 1-11

• Al seleccionar Informe en Blanco, el sistema mostrará una pantalla con el diseñador de informe en blanco, permitiendo
de esa forma incorporarle todas las tablas, campos, y consultas a considerar.

• Al seleccionar el ícono Asistente de Informes, el sistema mostrará los tipos de Informes a los que puede acceder, en esta
versión sólo está habilitado el ícono Informe Estándar.

Al continuar, se desplegará una nueva pantalla, la cual trae predefinida la tabla del diccionario (Tablas, Consultas y
Campos a desplegar), tal como se muestra a continuación:

Dentro de la lista desplegada, seleccione una fuente de datos (ej: Ciudades, Comunas, etc.). Indicada la información
seleccione el botón Próximo para continuar con el proceso.
1-12 Generador de Informes Softland

Dependiendo de la fuente de datos elegida, seleccione las columnas que desea mostrar en el informe, para esto haga clic
ben el caja de chequeo que precede la columna a considerar.
Para seleccionar todas las columnas que se muestran en pantalla, seleccione el botón Marcar Todos, por el contrario, el
botón Restauración desmarcará las seleccionadas.

Para continuar con el proceso, seleccione el botón Próximo.

Dentro de esta pantalla, podrá organizar el orden de las Columnas a visualizar en el informe, para esto utilice el botón

ubicado en la parte superior derecha de la pantalla.

Junto a esta información se encuentran activos los siguientes botones: Anterior regresa a la pantalla anterior, Próximo
continua con el proceso, Fin finaliza el asistente y Cancelar finaliza el proceso.
GENERADOR DE INFORMES SOFTLAND 1-13

A continuación podrá determinar el ordenamiento de la información, pudiendo ordenar inmediatamente en columnas


múltiples.
Para continuar con el proceso, seleccione el botón Próximo.

Dentro de esta pantalla podrá indicar los filtros a considerar en el informe, seleccione el botón Próximo para continuar
con el proceso.
1-14 Generador de Informes Softland

Dependiendo de las columnas consideradas en el informe, seleccione las que son necesarias agrupar, para esto haga clic
en la caja de chequeo que precede a

Junto a esta información se encuentran activos los siguientes botones: Anterior regresa a la pantalla anterior, Próximo
continua con el proceso, Fin y Cancelar finaliza el proceso.

En esta pantalla, podrá especificar y agregar los totales que requiera a su informe.
Para continuar con el proceso, seleccione el botón Próximo.
GENERADOR DE INFORMES SOFTLAND 1-15

Finalmente, podrá especificar el formato de salida del informe (Orientación, Lenguaje, Unidad).

Indicada la información, seleccione el botón Fin, tras lo cual el sistema mostrará el diseño del informe, donde podrá
realizar los cambios deseados, tal como se muestra a continuación:

Para grabar el informe generado, seleccione el botón ubicado en la parte superior de la pantalla, tras lo cual el
sistema desplegará una nueva pantalla.
1-16 Generador de Informes Softland

En esta pantalla, podrá dar un nombre al informe, una descripción y el perfil del usuario que podrá emitir el informe:

Nombre: Nombre con el cual se grabará el informe, largo máximo 250 caracteres (ingreso obligatorio).
Descripción: Descripción del informe, largo máximo 100 caracteres (ingreso obligatorio).
Perfiles:
Sistema : Podrá filtrar los perfiles por sistema, los sistemas a mostrar corresponde a los sistemas que posee la empresa.
Por defecto el sistema mostrará texto “Todos los Sistemas”.

Buscar: Se podrá filtrar los perfiles de acuerdo al texto digitado, esta búsqueda será realizada en el código y descripción,
además del sistema seleccionado, y el resultado de la búsqueda se mostrará en la lista de selección.

Este informe podrá ser visualizado o impreso por los usuarios de los siguientes perfiles: mostrará todos los perfiles
existentes de todos los sistemas, pero además dependiendo de los filtros anteriores, podrá seleccionar uno o varios, el dato
es exigido, al menos debe existir uno.

Ingresada la información, seleccione el botón para grabar el nuevo informe y chequear que toda la información se encuentre
ingresada, de lo contrario, enviará un mensaje de advertencia por pantalla.

Finalmente, los informes generados forman parte de la base de datos del sistema y se muestran en una lista en pantalla.
Junto a esta información, se encuentra activa la 2ª Barra de Herramientas, donde podrá agregar nuevos informes, modificar,
eliminar o imprimir los existentes.
GENERADOR DE INFORMES SOFTLAND 1-17

Modificar un Informe

Seleccione el informe a modificar y haga clic en el botón ubicado en la 2ª Barra de Herramientas, tras lo cual se desplegará el
informe diseñado, donde podrá realizar todas las modificaciones deseadas. Al grabar los cambios sólo podrá modificar la
descripción y los perfiles del informe

Eliminar un Informe

Para eliminar un informe desde la lista, seleccione el botón desde la 2ª Barra de Herramientas, tras lo cual el sistema
desplegará una pantalla con la información asociada al informe (Nombre, Descripción y Perfiles), dentro de esta pantalla,
seleccione nuevamente el botón , el sistema solicitará confirmar la eliminación.

Imprimir un Informe

Para imprimir un informe desde la lista de informes creados, seleccione el botón ubicado en la 2ª Barra de Herramientas,
pudiendo imprimir el informe en el monitor o a la impresora.
A continuación se presenta un ejemplo de este informe:

Para abandonar y regresar a la pantalla anterior, seleccione desde la 2ª Barra de herramientas el botón .
1-18 Generador de Informes Softland

Seguridad
Administrar el control de ingreso de los usuarios a las distintas opciones de este sistema.

Permisos por Usuario


Objetivo
Crear usuarios que tengan acceso al sistema y a la vez asignarle los permisos necesarios para la operación en los distintos procesos.

- La única persona autorizada a operar dentro de este proceso, es el Usuario Principal o Administrador del sistema.
- Tanto los Usuarios, como sus Passwords son únicas en los sistemas Softland, por lo tanto si un Usuario cambia su Password
estando; por ejemplo, en Cotizaciones y Notas de Ventas, ésta quedará registrada y será válida para el ingreso a cualquier
sistema Softland.

Operatoria
Al seleccionar la Definición de Usuario por primera vez, se presenta una pantalla similar a la de Asignación de Privilegios a
Usuarios (Figura Nº 1), variando las opciones según el sistema que esté en uso. En ella tendrá que señalar el Código del Usuario
(máximo 8 caracteres) y su Nombre (máximo 50 caracteres). Por ejemplo: como usuario se podrá ingresar la sigla del nombre
(PQN) y en la descripción el nombre completo (Pablo Quiroga Núñez).
A continuación se activará la carpeta: Permisos, tal como se muestra en la siguiente pantalla:

Figura Nº 1

En esta carpeta el usuario principal asigna los permisos al usuario en definición, para que pueda ingresar a determinados procesos
del sistema.
Al elegirla, se despliega una lista de los procesos y los estados que éstos tienen respecto al usuario en definición.

Los permisos pueden ser otorgados proceso a proceso a un Usuario, o tomando como base los permisos de un Perfil:

• Permisos al usuario proceso a proceso: se otorgan cuando se desea asignar una responsabilidad individual a un usuario,
sobre uno o varios procesos. Por ejemplo: en el caso del sistema de Inventario y Facturación, el digitador Francisco
Fuentes estará a cargo de la Mantención de las Facturas en Línea, por Lotes y Proforma, labores que no serán realizadas
por otro digitador.
• Permisos al usuario tomando como base un Perfil: se otorgan al usuario todos los permisos que tenga asociado un
Perfil, además de aquellos que le hayan sido dados en forma independiente. Por ejemplo: digitador Francisco Fuentes
tendrá permiso para la Mantención de las Facturas en Línea, por Lotes y Proforma y, además los permisos del Perfil
“Operadores”. (Los Perfiles se crean en el proceso Permisos por Perfiles, menú Seguridad de cualquier sistema ERP).
GENERADOR DE INFORMES SOFTLAND 1-19

En esta carpeta se pueden llevar a cabo las siguientes operaciones, seleccionando el botón de opciones que aparece al lado
izquierdo de cada una de las alternativas:

Global: Permite consultar todos los permisos otorgados al usuario en definición, ya sea como usuario independiente o como
parte de un Perfil. Todos aquellos procesos que aparezcan con un 9 en la columna "Asignado", podrán ser
realizados por él.

Usuario: Permite otorgar permisos individuales al usuario en definición, con el fin de que pueda acceder a uno o varios
procesos del sistema.
Para llevar a cabo esta opción, elija el proceso a autorizar en la columna Formulario, ubicando el indicador del
mouse sobre él y haciendo clic. Con esto se despliegan en la columna Permiso, una o varias alternativas de
operación que son dependientes del proceso recientemente elegido, a las cuales podrá tener acceso el usuario.
Para dar autorización se hace un doble clic sobre la o las operaciones deseadas en la columna Permiso. Aquellas que
sean elegidas irán apareciendo con un 9 en la columna "Asignado".
Para dar por finalizado el proceso de definición se selecciona el botón Salir quedando el usuario con los permisos
correspondientes.
De esta misma forma, se pueden dar permisos adicionales a un usuario que tiene asignados Permisos por perfil,
para ello se elige el usuario y luego se ingresan los permisos adicionales.

Finalmente, podrá cambiar la password del usuario que viene predefinida como Softland, a través de la selección del botón
Cambio Password, el cual tras ser elegido despliega una ventana con el nombre del usuario y su password actual, dando acceso
para el ingreso de una nueva.
En este punto podrá modificar la password de cualquier usuario, ya que frente al campo usuario se activa el botón Buscar, el cual
le permite acceder a cualquier usuario de la lista y cambiarle su password. Cualquiera haya sido el caso, bastará con que seleccione
el botón OK, para que la nueva password quede registrada. Para mayores antecedentes respecto al tema password refiérase al
capítulo Cambio de Password.

Ingresados todos los antecedentes para "Permisos por usuarios", se selecciona el botón Salir, quedando el usuario con los permisos
correspondientes. Cuando esto ocurre, se despliega la pantalla con la lista de usuarios definidos, (Ver Figura Nº 2) pudiendo
Agregar, Modificar y/o Eliminar Usuarios, a través de los botones de la 2ª Barra de Herramientas (Ver Apéndice B).

Figura Nº 2

En caso que la lista de usuarios sea muy extensa, se podrá utilizar el sistema de búsqueda automática, que se lleva a cabo
ingresando el código o la descripción del usuario, en uno de los recuadros de búsqueda (parte superior de esta ventana) y luego
seleccionando el botón Aplicar.
Esta pantalla es la misma que se despliega al ingresar a este proceso, cuando existen usuarios que fueron definidos.

Para abandonar el proceso, basta con seleccionar el botón Salir.


1-20 Generador de Informes Softland

Cambio de Password
Objetivo
Modificar la password de los usuarios, tanto principal como secundarios.
En primera instancia todos los usuarios que se generan en este sistema, quedan con la password SOFTLAND, por lo tanto para
modificarla y asignarle a cada usuario su propia password, se debe usar esta opción.

- La password puede ser modificada solamente al usuario que está activo al momento de elegir esta opción. Para cambiársela
a otro usuario, primero se debe activar el usuario deseado y luego ingresarle la nueva password en este proceso. (Un
usuario está activo cuando aparece en la Barra de Estado que se despliega en la parte inferior de la pantalla.

- Tanto los Usuarios, como sus Passwords son únicas en los sistemas Softland, por lo tanto si un Usuario cambia su
Password estando en Contabilidad y Presupuestos, ésta quedará registrada y será válida para el ingreso a cualquier sistema
Softland.

Operatoria
Al seleccionar esta opción se presenta una ventana con el nombre del usuario y se solicita la password original. Una vez que ésta
es ingresada, el sistema pasa a solicitar la nueva password, la cual debe ser ingresada dos veces con el fin de verificar que se
ingresó correctamente. (Ver Figura Nº 1).

Figura Nº 1

Al finalizar se podrá optar por la alternativa OK para que la nueva password quede registrada, o por Salir, para irse del proceso sin
cambiar la password.

El usuario y la password son solicitados por el sistema, cada vez que se selecciona una empresa.
GENERADOR DE INFORMES SOFTLAND 1-21

Expresiones
Introducción
Expresión es una combinación de operadores lógicos y matemáticos, símbolos absolutos, funciones, nombres de campo, controles,
y, como resultado de la transformación de la expresión, se devuelve un único valor. Este valor se almacena y puede ser utilizado
para trabajos posteriores. Las Expresiones que se utilizan con frecuencia en el generador de informes, son expresiones de texto.
Este tipo de expresiones se usa para obtener un texto que se imprimirá y son convertidos en una cadena.

Nombre de la propiedad en la que Propiedad en el que el resultado Descripción


se registra la expresión del cálculo de la expresión se
registra
Text TextValue Esta propiedad se usa para obtener
un texto para la impresión.
Siempre se convierte en una
cadena.
Bookmark BookmarkValue Esta propiedad se usa para calcular
el valor de favoritos.
Hyperlink HyperlinkValue Esta propiedad se usa para calcular
el hipervínculo cadenas
Tag TagValue Esta propiedad se usa para calcular
el valor del campo Etiqueta.
Tooltip TooltipValue Esta propiedad se utiliza para
calcular la cadena de salida en la
ventana de vista previa.
Checked CheckedValue Esta propiedad se utiliza para
calcular la cadena de salida en la
ventana de vista previa.
Filter Esta propiedad se usa para filtrar
datos.
Condition Esta propiedad se utiliza para
calcular la condición de agrupación
en la banda GroupHeader.
Code CodeValue Esta propiedad se usa para calcular
el código para la cadena de códigos
de barras de salida.

Texto en expresiones
La forma más sencilla de expresiones son las expresiones que contienen sólo el texto. Por ejemplo:

MyText
12345
Test

Estas tres expresiones consisten en una constante, y no incluyen cálculos. Las Expresiones de ese tipo se utilizan para indicar las
constantes de cadena simple, absoluta de los símbolos, nombres de columnas, nombre de informes, referencias, etc..

Cálculos de valores en la Expresión


La expresión, excepto la de texto simple, también puede incluir variables y funciones de valores de campo de las bases de datos.
Para ello, puede añadir partes de un código de expresión.

El código dentro del informe está escrito en lenguaje de programación ("(" símbolo es el comienzo de un código para el cálculo de
valor) y (")" símbolo es el final de un código para el cálculo del valor). El código dentro de estos símbolos se calcula y es
sustituido por el resultado de cálculo, en el texto el resultado de las expresiones de cálculo se convertiría automáticamente en la
cadena.
1-22 Generador de Informes Softland

Multilínea en Expresiones
¿Es posible configurar el texto multilínea en la expresión? Todo lo que necesita hacer para la creación de la multilínea de expresión
es poner la línea de alimentación antes de una nueva línea (en el editor de código de la línea de alimentación se fija presionando
Enter). Por ejemplo:

Valor:
(1 +2)

- Después el cálculo se imprimirá en la expresión en los siguientes términos:

Valor:
3

En otras palabras la expresión contendrá dos líneas. No hay límite en el número de líneas en el generador de informes.

Sr. Usuario:
Las expresiones con Multilínea no tienen límite en el uso del código para el cálculo del valor. Los mismos principios de cálculo de
expresiones en multilínea se utilizan en el cálculo de una sola línea de las expresiones. Por lo tanto, deberá crear al mismo tiempo
las expresiones multilínea y el código no puede ser separado de la línea de alimentación.

Uso de variables del diccionario


Una expresión usa variables creadas en el diccionario. Por esto, sólo deberá especificar el nombre de la variable en la expresión.

Las variables pueden ser utilizadas en los cálculos. Por ejemplo:

Valor = MyVariable + 10

MyVariable si la variable es de 15 entonces esta expresión devolverá el siguiente texto:

Valor = 25

Importante: Si el lenguaje de programación es C #, entonces, el registro de nombres de las variables se debe considerar. Si el
lenguaje de programación es VB.Net, entonces, el registro de nombres de las variables no debe considerarse.

Uso de variables en el código del informe


El generador de informes le permite añadir cualquier código adicional en el código del informe. Esta propiedad puede ser utilizada
para la transformación de variables, las cuales siempre pueden utilizarse en expresiones del informe.

Los principios de uso de las variables del código del informe son los mismos que los principios de uso de las variables del
diccionario. Usted debe saber que sólo las variables del diccionario pueden ser utilizadas para cualquier cálculo de los valores. Por
ejemplo, el cálculo de la progresiva total.

¡Importante! Sólo las variables del diccionario pueden ser utilizadas para cualquier cálculo de los valores.
GENERADOR DE INFORMES SOFTLAND 1-23

Uso de los campos de fuentes de datos


En las expresiones usted puede usar valores de las fuentes de datos. Para tal efecto, la referencia en el uso de la expresión en el
campo de la fuente de datos, es la cadena de la representación sobre el informe. En primer lugar, deberá especificar el nombre de la
fuente de datos y, a continuación, especificar el nombre del campo.
Separe el nombre de la fuente de datos y el nombre del campo con puntos:

{DataSource.Field}

Por ejemplo
{Customers.CompanyName}

- Esta expresión devolverá el nombre de la empresa.

Si la fuentede datos se relaciona con otras fuentes de datos, éstas pueden utilizar los campos de los padres de la fuente de datos.
Así que después de indicar el nombre del campo de la fuente de datos de entrada indique el nombre de la relación. A continuación
ingrese el nombre del campo de la fuente de datos.

Importante: El nombre de la relación y el nombre del campo se separan con puntos:

{Datasource.Relation.Field}

Por ejemplo:

{Products.ParentCategories.CategoryName}

En este caso:

Productos - nombre de la fuente de datos;

ParentCategories - nombre de la relación de dos fuentes de datos. En este caso dos fuentes de datos: Productos (lista de productos),
y las categorías (lista de las categorías de estos productos) están unidos.

CategoryName – nombre de la columna en las categorías de la fuente de datos

Como resultado del cálculo, la expresión devolverá los nombres de las categorías de producto.

Utilice únicamente los nombres de las fuentes de datos, las relaciones, y los campos en la expresión.

El Generador de Informes Softland no impone una limitación en el número de la relación de transferencia. En otras palabras, al
trabajar con la columna le puede aplicar al informe dos o más relaciones. Por ejemplo:

{OrderDetails.ParentProducts.ParentCategories.CategoryName}

En esta expesión:

OrderDetails - el nombre de la fuente de datos;

ParentProducts - el nombre de la relación entre la OrdersDetails fuente de datos y productos;

ParentCategories - el nombre de la relación entre la fuente de datos de productos y categorías;

CategoryName - el campo de la fuente de datos de las categorías.

Como se puede ver, el valor del campo CategoryName se ha obtenido mediante la relación de relacionar OrderDetails fuente de
datos a la fuente de datos de las categorías. No se llama directamente a la fuente de datos de las categorías donde se utilizan.

Importante: Si el lenguaje de programación es C #, entonces el registro de nombres de las variables debe considerarse. Si el
lenguaje de programación es VB.Net, entonces el registro de nombres de las variables no debe considerarse.
1-24 Generador de Informes Softland

Variables del sistema


El Generador de Informes Softland ofrece las variables a utilizar en las expresiones, las cuales informan de la situación actual de
un informe. Vamos a examinar las variables del sistema:

• Line - devuelve el número actual de la línea. Utilízalo para las líneas de numeración en los informes. La numeración
comienza por 1. La numeración de cada grupo se separa;

• LineThrough - número de retornos a través de la línea. A diferencia de la línea de la variable LineThrough variable
devuelve el número de una línea desde el principio de un informe sin agrupación. La numeración comienza por 1;

• PageNumber - devuelve el número actual de una página. La numeración de páginas empieza con 1. Utilizado para la
numeración de páginas;

• TotalPageCount - devuelve el número total de páginas en el informe;

• PageNofM - devuelve la cadena convencional de acuerdo a un patrón común:

• Página (PageNumber) de (TotalPageCount)

La variable se utiliza para la numeración de páginas.

• Column - devuelve el número actual de una columna. Utilizado para la numeración de las columnas en el informe;

• Date - devuelve la fecha actual;

• Time - devuelve la hora actual;

• ReportName - devuelve el nombre del informe;

• ReportAlias - devuelve el informe alias;

• ReportAuthor - devuelve el informe autor;

• ReportChanged - devuelve la fecha del reciente informe el cambio;

• ReportCreated - devuelve la fecha de la creación del informe;

• ReportDescription - devuelve la descripción del informe.

Funciones de expresión
El Generador de Informes Softland, no tiene funciones incorporadas debido a que está estrechamente integrado con. Net
Framework, pudiendo utilizar todas las funciones disponibles en. Net Framework.
Por ejemplo, para

Texto::
{MyString.Trim()}
{"Test".ToUpper()}
{MyString.Length}
Valores:
{Math.Round(MyValue, 2)}
{Math.Sqrt(MyValue)}
{MyValue.ToString() + " "}
GENERADOR DE INFORMES SOFTLAND 1-25

Texto de información de salida


Introducción
El Texto es parte de cada informe. El Generador de Informes Softland puede utilizar para el texto de salida los siguientes
componentes: Text, SystemText, ContourText y RichText (RichText tiene otras formas de funcionamiento y es visto en un capítulo
especial).
Los parámetros que están disponibles son: ubicación y tamaño, bosdes, relleno, alineación, etc... Junto a los estilos de fuente,
componentes de texto ofrecen una gran cantidad de parámetros de texto de salida.

Parámetros de salida de texto

Introducción
Existe una variedad de propiedades de componentes de texto. A continuación describiremos la importancia de algunas de ellas:

Múltiples Líneas
Si el texto no se puede poner en una línea será recortado por defecto. Si es necesario poner un texto sobre algunas líneas,
entonces usted debe establecer la palabra de recapitulación, deberá establecer la propiedad de la componente de texto Multiples
Líneas.

Arreglar
Usando la propiedad Arreglar, puede añadir de forma automática las marcas de omisión y la propiedad tiene los siguientes
valores:

Veremos con la frase “Esta es una prueba de como se muestran los datos” cómo se mostrará el texto de acuerdo a la
propiedad Arreglar

Ninguno - el texto es recortado estrictamente por el margen de un rectángulo o, si se trata de un texto multilínea, de la última
palabra visible;

Carácter - es recortado de la línea después del último carácter visible;

Word - la línea está recortado visible después de la última palabra;

Ellipsis character- últimos caracteres de una palabra se cambió a puntos;

Ellipsis Word – última palabra se cambió a puntos;


1-26 Generador de Informes Softland

Ellipsis path - el medio de una línea se cambia a fin de los puntos de inicio y final de una línea puede ser visible.

Límite de líneas
Al establecer la propiedad en Verdadero Límite de líneas podrá hacer visibles las líneas del texto.

Usaremos la frase “Esta es una prueba de como se muestran los límites de texto en una línea”.

Cuando es Falso la propiedad Límite de Líneas se muestra:

Cuando es verdadero la propiedad Límite de Líneas se muestra:

Líneas subrayadas
Para establecer la propiedad en Verdadero las Líneas de Subrayado podrá subrayar cada línea del componente del texto.

Número máximo de líneas


¿Cómo hacer que el componente de texto aumente el tamaño vertical y el número máximo de líneas horizontales?.
R.- Utilice la propiedad Número máximo de líneas de forma predeterminada, esta propiedad es igual a cero y la componente
vertical se incrementará. El componente es limitado en el aumento de tamaño de la página. Si establece el valor de esta propiedad
en 5, entonces, al aumentar el tamaño vertical, que se incrementará en 5 líneas horizontales.

Ángulo
El uso de la propiedad Angulo puede configurar la rotación del texto.

Para establecer los valores estándar de texto de la rotación (0, 45, 90, 180, y 270 grados), es recomendable el uso del botón
selección de la propiedad de Ángulo , ubicado en la barra de herramientas.

Procesando Duplicados
En muchos informes hay una necesidad de fusionar algunos componentes en un solo texto que contienen valores duplicados. Si
desea que el componente de texto iguale los valores de fusión, deberá definir el valor de la propiedad Procesando duplicados en
Verdadero.
GENERADOR DE INFORMES SOFTLAND 1-27

Condiciones
La propiedad Condiciones le permite modificar el formato del texto que depende de la condición. Usted puede configurar el uso

de ésta a través de la propiedad Condiciones o mediante el botón de la barra de herramientas de Formato .

- Este botón llama a las condiciones


Aquí se pueden especificar todas las condiciones especiales que desea aplicar a un texto.

- Condición
Si la condición no es cierto entonces el componente de formato se cambia a la que se indica en los parámetros.

Esconder ceros
Seleccione la propiedad Esconder ceros en Verdadero, el componente de texto no imprimirá los valores en cero dentro de la
información numérica.
1-28 Generador de Informes Softland

Expresiones en el texto
Texto sin salida de expresiones
Si la salida no contiene el código de procesamiento de expresión, es decir, no es una variable si no un texto fijo establezca el valor
de la propiedad en Sólo texto en Verdadero, y, la expresión de salida será como un texto.
Los cálculos no serán procesados.

- La propiedad Sólo texto es verdadera. No se procesa el texto indicado, es un texto fijo.

- La propiedad Sólo texto es falsa. El texto es producto del proceso de transformación de la expresión, ya sea una variable o
un cálculo definido para ésta.

Formato de texto
Introducción
El Formato de texto es el contenido de información en el formulario del informe. El Generador de Informes Softland contiene todas
las herramientas necesarias para dar formato al contenido del informe. El formato de texto es la herramienta base para dar el
formato deseado a los informes. Esta herramienta es un cuadro de diálogo, que le permite configurar los parámetros de formato. El
cuadro de diálogo del formato de texto se llama desde el menú contextual, el cual aparece al hacer clic derecho en el texto de los
componentes.

Además, el uso de la propiedad Formato de Texto, le permite indicar también definir el formato a considerar en cada formulario.

1-. Tipo de formato. Usted puede elegir los siguientes tipos de formato:

General - salida de datos sin formato;


Número - Datos numéricos de formato;
Moneda Corriente - Datos con formato de moneda;
Fecha – Datos con formato de tipo fecha;
Hora - Datos con formato de tipo hora;
Porcentaje – Datos con formato de tipo porcentaje;
Booleano – Datos con formato de tipo booleano (Verdadero y Falso);
Personalizado – Permite personalizar el formato que se dará al formulario..

2-. Muestra del texto;


3-. Especificar la opción de formato.
GENERADOR DE INFORMES SOFTLAND 1-29

Formato General
Formato General se utiliza para el ingreso de texto o valores numéricos sin considerar un formato fijo. Cuando se elige esta opción
no está en el proceso de formato.

Formato Numérico
Use el formato numérico para los valores numéricos de salida (recomendado).

Separador de Grupo
Cuando utiliza el Separador de Grupo, los valores numéricos se configurarán con separador de miles.

Colocación Local
Cuando utiliza la configuración de Colocación local, los valores numéricos se mostrarán con el formato actual de la
configuración regional del Sistema Operativo, si no se selecciona esta opción, el usuario podrá dar el formato deseado a los
valores numéricos.

Dígitos decimales
Número de dígitos decimales, se utiliza en los valores numéricos para determinar el número de decimales que se mostrarán en el
formato.

Separador Decimal
Es el carácter que se utiliza como separador decimal para el formato en valores numéricos.

Separador de grupo
Es el carácter que se utiliza como separador de miles para los formatos en valores numéricos.

Tamaño de grupo
El número de dígitos en cada grupo en formato de valores numéricos, por defecto son 3 en la separación de miles.

Patrón negativo
Se utiliza para el formato en que se mostrarán los valores numéricos negativos.
1-30 Generador de Informes Softland

Formato de Moneda corriente


Utilice el formato de moneda para aquellos valores numéricos que tengan la condición se ser valores en moneda.

Use Separador de grupo


Cuando utiliza el Separador de Grupo, los valores numéricos se configurarán con separador de miles.

Colocación Local
Cuando utiliza la configuración de Colocación local, los valores numéricos se mostrarán con el formato actual de la
configuración regional del Sistema Operativo, si no se selecciona esta opción, el usuario podrá dar el formato deseado a los
valores numéricos.

Dígitos decimales
Número de dígitos decimales, se utiliza en los valores numéricos para determinar el número de decimales que se mostrarán en el
formato.

Separador Decimal
Es el caracter que se utiliza como separador decimal para el formato en valores numéricos.

Separador de grupo
Es el carácter que se utiliza como separador de miles para los formatos en valores numéricos.

Tamaño de grupo
El número de dígitos en cada grupo en formato de valores numéricos, por defecto son 3 en la separación de miles.

Patrón positivo
El patrón que se utiliza para dar formato a los valores numéricos positivos.

Patrón negativo
El patrón que se utiliza para dar formato a los valores numéricos negativos.

Símbolo de la moneda
Este símbolo se utiliza como símbolo de la moneda por defecto;
GENERADOR DE INFORMES SOFTLAND 1-31

Fecha formato
El formato de fecha se utiliza para la salida de los formularios de tipo fecha. Este formato se puede seleccionar de entre el conjunto
de formatos como sigue: formato de fecha corto, formato de fecha largo, etc. En todos los formatos, excepto los que están
marcados con el símbolo (*), el orden de los elementos no se cambia.

Formato de hora
El formato de la hora se utiliza para la salida de los formularios de tipo hora. Para los datos del tipo Hora puede seleccionar los
siguientes dos tipos de hora de salida: formato corto (horas, minutos) y largo (horas, minutos, segundos).
1-32 Generador de Informes Softland

Formato de Porcentaje
Este formato se utiliza para los valores de salida que se desean expresar en porcentaje. Si formatea el valor se multiplica por 100,
después se visualiza el signo de porcentaje.

Use Separador de grupo


Cuando utiliza el Separador de Grupo, los valores numéricos se configurarán con separador de miles.

Colocación Local
Cuando utiliza la configuración de Colocación local, los valores numéricos se mostrarán con el formato actual de la
configuración regional del Sistema Operativo, si no se selecciona esta opción, el usuario podrá dar el formato deseado a los
valores numéricos.

Dígitos decimales
Número de dígitos decimales, se utiliza en los valores numéricos para determinar el número de decimales que se mostrarán en el
formato.

Separador Decimal
Es el caracter que se utiliza como separador decimal para el formato en valores numéricos.

Separador de grupo
Es el carácter que se utiliza como separador de miles para los formatos en valores numéricos.

Tamaño de grupo
El número de dígitos en cada grupo en formato de valores numéricos, por defecto son 3 en la separación de miles.

Patrón positivo
El patrón que se utiliza para dar formato a los valores numéricos positivos.

Patrón negativo
El patrón que se utiliza para dar formato a los valores numéricos negativos.

Símbolo de Porcentaje
Se utiliza para representar el símbolo con el que se mostrarán los valores definidos como porcentajes.
GENERADOR DE INFORMES SOFTLAND 1-33

Formato de Valores booleanos


Este formato se usa para el formato de los valores de tipo booleano.

Se define el valor de la cadena para identificar los valores booleanos definidos como respuesta False.
Se define el valor de cadena del valor booleano que se desplegará en pantalla como falsa.
Se define el valor de la cadena para identificar los valores booleanos definidos como respuesta True.
Se define el valor de cadena del valor booleano que se desplegará en pantalla como verdadera.

Formato Personalizado
Este tipo de formato se utiliza para configurar datos con formato que tienen una Máscara distinta a las definidas anteriormente.

Máscara
Es el formato establecido por el usuario para representar un valor o expresión..

Valores predefinidos
La lista de valores predefinidos para configurar el formato a través de máscaras.
1-34 Generador de Informes Softland

Sistema de información
El Generador de Informes Softland puede encontrar el componente Textos de Sistema, el cual se utiliza para información de
salida correspondiente a información propia del informe. Otros componentes pueden mostrar la información del sistema, pero el
componente Textos de sistema ofrece una interfaz muy práctica para el establecimiento de parámetros. Esta componente ofrece
tres modos de producción de información: funciones (sumario), las variables de sistema y expresiones.

Funciones (sumario)
Permite la configuración de funciones rápidas y fáciles para una banda de datos o columnas de datos.

Sumario
Muestra una lista desplegable que contiene todas las funciones incluidas en el generador de reportes Softland.

Banda de datos
Se debe especificar a qué banda de datos se quiere aplicar la función para ser calculada.

Columna de datos
Aquí se debe especificar la columna a la cual se aplicará la función seleccionada..

Condición
Se debe especificar la condición que se requiera para aplicar la función seleccionada..

Ventana de edición de una condición


En el Editor de texto que debe establecer la función que se aplicará para definir la condición, de ser necesario.
GENERADOR DE INFORMES SOFTLAND 1-35

Variables del sistema


Esta le permitirá seleccionar un una lista de variables de sistema.

Expresión
La tercera vía permite editar expresión en la ventana de edición de expresión. Esta ventana es la misma que la de una ventana de
edición de texto. Se utiliza cuando no se puede obtener el resultado que desea y su actualización es necesaria.
1-36 Generador de Informes Softland

Información gráfica de salida


Introducción
Hoy no sólo texto sino componentes gráficos pueden ser utilizados en los informes. El Generador de Informes Softland maneja los
siguientes componentes gráficos: Imagen, Formas y Código de Barras.
El componente de la imagen se utiliza para la producción de imágenes. La Forma se utiliza para la producción de formas (figuras
geométricas en general) y el Código de Barras se utiliza para la producción de códigos de barras.

Imágenes
En el informe para ser más evidente, puede agregar imágenes. Hay logos, imágenes, fotos de productos, fotos de personal, etc.,
Para la salida de la imagen este generador puede utilizar el componente de imagen, el cual apoya los siguientes tipos de imágenes:
BMP, JPEG, TIFF, GIF, PNG, ICO, EMF y WMF.

Carga de imágenes
El Generador de Informes Softland puede cargar las imágenes de tres maneras:

- Carga una imagen de un archivo;


- Carga una imagen de un informe de código;
- Carga una imagen de un campo de datos.

Cargando una imagen de un archivo


Una imagen puede ser cargada desde un archivo. Especifique la ruta de acceso al archivo que contiene una imagen (botón abrir).
Al confirmar, se carga esta imagen y posteriormente podrá ser impresa.

Importante No utilice esta función para cargar las imágenes grandes (100kb). Esto puede causar que se detenga su informe.

Cargar las imágenes de un campo de datos


Especifique el campo de datos a partir de la cual la imagen será cargada. Para estos efectos puede utilizar la propiedad Columna
de datos.

Códigos de Barras
El Generador de Informes Softland apoya 22 tipos de códigos de barras: EAN-8, EAN-13, UPC-A, UPC-E, UPC-Supp2, UPC-
Supp5, 2, de 5 de la norma, Interleaved 2 de 5, Código 39, Código 39 ampliada, Code 93, Code 93 extendido, Codabar, Código
128, Código 128b, 128c del Código, EAN 128, EAN 128b, 128c EAN, Plessey, Msi, Postnet. Para especificar el código en el
código de barras debe usar la propiedad Tipo de Código de barras.
GENERADOR DE INFORMES SOFTLAND 1-37

Al utilizar la componente de Código de Barras, debe saber que la modificación del tamaño de la componente no da lugar a cambios
en el tamaño del código de barras. Todos los códigos de barras tienen su propio estándar. Muchos tipos de códigos de barras nunca
pueden ser modificados o pueden ser modificados dentro de los límites. Varias propiedades adicionales para los códigos de barras
están disponibles. Usted puede encontrar estas propiedades en el panel de Propiedades. Sólo el despliegue de códigos de barras
tipo. Por ejemplo, se puede ver la EAN-128 de códigos de barras en una foto. Este código de barras le permite configurar dos
opciones: la altura de códigos de barras y el módulo de códigos de barras.

Formas
En los informes que desea tener formas, use el componente Forma. El Generador de Informes Softland tienen diferentes formas y
formas de llenado pincel, colores, margen, Forma del componente (rectangular, rectángulo redondeado, triángulo, formas ovaladas,
flechas y la variedad de líneas), etc.
1-38 Generador de Informes Softland

Estilos de los componentes


Introducción
El Generador de Informes Softland tiene muchos parámetros para el diseño del estilo de los componentes. Usted puede utilizar el
tipo de letra, tamaño de letra, color de fuente, los componentes de antecedentes, el marco de alineación horizontal y vertical, etc.

Fuentes
El uso de diferentes tipos de fuentes, el cambio de tamaño de la letra, la aplicación de colores que pueden hacer de un texto
cualquier estilo, pudiendo ser modificado en la propiedad Letra. Para establecer el tipo de letra, le recomendamos que utilice la
Formateo de botones de la barra de herramientas.

Letra
En la lista desplegable puede especificar el tipo de fuente que se utilizará para la producción de un texto.

El tamaño de la letra
En la lista desplegable puede configurar el tamaño de la fuente del texto.

Negrita
Al pulsar este botón, ajustar el texto en negrita.

Cursiva
Al pulsar este botón, ajustar el texto en cursiva.

Subrayó
Al pulsar este botón, ajustar el texto subrayado.

Relleno del texto


Este control le permite definir el pincel para rellenar el texto.

Fondo

Dos pinceles se utilizan para llenar el fondo. Utilice la propiedad Fondo del componente de la barra de herramientas de
Bordes para modificar el color de fondo.

Llenar botón de color


Este botón llama a la lista de colores disponibles que se utiliza para rellenar el fondo del componente seleccionado.

Tres tipos de pinceles están disponibles. Ellos son los siguientes: Sólido, choque, gradiente y brillo.

Sólido - La componente se llena con el color especificado.

Choque - El fondo de la componente se rellena con el patrón definido. Además puede establecer el telón de fondo y un patrón de
color.

Gradiente - Los antecedentes de la componente se llenan con un degrado. Usted debe especificar los colores del degradado y el
ángulo de rotación de la degradado.
GENERADOR DE INFORMES SOFTLAND 1-39

Bordes
Muchos componentes pueden tener bordes. Usted puede hacer un borde con diferente grosor, color y estilo. También un efecto de
sombra se puede aplicar a un borde. Utilice la propiedad de Borde para el control del borde de una componente.

1.- Bordes
Los Botones de control se utilizan para el establecimiento y la salida del borde.

- Todos. Tras pulsar este botón para cada lado de un componente puede ser fijado;

- Ninguno. Tras pulsar este botón se desaparecen los bordes.


- Borde en la parte superior. Tras pulsar este botón el borde en la parte superior de un componente puede ser fijado.
- Borde de la izquierda. Tras pulsar este botón el borde en el lado izquierdo de un componente puede ser fijado.
- Borde en la parte inferior. Tras pulsar este botón el borde en la parte inferior de un componente puede ser fijado.

- Borde de la derecha. Tras pulsar este botón el borde en el lado derecho de un componente se puede configurar.

2.- Sombras
Este botón se utiliza para el control de la sombra. Tras pulsar este botón, la sombra de la componente aparecerá.

3.- Color del borde

El uso de este botón permite seleccionar el color del borde de la componente que desee.

4.- Borde estilo

Este control se utiliza para seleccionar el estilo del borde.

Alineamiento horizontal
Algunos de los componentes permiten configurar la alineación horizontal de su contenido en relación con su tamaño. Por ejemplo,
los componentes de texto y de imagen.
Alineación horizontal, la posición de un contenido se puede ajustar a la izquierda, margen derecho de un componente, o puede
estar centrada, justificada o (los dos últimos son sólo puede aplicarse por el texto). Para la alineación, el uso de la propiedad
Alineamiento Horizontal. Además, para la adaptación de formato puede utilizar botones de la barra de herramientas.

1.- Alinear a la izquierda

El contenido del componente se traslada a la izquierda. Tras pulsar este botón nos permite alinear a la izquierda todos los
componentes que están seleccionados;

2.- Alinear al centro

El contenido del componente se traslada al centro. Tras pulsar este botón nos permite alinear al centro todos los componentes
que están seleccionados;

3.- Alinear a la derecha

El contenido del componente se traslada a la derecha. Tras pulsar este botón nos permite alinear a la derecha todos los
componentes que están seleccionados;

4.- Alinear al ancho (justificar)

El contenido de la componente se alinea a ambos márgenes izquierdo y derecho. Tras pulsar este botón nos ajustar al ancho de
la selección de todos los componentes seleccionados.

Alineación horizontal de la imagen


Para la alineación horizontal de una imagen, se utilizan los mismos controles que los componentes de alineación de texto. Las
imágenes se alinearán sólo cuando el Extensión es Falso. De lo contrario los parámetros de la alineación serán ignorados.
1-40 Generador de Informes Softland

Alineación vertical
Alineación vertical especifica la posición del contenido del componente en relación con la parte superior e inferior de un
componente de los bordes, puede ser fijado a la parte superior e inferior de los bordes. Para utilizar la alineación vertical marque la
propiedad de la componente de texto Alineamiento Vertical. Para el control de la alineación vertical le recomendamos utilizar el
Formato de botones de la barra de herramientas.

1.- Alinear arriba

El contenido de la componente se mueve a la parte superior del borde. Si se pulsa el botón permite configurar todos los
componentes seleccionados para ser alineados verticalmente arriba;

2.- Alinear al centro

El contenido de la componente se mueve al centro del componente. Si se pulsa el botón permite configurar todos los
componentes seleccionados para ser alineados verticalmente centro;

3.- Alinear abajo

El contenido de la componente se mueve a la parte inferior del borde. Si se pulsa el botón permite configurar todos los
componentes seleccionados para ser alineados verticalmente abajo.

La alineación vertical de un texto


Por defecto, el componente de texto está alineado arriba.

Alineación vertical de la imagen


Se utilizan para el control de la alineación vertical de la imagen componente de la misma como para los controles de la
alineación vertical de la componente de texto. Las imágenes están alineadas sólo cuando la propiedad Extensión es Falso. De lo
contrario los parámetros de la alineación serán ignorados.
GENERADOR DE INFORMES SOFTLAND 1-41

Informes
Introducción
El Generador de Informes Softland muestra los informes divididos en páginas, cada página puede tener su propio tamaño y
orientación. Todos los componentes en el informe se colocan en las páginas.

A diferencia de muchos generadores de informes, el Generador de Informes Softland divide la plantilla de informe en páginas.
Cada página puede tener su propio tamaño y ámbito de la impresión, permitiendo que todos los componentes del informe estén
colocados en las páginas.

Esta estructura le da más flexibilidad a la construcción de informe. Al momento de imprimir una página, podrá cambiar el orden de
impresión y la interrelación de las páginas, para esto utilice el componente Sub Informe.
Además podrá hacer la interrelación entre las páginas de un informe.

Código del Informe


Cuando se crea un nuevo informe su código fuente se genera automáticamente. Con frecuencia, este es un informe de código
script. Para la generación de código C # o VB.Net se utilizan lenguajes de programación. En el informe de código de clase,
StiReport heredado de la clase, se describen su estructura y la inicialización. Al agregar nuevas páginas, elementos o cambiar algún
parámetro de cambios en el informe se consigna en código del informe. La clase del informe contiene la descripción de todos los
componentes, datos, acontecimientos, propiedades del informe, la estructura de datos fuente. También todos los eventos
especificados por el usuario se agregan al código del informe. Al escribir eventos u otro código en el informe se puede utilizar el
estándar de la sintaxis de los lenguajes de programación de. Net Framework.

El código se genera informe sobre los lenguajes de programación C # o VB.Net. Por lo tanto, todos los eventos y cualquier
otro tipo de código que se debe escribir sobre uno de estos lenguajes de programación.

Si bien la prestación informe, la compilación de la clase que se produce en primer lugar. Después de que el informe es compilado
plazo para su ejecución.

El informe código se compila con el compilador Net Framework.


1-42 Generador de Informes Softland

Si desea ver el informe de código debe hacer clic en la pestaña «Código» diseñador de informes.

El Generador de Informes Softland le permite editar el código del informe, pero usted debe recordar que es imposible hacer
cambios en el informe actualizado automáticamente, el cual se adjunta en el código front-end procesador:

Comienzo de texto
# Región StiReport Designer código generado - no modificar

Informe actualizado automáticamente código

Final del texto


# Endregion StiReport Designer código generado – no modificar
GENERADOR DE INFORMES SOFTLAND 1-43

Bandas
Introducción
El Generador de Informes Softland se basa utilizando las bandas (a veces se denominan bandas de secciones). Una banda se
compone de dos partes: la banda de cabecera y banda zona de trabajo. Cada banda es un contenedor, el cual puede contener otros
componentes.
La posición de un componente de la banda se calcula en relación a la esquina superior izquierda de la banda de contenido.

Estructura de una banda.

- Banda de cabecera
- Banda de la zona de trabajo

La banda de control de las propiedades de una única banda en la posición prestados, es por lo general, un informe compuesto de
muchas bandas con textos e imágenes sobre ellos. Cuando el informe de la prestación, con componentes de las bandas en ellos
están siendo copiados tantas veces como es necesario. Por ejemplo, la banda de cabecera de salida se produce en el comienzo de
una salida de datos. Y la banda de datos de salida se produce para todos los datos de cadena.

Tipos de bandas
Existe muchos de tipos de banda en el Generador de Informes Softland. Cada tipo tiene sus propiedades específicas, todas las
bandas se dividen en dos categorías: bandas simples y bandas transversales.
Las Bandas de la Cruz no pueden ser colocadas en una página, sino que puede ser colocado en en bandas simples.

Bandas Simples
Las Bandas Simples son elementos base para la construcción de informe.
Para mayor comodidad visual todas las bandas tienen su color específico. Esto le permite entender la estructura de los informes.

Bandas Cruzadas
Bandas Cruz - es la segunda categoría de las bandas. Estas bandas no pueden ser colocadas en una página, pero puede ser
colocada en cualquier banda simple. Esto permite construir informes transversales complejos.

Bandas de salida
En la construcción de un informe todas las bandas se muestran en un orden determinado. Esto se debe a que cada banda tiene
funcionalidades específicas. Por ejemplo, para una tabla de salida debe usar tres bandas: de cabecera, datos, Pie de página. La
cabecera de la banda se utiliza para las cabeceras de los datos de posicionamiento. Los datos se han colocado en la banda de datos
y los totales de estos datos se sitúan en la banda Pie de página.
1-44 Generador de Informes Softland

Icono Orden Nombre Descripción

1 PageHeaderBand Encabezado de cada página.

2 ReportTitleband Una vez en el comienzo del informe.

3 HeaderBand, Una vez antes de la salida de datos (para el


ColumnHeader ColumnHeader - una vez por cada columna). De
producto en cada página – opcionalmente.

4 GroupHeaderBand En el comienzo de cada grupo.

5 DataBand Por cada serie de datos.

6 GroupFooterBand En el final de cada grupo.

7 FooterBand, Después de todos los datos de salida (para el


ColumnFooter ColumnFooter - una vez por cada columna). De
producto en cada nueva página - opcionalmente.

8 ReportSummaryBand Una vez en el final de un informe.

9 PageFooterBand En cada página.

En un informe se puede utilizar muchos tipos de bandas. Por ejemplo, dos bandas de cabecera.

Importante: Todas las bandas del mismo tipo están en el orden de su posición en una página. En otras palabras, la banda de la que
fue puesto en una página primero será mostrará al comienzo y luego las otras bandas. El orden de posición de las bandas puede
cambiar, para esto sólo tiene que arrastrar con el cursor del ratón una de las bandas.
GENERADOR DE INFORMES SOFTLAND 1-45

Bandas de datos

Introducción
Hay tres tipos de bandas de datos: Encabezado, Pie de página y Datos. Estas bandas se utilizan para los datos de la salida de los
informes.

La fuente de datos es una tabla, existen campos de datos en cada fuente de datos, después se ponen los datos de texto con
referencias a la banda para poder ser listados. Una fuente de datos puede indicar, previamente, un número desconocido de
cadenas de datos. La salida de la banda de datos puede ocurrir tantas veces como se especifica en el origen de datos. Por ejemplo,
si hay 100 líneas entonces, la banda de datos de salida será de 100 veces. Si en el momento de estar imprimiendo, no hay espacio
para todas las bandas en una sola página, entonces otra página se generará y se continuará la impresión. En la banda de cabecera
se agregan los encabezados de cada dato desplegado en la banda de datos. Igualmente, la banda Pie de página se utiliza para los
totales de una tabla de salida.

Fuente de datos para la banda de datos


Para la construcción de la banda de datos debe especificar la fuente de datos que utilizará, lo cual es necesario para el generador
de informes. Por lo tanto, en la banda de datos indique la referencia a la fuente de datos que se ha de generar. En primer lugar,
puede usar el editor de la banda de datos, para llamar al editor haga doble clic en la banda de datos. También puede llamar desde
el menú contextual.

Además, el editor de la banda puede ser llamado con el uso de la propiedad Fuente de datos de la banda de datos, permitiendo
elegir la fuente de datos más rápido.

También puede utilizar el botón de la banda de datos y de elegir la fuente de datos desde el menú contextual.

Datos de la banda virtual


Para imprimir los datos de banda sin especificar la fuente de datos a la misma, utilice la propiedad Contar datos, por defecto,
este valor es igual a 0. Pero si, por ejemplo, para establecer esta propiedad en 4, entonces la banda de datos se van a imprimir 4
veces. Esto puede ser utilizado para las columnas vacías.

Importante: Usted debe recordar que si se utiliza la banda de datos como la fuente de datos virtual, esta no debe ser
especificada. También puede especificar el número de elementos de datos usando el editor de la banda.
1-46 Generador de Informes Softland

Lista de salida
Para generar un informe en el que datos de salida se despliegue en una lista, tiene que poner una banda de datos en una página,
en la banda ponemos la fuente de datos y el lugar del texto de las componentes de la banda. En cada componente de texto se hace
una referencia a los campos de datos. Por ejemplo:

{GestionVenta_Cotizaciones.prueba.CodigoRegion}

- Datos de la banda
Los datos y que forma una tabla.

- Fuente de datos
La fuente de datos que se usa para obtener datos con cadenas de expresión.

- Referencia a la fuente de datos


La referencia a la fuente de datos, de la información que será llevado a la banda de datos, debe ser especificada.

Imprimir en una nueva página

Para imprimir cada cadena en una nueva página puede utilizar la propiedad Iniciar Número de Página. Establezca esta
propiedad en Verdadero y los datos de cada cadena se imprimirán en una página nueva. Si la banda de datos tiene Detalle de
bandas, éstas se imprimirán después de la banda principal. Después de todo el Detalle de componentes será impreso, la impresión
será seguida de una nueva página.

Lista con cabecera


En los componentes de texto especifique los nombres de los datos que se encuentran en la banda de datos.
En la presentación de un informe en la banda de datos de banda puede crear más de una banda de cabecera. Por ejemplo, la
primera banda de cabecera es sólo en el comienzo de los datos, pero la segunda, tanto en el inicio de los datos y de nuevo en
otras páginas de un informe. Las bandas de cabecera de salida dependerán de su posición en la página.

Nota: Por una banda de datos es posible crear un número ilimitado de bandas de cabecera.

La propiedad Imprimir todas las páginas

Para ver el informe listado, usted puede encontrar que el generador de informes ha mostrado de nuevo los datos de cabecera en
todas las páginas de un informe, esto se ha hecho para un mejor efecto visual de los datos de salida, pero si no hay necesidad de
esto, puede ser cambiado, utilice la propiedad Imprimir todas las Páginas de la banda de cabecera. Establezca esta propiedad en
Falso.

La propiedad Mantenga encabezado junto

Cuando la listas outtyping muestren la cabecera impresa en una sola página y la primera línea con los datos sobre el otro, use la
propiedad Mantenga encabezado junto de la banda de datos. Si esta propiedad es Verdadero, entonces las cabeceras estarán
siempre en la impresión de los datos. En otras palabras la cabecera y una cadena con datos como mínimo será en una sola página.
Si la cabecera con la cadena de datos está fuera de los límites podrá enviarse la información a la página siguiente.

Para evitar la cabecera y la primera línea de salida en diferentes páginas use la propiedad Mantenga el encabezado junto.
GENERADOR DE INFORMES SOFTLAND 1-47

Banda de pie de página


En las bandas de pie de página, se puede encontrar gran variedad de fórmulas para determinar totales. Esta banda se coloca
después de la banda de datos. Por defecto, la banda Pie de página se imprime después de todos los datos que serán mostrados.

Incluya la banda Pie de página al informe, sobre ella coloque un componente de texto. Supongamos que este componente de
texto sumará la columna {GestionVentas_Cotizaciones.Total} se verá de la siguiente forma:

Cuando se requiere que el generador de informes agregue la banda Pie de página, ésta se realizará una vez al final del informe,
después de todos los datos de salida.

También, al igual que la banda de cabecera, puede crear un número ilimitado de bandas de Pie. Las bandas de pie de página serán
mostradas en el mismo orden en que fueron puestos en una página.

Por una banda de datos puede crear un número ilimitado de bandas de Pie.
1-48 Generador de Informes Softland

Propiedad Imprimir todas las páginas.

A veces es necesario que la banda de Pie de página no salga en el final de un informe, sino en todas las páginas, para esto haga
uso de la propiedad Imprimir todas las páginas de la banda de pie de página. Establezca esta propiedad en la verdadero y se
imprimirán el pie de página seleccionado en cada página.

La propiedad Mantenga pie junto

Esta propiedad se utiliza para todos los datos que puedan estar en los límites de una página y el pie de página de banda de datos.
Si esta propiedad es Verdadero, entonces los pies de página siempre se imprimirán junto con los datos. En otras palabras, si el pie
de página está fuera de los límites de la página, entonces el pie de página se llevará a cabo en la página siguiente de la cadena de
datos.

Listar una banda tras otra


A menudo es necesario que usted tenga más de una banda de datos en un informe, El Generador de Informes Softland no tiene
ninguna limitación que las listas de salida se impriman una tras otra en un informe. Todo lo que necesita es poner dos bandas de
datos en una página, especificar los datos de diferentes fuentes de datos, además de todos los datos para crear la banda de
cabecera y el pie de página.

El número de listas uno tras otro los productos es ilimitada.

Clasificación de datos
Con frecuencia los datos que se utilizan para hacer el informe, no están ordenados según lo requerido, no satisfaciendo sus
necesidades. En este caso es posible clasificar los datos con el uso de las capacidades del Generador de Informes Softland. La
clasificación puede ajustar los datos por cada banda por separado. Para la clasificación de configuración deberá usar la propiedad
Orden.

Importante: Está permitido clasificar por cinco columnas simultáneamente, por cada columna se puede especificar el orden de
la clasificación y la manera de operar, pudiendo ser creciente o decreciente.

En el Generador de Informes Softland podrá ordenar los datos por columnas. Por esta razón, se debe especificar el campo de la
matriz de datos fuente.
GENERADOR DE INFORMES SOFTLAND 1-49

Filtro de datos
La banda de datos tiene dos propiedades que permiten realizar filtros de información dentro de un informe por una cierta
condición. Estas propiedades son: Filtros y Filtrar en. Para ello, la banda de datos tiene dos propiedades: Filtrar en y Filtros.
Filtrar en permite a la propiedad para activar o desactivar los filtros de la banda, los valores que puede tomar esta propiedad son
Verdadero o Falso. En la propiedad Filtros se puede especificar la condición para los datos que se requieren en el informe.

Filtro de tipo Fecha

1.- Como crear un parámetro de tipo fecha, con valor por defecto.

Forma de operar para el filtro de fechas:

Pesonal.fechaNacimient >= DateTime.Parse(Pesonal.Parameters["@Fecha"].ParameterValue.ToString())


1-50 Generador de Informes Softland

Manejo de Códigos Especiales para solicitud de Parámetros

A continuación, se mostrarán los datos definidos como parámetros fijos:

Tabla : Ciudad:
Parámetro Código : @Codigo_Ciudad : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde, además
el filtro será realizado de acuerdo al código.
Parámetro Código : @Nombre_Ciudad : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo a la descripción.

Tabla : Cliente:
Parámetro Código : @Codigo_Cliente : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde, además
el filtro será realizado de acuerdo al código.
Parámetro Código : @Nombre_Cliente : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo a la descripción.

Tabla : Producto:
Parámetro Código : @Codigo_Producto : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo al código.
Parámetro Código : @Nombre_Producto : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo a la descripción.

Tabla : Grupo:
Parámetro Código : @Codigo_Grupo : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde, además
el filtro será realizado de acuerdo al código.
Parámetro Código : @Nombre_Grupo : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde, además
el filtro será realizado de acuerdo a la descripción.

Tabla : SubGrupo:
Parámetro Código : @Codigo_SubGrupo : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo al código.
Parámetro Código : @Nombre_SubGrupo : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo a la descripción.

Tabla : Región:
Parámetro Código : @Codigo_Region : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde, además
el filtro será realizado de acuerdo al código.
Parámetro Código : @Nombre_Region : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo a la descripción.

Tabla :Giro:
Parámetro Código : @Codigo_Giro : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde, además el
filtro será realizado de acuerdo al código.
Parámetro Código : @Nombre_Giro : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde, además el
filtro será realizado de acuerdo a la descripción.

Tabla :Personal:
Parámetro Código : @Codigo_Personal : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo al código.
Parámetro Código : @Nombre_Personal : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo a la descripción.

Tabla :Activo:
Parámetro Código : @Codigo_Activo : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde, además
el filtro será realizado de acuerdo al código.
Parámetro Código : @Nombre_Activo : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde, además
el filtro será realizado de acuerdo a la descripción.

Tabla :Vendedor:
Parámetro Código : @Codigo_Vendedor : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo al código.
GENERADOR DE INFORMES SOFTLAND 1-51

Parámetro Código : @Nombre_Vendedor : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo a la descripción.

Tabla :Cobrador:
Parámetro Código : @Codigo_Cobrador : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo al código.
Parámetro Código : @Nombre_Cobrador : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo a la descripción.

Tabla :Auxiliar:
Parámetro Código : @Codigo_Auxiliar : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo al código.
Parámetro Código : @Nombre_Auxiliar : Al encontrar este parámetro mostrará códigos y descripciones de la tabla, donde,
además el filtro será realizado de acuerdo a la descripción.

Además, el usuario podrá solicitar un rango de parámetros, agregando al final del nombre cualquier texto, es decir:

@Codigo_Personal_Desde
@Codigo_Personal_Hasta

Luego en el query se debe colocar : Where (Campo) >= @Desde and Campo <= @Hasta.
Where (Campo) Between @Desde And @Hasta.

El proceso sólo cheque la existencia del nombre del parámetro fijo, en este caso @Codigo_Personal

Pantalla solicitud de los parámetros:

Como se aprecia en la imagen el nombre del parámetro es depurado.


El usuario podrá digitar el código o el nombre, o bien pinchar el botón buscar, donde se mostrará la siguiente ayuda:
1-52 Generador de Informes Softland

Filtro de tipo Texto y Número

1.- A continuación se detallan como se puede realizar filtros con datos de tipo Texto:

Ejemplos de filtros campos de tipo texto

Equals() = permite comparar dos textos


ToLower() = Deja en minúscula el texto
ToString() = convierte a texto
ToUpper() = Deja en mayúscula el texto
Trim() = Elimina los espacios en blanco del inicio y fin del texto

- Compara texto, donde el valor a comparar debe ser el mismo de la base y parámetros, es decir caracteres en mayúscula y
minúsculas deben coincidir
Pesonal.nombres.ToString() == Pesonal.Parameters["@Texto"].ParameterValue.ToString()

- Compara texto, donde no diferencia entre mayúscula y minusculaza.


En este caso convierte todo a minúscula para comparar.
Pesonal.nombres.ToString().ToLower()== Pesonal.Parameters["@Texto"].ParameterValue.ToString().ToLower()

- Compara texto, donde no diferencia entre mayúscula y minúsculas.


En este caso convierte todo a mayúscula para comparar.
Pesonal.nombres.ToString().ToUpper()== Pesonal.Parameters["@Texto"].ParameterValue.ToString().ToUpper()

- Compara texto, En este caso al Usar Trim(), saca los espacios en blanco del inicio y fin del valor a comparar.
Pesonal.nombres.ToString().ToUpper().Trim()== Pesonal.Parameters["@Texto"].ParameterValue.ToString().ToUpper().Trim()

- Compara texto, En este caso al Usar Equals() que es lo mismo que ==


Pesonal.nombres.ToString().ToUpper().Trim().Equals(Pesonal.Parameters["@Texto"].ParameterValue.ToString().ToUpper().Tri
m())

2.- A continuación se detallan como se puede realizar filtros con datos de tipo Numérico:
Comparar numéricos.
Para comparar se puede utilizar
>, <, >=, <=, ==

- Compara valore numéricos enteros, donde se antepone antes del parámetro (int)
Pesonal.AnoOtraEm == (int)Pesonal.Parameters["@Numero"].ParameterValue

- Compara valores numéricos reales, donde el parámetro y campo debe estar entre la función System.Convert.ToDouble()
System.Convert.ToDouble(Pesonal.AnoOtraEm)==
System.Convert.ToDouble(Pesonal.Parameters["@Numero"].ParameterValue)

Banda páginas

Introducción
Las bandas de las páginas se utilizan para la generación de la información en cada página. Hay dos bandas de la página:
Encabezado de Página y Pie de Página. Estas Bandas se utilizan para la generación de la cabecera y el pie de página del
informe. La banda de Encabezado de Página es la cabecera de la página (sólo coloca en la parte superior de la página). La banda
de Pie de Página corresponde al pie de cada página (sólo coloca en la parte inferior de la página).

Cabecera de página
Utilice el Encabezado de Página para la generación de la información en cada página de un informe. La banda de Encabezado
de Página se coloca en la parte superior de una página y su salida se produce una vez en cada página de un informe. Esta banda
se utiliza para el número de páginas, fecha de la creación del informe de salida, etc. En otras palabras, puede ser cualquier salida
de información en cada página. El Generador de Informes Softland no tiene ninguna limitación en el número de bandas
Encabezado de Páginas, puede poner una, dos y más cabeceras.
GENERADOR DE INFORMES SOFTLAND 1-53

Para crear un informe con el uso de la banda de Encabezado de Página, deberá crear dos bandas una para los datos de salida y
otra banda de Encabezado para las cabeceras de los datos de salida. Luego ponga la banda Encabezado de Página, la cual se
utilizará para el número de la página actual y el número total de páginas en el informe de salida. Para crear este componente en el
texto Encabezado de Página debe colocar en un componente de texto la expresión que se muestra en el siguiente ejemplo:

Acepte y finalmente, ejecute el informe.

La propiedad Imprimir en

El uso de la propiedad Imprimir en indica si en el generador de informes en qué páginas se imprimirá el encabezado de página,
por defecto la propiedad viene configurada como Todas la Páginas, pero además puede definir que se muestre en Excepto
primera página, Excepto última página, Excepto última y primera página, Solamente primera página, Solamente última
Página, Solamente primera y última página.

De pie de página
Para la generación de información en la parte inferior de cada página se utiliza la banda de Pie de Página. Esta banda se muestra
una vez en la parte inferior de cada página. El Generador de Informes Softland no tiene ninguna limitación en el número de
bandas de Pie de Página. Esta banda se puede utilizar para el definir el número de una página, los totales de salida etc..

Para crear un informe con el uso de la banda de Encabezado de Página, deberá crear dos bandas una para los datos de salida y
otra banda de Pie de Página para el pie de cada página de los salida de datos.

Después de la prestación de cada página en su parte inferior se puede ver el número de página y el número total de páginas en el
informe.

La propiedad Imprimir en

El uso de la propiedad Imprimir en indica si en el generador de informes en qué páginas se imprimirá el encabezado de página,
por defecto la propiedad viene configurada como Todas la Páginas, pero además puede definir que se muestre en Excepto
primera página, Excepto última página, Excepto última y primera página, Solamente primera página, Solamente última
Página, Solamente primera y última página.
1-54 Generador de Informes Softland

Informes Agrupación

Introducción
Una de las tareas más importantes en el informe es la construcción de agrupación de datos. La agrupación se puede aplicar tanto
para cadenas lógicas de datos en una página o para hacer su informe mejor visualmente. Para utilizar informes con agrupación
deberá utilizar las siguientes bandas: Encabezado Grupo (se muestra en el inicio de cada grupo) y Pie Grupo (se muestra en la
parte final de cada grupo).

Condición de agrupación
Usted debe especificar la condición de agrupación para la generación de un informe por grupo. De acuerdo a esta condición los
datos serán divididos en grupos. Por ejemplo, usted puede necesitar que la lista de empresas sea dividida en grupos por orden
alfabético, entonces puede aplicar bandas de grupo. En otras palabras los nombres de las empresas que comienzan con la letra A
en el primer grupo, nombres de las empresas que comienzan con B están en el segundo grupo, etc.. En este caso, la condición de
estos grupos es la primera letra del nombre de la empresa, el generador de informes antes de la agrupación no posee cadenas tipo
de datos automáticos.

La condición se especifica en el diseño de la banda de Encabezado Grupo. Cualquier valor puede ser una condición. Por
ejemplo, puede el grupo de la lista de las empresas ordenadas por región, y en este caso, la condición de agrupación estará dada
por el campo región, que se debe agregar a la banda de Encabezado Grupo.

Encabezado Grupo
El Grupo de cabecera se crea con el uso de la banda Encabezado Grupo. La banda de Encabezado de Grupo es la banda base
para los informes, para la generación de informes con agrupación. Es imposible hacer una agrupación sin esta banda.
Por ejemplo, en el ejemplo anterior la agrupación es por código de Región y nombre de región, por lo tanto estos campos deben
colocarse en la banda de Encabezado Grupo, esto hará que por cada región habrá una separación de los clientes en la fuente de
datos seleccionada.

Importante: Para informe agrupación con la prestación es necesario disponer de datos de la banda.

Es necesario contar con la banda de datos porque esta lleva los datos de salida y estos datos son la base de la agrupación.
Además, puede especificar la clasificación de la banda de datos. Los datos de clasificación tienen efecto en la agrupación.

Grupo de pie de página


Para la banda de salida de pie de la banda se utiliza Pie Grupo. Esta banda se coloca después de la banda de datos. Y todo esta
banda de datos está vinculada con la banda Encabezado Grupo. Cada banda de Pie de Grupo pertenece a la banda Encabezado
de Grupo. La banda pie de grupo no podrá salir sin la correspondiente banda de encabezado de grupo.
GENERADOR DE INFORMES SOFTLAND 1-55

Nueva página
Si desea tener un grupo en una página debe establecer la propiedad de Inicio de la nueva página de la banda Encabezado de
Grupo en verdadero. Si esta propiedad es Verdadero luego de cada grupo en el informe se salta a la siguiente página. Si la
información del grupo no puede ser colocada en una página entonces la información de salida se continúa en la página siguiente.

Sólo salida de Pie de Grupo


Por lo general, en los informes con agrupación, ya sea sólo o grupos de encabezados y pies de página, se utilizan
simultáneamente. Pero, ¿qué hacer si en su informe necesita la salida de los datos sólo el Pie de Grupo sin encabezados de
grupo?

Para un informe con agrupación es necesario usar la banda Encabezado grupo, pero no queremos que ésta aparezca. En este
caso debe configurar la banda Encabezado Grupo de altura en 0.

Grupos anidados
Para los informes puede utilizar más de una agrupación. Para esto tiene que poner el número necesario de bandas Encabezado
Grupo antes de la banda de Datos.

Importante: Le aconsejamos que tengan un número igual de bandas de Encabezado Grupo y Pie Grupo en su informe.

Los totales de un grupo


Para calcular los totales de un grupo es suficiente que en el componente de texto sea agregue la función deseada en la banda
Encabezado Grupo o Pie Grupo. Por ejemplo, para el cálculo del número de líneas en cada grupo debe escribir la siguiente
expresión en el componente de texto:

{Count()}

El componente se coloca en la banda Pie grupo. Al emitir el informe se puede ver en la parte inferior de cada grupo el cálculo
del número de línea del grupo.

Numeración en un grupo
Se recomienda para la numeración en un grupo que se utilice la variable de sistema Line. La referencia a esta variable se
especifica en el componente de texto. El componente de texto se coloca en la banda de datos. Por ejemplo, poner un texto en el
componente de la banda de datos y escribir lo siguiente en su expresión:

{Line}

Luego en el informe se tendrá la lista numerada de los registros en cada grupo. La numeración comienza por 1. En un nuevo
grupo la numeración comienza de nuevo.
Si es necesario hacer una única numeración debería aplicar la variable de sistema LineThrough. Para esto debe cambiar la
expresión en el texto componente:

{LineThrough}
Como resultado de obtendrá la numeración de todas las de grupo.
1-56 Generador de Informes Softland

Contenedores
Introducción
El Contenedor es un área rectangular donde las componentes, incluyendo bandas, están contenidas.
Si un contenedor se mueve se mueven todos los componentes en él. Un contenedor puede ser colocado en una página, en otro
contenedor o en una banda. Esto le permite tener diversas habilidades en la creación de informe.

Bandas de posicionamiento en un contenedor


Un contenedor puede ser colocado en una página, en otro contenedor o en una banda. Casi todos los componentes de un informe
pueden ser colocados en el contenedor, no así todas las bandas, ya sea informes de banda o bandas de la página

Posición de Contenedores
En los informes, se puede encontrar tres tipos de posición de los contenedores: en una página, sobre una banda, y en otro
contenedor, tal como se describe a continuación:

Posicionamiento en una página


El primer tipo - la posición de un contenedor en una página. El objetivo principal es la organización de varios espacios
independientes en la impresión. Los contenedores pueden ser colocados en cualquier parte de la página, cada contenedor es una
pequeña página. En otras palabras los contenedores permiten llevar a cabo algunas pequeñas páginas con sus bandas y
componentes en una sola página. Así que usted puede construir muchos informes complicados.

La posición de los contenedores en una sola página es ilimitada.


GENERADOR DE INFORMES SOFTLAND 1-57

Posicionamiento sobre una banda


Este tipo tiene una gran limitación, el Contenedor no puede contener bandas, es decir se pueden utilizar sólo para el
posicionamiento de componentes.

Posicionamiento en un contenedor
Este tipo describe el posicionamiento de un contenedor en otro contenedor. Este tipo es la mezcla de dos tipos descritos
anteriormente. Por lo tanto, si el contenedor se coloca en otro recipiente que, a su vez, no está situado en una banda, entonces, el
contenedor puede contener bandas. Por lo tanto, si el contenedor se coloca en otro recipiente que, a su vez, se coloca en una
banda, a continuación, el contenedor no puede contener las bandas.

Informes de lado a lado


Permite la creación de informes lado a lado. Este tipo de informe puede ser en dos listas, lo que implica que ambos son
absolutamente independientes el uno del otro. Por lo general, para la creación de este tipo de informes es necesario utilizar Sub
Informe.

A continuación, le indicaremos los pasos a seguir en la creación del informe lado a lado:
Inserte dos contenedores en una página, la propiedad Muelle de uno de ellos se fija en la izquierda, la propiedad Muelle de la
segunda se fija a la derecha. Es necesario que los contenedores acoplados al borde de la página tomen todo el espacio disponible
por la altura. Entre contenedores establecimos un espacio para separar dos listas. Ahora, en el primer contenedor cree una banda de
cabecera y de datos. El uso de estas bandas de la primera lista de salida se hará. Como resultado después de la emisión del informe
verá dos listas.
1-58 Generador de Informes Softland

Múltiples tablas en una página de salida


Existen informes en los que es necesario disponer de múltiples tablas en una página. Además, son los cuadros que se coloca en
cualquier parte de la página. La mayoría de las veces la construcción de tal informe deberá ser a través de Sub Informes.
GENERADOR DE INFORMES SOFTLAND 1-59

El cálculo de los totales


Introducción
En muchos informes, es necesario calcular los totales - sumas de una página, el número de registros, el valor medio, etc. Para esto,
puede utilizar las funciones incluidas en el Generador de Informes Softland.

El uso de funciones permite calcular una suma, el número de registros, valores promedio, valores máximos, mínimos valores,
primer valor de la lista, últimos valores de la lista, un rango especificado.

El Generador de Informes Softland permite varias funciones como las siguientes funciones:

- Sum - devuelve la suma de los datos especificados a sumar;


- Count - devuelve el número de filas en el rango especificado;
- Avg - devuelve el valor promedio de la expresión especificada;
- Min - devuelve el valor mínimo de la expresión especificada;
- Max - devuelve el máximo valor de la expresión especificada;
- First - devuelve el primer valor en el rango especificado;
- Last - devuelve el último valor en el rango especificado.

Totales de la producción en cualquier parte de un informe


Los componentes de texto, deben ser puestos en la banda de totales o en la banda de datos.

Los componentes con funciones agregadas se pueden poner en cualquier parte de un informe.

Totales con condición


Es necesario calcular los totales con condición. Por ejemplo, si desea resumir todos los valores superiores a cero, El Generador de
Informes Softland permite agrega runa condición a una función. Al agregar una condición a una función se debe poner el nombre
con la condición adicional. Por ejemplo:

{SumIf(Products.UnitsInStock, Products.UnitsInStock > )}

Cálculo de los totales de una página y de un contenedor


Es muy sencillo para el cálculo de los totales de un contenedor o de una página. Usted debe escribir en minúsculas la letra c antes
del nombre de una función agregada. Por ejemplo:

{cCount(DataBand1)}

Cálculo de los totales de una columna


Usando el Generador de Informes Softland puede calcular los totales en una columna. Sólo tiene que escribir en minúsculas col
antes de la función agregada nombre. Por ejemplo:

{colCount()}
1-60 Generador de Informes Softland

Agregar funciones de sintaxis


Ver las funciones agregadas de sintaxis en el ejemplo de la función Suma:

Sum (expresión)
Suma (banda, de expresión)
SumIf (banda, de expresión, condición)

Expresión - expresión de cálculo;


Banda - el nombre de una banda para el cálculo;
Condición - una de las condiciones de inclusión de una expresión en el cálculo.

Al calcular una función agregada en una página o en el contenedor, que debe escribir una letra "c" en primer lugar y luego el
nombre de función agregada. Véase la muestra:

CSum (expresión)
CSum (banda, de expresión)
CSumIf (banda, de expresión, condición)

Para el cálculo de los totales de un contenedor col usted debe escribir primero y después el nombre de función agregada:

ColSum (expresión)
ColSum (banda, de expresión)
ColSumIf (banda, de expresión, condición)

El Count es una función que tiene un rasgo distintivo de otras funciones agregadas. No tiene una expresión de cálculo. La sintaxis
de esta función véase más adelante.

Count ()
CountIf (condición)
Conde (banda)
CountIf (banda, condición)
CCount ()
CCount (banda)
CCountIf (banda, condición)
ColCount ()
ColCount (banda)
ColCountIf (banda, condición)
GENERADOR DE INFORMES SOFTLAND 1-61

Navegación
Introducción
El Generador de Informes Softland tiene todos los instrumentos necesarios para la creación de hipervínculos en un informe y del
informe a objetos fuera del informe.

El marcador de propiedad se usa para hacer los favoritos. La propiedad de Hiperlink se utiliza para especificar los hipervínculos
junto a todos los componentes (visible - texto, imagen, página, invisible bandas, contenedores). Así, entre todos los componentes
de un informe puede realizar hipervínculos y bookmarks.

Marcadores
Los marcadores se utilizan para mostrar la estructura de un informe. También se utilizan marcadores para marcar el componente a
fin de hacer una referencia sobre él, utilizando hipervínculos. Todos los componentes tienen la propiedad Marcador de página.
La configuración del informe es invisible en el panel de propiedades, pero puede ser que en el informe se refiera al código o a la
expresión.

Árbol del reporte


El árbol permite ver la estructura de un informe..

Hyperlinks
Los hipervínculos son utilizados para la navegación en el informe. También puede usar las propiedades Marcador y Etiqueta del
Hiperlink que se encuentra en la propiedad.
1-62 Generador de Informes Softland

Preguntas Frecuentes para el desarrollador


General
¿Cómo guardar / cargar un informe?

Para guardar un informe:

C#

StiReport informe StiReport = new ();


Report.Save ( "report.mrt");

VB

Informe Dim Como StiReport = Nueva StiReport ()


Report.Save ( "report.mrt")

Para cargar un informe:

C#

StiReport informe StiReport = new ();


Report.Load ( "report.mrt");

VB

Informe Dim Como StiReport = Nueva StiReport ()


Report.Load ( "report.mrt")

¿El modo de hacer un informe?


Para emitir un informe y mostrar un informe dictado en la ventana de vista previa de ver el siguiente código:

C#

StiReport report = new StiReport();


report.Load("report.mrt");
report.Show();

VB

Dim Report As StiReport = New StiReport()


Report.Load("report.mrt")
Report.Show()

¿Cómo obligar a los datos a un informe?

Es necesario registrar los datos en el diccionario de datos para obligar a ellos en un informe.
Se puede hacer de esta manera:

C#

DataSet dataSet1 = new DataSet();


ddataSet1.ReadXmlSchema("Demo.xsd");
dataSet1.ReadXml("Demo.xml");
StiReport report = new StiReport();
report.RegData("MyDataSet",dataSet1);
GENERADOR DE INFORMES SOFTLAND 1-63

VB

Dim Data As DataSet = New DataSet()


Data.ReadXmlSchema("Demo.xsd")
Data.ReadXml("Demo.xml")

Dim Report As StiReport New StiReport()


Report.RegData("MyDataSet",Data)

¿Cuándo deben adjuntarse los datos - antes de la carga de un informe o después?

Ejemplo 1:

C#

StiReport report = new StiReport();


report.Load("MyReport.mrt");
report.RegData("MyDataSet",dataSet1);

VB

Dim Report As StiReport = New StiReport()


Report.Load("MyReport.mrt")
Report.RegData("MyDataSet",DataSet1)

Ejemplo 2:

C#

StiReport report = new StiReport();


report.RegData("MyDataSet",dataSet1);
report.Load("MyReport.mrt");

VB

Dim Report As StiReport = New StiReport()


Report.RegData("MyDataSet",DataSet1)
Report.Load("MyReport.mrt")

¿Cómo generar un informe diseñado?

Véase el siguiente código de la forma de hacerlo:

C#

StiReport report = new StiReport();


report.Design();

VB

Dim Report As StiReport = New StiReport()


Report.Design()

O como esta:

C#

Stimulsoft.Report.Design.StiDesigner designer = new Stimulsoft.Report.StiDesigner();


designer.Show();
1-64 Generador de Informes Softland

VB

Dim Designer As Stimulsoft.Report.Design.StiDesigner = New Stimulsoft.Report.Designer.StiDesigner()


Designer.Show()

¿Cómo guardar / cargar un informes?

Para guardar un informe:

C#

//Render a report
StiReport report = new StiReport();
report.Load("report.mrt");
report.Render();

//Save a report
report.SaveDocument("document.mdc"));

VB

'Render a report
Dim Report As StiReport = New StiReport()
Report.Load("report.mrt")
Report.Render()

'Save a report
Report.SaveDocument("document.mdc"))

Para cargar guardado previamente prestados informe:

C#

StiReport report = new StiReport();


report.LoadDocument("document.mdc");

VB

Dim Report As StiReport = New StiReport()


Report.LoadDocument("document.mdc")

¿Cómo cargar DataSet XSD?

Para cargar DataSet XSD puede utilizar el método ImportXMLSchema:

C#

StiReport report = new StiReport();


DataSet dataSet = new DataSet("Test");
dataSet.ReadXmlSchema("dataset.xsd");
report.Dictionary.ImportXMLSchema(dataSet);

VB

Dim Report As StiReport = New StiReport()


Dim Data As DataSet = New DataSet("Test")
Data.ReadXmlSchema("dataset.xsd")
Report.Dictionary.ImportXMLSchema(Data)

DataSet XSD esquema que se necesita sólo para el Diseñador.


GENERADOR DE INFORMES SOFTLAND 1-65

¿Cómo cambiar el lenguaje actual del script de un informe?

Utilice el la propiedad de Lenguaje de la clase StiReport para cambiar el actual lenguaje de script de un informe. Por ejemplo:

C#

//Change the current language to VB


StiReport report = new StiReport();
report.ScriptLanguage = StiReportLanguageType.VB;

//Generate a new report


report.ScriptNew();

VB

'Change the current language to VB


Dim Report As StiReport = New StiReport()
Report.ScriptLanguage = StiReportLanguageType.VB

'Generate a new report


Report.ScriptNew()

Diseñador de Reportes

¿Qué podemos hacer para desactivar las funciones no deseadas?

La mayoría de los elementos de diseño se establecen en la configuración. Por lo tanto, puede deshabilitar los servicios que no
usas, o que son complicadas para los usuarios.

También puede comprobar opciones estáticas situadas en la StiOptions.Designer.

¿Qué puedo hacer para ocultar los consejos cuando se ejecuta el Diseñador?

Haz lo siguiente:

StiOptions.Designer.ShowTipsOnStartup = false;

¿Cómo ocultar la pestaña Código de la página en un informe?

Fijar el valor de las siguientes propiedades falsa y la pestaña Código será ocultada.

StiOptions.Designer.CodeTabVisible = false;

¿Qué puedo hacer para hacer algo después de ejecutar el diseñador, pero antes de la inicialización?

Utilice el la propiedad StiDesigner.LoadingDesigner.

Cómo interceptar grabar / cargar un informe en el diseñador?

Usted debe utilizar dos propiedades:

StiDesigner.SavingReport
StiDesigner.LoadingReport
1-66 Generador de Informes Softland

¿Cómo ocultar algo en el diccionario de datos?

Restricciones a la utilización especial de la clase. Por ejemplo:

C#

StiReport report = new StiReport();


report.Dictionary.Restrictions.Add("Customers", StiDataType.DataSource, StiRestrictionTypes.DenyShow);
report.Dictionary.Restrictions.Add("DataSource._ID", StiDataType.DataColumn, StiRestrictionTypes.DenyShow);

VB

Dim Report As StiReport = New StiReport()


Report.Dictionary.Restrictions.Add("Customers", StiDataType.DataSource, StiRestrictionTypes.DenyShow)
Report.Dictionary.Restrictions.Add("DataSource._ID", StiDataType.DataColumn, StiRestrictionTypes.DenyShow)

¿Cómo cambiar el nombre del archivo en el diseñador?

Utilice la propiedad ReportFile del informe. Se recomienda si guarda el archivo de informe no puede usar caracteres no válidos
en el nombre del archivo.

¿Cómo ocultar un elemento de menú en el diseñador?

Utilice el siguiente código para ocultar Ayuda Menú:

C#

StiConfig.Load();
StiMainMenuService service =
StiConfig.Services.GetService(typeof(StiMainMenuService)) as
StiMainMenuService;
service.ShowHelp = false;

VB

StiConfig.Load()
Dim Service As StiMainMenuService = TryCast(StiConfig.Services.GetService(GetType (StiMainMenuService)),
StiMainMenuService)
Service.ShowHelp = False

Coloque este código en el comienzo de su programa. También puede comprobar la muestra DesignerManagement proyecto.

Trabajar con informes

El acceso a los datos

¿Cómo cambiar los datos de la conexión con la base de datos?

Puede escribir el siguiente código:

C#

//Clear the list of databases


report.Dictionary.Databases.Clear();

//Add the database and specify its name and the connection string
report.Dictionary.Databases.Add(new StiSqlDatabase("Test", "MyDataConnectionString"));
GENERADOR DE INFORMES SOFTLAND 1-67

VB

'Clear the list of databases


Report.Dictionary.Databases.Clear()

'Add the database and specify its name and the connection string
Report.Dictionary.Databases.Add(new StiSqlDatabase("Test", "MyDataConnectionString"))

¿Cómo convertir los datos directamente en la columna sin usar la conversión típica?

Usted puede usar el indicador de la fuente de datos. Por ejemplo:

C#

object data = Customers["Phone"];

VB

Dim Data As Object = Customers("Phone")

¿Cómo cambiar un texto de de una query cuando al informe se ejecuta?

Puede usar parámetros. Por defecto el motor no admite parámetros del punto de vista normal. Por ejemplo:

select * from customers where code=:code

En este caso no se puede detectar el código. Sin embargo, puede utilizar un formulario de expresión en cualquier parte en la
consulta SQL. Por ejemplo:

select * from customers where code = {myvariable}


select * from customers where {myvariable}
select * from customers {myvariable}
select * from {myvariable} where code=1
select {myvariable} from customers where code = {myvariable}
{myvariable}
select * from customers where code = {MyStaticClass.GetCondition()}
select * from customers where {Datasource.Condition}
select {myvar+myvar2} from customers

¿Cómo agregar un parámetro a la consulta SQL?

En la fuente de datos que debe crear un parámetro, en la consulta SQL que escribe:

select * from customers where customerid=@customerid

Luego hay que inicializar este parámetro. Por ejemplo, para el código de inicialización puede usar el siguiente código:

C#

StiReport report = new StiReport();


report.RegData(myDataset);
report.Compile();
report.DataSource["myvariable"].Parameters["@customerid"].ParameterValue = 1;

VB

Dim Report As StiReport = New StiReport()


Report.RegData(MyDataSet)
Report.DataSource["myvariable"].Parameters["@customerid"].ParameterValue = 1
1-68 Generador de Informes Softland

¿Cómo hacer un informe sobre el servidor y enviarlo al cliente?

En primer lugar, generar un informe en el servidor y guardar el informe:

C#

StiReport report = new StiReport();


report.RegData(dataSet);
report.Render(false);
report.SaveDocument(stream);

VB

Dim Stream As New MemoryStream


Dim Report As New StiReport
Report.RegData(DataSet)
Report.Render(False)
Report.SaveDocument(Stream)

Cargue un informe en un cliente y establezca los siguientes datos:


C#

StiReport report = new StiReport();


report.LoadDocument(stream);
report.Show();

VB

Dim Report As New StiReport


Report.LoadDocument(stream)
Report.Show()

¿Es posible diseñar un informe en el diseñador utilizando la base de datos local y cambiar la base de datos en
el código trabajando en línea?

Utilice el siguiente código:

report.Databases.Clear();
report.Databases.Add(new StiSqlDatabase("MyDatabaseName", "connection string");

El nombre de una nueva base de datos, debe cumplir con el nombre de la base de datos en un informe.

¿Es posible la visualización de imágenes, tanto almacenados en una base de datos o alojado en un servidor?

Puede utilizar muchas maneras.

Con propiedades:

Propiedad Image.DataColumn - carga la imagen de la base de datos.


Propiedad Image.File - carga la imagen de archivo.
Propiedad Image.ImageURL - especificar url de la imagen

Desde el código de los eventos:

1. Cargar una imagen desde el archivo

Image1.Image = Image.FromFile("Image1.gif");
GENERADOR DE INFORMES SOFTLAND 1-69

2. Carga una imagen de la URL

Image1.Image = Stimulsoft.Base.Drawing.StiImageFromURL.LoadBitmap(
"http://www.domain.com/bitmap.gif");

¿Puedo cambiar la cadena de conexión del informe en tiempo de ejecución?

Usted puede usar el siguiente código:

C#

StiReport report = new StiReport();


report.Load("MyReport.mrt");
report.Dictionary.Databases.Clear();
report.Dictionary.Databases.Add(new StiSqlDatabase("MyDatabase", "new connection string"));

VB

Dim Report As New StiReport


Report.Load("MyReport.mrt")
Report.Dictionary.Databases.Clear()
Report.Dictionary.Databases.Add(New StiSqlDatabase("MyDatabase", "new connection string"))

¿Cómo enviar parámetros a la consulta SQL?

1. Puede utilizar cualquier forma de expresión a la consulta SQL, primero agregar variables a la consulta SQL:

select * from customers where code = {myvariable}

2. Necesita crear variable en el Diccionario del informe

3. Es necesario que antes de inicializar la variable del informe ejecutando:

C#

StiReport report = new StiReport();


rreport.Load("Variables.mrt");
report.Compile();

//Set Variable
report["myvariable"] = 123;

report.Render();

VB

Dim Report As StiReport = New StiReport()


Report.Load("Variables.mrt")
Report.Compile()

'Set Variable
Report("myvariable") = " Value "
Report.Render()
1-70 Generador de Informes Softland

¿Cómo comprobar valores nulos?

Usted puede usar el siguiente código en el GetValueEvent:

C#

if (Customers["Flag"] == null)e.Value = "YES";


else e.Value = "NO";

VB

If (Customers("Flag") Is Nothing) Then


e.Value = "YES"
Else
e.Value = "NO"
End If

Para También puede usar la función IIF:

C#
{IIF(Customers["Flag"] == null, "YES", "NO")}

VB
{IIF(Customers("Flag") Is Nothing, "YES", "NO")}

¿Cómo hacer informes tipo Maestro-Detalle si dos cuadros se encuentran en otro Dataset?

En este caso se debe permitir el almacenamiento en caché de todos los datos en un DataSet. Para esto debería establecer la
propiedad CacheAllData en Verdadero. Usted puede hacer esto en el diccionario del informe.

Formateando y Convirtiendo

¿Cómo convertir las coordenadas de una unidad a otra?

Utilice los métodos ConvertFromHInches y ConvertToHInches de la clase StiUnit para convertir coordenadas. Por ejemplo:

C#

//Converts a value from centimeters to inches


StiUnit unitFrom = new StiCentimetersUnit();
StiUnit unitTo = new StiInchesUnit();
double value = 2.54;
value = unitFrom.ConvertToHInches(value);
value = unitFrom.ConvertFromHInches(value);

VB

'Converts a value from centimeters to inches


Dim UnitFrom As StiUnit = New StiCentimetersUnit()
Dim UnitTo As StiUnit = New StiInchesUnit()
Dim Value As Double = 2.54
Value = UnitFrom.ConvertToHInches(value)
Value = UnitFrom.ConvertFromHInches(value)

¿Cómo convertir las coordenadas y los tamaños de un informe?

Todas las clases que se da cuenta de la interfaz IStiUnitConvert puede convertir las coordenadas y los tamaños de un informe de
una unidad a otra. Por ejemplo:
GENERADOR DE INFORMES SOFTLAND 1-71

C#

//Converts coordinates and sizes of a report from the current unit into inches
StiReport report = new StiReport();
StiUnit unitTo = new StiInchesUnit();
report.Convert(report.Unit, unitTo);

VB

'Converts coordinates and sizes of a report from the current unit into inches
Dim Report As StiReport = New StiReport()
Dim UnitTo As StiUnit = New StiInchesUnit()
Report.Convert(Report.Unit, UnitTo)

¿Cómo cambiar el valor de salida de campos DBNull y Null?

Debe usar los valores de formato de texto - la propiedad TextFormat. También puede desactivar la conversión forzada de
valores nulos - report.ConvertNulls la propiedad.

Variables

¿Cómo agregar una variable en un informe?

Usted puede usar el siguiente código para agregar una variable a un informe en el código:

MyVariable agrega una nueva variable del tipo int:

C#

report.Dictionary.Variables.Add(new StiVariable("Category", "MyVariable", typeof(int), "1", false));

VB

Report.Dictionary.Variables.Add(New StiVariable("Category", "MyVariable", CType(GetType(int), Type), "1", False))

¿Cómo obtener al valor de una variable?

Para obtener el valor de la variable, puede utilizar este código:

C#

StiReport report = new StiReport();


report.Load("Variables.mrt");
report.Compile();

//Set Variable
report["VariableName"] = "Value";

//Get Variable
object value = report["VariableName"];

VB

Dim Report As StiReport = New StiReport()


Report.Load("Variables.mrt")
Report.Compile()
1-72 Generador de Informes Softland

'Set Variable
Report("VariableName") = " Value "

'Get Variable
Dim Value As Object = Report("VariableName")

¿Cómo agregar variables de sistema en el texto?

Utilice el siguiente código:

text1.Text = "{PageNofM}";

Temas Varios

¿Cómo cambiar la clasificación de los datos?

Para cambiar la clasificación ver a continuación:

DataBand1.Sort = new string[2]


{
"ASC",
"Name"
};

¿Cómo devolver el tamaño real de un componente?

Utilice el método StiComponent.GetActualSize. Este método devuelve el tamaño real del componente. Debe recordar que si
desea devolver el método correcto de las propiedades CanGrow, CanShrink y AutoWidth (de texto) estas propiedades deben ser
True.

¿Cómo encontrar un componente por su nombre?

Para encontrar el nombre de la componente use este código:

C#

StiComponent component = report.GetComponentByName("ComponentName");

VB

Dim Component As StiComponent = Report.GetComponentByName("ComponentName");

¿Cómo establecer un texto o rtf en una componente de formato rtf?

Use la propiedad StiRichText.RtfText.

¿Cómo debo agregar un marcador para un componente utilizando código?

Utilice el siguiente código:

component.Bookmark = "{Categories.CategoryName}";
GENERADOR DE INFORMES SOFTLAND 1-73

¿Cuál es la diferencia entre el Text y la TextValue?

En un texto la propiedad Text se calculará y almacenará. Después de que se calcula el resultado será puesto en el TextValue. En
otras palabras se puede especificar expresiones. Por ejemplo:

text1.Text = "Phone: {Customers.Phone}";

En el TextValue sólo puede especificar textos:

text1.TextValue = "123";

¿Qué hay que especificar en el campo DataColumn de una imagen?

La fuente de datos después del punto y la columna de datos se especifican en este campo. Por ejemplo:

Customers.Photo

Puede utilizar el enlace a través de la palabra, no poner entre paréntesis. Por ejemplo

Products.Customers.Photo

¿Cómo cargar la imagen almacenada en la base de datos?

Para esto, deberá usar el evento BeforePrintEvent. Especifique el siguiente código en el evento:

C#

Image1.Image = Image.FromFile(MyDataSource.ImagePath);

VB

Image1.Image = Image.FromFile(MyDataSource.ImagePath)

También puede utilizar la propiedad ImageData

C#

{Image.FromFile(MyDataSource.ImagePath)}

VB

{Image.FromFile(MyDataSource.ImagePath)}

¿Cómo obligar a ComboBox en el formulario de datos?

Puede especificar la propiedad DataBindings.

ComboBox comboBox = ReportComboBox.Control;

Usted puede llenar en el cuadro combinado en el evento FormLoad:

ReportComboBox.Items.Add("123");

¿Cómo obtener acceso al código del informe?

Uso de comandos de la propiedad de la clase StiReport. Esta propiedad contiene un texto del código del informe.
1-74 Generador de Informes Softland

¿Cómo generar un nuevo código de un informe?

Utilice ScriptNew el método de la clase StiReport para generar un nuevo código de un informe. Por ejemplo:

C#

StiReport report = new StiReport();


report.ScriptNew();

VB

Dim Report As StiReport = New StiReport()


Report.ScriptNew()

¿Cómo actualizar código del informe?

Para actualizar los datos de un código de informe, deberá usar el método ScriptUpdate de la clase StiReport. Por ejemplo:

C#

StiReport report = new StiReport();


report.ScriptUpdate();

VB

Dim Report As StiReport = New StiReport()


Report.ScriptUpdate()

Antes de compilar el informe, el código se actualiza automáticamente. Por lo tanto, no hay necesidad de llamar al método
ScriptUpdate.

Cómo trabajar con los nombre de columnas que coinciden con palabras claves de C #?

Ingrese el símbolo @ antes del nombre de la columna. Por ejemplo - @ clase

¿Cómo cargar una imagen de la URL?

Utilice el código siguiente para cargar una imagen de mapa de bits en el formato:

Image1.Image = Stimulsoft.Base.Drawing.StiImageFromURL.LoadBitmap("http://www.domain.com/bitmap.gif");

Utilice el código siguiente para cargar una imagen en el formato Metafile:

Image1.Image = Stimulsoft.Base.Drawing.StiImageFromURL.LoadMetafile("http://www.domain.com/bitmap.emf");

También puede utilizar la propiedad ImageURL de la componente de la imagen.

¿Cómo saber el nombre del archivo desde el que se cargó el informe?

Usted puede obtener la trayectoria del archivo anterior de la propiedad ReportFile. Muestra:

string path = report.ReportFile;


GENERADOR DE INFORMES SOFTLAND 1-75

¿Cómo cambiar el valor del CheckBox en una página en vista previa?

Puede utilizar al mismo tiempo una vista previa de informe y puede agregar una marca X en la vista previa del informe:

Uso de la Cruz CheckStyle = "X" símbolo

Por favor, escriba a la ClickEvent manejador de evento:

C#

Stimulsoft.Report.Components.StiCheckBox check = sender as Stimulsoft.Report.Components.StiCheckBox;

if (check.CheckedValue == null || ((bool)check.CheckedValue) == false)check.CheckedValue = true;


else check.CheckedValue = false;

Invalidate();

VB

Dim box1 As Stimulsoft.Report.Components.StiCheckBox = CType(sender, Stimulsoft.Report.Components.StiCheckBox)

If ((box1.CheckedValue Is Nothing) OrElse Not CType(box1.CheckedValue, Boolean)) Then


box1.CheckedValue = True
Else
box1.CheckedValue = False
End If

MyBase.Invalidate

¿Cómo cambiar el número de página?

Si desea cambiar el número de la página todo lo que necesita es asignar el valor a la variable de sistema de la PageNumber. Por
ejemplo:

PageNumber = 1;

También puede utilizar la propiedad especial ResetPageNumber.

¿Existe alguna forma de imprimir una cabecera para un databand en la segunda página?

Puede utilizar BeforePrintEvent. Véase el ejemplo de código:

C#

if (PageNumber == 1)HeaderBand1.Enabled = false;


else HeaderBand1.Enabled = true;

VB

If (MyBase.PageNumber = 1) Then
Me.HeaderBand1.Enabled = False
Else
Me.HeaderBand1.Enabled = True
End If
1-76 Generador de Informes Softland

¿Cómo reducir al mínimo el tamaño de la fuente del texto en función de la del tamaño de la componente de
texto?

En el caso de la propiedad GetValue del componente Texto se debe establecer el siguiente código:

C#

StiText text = sender as StiText;


text.Font = text.GetActualFont(Customers.CompanyName);

StiText text = sender as StiText;


text.Font = text.GetActualFont(Customers.CompanyName, minimumFontSize);

VB

Dim text1 As Components.StiText = TryCast(sender, Components.StiText)


text1.Font = text1.GetActualFont(Customers.CompanyName)

Dim text1 As Components.StiText = TryCast(sender, Components.StiText)


text1.Font = text1.GetActualFont(Customers.CompanyName, minimumFontSize)

Donde el minimumFontSize - minimiza admisible el tamaño de la fuente.

Para También puede utilizar dos propiedades de la componente de texto:

ShrinkFontToFit
ShrinkFontToFitMinimumSize

¿Cómo cambiar la duplicación de los valores de una banda en uno solo?

Los valores de la propiedad ProcessingDuplicates son las siguientes:

ProcessingDuplicates = Merge – si se duplican los valores se fusionan


ProcessingDuplicates = Ninguna –se duplican los valores de salida sin cambios
ProcessingDuplicates = Ocultar - la primera línea de salida es la duplicación de los valores

¿Cómo agregar el manejador de evento para los eventos?

Después de llamar Mostrar, el motor automáticamente llama al método de compilación y crea un nuevo informe -
report.CompiledReport.
Para agregar manejador de evento debe usar este código:

C#

report.Compile();
report.CompiledReport.GetComponents()["ComponentName"].BeforePrint += new EventHandler(Component_BeforePrint);
report.Show();
GENERADOR DE INFORMES SOFTLAND 1-77

VB

Report.Compile()
AddHandler Report.CompiledReport.GetComponents.Item("ComponentName").BeforePrint, New EventHandler(AddressOf
Me.Component_BeforePrint)
Report.Show()

Este código suscribe el informe compilado

2. Puede establecer script de evento directamente:

C#

component.BeforePrintEvent.Script = "MessageBox.Show(\"test\")";

VB

Component.BeforePrintEvent.Script = "MessageBox.Show(""test"")"

Puede asignar a la secuencia de comandos del evento y después de la compilación de este script ir a un manejador.

¿Cómo conseguir el acceso a las páginas de un informe?

Páginas de un informe que se almacenan en la colección de páginas de los informes. Véase la muestra:

C#

//Returns the first page of a report


StiPage page = report.Pages[0];

VB

'Returns the first page of a report


Dim Page As StiPage = Report.Pages(0)

¿Cómo obtener el total de una banda sin su impresión?

Debe disminuir la altura de la banda de datos 0.

Vista Previa

¿Cómo grabar el proceso de carga y un informe hecho por mí?

Usted puede utilizar SavingDocument estática y LoadingDocument eventos de la clase StiPreviewControl. El


SavingDocument se utiliza para guardar el informe prestados. LoadingDocument se utiliza para cargar el informe prestados.

Para grabar el proceso de informe ver lo que se indica a continuación:

C#

private static void OnSavingDocument(object sender, EventArgs e)


{
StiReport report = sender as StiReport;
report.SaveDocument("MyFile.mdc");
}
1-78 Generador de Informes Softland

StiPreviewControl.SavingDocument += new EventHandler(OnSavingDocument);

VB

Private Shared Sub OnSavingDocument(ByVal sender As Object, ByVal e As EventArgs)


Dim Report As StiReport = TryCast(sender, StiReport)
Report.SaveDocument("MyFile.mdc")
End Sub
AddHandler StiPreviewControl.SavingDocument, New EventHandler(AddressOf Form1.OnSavingDocument)

Para el procesamiento de la carga de informes, ver lo que se indica a continuación:

C#

private static void OnLoadingDocument(object sender, EventArgs e)


{
StiReport report = sender as StiReport;
report.LoadDocument("MyFile.mdc");
}
StiPreviewControl.LoadingDocument += new EventHandler(OnLoadingDocument);

VB

Private Shared Sub OnLoadingDocument(ByVal sender As Object, ByVal e As EventArgs)


Dim Report As StiReport = TryCast(sender, StiReport)
Report.LoadDocument("MyFile.mdc")
End Sub
AddHandler StiPreviewControl.LoadingDocument, New EventHandler(AddressOf Form1.OnLoadingDocument)

¿Cómo proceso la impresión en la ventana de vista previa?

Debe utilizar la propiedad estática PrintingDocument de la clase StiPreviewControl.

Para la transformación de la impresión del informe ver lo que se indica a continuación:

C#

private static void OnPrintingDocument(object sender, EventArgs e)


{
StiReport report = sender as StiReport;
report.Print();
}}
StiPreviewControl.PrintingDocument += new EventHandler(OnPrintingDocument);

VB

Private Shared Sub OnPrintingDocument(ByVal sender As Object, ByVal e As EventArgs)


Dim Report As StiReport = TryCast(sender, StiReport)
Report.Print()
End Sub
AddHandler StiPreviewControl.PrintingDocument, New EventHandler(AddressOf Form1.OnPrintingDocument)
GENERADOR DE INFORMES SOFTLAND 1-79

¿Cómo desactivar los botones de la barra de herramientas?

Si desea deshabilitar botones en la ventana de vista previa debe cambiar propiedades del servicio StiPreviewConfig.

C#

//Do this operation once when running the program


StiConfig.Load();

//Get service
StiPreviewConfigService config = StiConfig.Services.GetService(typeof(StiPreviewConfigService)) as
StiPreviewConfigService;

//Turn off all buttons of changes of the rendered report


config.PageNewEnabled = false;
config.PageDeleteEnabled = false;
config.PageDesignEnabled = false;
config.PageSizeEnabled = false;

//Save configuration if necessary


StiConfig.Save();

VB

'Do this operation once when running the program


StiConfig.Load()

'Get service
Dim Config As StiPreviewConfigService = TryCast(StiConfig.Services.GetService(GetType(StiPreviewConfigService)),
StiPreviewConfigService)

'Turn off all buttons of changes of the rendered report


Config.PageNewEnabled = False
Config.PageDeleteEnabled = False
Config.PageDesignEnabled = False
Config.PageSizeEnabled = False

'Save configuration if necessary


StiConfig.Save()

El mismo resultado se puede obtener utilizando la Configurator.exe.

Además, puede utilizar la StiPreviewControl. Contiene muchas de las propiedades para el control de la visibilidad de los diversos
controles de la ventana de vista previa.

También puede utilizar la propiedad de informe PreviewSettings, puede cambiar esta propiedad del diseñador de informes.

¿Cómo desactivar la barra de herramientas?

Para desactivar la barra de herramientas se puede utilizar StiPreviewControl. Establecer la propiedad de la ShowToolbar en
Falso.

¿Cómo procesar los informes en la ventana de vista previa?

Su ventana de vista previa de informe se creará en primer lugar y luego será desplegada.

C#
1-80 Generador de Informes Softland

//Create a new window


public class Form1 : Form
{
public Form1(StiReport report)
{
}
}

//Fill the PreviewForm property


report.PreviewForm = typeof(Form1);

VB

'Create a new window


Public Class Form1
Inherits Form
Public Sub New(ByVal report As StiReport)
InitializeComponent()
End Sub
End Class

'Fill the PreviewForm property


Report1.PreviewForm = CType(GetType(Form1), Type)

¿Cómo establecer el tamaño de las páginas en el control StiPreviewControl?

Utilice el método SetZoom. Por ejemplo:

C#

//Set zoom 100%


myPreviewControl.SetZoom(1);

VB

'Set zoom 100%


MyPreviewControl.SetZoom(1)

¿Cómo configurar el tamaño predefinido de las páginas en el control StiPreviewControl?

Debe usar métodos predefinidos para establecer zoom:

C#

//Display the page


myPreviewControl.SetZoomOnePage();

//Display two pages


myPreviewControl.SetZoomTwoPages();

//Display multiple pages


myPreviewControl.SetZoomMultiplePages();

//Display a page. The page is to be align by the width in the StiPreviewControl


myPreviewControl.SetZoomPageWidth();
GENERADOR DE INFORMES SOFTLAND 1-81

VB

'Display the page


MyPreviewControl.SetZoomOnePage()

'Display two pages


MyPreviewControl.SetZoomTwoPages()

'Display multiple pages


MyPreviewControl.SetZoomMultiplePages()

'Display a page. The page is to be align by the width in the StiPreviewControl


MyPreviewControl.SetZoomPageWidth()

¿Cómo actualizar el informe en la vista previa con el código del informe?

Utilice el método de InvokeRefreshPreview para el generador de informes:

C#

this.InvokeRefreshPreview();

VB

Me.InvokeRefreshPreview()

¿Cómo cargar una página en el informe actual desde el código del informe?

Agregar a la componente en una página lo siguiente:

C#

//Create a page
StiPage page = new StiPage();

//Load the page from a file


page.Load("MyPage.pg");

//Add a page to the collection of rendered pages


RenderedPages.Add(page);

//Refresh the window of preview


InvokeRefreshPreview();

VB

'Create a page
Dim Page As New StiPage

'Load the page from a file


Page.Load("MyPage.pg")

'Add a page to the collection of rendered pages


Report.RenderedPages.Add(Page)

'Refresh the window of preview


Report.InvokeRefreshPreview()
1-82 Generador de Informes Softland

¿Cómo conseguir el acceso a las páginas del informe actual?

Utilice la propiedad RenderedPages de un informe:

C#

foreach (StiPage page in report.RenderedPages)


{

VB

Dim page As StiPage


For Each page In MyBase.RenderedPages

Next

¿Cómo mostrar todos los componentes en la vista previa del informe?

Utilice la propiedad para imprimir:

Verdadero - componente se muestra en el diseñador y se imprimirá


Falso - componente se muestra en el diseño y no se imprime

¿Cómo agregar o cambiar una imagen en el informe actual con el código del informe?

Agregar una imagen a su informe

Crear y agregar un nuevo componente:

C#

StiImage image = new StiImage();


image.Left = 0;
image.Top = 0;
image.Width = 10;
image.Height = 10;

//An image name should be unique in your report


image.Name = "MyUniqueName";

//Assign the image


image.Image = myImage;

//Add the component with the image with the report


report.Pages[0].Components.Add(image);

VB

Dim Image As StiImage = New StiImage()


Image.Left = 0
Image.Top = 0
Image.Width = 10
Image.Height = 10

'An image name should be unique in your report


GENERADOR DE INFORMES SOFTLAND 1-83

Image.Name = "MyUniqueName"

'Assign the image


Image.Image = myImage

'Add the component with the image with the report


Report.Pages(0).Components.Add(Image)

Cambio de imágenes en el informe

Veamos dos formas:


La primera manera - el informe no se haya recogido

El segundo camino - el informe se compila de carga de montaje

La primera manera.
Busque el componente de la imagen en el informe:
C#

StiImage image = report.GetComponents()["image1"] as StiImage;

VB

Dim Image As StiImage = CType(Report.GetComponents()("image1"), StiImage)

Cambio de la imagen:

C#

image.Image = myImage;

VB

Image.Image = MyImage

De esta manera, su imagen se convertirá en el código y, a continuación, el informe se compilará y correr.

La segunda manera.
Llene el informe:

C#

report.Compile();

VB

Report.Compile()

Busque el componente:
Llene el informe:

C#

StiImage image = report.GetComponents()["image1"] as StiImage;

VB

Dim Image As StiImage = CType(Report.GetComponents()("image1"), StiImage)


1-84 Generador de Informes Softland

Asignar la imagen:

C#

image.ImageToDraw = myImage;

VB

Image.ImageToDraw = MyImage

¿Cómo indicar cancelar presionando el botón en la ventana de vista previa y no muestre el informe?

Compruebe la IsStopped propiedad de un informe:

C#

if (!report.IsStopped)

¿Cómo atachar su indicador de las páginas actuales?

Para atachar el indicador de páginas del informe, deberá usar el evento Rendering del informe. Véase a continuación el ejemplo
del código:

C#

//Create a new report


StiReport report = new StiReport();
report.Load("report.mrt");

//Compile this report by all means


report.Compile();

//Add to the Rendering event of a compiled report


report.CompiledReport.Rendering += new EventHandler(this.OnRendering);

//Start report rendering. Attention! The Render method is called from False arguments.
//This argument indicates that there is no need to show progress of report rendering
report.Render(false);

//Show the rendered report


report.Show();

//The event which we are attaching


private void OnRendering(object sender, EventArgs e)
{
StiReport report = sender as StiReport;
string info = (report.PageNumber - 1).ToString();
}

VB

'Create a new report


Dim Report As New StiReport
Report.Load("report.mrt")

'Compile this report by all means


Report.Compile()

'Add to the Rendering event of a compiled report


GENERADOR DE INFORMES SOFTLAND 1-85

AddHandler Report.CompiledReport.Rendering, New EventHandler(AddressOf Me.OnRendering)

'Start report rendering. Attention! The Render method is called from False arguments.
'This argument indicates that there is no need to show progress of report rendering
Report.Render(False)

'Show the rendered report


Report.Show()

'The event which we are attaching

Private Sub OnRendering(ByVal sender As Object, ByVal e As EventArgs)


Dim Report As StiReport = CType(sender, StiReport)
Dim Info As String = (Report.PageNumber - 1).ToString()
End Sub

¡Atención! Deberá adjuntar a la report.CompiledReport y sólo después de esto el método de compilación.

¿Por qué tengo el texto impreso no es similar con el texto en la vista previa?

Establecer la propiedad TextQuality de la componente de texto a la WYSIWYG (Lo que usted ve es lo que usted consigue) o
tipográficas. Esta propiedad le permite ver su texto en una vista previa tal como será impresa.

Impresión de informes

¿Cómo imprimir un informe de inmediato sin vista previa?

Para empezar la carga de un informe es la forma siguiente:

C#

StiReport report = new StiReport();


report.Load("report.mrt");
report.Print();

VB

Dim Report As StiReport = New StiReport()


Report.Load("report.mrt")
Report.Print()

¿Cómo imprimir informe sin cuadro de diálogo?

Se debe usar StiReport.

C#

StiReport report = new StiReport();


report.Load("report.mrt");
report.Render();
PrinterSettings printerSettings = new PrinterSettings();
printerSettings.Copies = 2;
Report.Print(printerSettings);

VB
1-86 Generador de Informes Softland

Dim Report As StiReport = New StiReport()


Report.Load("report.mrt")
Report.Render()
Dim PrinterSettings As PrinterSettings = New PrinterSettings()
PrinterSettings.Copies = 2
Report.Print(PrinterSettings)

¿Cómo imprimir un informe con los parámetros especificados?


Usted puede usar el método de impresión. Por ejemplo:

C#

StiReport report = new StiReport();


report.Load("MyReport.mrt");
report.RegData(myDataSet);
report.Render();

//Create Printer Settings


PrinterSettings printerSettings = new PrinterSettings();

printerSettings.Copies = 1;
printerSettings.FromPage = 1;
printerSettings.ToPage = report.RenderedPages.Count;

//Direct Print - Don't Show Print Dialog


report.Print(false, printerSettings);

VB

Dim Report As New StiReport


Report.Load("MyReport.mrt")
Report.RegData(MyDataSet)
Report.Render()

'Create Printer Settings


Dim PrinterSettings As New PrinterSettings
PrinterSettings.Copies = 1
PrinterSettings.FromPage = 1
PrinterSettings.ToPage = Report.RenderedPages.Count

'Direct Print - Don't Show Print Dialog


Report.Print(False, PrinterSettings)

¿Cómo imprimir un informe con la impresora especificada?


Usted debe especificar el nombre de la impresora en la propiedad PrinterName de la clase PrinterSettings. Por ejemplo:

C#

StiReport report = new StiReport();


report.Load("MyReport.mrt");
report.RegData(myDataSet);
report.Render();

//Create Printer Settings


PrinterSettings printerSettings = new PrinterSettings();
//Set Printer to Use for Printing
printerSettings.PrinterName = "MyPrinterName";
//Direct Print - Don't Show Print Dialog
report.Print(false, printerSettings);
GENERADOR DE INFORMES SOFTLAND 1-87

VB

Dim Report As New StiReport


Report.Load("MyReport.mrt")
Report.RegData(MyDataSet)
Report.Render()

'Create Printer Settings


Dim PrinterSettings As New PrinterSettings

'Set Printer to Use for Printing


PrinterSettings.PrinterName = "MyPrinterName"

'Direct Print - Don't Show Print Dialog


Report.Print(False, PrinterSettings)

¿Cómo indicar la fuente de papel especificado para la impresión?

Utilice la clase PrinterSettings:

C#

StiReport report = new StiReport();


report.Load("MyReport.mrt");
report.RegData(myDataSet);
report.Render();

//Create Printer Settings


PrinterSettings printerSettings = new PrinterSettings(();

//Specify paper source


printerSettings.DefaultPageSettings.PaperSource = printerSettings.PaperSources[1];

//Direct Print - Don't Show Print Dialog


report.Print(false, printerSettings);

VB

Dim Report As New StiReport


Report.Load("MyReport.mrt")
Report.RegData(MyDataSet)
Report.Render()

'Create Printer Settings


Dim PrinterSettings As New PrinterSettings

'Specify paper source


PrinterSettings.DefaultPageSettings.PaperSource = PrinterSettings.PaperSources.Item(1)

'Direct Print - Don't Show Print Dialog


Report.Print(False, PrinterSettings)

El final de la página no se imprime completamente. ¿Qué debo hacer?

Por defecto en los márgenes de la página se pone 1 cm por todos los lados. Pero algunas impresoras tienen más de 1 cm de
márgenes en la parte inferior (Por ejemplo, si está usando impresoras DeskJet). Ajuste el margen inferior a 2 centímetros.
1-88 Generador de Informes Softland

¿Cómo imprimir los derechos de autor en cada página de un informe?

A menudo es necesario que usted desee en la salida de los derechos de autor, información de sistema, timbres de agua, nombre
de programa, y cualquier otra información que el usuario no sea capaz de borrar o editar en el Diseñador. El Generador de
Informes Softland tiene propiedades especiales para este tipo de solicitud. Estamos hablando de dos eventos de página:
PagePainting y PagePainted. Estos dos eventos se llaman cuando muestra una página. PagePainting posterior a la página que ha
sido mostrada, pero no será uno de los componentes de salida. Este evento se utiliza para mostrar de información sobre los
antecedentes de una página. Toda la información de salida después de la llamada de este evento se superpone en la información.
La segunda propiedad PagePainted, es llamada cuando la página ha sido completamente mostrada. Así, cualquier información
que se presente se superpone en la salida antes de una página.

Entonces supongo que es necesario para la salida de los derechos de autor de una empresa, lo que ha creado este programa en
cada página del informe. Para esto, es necesario crear el método para el evento de servicio:

C#

private static void OnPagePainting(StiPage sender, StiPagePaintEventArgs e)


{
}

VB

Private Shared Sub OnPagePainting(ByVal sender As StiPage, ByVal e As StiPagePaintEventArgs)

End Sub

Entonces, el manejador asigna a la estática el caso de una página. Además se debe realizar de asignación una vez que el caso es
estático:

C#

StiPage.PagePainting += new StiPagePaintEventHandler(OnPagePainting);

VB

AddHandler StiPage.PagePainting, New StiPagePaintEventHandler(AddressOf Form1.OnPagePainting)

Ahora es necesario una inscripción a la salida. Toda la información necesaria para la producción en la figura de los argumentos
es llamada manejador. Con objeto de que el remitente la referencia a la página que se está pintada es pasado. Por medio de los
parámetros e objeto de la producción se pasan. Los parámetros de salida se han de examinar más a fondo. Por lo tanto, este
argumento tiene el tipo StiPagePaintEventArgs. Este tipo contiene los siguientes campos:

Nombre de la Propiedad Descripción de la Propiedad


ClientRectangle Rectángulo que define el tamaño y la posición de la cara interna
de la página sin campos de la página
FullRectangle Rectángulo que define el tamaño y la posición de la cara interna
de la página sin campos de la página
ClipRectangle Rectángulo describe el tamaño y la posición de la gama que
requiere ser repintada
Graphics Graphic zona en la que la muestra se produce
IsDesigning Valor. Si es cierto entonces, la página está mostrada en el
informe de diseño
IsPrinting Valor. Si es cierto entonces, la página se ha impreso

Debe recordar que no hay ninguna propiedad de la muestra en una página en la ventana de vista previa. Pero es fácil de
comprobar con IsDesigning y IsPrinting. Si ambas de estas propiedades son falsas entonces, la página está mostrada en la
ventana de vista previa.
GENERADOR DE INFORMES SOFTLAND 1-89

El siguiente es el código para la cadena de producción de derechos de autor:

C#

private static void OnPagePainting(StiPage sender, StiPagePaintEventArgs e)


{
Font font = new Font("Arial", 20 * (float)sender.Zoom));
e.Graphics.DrawString("(C) 2005 MyCompany", font, Brushes.Red, e.FullRectangle);
font.Dispose();
}

VB

Private Shared Sub OnPagePainting(ByVal sender As StiPage, ByVal e As StiPagePaintEventArgs)


Dim Font As Font = New Font("Arial", (20.0! * CType(page.Zoom, Single))
e.Graphics.DrawString("(C) 2005 MyCompany", Font, Brushes.Red, e.FullRectangle, Format)
Font.Dispose()
End Sub

En este método se muestra el derecho de autor en la página. Usted debe considerar la escala, por lo tanto, si utiliza un nuevo tipo
de letra de su tamaño se corrige teniendo en cuenta la escala.

Exportadores de Informes

¿Cómo exportar informes?

Para exportar informe a archivo en formato pdf:

C#

StiReport report = new StiReport();


report.Load("report.mrt");
report.Render();
report.ExportDocument(StiExportFormat.Pdf, "document.pdf");

VB

Dim Report As StiReport = New StiReport()


Report.Load("report.mrt")
Report.Render()
Report.ExportDocument(StiPdfExportFormat.Pdf, "document.pdf")

¿Cómo exportar un informe sin utilizar el cuadro de diálogo?

Para exportar un informe a archivo pdf sin utilizar el cuadro de diálogo haga lo siguiente:

C#

StiReport report = new StiReport();


report.Load("report.mrt");
report.Render();
StiPdfExportService pdfExport = new StiPdfExportService();
pdfExport.ExportPdf(report, "document.pdf");

VB
1-90 Generador de Informes Softland

Dim Report As StiReport = New StiReport()


Report.Load("report.mrt")
Report.Render()
Dim PdfExport As StiPdfExportService = New StiPdfExportService()
PdfExport.ExportPdf(Report, "document.pdf")

En este ejemplo, el informe está siendo exportado a pdf. Usted puede hacer lo mismo a su informe de exportación a otros
formatos disponibles. Use las siguientes clases para la exportación:

StiCsvExportService – exportar a Csv;


StiExcelXmlExportService - exportar a ExcelXml;
StiHtmlExportService - exportar a Html;
StiImageExportService - exportar a Images;
StiPdfExportService - exportar a Pdf;
StiRtfExportService - exportar a Rtf;
StiTxtExportService - exportar a Txt;
StiXmlExportService - exportar a Xml.

¿Cómo desactivar los tipos de exportación innecesarios de la ventana de vista previa?

Para esto, debe hacer lo siguiente:

StiConfig.Load();

StiServiceContainer services =
StiConfig.Services.GetServices(typeof(StiExportService));

foreach (StiService service in services)


{
if (service is StiBmpExportService)service.ServiceEnabled = false;
if (service is StiCsvExportService)service.ServiceEnabled = false;
if (service is StiEmfExportService)service.ServiceEnabled = false;
if (service is StiGifExportService)service.ServiceEnabled = false;
if (service is StiHtmlExportService)service.ServiceEnabled = false;
if (service is StiJpegExportService)service.ServiceEnabled = false;
if (service is StiPdfExportService)service.ServiceEnabled = false;
if (service is StiRtfExportService)service.ServiceEnabled = false;
if (service is StiTiffExportService)service.ServiceEnabled = false;
if (service is StiTxtExportService)service.ServiceEnabled = false;
if (service is StiXmlExportService)service.ServiceEnabled = false;
}
StiConfig.Save();

¿Cómo exportar una página con el tamaño especificado en el mapa de bits?

Utilice el método GetThumbnail de un StiPage:

C#

Bitmap bmp = page.GetThumbnail(200, 300);

VB

Dim Bmp As Bitmap = Page.GetThumbnail(200, 300)


GENERADOR DE INFORMES SOFTLAND 1-91

¿Cómo, utilizando el RichText, a la salida de texto en el formato RTF?

En el caso de GetValueEvent la RichText escribir el siguiente código:

C#

System.IO.StreamReader reader = new System.IO.StreamReader("d:\\script.rtf");


string str = reader.ReadToEnd();
reader.Close();
e.Value = System.Xml.XmlConvert.EncodeName(StiRichText.PackRtf(str));

VB

Dim Reader As System.IO.StreamReader = New System.IO.StreamReader("d:\\script.rtf")


Dim Str As String = Reader.ReadToEnd()
Reader.Close()
e.Value = System.Xml.XmlConvert.EncodeName(StiRichText.PackRtf(Str))

Configuraciones

¿Qué puedo hacer para cargar o guardar la configuración del informe?

Puede utilizar los métodos guardar y cargar de la clase StiConfig.

¿Qué puedo hacer si no quiero guardar la configuración?

Si no desea guardar la configuración en la propiedad estática StiOptions.Configuration.DontSaveConfig defina True.

¿Cómo restaurar la configuración por defecto?

Retire el archivo Stimulsoft.Report.config y vuelva a ejecutar la aplicación. Después de esto el Generador de Informes Softland
crea el archivo de configuración de nuevo. También puede llamar al método StiConfig.Restore. Este método restaura la
configuración por defecto.

¿Cómo usar más de una configuración simultáneamente?

Usted debe apagar el automático de guardar la configuración y, a continuación, cargar y guardar configuraciones que necesita en
el momento oportuno y adecuado posiciones.

¿Cómo guardar la configuración en la base de datos?

Uso y ahorro de eventos Carga de la clase StiConfig.

¿Cómo adjuntar su propio TraceListener?

Véase el texto siguiente:

<system.diagnostics>
<switches>
<add name="traceLevel" value="4" />
</switches>
<trace autoflush="true" indentsize="4">
<listeners>
<add name="myListener" type="System.Diagnostics.TextWriterTraceListener"
initializeData="C:\Inetpub\wwwroot\ambReports1\_trace.log" />
1-92 Generador de Informes Softland

<remove type="System.Diagnostics.DefaultTraceListener"/>
</listeners>
</trace>
</system.diagnostics>

¿Cómo mostrar todas las excepciones que se invocan en el Generador de Informes Softland?

Establezca la propiedad StiOptions.Engine.HideExceptions en falso.

¿Cómo el Generador de Informes Softland permite desactivar los cuadros de diálogo con todos los mensajes?

Establezca la propiedad StiOptions.Engine.HideMessages en verdadero.

¿Cómo cambiar la actual localización del generador de informes?

Utilice el siguiente código:

C#
//Specify the file of localization
StiConfig.LoadLocalization("MyLocalization.xml");

VB
'Specify the file of localization
StiConfig.LoadLocalization("MyLocalization.xml")

¿Cómo cambiar la ruta de localización de los recursos?

El directorio en el que el Generador de Informes Softland se realiza las búsquedas de localización de los recursos se establece en
la propiedad StiOptions.Configuration.DirectoryLocalization. Por defecto esta propiedad es "Localización". En caso necesario,
puede cambiar el valor de esta propiedad.

¿Qué unidades que se utilizan para almacenar las coordenadas de un informe?

Las coordenadas de los componentes de un informe se almacenan en el actual las unidades del informe actual. Son centímetros,
milímetros, pulgadas, y centésimas de pulgada. Para todos los cuadros de diálogo de las coordenadas se almacenan en píxeles.

¿Cómo cambiar la unidad actual en el informe?

Para cambiar la actual dependencia de un informe, deberá utilizar la propiedad de la Unidad StiReport. Por ejemplo:

C#

//Set centimeters
Report.Unit = new StiCentimetersUnit();

//Set millimeters
Report.Unit = new StiMillimetersUnit();

//Set inches
Report.Unit = new StiInchesUnit();

//Set hundredths of inch


Report.Unit = new StiHundredthsOfInchUnit();
GENERADOR DE INFORMES SOFTLAND 1-93

VB

'Set centimeters
Report.Unit = New StiCentimetersUnit()

'Set millimeters
Report.Unit = New StiMillimetersUnit()

'Set inches
Report.Unit = Newfd StiInchesUnit()

'Set hundredths of inch


Report.Unit = New StiHundredthsOfInchUnit()

Después que la Dependencia de la propiedad se ha cambiado el generador de informes convierte automáticamente todos los
tamaños y posiciones de los componentes en esta nueva unidad.