¿Cómo copiar valores de un array JSon a objeto utilizando DTL?
Hola comunidad
Necesito crear una DTL para obtener desde un JSon (% DynamicObject) a una clase.
Los primeros elementos se copian bien, sin embargo, cuando intenta obtener los valores de un array, genera un error.
{ "resultado": "OK", "retorno": { "mensaje": "Info recuperado correctamente", "datos": { "idUsuario": "ID-88556", "fechanacimiento": "1970-02-01", "nombreUsuario": "FRANCISCO", "apellidosUsuario": "LOPEZ", "polizas": { "poliza": [ { "sucursal": "MAD", "oficina": "01", "poliza": "12345678", }, { "sucursal": "BCN", "oficina": "34", "poliza": "99556151", } ] } } } }
Cuando la DTL obtiene el array "poliza", se produce el siguiente error.
ERROR <Ens>ErrException: <INVALID OREF>zTransform+16^MyApp.DT.JsonToPoliciesResponse.1 -- - registrado como '-' número - @' Set k1=source.retorno.datos.polizas.poliza.Next(k1)'
¿Hay alguna forma de crear un "bucle", "for each" o algo para iterar?
Un saludo,
Francisco lopez
Ir a la publicación original, escrita por @Kurro Lopez
Hola Francisco,
¿Podría servir añadir una acción de código y dentro de éste iterar en el objeto con un %GetNext y guardar en el objeto target el valor devuelto?
Algo parecido a este ejemplo en la sección "Iterating over an object":
https://irisdocs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page...