question

Upvotes
Accepted
1 0 0 0

How to decode Rmtes partial update data with EMA C++?

Our system was changed API from RFA C# 7.2.18 to EMA C++ 3.6.7.

It is possible that the decoding result is incorrect due to the difference in the way RFA and EMA handle RMTES encoding.

The following data shows the decoding results obtained using RFA and EMA, respectively.

RFA:

2023-09-14 17:48:35,610 ICAPEUROBASIS3 UPDATE 321=[60`3

EMA:

2023-09-14 17:48:35,610 ICAPEUROBASIS3 UPDATE 321=ICAK HKG60090 6.1250 -7.87501063 14/SEP 17:45


When investigating this issue, we found a similar question on the following link.

https://community.developers.refinitiv.com/questions/58724/how-to-check-whether-rmtes-string-contains-partial.html

And we have 2 questions:

(1) whether this issue has already been resolved. If not, the question is whether there are any plans to resolve it in the future.

(2) Based on the content of the past article, the correct decoding results can be obtained by addressing the issue using the following method.If there are any improvements or alternative methods to address this issue, please let me know.


if ((FieldEntry.getEntry().getLoadType()) == DataType::RmtesEnum) {

EmaBuffer c = FieldEntry.getAsHex();

value = asciiTochar(c.asRawHexString());

}


#technologyema-api#product
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.

@xiaoyuan.li

Hi,

Thank you for your participation in the forum.

Is the reply below satisfactory in answering your question?

If yes please click the 'Accept' text next to the reply. This will guide all community members who have a similar question.

Otherwise please post again offering further insight into your question.

Thanks,

AHS

Please be informed that a reply has been verified as correct in answering the question, and has been marked as such.

Thanks,


AHS


1 Answer

· Write an Answer
Upvotes
Accepted
79.4k 253 52 74

@xiaoyuan.li

Thank you for reaching out to us.

As mentioned on that discussion, please modify and run the 310_MarketPrice_RMTES example to replicate this issue. Your implementation may be different from the 310_MarketPrice_RMTES example.

Regarding the DataType::RmtesEnum, the examples use the following code to get an ENUM value.

case DataType::RmtesEnum:
                cout << fe.getRmtes().toString() << endl;
                break;
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.

@Jirapongse

Thank you for your answer and sorry for the delayed response. We have tested your answer, but the result did not meet my expectations. While we make the test program as 310_MarketPrice_RMTES sample, we were unable to obtain information for the update location.

Test Result: ICAPEUROBASIS3 UPDATE 321=3

Expected: ICAPEUROBASIS3 UPDATE 321=[60`3

And Our client in this matter plans to make a separate inquiry through Premium Support.

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.