Skip to main content

The TESTER transformer let pass only 32bit INTs when using 'type is' Integer as operand. I need to test if the value is 64bit Integer or smaller (but no double or float).

I used also AttributeValidator with the same result.

 

You can use the test in the Tester:

Attr1 = floor(Att1) as in the image.


I can confirm that using FME 2017.1 and the AttributeValidator to check for "Is Type Integer" is equivalent to checking if the attribute is a signed 32-bit integer, i.e. in the range -2,147,483,648 to 2,147,483,647.

Anything outside that range will fail.

The tip from @erik_jan is a good workaround.


I filed this with the developers as PR#80373, so hopefully we'll get this improved upon.

 

 


@erik_jan

Many thanks, a great solution. Teaches me that it's worth looking closer at all the math functions (e.g. @uint64(@value(Att1)) works as well).


I'm told this is fixed in FME2018, although I don't know the specific build number.

 

 


Reply