Los reports en Ahora ERP se vinculan habitualmente a un objeto o colección. Por tanto, aunque no vengan activos por defecto, la colección de reports de la carpeta JORNADAS existente a día de hoy en el repositorio de AHORA ERP son a priori vinculables al objeto EMPLEADO o colección EMPLEADOS.
Si lo que queremos es poder imprimir uno de esos reports a partir del botón IMPRIMIR ubicado en el pie del formulario de la pantalla de Administración del Control de Presencia...
...entonces la vinculación se debe realizar sobre el formulario además de usar un objeto especial.
Acudiremos a la gestión de listados de la herramienta ADMON, sección LISTADOS y escogeremos el objeto "OBJETOGENERICO".
¿QUÉ HACER SI NO FUNCIONA EL FILTRO DE FECHAS CUANDO LANZO UN REPORT DESDE ESTE FORMULARIO?
Es muy importante que la tabla que se indique para la vinculación del report sea la adecuada. Es interesante que si se dispone del editor/diseñador de Crystal Reports se abra el report que se quiere vincular para revisar qué tablas incluye su consulta interna, de modo que podamos escoger una tabla que corresponda con la del objeto destino y que a su vez esté contenida en el report.
En el caso particular de este formulario de Administración del Control de presencia, ocurre que tiene un filtro de fechas en la parte inferior izquierda que afecta a cualquier report que se pretenda lanzar desde el botón imprimir. Cuando el ERP envía el filtro de fechas al report, lo envía sin horas, es decir, en formato aaaammdd o dd-mm-aaaa. Pero por ejemplo, en la tabla donde se van almacenando los fichajes de los empleados EMPLEADOS_PRESENCIA se guardan las fechas con formato fecha-hora. Esto puede hacer que el filtro que establecemos en el formulario no funcione correctamente porque no entiende los datos pasados como filtro.
En la imagen que se muestra arriba, la tabla que se ha informado en realidad es una vista personalizada llamada VPERS_EMPLEADOS_PRESENCIA. Se pretende vincular el report "Control de Presencia.rpt" que devuelve un listado de fichajes de empleados y que funcione con el filtro comentado.
AS
SELECT E.IdDoc, E.IdEmpleado, CONVERT(varchar,E.FechaEntrada,112) AS FechaEntrada,CONVERT(varchar,e.FechaSalida,112) as FechaSalida
FROM Empleados_Presencia E
zpermisos VPERS_EMPLEADOS_PRESENCIA