question

Upvotes
Accepted
38 0 1 2

A Proper way to publish ACVOL_1 with RFA C++ via NIP

We have an internal NIP , Non Interactive Publisher publishing data using RFA C++. The value of this field does not get converted properly to SSL client. RSSL clients are able to see the data.

The field is defined as INTEGER for SSL , but it is defined as REAL64 on RSSL.


ACVOL_1 "VOL ACCUMULATED" 32 NULL INTEGER 15 REAL64 9


What is a proper way to publish this field so it get converted correctly on the ADS? Currently we are using the following , with precisionHint set to 6


case rfa::data::DataBuffer::Real64Enum:

{

rfa::data::Real64 realValue;

if ((rfa::common::UInt8)precisionHint > rfa::data::Exponent0)

precisionHint = (unsigned int)rfa::data::Exponent0;

realValue.setValue((rfa::common::Int64)(dValue * s_nDecimalMap[precisionHint]));

realValue.setMagnitudeType(rfa::data::Exponent0 - (rfa::common::UInt8)precisionHint);

m_dataBuffer.setReal(realValue);

break;

}


We do see the value published correctly on RSSL. For SSL client they only see zero.

Any suggestion?


rfanon-interactive-provider
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

· Write an Answer
Upvote
Accepted
38 0 1 2

Problem solved by setting precisionHint to zero for the field. You can close this question.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.