For a deeper look into our Elektron API, look into:

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
1 1 3 6

FieldList C++ SDK

Hi ,

Is it possible to test for the existence of a particular field and extract only that item or is

it necessary to always iterate through the whole field list?


Thanks

elektronrefinitiv-realtimeelektron-sdkc++
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.

Hello @epfeuffer,

Thank you for your participation in the forum.

Is the reply below satisfactory in resolving your query?

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

Otherwise please post again offering further insight into your question.

Thanks,

-AHS

Upvotes
Accepted
25.3k 87 12 25

Hi @epfeuffer

You can also refer to the 121__MarketPrice__FieldListSearchByName example which you may find a bit more helpful.

while ( fl.forth( "BID" ) )    // look for a fid with matching name
        cout << "Fid: " << fl.getEntry().getFieldId() << " Name: " << fl.getEntry().getName() << " value: " << fl.getEntry().getLoad().toString() << endl;

In the snippet above, we are checking for the existence of the BID field.

You should be able to use a FieldName or a FieldID e.g. 22 for BID.

If you want to find multiple Fields, you can pass in an ElementList of field IDs too as demonstrated in example 260__MarketPrice__FieldListSearchByList

ElementList searchList;
    // specify the set of fids to search for; use fid #s
    searchList.addArray( "", OmmArray().addInt( 3 ).addInt( 15 ).addInt( 21 ).addInt( 22 ).addInt( 25 ).complete() ).complete();

    while ( fl.forth( searchList ) )        // search for a set of matching fids
    {
        const FieldEntry& fe = fl.getEntry();

So, in the above example we are looking for a few fields including CURRENCY,HST_CLOSE, BID etc.

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.

Upvotes
22k 59 14 21

Hi @epfeuffer, OMM Field list object behaves like field list in other languages like Python and Java and does not allow map like access to key/value pairs.

Please see an example 120__MarketPrice__FieldListWalk from EMA consumer samples on how to use this iteration.

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.

Upvotes
25.3k 87 12 25

Hi @epfeuffer

I forgot to mention, if you are not already doing so, I would recommend you use a View request to ask the server to filter out unnecessary Fields that you are not interested. This should further reduce the amount of fields you need to process - in terms of searching through / iterating through.

Consumer Example 360 demonstrates how to make View requests.

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.