¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Cómo convertir cadena a entero en SAP CPI usando Groovy - Solución y Ejemplo

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 9 Vistas
0
Cargando...

Hola a todos,

Tengo un requisito para convertir el tipo de datos de cadena a tipo de datos entero si el campo tiene un número entero, de lo contrario, si el campo tiene un valor de cadena, pasarlo tal cual.

Por ejemplo, tengo la carga útil

Para el campo "PurReqnSSPCatalogForEdit" tengo un valor entero. Necesito convertirlo de cadena a entero.

He escrito el siguiente script groovy para esto

import com.sap.gateway.ip.core.customdev.util.Message;

import java.util.HashMap;

import groovy.json.*

def Message processData(Message message) {

//Cuerpo

def jsonOP = message.getBody(String.class);

jsonOP=jsonOP.toString()

def json_to_str="{\"Element\":["+jsonOP+"]}"

def jsonSlurper = new JsonSlurper();

def list = jsonSlurper.parseText(json_to_str);

list.Element.each{

it.EmployeeForEdit.toString()

it.BusinessObjectTypeForEdit.toString()

it.PurReqnSSPCatalogForEdit=Integer.parseInt(it.get("PurReqnSSPCatalogForEdit").toString());

}

def jsonlist = JsonOutput.toJson(list);

def jsonObject = jsonSlurper.parseText(jsonlist);

def removerootnode = JsonOutput.toJson(jsonObject["Element"]);

def removebraket = removerootnode.replace("[","");

def removeendbraket = removebraket.replace("]","");

message.setBody(removeendbraket);

return message;

}

Pero si el campo "PurReqnSSPCatalogForEdit" tiene un valor de cadena, analícelo tal cual. ¿Cuál es la condición que debo agregar al script groovy anterior para lograr esto? Por favor, proporcione una solución para ello

Gracias,

Vineetha.

image.png
Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

2 Respuestas

0
Cargando...

Hola Vineetha,

Modifica el código a continuación según tus necesidades.

try{

if (val.isInteger() == true)

{

def modifedVal = val.toInteger()

}

}

catch(Exception ex) {

}

Aquí val es el nombre del campo.

Saludos,

Priyanka

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?