Generar archivo con formato JSON

Consultas, trucos, consejos. Todo sobre Clarion en todas sus versiones
Responder
LuisIrala
Novato
Mensajes: 48
Registrado: Dom Feb 06, 2011 8:33 pm
Ubicación: Asuncion - Paraguay
Contactar:

Generar archivo con formato JSON

Mensaje por LuisIrala » Mar Jul 12, 2016 10:34 pm

Hola Amigos,

Necesito generar un archivo de texto con formato JSON como muestro mas abajo, ahora estoy usando la Clase JSON que trae el Clarion 10 que es facil de usar.

[
{
"detalle": [
{
"cantidad": 1,
"tasaAplica": "10",
"precioUnitario": 257100,
"descripcion": "Mercaderias IVA 10%"
},
{
"cantidad": "",
"tasaAplica": "",
"precioUnitario": "",
"descripcion": ""
},
{
"cantidad": "",
"tasaAplica": "",
"precioUnitario": "",
"descripcion": ""
}
],
"retencion": {
"fecha": "2016-07-12",
"moneda": "PYG",
"retencionRenta": false,
"conceptoRenta": "",
"ivaPorcentaje5": 0,
"ivaPorcentaje10": 30,
"rentaCabezasBase": 0,
"rentaCabezasCantidad": 0,
"rentaToneladasBase": 0,
"rentaToneladasCantidad": 0,
"rentaPorcentaje": 0,
"retencionIva": true,
"conceptoIva": "IVA.1"
},
"informado": {
"situacion": "contribuyente",
"nombre": "MIRTA IBARRA",
"ruc": "943355",
"dv": "4",
"domicilio": "MCAL. ESTIGARRIBIA 480 C/PALMA",
"tipoIdentificacion": "",
"identificacion": "",
"direccion": "",
"correoElectronico": "mifarmacia@gmail.com",
"pais": "",
"telefono": ""
},
"transaccion": {
"numeroComprobanteVenta": "001-003-0049448",
"condicionCompra": "CONTADO",
"cuotas": 1,
"tipoComprobante": 1,
"fecha": "2016-04-20",
"numeroTimbrado": 11460976
},
"atributos": {
"fechaCreacion": "2016-07-12",
"fechaHoraCreacion": "2016-07-12 17:36:50"
}
}
]

la estructura que tengo declarar dentro de mi app, es la que sigue:

QTesaka QUEUE
gDetalle GROUP,DIM(3),NAME('detalle')
cantidad STRING(5),NAME('cantidad')
tasaAplica STRING(5),NAME('tasaAplica')
precioUnitario STRING(20),NAME('precioUnitario')
descripcion STRING(50),NAME('descripcion')
END
gRetencion GROUP,NAME('retencion')
fecha STRING(50),NAME('fecha')
moneda STRING(50),NAME('moneda')
retencionRenta STRING(50),NAME('retencionRenta')
conceptoRenta STRING(50),NAME('conceptoRenta')
ivaPorcentaje5 STRING(50),NAME('ivaPorcentaje5')
ivaPorcentaje10 STRING(50),NAME('ivaPorcentaje10')
rentaCabezasBase STRING(50),NAME('rentaCabezasBase')
rentaCabezasCantidad STRING(50),NAME('rentaCabezasCantidad')
rentaToneladasBase STRING(50),NAME('rentaToneladasBase')
rentaToneladasCantidad STRING(50),NAME('rentaToneladasCantidad')
rentaPorcentaje STRING(50),NAME('rentaPorcentaje')
retencionIva STRING(50),NAME('retencionIva')
conceptoIva STRING(50),NAME('conceptoIva')
END
gInformado GROUP,NAME('informado')
situacion STRING(50),NAME('situacion')
nombre STRING(50),NAME('nombre')
ruc STRING(50),NAME('ruc')
dv STRING(50),NAME('dv')
domicilio STRING(50),NAME('domicilio')
tipoIdentificacion STRING(50),NAME('tipoIdentificacion')
identificacion STRING(50),NAME('identificacion')
direccion STRING(50),NAME('direccion')
correoElectronico STRING(50),NAME('correoElectronico')
pais STRING(50),NAME('pais')
telefono STRING(50),NAME('telefono')
END
gTransaccion GROUP,NAME('transaccion')
numeroComprobanteVta STRING(50),NAME('numeroComprobanteVenta')
condicionCompra STRING(50),NAME('condicionCompra')
cuotas STRING(10),NAME('cuotas')
tipoComprobante STRING(50),NAME('tipoComprobante')
fecha STRING(50),NAME('fecha')
numeroTimbrado STRING(50),NAME('numeroTimbrado')
END
gAtributos GROUP,NAME('atributos')
fechaCreacion STRING(50),NAME('fechaCreacion')
fechaHoraCreacion STRING(50),NAME('fechaHoraCreacion')
END
END

El problema que tengo es con la coleccion "Detalle" que puede llegar a tener 3 registros, para algunos casos solo tiene uno o dos y la clase como esta declarada como matriz DIM(3) me trae los indices que estan vacios siempre y necesito solo los que tengan datos.

Si hay alguien que usa esta clase que me pueda dar una mano, estare muy agradecido.

Saludos cordiales.
Luis Irala


HDMadeira
Al nivel de RZ
Mensajes: 306
Registrado: Dom Feb 06, 2011 10:02 pm
Ubicación: Trelew, Chubut, Argentina
Contactar:

Re: Generar archivo con formato JSON

Mensaje por HDMadeira » Mié Jul 13, 2016 5:37 pm

Si se puede acceder al archivo una vez generado, se puede hacer una rutina que quite las líneas sobrantes...

Saludos

Daniel

LuisIrala
Novato
Mensajes: 48
Registrado: Dom Feb 06, 2011 8:33 pm
Ubicación: Asuncion - Paraguay
Contactar:

Re: Generar archivo con formato JSON

Mensaje por LuisIrala » Mié Jul 13, 2016 5:57 pm

gracias por responder HDMadeira,

me ayudaron a resolver este tema en el foro de Clarion10 en ingles y ya esta funcionando correctamente.

En el caso que alguien necesite algo similar puedo publicar la app que tengo.

Saludos a todos.

HDMadeira
Al nivel de RZ
Mensajes: 306
Registrado: Dom Feb 06, 2011 10:02 pm
Ubicación: Trelew, Chubut, Argentina
Contactar:

Re: Generar archivo con formato JSON

Mensaje por HDMadeira » Mié Jul 13, 2016 8:17 pm

Compartir nunca esta de mas...

Saludos

Daniel


Responder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 43 invitados