IMPORT util MAIN DEFINE jstr STRING DISPLAY "Testing the server from a Genero client ..." -- esta le da error, y para mi es correcto que de error ya que la estructura del record destino es distinta LET jstr='{"oper":"respuesta","data":{"usuario":"conecta","clave":"conecta","respuesta":{"num_emp":4489,"nombre":"ADRIAN ANDERSON MENDEZ GONZALEZ","id_pregunta":"ENC001","departamento":"CANTERA VICENTE NOBLE","respuesta":"10","pregunta":"CUAN SATISFECHO USTED SE SIENTE CON EL NIVEL DE SERVICIO DE SU SUPLIDOR INTERNO?"}}}' CALL propose_type(jstr) -- este no da error pero al armar el string desde Genero manualmente, hay que poner el doble backslash LET jstr='{"oper":"respuesta","data":"{\\"credenciales\\":{\\"usuario\\":\\"conecta\\",\\"clave\\":\\"conecta\\"},\\"repuesta\\":{\\"num_emp\\":3355,\\"cedula\\":\\"00104581939\\",\\"nombre\\":\\"JUAN FRANCISCO SOTO CONCEPCION\\",\\"id_pregunta\\":\\"ENC001\\",\\"pregunta\\":\\"CUAN SATISFECHO USTED SE SIENTE CON EL NIVEL DE SERVICIO DE SU SUPLIDOR INTERNO?\\",\\"repuesta\\":\\"1\\",\\"departamento\\":\\"TECNOLOGIA\\"},\\"mensajes\\":{\\"cod_msg\\":0}}"}' CALL propose_type(jstr) -- este obviamente no da error ya que arma el string desde los records CALL arma_jstr() RETURNING jstr CALL propose_type(jstr) END MAIN FUNCTION propose_type(str_in) DEFINE str_in STRING DISPLAY "JSON String for the Request: \n", str_in DISPLAY "Proposed type: \n",util.JSON.proposeType(str_in) END FUNCTION FUNCTION arma_jstr() DEFINE jstr STRING TYPE t_sync_cmd RECORD -- el formato que espera recibir el server oper STRING, data STRING END RECORD DEFINE r_cmd t_sync_cmd DEFINE p RECORD credenciales RECORD usuario,clave VARCHAR(50) END RECORD, repuesta RECORD num_emp INT, cedula, nombre, id_pregunta,pregunta,repuesta,departamento STRING END RECORD, mensajes RECORD cod_msg INT, descripcion STRING END RECORD END RECORD -- arma el record que va a ir a "data" LET p.credenciales.usuario="conecta" LET p.credenciales.clave="conecta" LET p.repuesta.num_emp="3355" LET p.repuesta.cedula="00104581939" LET p.repuesta.nombre="JUAN FRANCISCO SOTO CONCEPCION" LET p.repuesta.id_pregunta="ENC001" LET p.repuesta.pregunta="CUAN SATISFECHO USTED SE SIENTE CON EL NIVEL DE SERVICIO DE SU SUPLIDOR INTERNO?" LET p.repuesta.departamento="TECNOLOGIA" LET p.repuesta.repuesta="1" LET p.mensajes.cod_msg=0 -- arma el record del request LET r_cmd.oper="respuesta" LET r_cmd.data=util.JSON.stringify(p) CALL util.JSON.stringify(r_cmd) RETURNING jstr RETURN jstr END FUNCTION