Ema Cons113 dictionary retrieval failed
Best Answer
-
Hello @jxu2
The API automatically downloads the dictionary information from the server (RTO or deployed RTDS server) for the application by default. The default timeout value of this operation is 45000 milliseconds.
When you debug the code, the breakpoint or debugging process might interrupt the dictionary download process until it reaches the timeout.
You can set the EMA Application to load local dictionary files instead via the Dictionary and DictionaryType parameters.
Example:
<Consumer>
<Name value="Consumer_4"/>
<Channel value="Channel_4"/>
<Dictionary value="Dictionary_2"/>
...
</Consumer>
...
<Dictionary>
<Name value="Dictionary_2"/>
<DictionaryType value="DictionaryType::FileDictionary"/>
<!-- dictionary names are optional: defaulted to RDMFieldDictionary and enumtype.def -->
<RdmFieldDictionaryFileName value=".\RDMFieldDictionary"/>
<EnumTypeDefFileName value=".\enumtype.def"/>
</Dictionary>You can find more detail in the "Dictionary Types" section of the Enterprise Message API (EMA) - Configuration Overview article.
Note: The dictionary files (RDMFieldDictionary and enumtype.def) are available in the etc folder of the SDK package.
0
Answers
-
I set <Dictionary value="Dictionary_2"/> and restart the program, the following error was reported:
Exception Type='OmmInvalidUsageException', Text='DictionaryCallbackClient::loadDictionaryFromFile() failed.
Unable to load RDMFieldDictionary from file named ./RDMFieldDictionary
or load enumtype.def from file named ./enumtype.def', ErrorCode='-1'
how to download the RDMFieldDictionary and enumtype.def to my local folder.
0 -
The dictionary files (RDMFieldDictionary and enumtype.def) are available in the API package. They are in the etc folder.
Otherwise, you can get them from https://github.com/Refinitiv/Real-Time-SDK/tree/master/Cpp-C/etc.
Copy those files to the working directory of the application or specify the absolute paths in the configuration.
0 -
These dictionary files are permanently unchanged? if not, how to get the updated files?
0 -
The files can be updated by adding new fields. You can get the latest version from the Software Download in MyRefinitiv.
It is in the MDS - General, and Refinitiv Real-Time Template Service Pack categories.
However, new fields may be used by specific RICs or exchanges. If you see the error (FieldIdNotFound) when parsing the data, it means that you need to update the dictionary files.
0 -
Hello @jxu2
Please be informed that the dictionary information on the consumer side should match with the Provider (deployed RTDS or RTO).
I am assuming that the issue occurs only when you debug/set the breakpoints in the Cons113 example code. I recommend you use the Dictionary Type "DictionaryType::ChannelDictionary" in the production use to download the dictionary from the Provider.
0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 36 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 687 Datastream
- 1.4K DSS
- 622 Eikon COM
- 5.2K Eikon Data APIs
- 10 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- 3 Trading API
- 2.9K Elektron
- 1.4K EMA
- 254 ETA
- 557 WebSocket API
- 38 FX Venues
- 14 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 23 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 276 Open PermID
- 44 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 22 RDMS
- 1.9K Refinitiv Data Platform
- 671 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 27 DACS Station
- 121 Open DACS
- 1.1K RFA
- 104 UPA
- 193 TREP Infrastructure
- 229 TRKD
- 918 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 90 Workspace SDK
- 11 Element Framework
- 5 Grid
- 18 World-Check Data File
- 1 Yield Book Analytics
- 48 中文论坛