question

Upvotes
Accepted
87 4 3 10

[EMA C++]How to get all values of one FID

hello:

I want to get all the values of one FID, what should I do.

Is there any dictionary?

elektronrefinitiv-realtimeelektron-sdkrrtema-apielektron-message-apifields
fid.png (91.3 KiB)
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
Accepted
23.6k 84 10 22

Hi @luxiangyuan

As you will note from the output, Currency is a Enum (enumerated) type field.

Please refer to the enumtype.def file which comes with the ElektronSDK installation.

You will find it in the Java\etc folder

In the file search for the Enum FID you are interested in e.g.

! ACRONYM FID 
! ------- ---
! CURRENCY 15
CURRENCY_2 1084
CURRENCY_3 1085
....
....

and below the list of the FIDs that share the same enumerated values, you will find the enum values:

! VALUE DISPLAY MEANING 
! ----- ------- ------- 0 " " Not allocated 4 "AFA" Afghanistan afghani (from 1925 until 2003)
8 "ALL" Albanian lek
12 "DZD" Algerian dinar
20 "ADP" Andorran peseta
24 "AON" Angolan new kwanza .... ....

In your code you can obtain the Display string or the numeric value as follows:

System.out.println(fieldEntry.hasEnumDisplay() ? fieldEntry.enumDisplay() : fieldEntry.enumValue()); 

So,the above snippet checks if a display string is present in the dictionary (normally should be present) and outputs the display string. IF the display string is not available (e.g. out of date dictionary file) then it outputs the numeric value.

When writing a consumer, you should ideally use the default DictionaryType of ChannelDictionary (downloaded from server) to ensure you have the latest.

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.

thank you!!!

“ChannelDictionary ”?

what is it?

how can I download it, will you please give me a link?

Upvotes
23.6k 84 10 22

Hi @luxiangyuan

As I mentioned above, this is the default dictionary type and EMA will automatically download it behind the scenes (for the API to use for decoding fields etc) - unless you change the DicitonaryType to FileDictionary in your EMA config (not recommended).

The files provided in the Java\etc folder can be used for your local reference - but you should obtain the latest whenever there is a new release of the ElektronSDK.

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.