Programación de Reportes Web en eFactory ERP/CRM: Errores Comunes y su Solución

Programación de Reportes en eFactory: Errores Comunes y su Solución

(eFactory v4.0.1, también válido para versiones anteriores)

Generalmente la programación y configuración de reportes en eFactory es bastante simple, pero en ocasiones nos encontramos con situaciones inesperadas que a simple vista no parecen simples de resolver. En este artículo repasaremos algunos errores comunes encontrados al programar reportes en eFactory y veremos como solucionar esas situaciones:


  • No aparece el Reporte/Formato en la Lista Correspondiente.
  • No se encuentra el Reporte.
  • No se puede completar el proceso: el índice estaba fuera del intervalo.
  • El Reporte/Formato no Muestra Ningún Registro.
  • Los Reportes/Formatos "pequeños" ocupan toda la hoja al imprimir. 

No aparece el Reporte/Formato en la Lista Correspondiente

No se encuentra el Reporte - Programación de Reportes en eFactory ERP/CRM, Contabilidad, Nómina
Formulario Imprimir Reportes

No se encuentra el Formato - Programación de Reportes en eFactory ERP/CRM, Contabilidad, Nómina
Formulario Imprimir Formatos

Si programas un nuevo reporte o formato, pero no puedes verlo en la lista correspondientes (en las pantallas Imprimir Formato o Imprimir Reporte, según corresponda) verifica la siguiente información en el Administrador de Reportes:

  • Verifica que el reporte o formato esté registrado en el Administrador de Reportes. Si sabes que registraste el reporte (ya sea creándolo manualmente o importándolo), pero ya no puedes encontrarlo, es posible que le hayas asignado un Cliente Global equivocado. En ese caso deberás corregir el Cliente Global como se indica en la nota al final de esta lista. 
  • Asegúrate de que tenga estatus Activo. 
  • Verifica que asignaste el tipo correcto: Reporte o Formato; el resto de los tipos de reporte son para programación personalizada y no aparecerán en los listados de formatos y reportes integrados del sistema.
  • Verifica la ubicación del reporte o formato: Los formatos deben estar asociados a una opción de la sección Operaciones o Actualizaciones; los reportes deben estar asociados a una opción de la sección Reportes.
  • Si el reporte es del módulo de Sistemas: verifica que hayas marcado la casilla "Reporte de eFactory". Si creas un reporte del módulo de sistemas en eFactory Administrativo no podrás verlo en la Contabilidad o Nómina a menos que actives esta casilla. 
  • Verifica el Cliente Global seleccionado: la mayoría de los reportes deben ser asociados al cliente "especial" FACTORY, lo cual indica que el reporte es accesible para cualquier usuario registrado en el mismo servidor. Si el reporte es "privado" (solo visible para los usuarios de un Cliente Global específico) asegúrate de haber asignado el Cliente Global correcto. 
    • NOTA: Si crees haber asignado un cliente global equivocado y ya no encuentras el reporte para corregirlo, tendrás que ingresar nuevamente al sistema con un usuario que esté asociado al cliente que crees haber asignado por error. Si no sabes qué cliente asignaste o no tienes un usuario asociado a ese cliente, la única alternativa para corregir el registro del reporte o formato es ingresar por el Administrador de Bases de Datos (Management Studio) y cambiarle el código de Cliente global por medio de un comando SQL. 

Administrador de Reportes - Programación de Reportes en eFactory ERP/CRM, Contabilidad, Nómina
Administrador de Reportes
Si toda esta información es correcta y aun no puedes ver el reporte o formato en la lista correspondiente, entonces es posible que el reporte o formato esté bloqueado para tu usuario. Para comprobarlo verifica la siguiente información:

  1. En el módulo de Sistemas, en la sección de Actualizaciones, abre el formulario de Usuarios globales. 
  2. Selecciona al usuario que está intentando ver el reporte o formato y no le aparece (podría ser tu usuario, o algún otro a quien no le aparece el reporte o formato). 
  3. En la ficha Avanzados haz clic en el botón Bloquear Reportes.  

Usuarios Globales, Ficha Avanzados - Programación de Reportes en eFactory ERP/CRM, Contabilidad, Nómina
Usuarios globales - Ficha Avanzados

  1. En el formulario Bloquear Reportes selecciona el tipo, módulo y opción del reporte o formato que no aparece (no es necesaria la sección).
  2. Verifica que el reporte o formato aparezca en la lista de la izquierda (reportes disponibles) pero no en la lista de la derecha (reportes bloqueados). 
  3. Si el reporte o formato aparece en la lista de reportes bloqueados deberás comprobar con el administrador de sistemas o con un supervisor si ese usuario debería tener acceso al reporte o formato en cuestión. 
Bloquear Reportes y Formatos por Usuario - Programación de Reportes en eFactory ERP/CRM, Contabilidad, Nómina
Bloqueo de Reportes por Usuario
Si el usuario efectivamente tiene acceso al reporte o formato, es posible que sea el grupo de usuarios el que lo tiene bloqueado. Para verificarlo sigue el siguiente procedimiento:


  1. Abre el formulario de Usuarios globales y selecciona al usuario que no puede ver el reporte, como se indica en los primeros dos pasos del procedimiento anterior. 
  2. Has clic en el botón Imprimir, y abre el formato llamado Distribución por Grupos. 
  3. El formato mostrará una lista con todos los Grupos de Usuarios en los cuales está registrado el Usuario, y todos los permisos de acceso en cada uno de esos grupos. Toma nota de los códigos de grupos a los cuales está asociado el Usuario.

Formato de Usuario: Distribución por Grupos - Programación de Reportes en eFactory ERP/CRM, Contabilidad, Nómina

  1. En el módulo de Sistemas, en la sección de Actualizaciones, abre el formulario de Grupos de Usuarios y selecciona el primero de los grupos que obtuviste en el paso anterior.  
  2. En la ficha Avanzados haz clic en el botón Bloquear Reportes.
  3. En el formulario Bloquear Reportes selecciona el tipo, módulo y opción del reporte o formato que no aparece (no es necesaria la sección).
  4. Verifica que el reporte o formato aparezca en la lista de la izquierda (reportes disponibles) pero no en la lista de la derecha (reportes bloqueados). 
  5. Para que el usuario pueda ver el reporte es necesario que al menos uno de los grupos del usuario tenga permiso para ver el reporte. Si el reporte o formato aparece en la lista de reportes bloqueados para todos los grupos a los que pertenece deberás comprobar con el administrador de sistemas o con un supervisor si ese usuario debería tener acceso al reporte o formato en cuestión.

No se encuentra el Reporte/Formato Solicitado

Listado de Reportes: No se Encuentra el Reporte - Programación de Reportes en eFactory ERP/CRM, Contabilidad, Nómina

Este caso es común cuando se está creando un nuevo reporte o formato: La definición del reporte en el Administrador de Reportes es correcta y el reporte o formato está disponible para el usuario, pero al tratar de ejecutarlo aparece un mensaje indicando que no se encuentra el reporte solicitado.

Solo hay dos causas posibles para este mensaje de error:

  • El archivo principal del reporte no fue copiado a la carpeta correspondiente: El archivo principal es el archivo que se registró al definir el reporte en el Administrador de Reportes. Este debe copiarse a la carpeta de reportes del sistema en la cual se está ejecutando el mismo (por ejemplo, para el sistema administrativo sería "Administrativo\Reportes"), o en la subcarpeta indicada en el mensaje que se muestra en pantalla. 

  • El archivo registrado en el Administrador de Reportes no es el correcto: verifique que el nombre de archivo indicado al configurar el reporte o formato coincida con el  nombre real del archivo de extensión ASPX. Aunque técnicamente es válido usar cualquier carácter unicode (letra ñ, vocales con acento, espacios...) es recomendable limitarse a solo los caracteres del alfabeto inglés estándar, guión, guión bajo (o "piso"), y números, para evitar cualquier incompatibilidad causada por navegadores o servidores proxys antiguos.  

No se Puede Completar el Proceso: el Índice Estaba Fuera del Intervalo

El Índice estaba fuera del Intervalo - Programación de Reportes en eFactory ERP/CRM, Contabilidad, Nómina

Este mensaje de error puede deberse a múltiples razones, pero en casi todos los casos se presenta solo en Reportes y se debe a una misma causa: el reporte fue programado para utilizar un cierto número de parámetros, pero en la definición del reporte (en el Administrador de Reportes) se registraron menos parámetros de los necesarios.

Para corregir el error es necesario revisar el archivo de código del reporte (el archivo de extensión VB) para verificar cuantos parámetros (de qué tipo, si es único o un rango, en qué orden...) requiere el reporte; luego se debe verificar que la definición en el Administrador de Reportes sea la misma requerida.

El Reporte/Formato no Muestra Ningún Registro

El Reporte no Muestra Registros - Programación de Reportes en eFactory ERP/CRM, Contabilidad, Nómina

En este caso no hay ningún mensaje de error propiamente dicho, pero el reporte o formato muestra los encabezados y pies del documento, sin mostrar información de los registros solicitados.

Si es un Formato debería mostrar siempre los datos del registro solicitado (porque sabemos que si existe). Así que, si el formato no lo muestra probablemente se deba a un error funcional o lógico en el SELECT del reporte (en el archivo de extensión VB). El error puede deberse a que el SELECT contiene una unión entre tablas que no corresponden o que tienen datos no válidos; también podría ser causado por que el SELECT tiene algún filtro fijo que impide que el registro seleccionado se muestre. En estos casos lo mejor es validar el SELECT directamente en el Management Studio para determinar y corregir la causa del error.

Si en cambio es un Reporte, y si sabemos que existen registros para los parámetros indicados al momento de abrirlo (rango de fechas, códigos de registros, etc...) entonces debería mostrar los datos solicitados. Una posible causa de que el reporte esté en blanco es la misma explicada en el párrafo anterior sobre los formatos.

La otra posible causa del error en reportes podría ser el orden u origen de los parámetros: si el reporte y su definición tienen el mismo número y tipo de parámetros pero en orden diferente, o si los parámetros en el reporte fueron aplicados a los campos equivocados (por ejemplo: si se indica un código de ciudad en un campo que espera un código de moneda), entonces cualquier valor "válido" en esos parámetros podría mostrar el reporte en blanco. Para corregir el error primero debe verse el tipo, origen y orden de los parámetros del reporte en el Administrador de Reportes, compararse con los parámetros requeridos por el reporte (en el archivo de extensión VB) y finalmente verificar a cuales campos son aplicados esos parámetros.

Los Reportes/Formatos "Pequeños" Ocupan toda la Hoja al Imprimir

La mayoría de los formatos y reportes de eFactory se imprimen en hojas tamaño carta (8"x11") o A4 (210mm x 297mm), sin embargo en ocasiones se programan reportes en medidas menos comunes, como Media Carta (5.5"x8"), sobres o etiquetas. 

Formato de Recibos de Pago en Lote (Media Página) - Programación de Reportes en eFactory ERP/CRM, Contabilidad, Nómina


En el caso de los formatos y reportes Media Carta, como el de la imagen anterior, se espera imprimir en hojas de esa medida (posiblemente hojas continuas perforadas) o dos formatos por cada hoja tamaño carta (para impresión en hoja separadas).

El error que ocurre ocasionalmente es que al enviarlo a la impresora el formato queda girado 90° y expandido hasta ocupar el espacio de una hoja tamaño carta.

Impresión de Hojas tamaño Media Carta (u otro tamaño personalizado):

  • Primero debes crear el tamaño de papel personalizado, si es que no está creado ya. Para el procedimiento detallado de como crear un tamaño de hoja personalizado puedes seguir nuestro Manual de Configuración de Impresión
  • Abre el reporte o formato con el tamaño personalizado y presiona el botón Imprimir. 
  • Selecciona la impresora donde desees enviar el documento (tal vez quieras configurar esa impresora como predeterminada, si se usará frecuentemente). Ten en cuenta que la apariencia y las opciones del cuadro de dialogo de impresión dependerán de si estás visualizando el reporte o formato con Acrobat Reader, FoxitPDF, los visores predeterminados de Firefox o Chrome, o cualquier otro visor de PDF. 
  • En el panel de impresión has clic en el botón "Propiedades de la Impresora", o "Propiedades de Impresión", "Configurar Impresión" o una opción de nombre similar, dependiendo del visor de PDF que estés usando. 
  • En ventana de propiedades debes indicar el tamaño de papel que desees imprimir; en este caso el tamaño que personalizado que acabas de crear. 
Propiedades de Impresión - Programación de Reportes en eFactory ERP/CRM, Contabilidad, Nómina


  • Presionas Aceptar para cerrar la ventana de propiedades. 
  • Si estás usando Acrobat Reader es necesario un paso adicional: En el cuadro de dialogo de impresión selecciona el botón "Tamaño" (para que imprima una página en cada hoja), la opción "Tamaño real" (para que no intente ajustar el documento al tamaño del papel) y si es necesario establece manualmente la orientación del papel (necesario si por ejemplo la orientación del papel está invertida respecto al tamaño definido).  

Diálogo de Impresión - Programación de Reportes en eFactory ERP/CRM, Contabilidad, Nómina

El último paso del procedimiento anterior es necesario en Adobe Acrobat porque éste (y posiblemente otros visores) intentan ajustar de forma automática el tamaño, escala y orientación del documento para que se ajuste al papel y la configuración de la impresora. En general el ajuste de Adobe Acrobat es el correcto (en especial al imprimir documentos de tamaño A4 en hojas tamaño Carta), pero puede fallar al imprimir documentos de tamaño no estándar.


Vídeos Relacionados





Roimer García
rjgarcia@efactoryerp.com
Departamento de Desarrollo
Factory Soft
www.efactoryerp.com

Entradas populares de este blog

ERP Cloud: Actualizaciones de las Versiones de eFactory ERP/CRM

Comprobantes de Retenciones Fiscales y Parafiscales