How to get description of enum values in RFA Java 8.2.1.L3

The infrastructure contain enumdef like this:
IMB_VA_IND 4342
! VALUE DISPLAY MEANING
! ----- ------- -------
0 " " Not Set
1 "1 " 1 to 1.99%
2 "2 " 2 to 2.99%
3 "3 " 3 to 3.99%
In my java code, the following will only return "1", for 1, "2" for 2. I don't see a method that will return the MEANING column, i.e., "1 to 1.99%", "2 to 2.99%":
if (IMB_VA_IND.equals(fieldName))
{
if (fieldData.getType() == OMMTypes.ENUM)
{
priceVariation = dictionary.expandedValueFor(fe.getFieldId(), ((OMMEnum)fieldData).getValue());
num_fields_found++;
}
}
Best Answer
-
Hi @chris.xiao
The RTDS team have confirmed that the RTDS components do not currently provide the Meaning values even if Verbose is specified.
0
Answers
-
Hi @chris.xiao
Are you requesting a 'Verbose' Dictionary in your code when making the dictionary request?
If you refer to the RDM Usage Guide pdf file which is included with the RFA Java SDK, you will note that the MEANING column is only included in the Enumtype dictionary response when the OMMAttribInfo.Filter is set to RDMDictionary.Filter.VERBOSE=0xF (Provides all information(including comments)
See Section 5.6 Enumerated Types Dictionary, table 39 for examples of the different levels of Verbosity.
0 -
Hi @umer.nalla,
With attribInfo.setFilter(RDMDictionary.Filter.VERBOSE), the following code examines series's data, the output is for 617 enum entries, no MEANING
Element entry name: FIDS type:15
Element entry name: VALUE type:15
Element entry name: DISPLAY type:15
else if (dictionaryType == RDMDictionary.Type.ENUM_TABLES)
{
if (series.getDataType() == OMMTypes.ELEMENT_LIST)
{
Iterator<OMMEntry> its = series.iterator();
int k = 0;
while (its.hasNext())
{
System.out.println ("Enum Dict OMMEntry [" + k + "]");
OMMEntry entry = its.next();
OMMElementList eel = (OMMElementList)entry.getData();
Iterator<OMMElementEntry> ee_it = (Iterator<OMMElementEntry>)eel.iterator();
int q=0;
while (ee_it.hasNext())
{
OMMElementEntry ee = ee_it.next();
short type = ee.getDataType();
OMMData dd = ee.getData();
System.out.println ("Element entry name: " + ee.getName() + " type:" + type);
q++;
}
System.out.println ("q=" + q);
k++;
}
}
0 -
Hi @chris.xiao
I would recommend you enable the low-level IPC Trace in your application to confirm if the server is actually sending the Meaning field down or not. This will help confirm if there is an issue with your code or the feed not providing the required data.
Also, are you consuming data from an internal ADS or via an LPC connection to our cloud service?
Note that by default RFA traceMsgDomains value of NORMAL does not include Dictionary, so you should use either ALL or DICTIONARY
0 -
Hi @chris.xiao
I tried recreating this here myself and I do not see the Meaning entries in my RSSL trace file.
I did also note that in the above RDM Usage guide table 39, it does state for the MEANING column, that:'Providers do not need to provide this array(even when verbosity is VERBOSE).'
I have reached out internally to see if I can confirm if this is something that needs to be explicitly enabled on the ADS.
0 -
@umer.nallaHi
We consume data from internal ADS.
0 -
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
- 685 Datastream
- 1.4K DSS
- 616 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
- 252 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
- 275 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
- 654 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
- 917 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
- 46 中文论坛