Cargar datos JSON en un widget select

1
0
-1

Buenas tardes tengo una variable de proceso tipo string donde almaceno el resultado de una consulta con un conector. El resultado de esa consulta lo estructure como JSON de la siguiente forma.

[{"NOMBRE_CIUDAD":"SANTAFE DE BOGOTA","COD_CIUDAD":"1"},{"NOMBRE_CIUDAD":"CALI","COD_CIUDAD":"2"},{"NOMBRE_CIUDAD":"MEDELLIN","COD_CIUDAD":"3"},{"NOMBRE_CIUDAD":"MANIZALES","COD_CIUDAD":"4"},{"NOMBRE_CIUDAD":"MANIZALES","COD_CIUDAD":"5"},{"NOMBRE_CIUDAD":"MANIZALES","COD_CIUDAD":"6"},{"NOMBRE_CIUDAD":"MANIZALES","COD_CIUDAD":"7"},{"NOMBRE_CIUDAD":"MANIZALES","COD_CIUDAD":"8"},{"NOMBRE_CIUDAD":"MANIZALES","COD_CIUDAD":"9"},{"NOMBRE_CIUDAD":"MANIZALES","COD_CIUDAD":"10"},{"NOMBRE_CIUDAD":"MANIZALES","COD_CIUDAD":"11"},{"NOMBRE_CIUDAD":"MANIZALES","COD_CIUDAD":"12"},{"NOMBRE_CIUDAD":"MANIZALES","COD_CIUDAD":"13"},{"NOMBRE_CIUDAD":"BOGOTA","COD_CIUDAD":"14"},{"NOMBRE_CIUDAD":"SANTAFE DE BOGOTA","COD_CIUDAD":"15"}]

Si ese código lo pego en una variable tipo JSON y la llamo desde un widget select, el resultado es correcto. Carga la descripción de la ciudad y envía el código. Pero si llamo esa variable de proceso string que es la cargo en la consulta, no me da el resultado esperado.

Ver imagen

2 answers

1
0
-1

Hola robin gracias por la ayuda.

1
0
-1

Hola Rodrigo,

Tu variable de salida del query tiene que ser de tipo java.util.Collection, y la debes crear con los constructores de groovy (JsonBuilders).
Aca te dejo un ejemplo del codigo que debes asignarle a tu variable Collection desde la salida de tu conector:

import groovy.json.JsonBuilder;

List

milista = new ArrayList();

def builder = new JsonBuilder();

while(resultset.next()){

def lin1 = builder {
    nombreCampo1 resultset.getObject(1).toString()
    nombreCampo2 resultset.getObject(2).toString() 
    nombreCampo3 resultset.getObject(4).toString()
}
milista.add(lin1);

}

return milista;

// milista debe estar declarada como variable de proceso y de tipo java.util.Collection, luego se tomara desde el Form para poner en la tabla.

para más referencia podes ver el siguiente: link

slds.

Notifications