create or replace function sp_ubicar_reporte(hostname varchar, port varchar)
returns boolean as $$
begin
update ad_process
set jasperreport = 'http://' || hostname || ':' || port || '/reports/' ||
substring( jasperreport, position('reports/' in jasperreport) + 8, length( jasperreport))
where isreport = 'Y'
and (jasperreport is not null or jasperreport <> '');
return true;
end;
$$ language plpgsql;
Hola.
ResponderEliminarTengo un problema con la ejecucion de un reporte en local. Añado al jasper reports de la opcion Report &Process la ruta. file://C:\Adempiere\reportes\newReport.jrxml y creo una opcion de proceso para su ejecucion.
Al ejecutar el proceso me sale el error que no se encuentra el mismo.
-------------------------------
-----------> MIssue.set_ValueNoCheck: ReleaseNo - Value too long - truncated to length=4 [59]
-----------> Msg.getMsg: NOT found: ProcessError [60]
===========> ProcessUtil.startJavaProcess: org.compiere.report.ReportStarter [60]
java.lang.IllegalArgumentException: URI has an authority component
at java.io.File.(Unknown Source)
at org.compiere.report.ReportStarter.getReportFile(ReportStarter.java:769)
at org.compiere.report.ReportStarter.getReportFile(ReportStarter.java:747)
at org.compiere.report.ReportStarter.startProcess(ReportStarter.java:411)
at org.adempiere.util.ProcessUtil.startJavaProcess(ProcessUtil.java:160)
at org.adempiere.util.ProcessUtil.startJavaProcess(ProcessUtil.java:105)
at org.compiere.apps.ProcessCtl.startProcess(ProcessCtl.java:649)
at org.compiere.apps.ProcessCtl.run(ProcessCtl.java:432)
at java.lang.Thread.run(Unknown Source)
-------------------------------
-----------> MIssue.set_ValueNoCheck: ReleaseNo - Value too long - truncated to length=4 [60]
-----------> ReportStarter.getReportFile: Illegal character in authority at index 7: file://C:\Adempiere\reportes\newReport.jrxml [61]
===========> ReportStarter.startProcess: No report file found for given type, falling back to file://C:\Adempiere\reportes\newReport.jrxml [61]
-------------------------------
-----------> MIssue.set_ValueNoCheck: ReleaseNo - Value too long - truncated to length=4 [61]
-----------> ReportStarter.getReportFile: Illegal character in authority at index 7: file://C:\Adempiere\reportes\newReport.jrxml [61]
===========> ReportStarter.startProcess: Can not find report file at path - file://C:\Adempiere\reportes\newReport.jrxml [61]
¿Cual sera el problema ?, creo q la clase startProcess no lee mi version de ireport.
alguna sugerencia?
Gracias..
1) El archivo jrxml debe estar ubicado en "C:\Adempiere\reports\MiReporte.jrxml"
Eliminar2) Entra al sistema y registra el reporte en el menu "Diccionario de la Aplicacion > Informes & Procesos", al final en el campo "Reporte Jasper" solo escribes MiReporte.jrxml
3) Listo, esto debería funcionar
La otra observacion, es que te esta enviando una excepcion "URI has an authority component", creo que esto es con la version del iReport, si estas usando el Adempiere 360 LTS, y el iReport que estas usando es 4.8, debes ir al menu Herramientas > Opciones > General > Compatibilidad, seleccionas la version "Jasper Report 3.5.0"
EliminarSi quieres abrir un reporte jasper en Adempiere ZKWebui, entonces debes entrar al iReport en el menu Herramientas > Opciones > General > Report Defaults, seleccionar el lenguaje Java, o bien lo haces desde las propiedades del reporte, busca la propiedad language y lo cambias de Groovy a Java
EliminarGracias por responder. intentare lo que me indicas y te aviso..
ResponderEliminarEso era, con el .jasper me funcionó ya habia probado muchas versiones de ireport y nada. Muchas Gracias. ;)
ResponderEliminarFuncionó desde el cliente desktop, voy a probar desde el web.
ResponderEliminar