CHOSEN MULTIPLE SELECTION TABLE EN JASPERSOFT

43 views
Skip to first unread message

Johand Henriques

unread,
Nov 10, 2021, 7:35:58 AM11/10/21
to iDempiere-es
Buen día,

Alguien ha logrado implementar un parámetro de multiple selección de Tabla en un rerporte realizado en jasper?

Hasta ahora a nivel de Diseño he usado

Nombre Parámetro:  p_c_bpartner_id
Class: java.util.collection
Netsted Type Name: java.math.Integer
Query string al final: "AND $X{IN,cbp.c_bpartner_id,p_c_bpartner_id}"

A nivel de diseño funciona perfectamente agregando dentro del collection los valores que necesito, pero cuando lo llevo a idempiere me arroja el siguiente error:
** ProcessError Invalid type java.lang.String for parameter p_c_bpartner_id used in an IN clause; the value must be an array or a collection.

parametroJasper.png

Saludos cordiales

Orlando Curieles

unread,
Nov 10, 2021, 8:15:10 AM11/10/21
to idempi...@googlegroups.com
Hola, los parámetros multiselección devuelven un arreglo de string, deberias hacer algo en el SQL Como C_Bpartner_ID IN ($PC_Bpartner_ID) 

 Saludos.

 Orlando R. Curieles 

--
Has recibido este mensaje porque estás suscrito al grupo "iDempiere-es" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a idempiere-es...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/idempiere-es/902e634d-6e23-4096-b368-37999b428c65n%40googlegroups.com.

Johand Henriques

unread,
Nov 10, 2021, 10:33:25 AM11/10/21
to iDempiere-es
Hola buen día Orlando,

Gracias por tu pronta respuesta,

Realicé lo que me sugieres y de cara a la base de datos funciona a la perfección pero al momento de ejecutarlo asi sea en modo design en Jaspersoft me devuelve el documento en blanco.

No se si es porque tuve que hacer un cast del campo c_bpartner_id::character varying para poder recibir esa data, quizás estoy equivocado en la forma que lo estoy haciendo?

Anexo el final del query string 
parametroinJasper.png

Johand Henriques

unread,
Nov 10, 2021, 12:24:27 PM11/10/21
to iDempiere-es
Hola Orlando,

Paso por aquí para informar que ya logré solventar el problema que tenía sobre los chosen multiple value table...

Ya que lo que se recibe de idempiere es un string separado por coma, lo que hay que decirle a postgresql y jaspersoft es que tome ese string, separe las coma, y lo trate todo como integer

Por ejemplo este fue lo que hizo que solucionara:
"WHERE [tablaAlias].[camponecesario] = any(string_to_array($P{param_c_bpartner_id}, ',')::int[]);"

Espero esto ayude a otros....

Gracias por la ayuda Orlando..

Saludos

Reply all
Reply to author
Forward
0 new messages