Receive Reject with Text="invalid integral value: " only when sending an Order Cancel/Repalce Request #855
-
When I try to replace a field with a decimal value, I receive a Reject message with this text: "invalid integral value: 0.8", with SessionRejectReason=INCORRECT_DATA_FORMAT_FOR_VALUE. In the fix dictionary the field type is PERCENTAGE, which should accept decimal values. I tested with other fields that also are of type PERCENTAGE and there was no problem. When i send a NewOrderSingle with a decimal value in that field, there is no problem, only when I try to send a replace. That text is found in the IntConverter class in the convert method, but i don't know why is it being called only when i send a Order Cancel/Replace Request. I'm setting the field like this: "replace.setString(30022, textValue);", I tried using setDouble and setDecimal and had the same problem. What can I do to prevent that field form being converted to an integer? Thank you. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 4 replies
-
"invalid integral value" is strictly associated with It will be easier to help if you provide a unit test or minimal working example somewhere in your branch/fork. |
Beta Was this translation helpful? Give feedback.
Messages can be created without a dictionary.
Not sure if you are populating messages using common messages class
quickfix.Message
or using a specific object such asquickfix.fix44.OrderCancelReplaceRequest
.30022 - I assume this is some custom field that you've created and probably it is not being set up correctly somewhere.
Make sure that either
Message
uses valid dictionary or FIX domain objects were generated using appropriate dictionary (if you are using custom ones).