Foros del Web » Programación para mayores de 30 ;) » Java »

Error con SQL and jasperreport

Estas en el tema de Error con SQL and jasperreport en el foro de Java en Foros del Web. hola Uso ireport 1.3.3 y jasperreport 1.3.3 para crear un documento PDF. Si uso el ireport se me crea bien pero si ejecuto mi aplicacion ...
  #1 (permalink)  
Antiguo 19/06/2007, 05:55
 
Fecha de Ingreso: mayo-2007
Mensajes: 15
Antigüedad: 16 años, 11 meses
Puntos: 1
Error con SQL and jasperreport

hola

Uso ireport 1.3.3 y jasperreport 1.3.3 para crear un documento PDF. Si uso el ireport se me crea bien pero si ejecuto mi aplicacion web me da este error: Error executing SQL statement for : presupuesto

Mi jrxml es:
...
<parameter name="SQLquery" isForPrompting="false" class="java.lang.String">
<defaultValueExpression ><![CDATA["select kc.de_compras, kc.nm_client, kc.tx_ship_notes, kc.tx_comments, kol.nm_product , kol.nu_quantity from k_compras kc inner join k_compras_lines kcl on kc.gu_compras = kcl.gu_compras inner join k_order_lines kol on kol.gu_order = kcl.gu_order"]]></defaultValueExpression>
</parameter>
<queryString>$P!{SQLquery}</queryString>

<field name="de_compras" class="java.lang.String"/>
<field name="nm_client" class="java.lang.String"/>
<field name="tx_ship_notes" class="java.lang.String"/>
<field name="tx_comments" class="java.lang.String"/>
<field name="nm_product" class="java.lang.String"/>
<field name="nu_quantity" class="java.lang.Double"/>
...
__________________________________________________ ___



Mi jsp es:
...
String connectString = "jdbcostgresql://172.27.4.15:5432/cultura/comun";
String usuarioBD = "XXXXXXXX";
String passwordBD = ""XXXXXXXX";
String driver = "org.postgresql.Driver";
Class.forName(driver);

Class.forName(driver).newInstance();
Connection conn = DriverManager.getConnection(connectString, usuarioBD, passwordBD);


String sql = "select kc.de_compras, kc.nm_client, kc.tx_ship_notes, kc.tx_comments, kol.nm_product , kol.nu_quantity from k_compras kc inner join k_compras_lines kcl on kc.gu_compras = kcl.gu_compras inner join k_order_lines kol on kol.gu_order = kcl.gu_order where kc.gu_compras = '" + codigo + "'";

System.setProperty("jasper.reports.compile.class.p ath", application.getRealPath("../WEB-INF/lib/jasperreports-1.3.3.jar") + System.getProperty("path.separator") + application.getRealPath("../WEB-INF/classes/"));

System.setProperty("jasper.reports.compile.temp", application.getRealPath("tmp"));
JasperCompileManager.compileReportToFile(applicati on.getRealPath("shop/report/presupuesto.jrxml"));

File reportFile = new File(application.getRealPath("shop/report/presupuesto.jasper"));

Map parameters = new HashMap();

parameters.put("SQLquery", sql);

byte[] bytes = JasperRunManager.runReportToPdf(reportFile.getPath (), parameters, conn);
...
__________________________________________________ ___


He buscado y encontrado varios hilos sobre este error pero ninguna me ha ayudado para arreglarlo :S


Espero vuestra ayuda, gracias por todo :)
  #2 (permalink)  
Antiguo 25/04/2012, 08:03
 
Fecha de Ingreso: junio-2007
Mensajes: 1
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: Error con SQL and jasperreport

Estoy en las mismas.
en ireport con BD postgres no sé como
en esta query:

select d.total as total,d.total_fax as fax,d.total_scanner as scanner,
d.total_copy as copia,d.total_copybn as copiaBN,d.total_copycolor as copiaColor,
d.total_print as impr,d.total_printbn as imprBN,d.total_printcolor as imprColor,
d.total_faxbn as faxBN,d.total_faxcolor as faxColor, d.fecha_ingresa
from detalle_usuario as d
where cast(date_part('month',d.fecha_ingresa) as int)=$P{fecha_mes}
and cast(date_part('month',d.fecha_ingresa) as int)=$P{fecha_annio}
and d.login_name=$P{usuario}
order by d.fecha_ingresa desc


transformar el
and d.login_name=$P{usuario}
en algo así
and d.login_name='$P{usuario}'

teniendo en cuenta que el como condición se usa un parametro, en cambio si dejo un texto, por ejemplo
and d.login_name='0082'

funciona la query
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:29.