Skip to main content
1-Visitor
July 20, 2022
Question

How to convert number to integer in JSON output of a service

  • July 20, 2022
  • 1 reply
  • 1452 views

Hi,

It's happening to me the same.

there is an AWS API that is expecting a value type "integer" but it seems it is getting a value type "number" so the validations are failing.

I tried to use parseInt(13) but it is still failing. It seems Thingworx is sending this vaule as number instead of integer...

var body= {

"productionCenterID": parseInt(0),
"labelSize": parseInt(8),

}

and this body is used in Resources["ContentLoaderFunctions"].PostJSON

 

Any idea?

1 reply

15-Moonstone
July 21, 2022

Hi,

 

If  floating part of number has to be removed, then following method can be used.

let num=10.0;
result=num.toFixed();

 

Hope this helps!!

 

 

MarcosI1-VisitorAuthor
1-Visitor
July 21, 2022

Not sure if this is related with my issue. I need to send and integer and .toFixed() is creating an string. Probably there is no solution as javascript data types does not understand integers or floats, all are all numbers.

15-Moonstone
July 22, 2022

Hi,

 

There can be work around for this issue:

  • Create simple service : ConvertNumberToInteger
  • Create Input : num  -> NUMBER (baseType)
  • Output : INTEGER (baseType)
  • Code : 
    let result = num;​

Whenever conversion required, this service can be called.

 

Hope this helps!!