EMA Batch request with fieldNames in the elementList
In the EMAJavaBatchViewExample provided, for the following code snippet, the fieldIds 22 and 25 are given as input to "array" variable. Is there an option to provide FieldNames instead?
AppClient appClient = new AppClient();
consumer = EmaFactory.createOmmConsumer(EmaFactory.createOmmConsumerConfig().host("10.67.4.28:14002").username("user"));
ElementList batchView = EmaFactory.createElementList();
OmmArray array = EmaFactory.createOmmArray();
array.fixedWidth(2);
array.add(EmaFactory.createOmmArrayEntry().intValue(22));
array.add(EmaFactory.createOmmArrayEntry().intValue(25));
OmmArray arrayI = EmaFactory.createOmmArray();
arrayI.add(EmaFactory.createOmmArrayEntry().ascii("AUD="));
arrayI.add(EmaFactory.createOmmArrayEntry().ascii("JPY="));
batchView.add(EmaFactory.createElementEntry().array(EmaRdm.ENAME_BATCH_ITEM_LIST, arrayI));
batchView.add(EmaFactory.createElementEntry().uintValue(EmaRdm.ENAME_VIEW_TYPE, 1));
batchView.add(EmaFactory.createElementEntry().array(EmaRdm.ENAME_VIEW_DATA, array));
consumer.registerClient (EmaFactory.createReqMsg().serviceName("ELEKTRON_EDGE").payload(batchView), appClient);
Best Answer
-
Hi @sagar.s
You can find a list of all the FIDs and Field Names in the RDMFieldDictionary file that comes with the ElektronSDK (in the etc folder). The normal usage scenario is that developers identify the FIDs from the above file and use them in their application code.
IF you really do need to search for fieldnames and obtain the FID in your code, then you could implement some code to iterate through the DataDictionary, matching on the field name to obtain the FID.
Please see the following post - which talks about programmatic access to the DataDictionary.
New Data Dictionary interface in EMA C++
Similar functionality also exists in the latest version of EMA Java.
Note that the Field Name is accessed via the acronym() method of the DictionaryEntry.
0
Answers
-
Hi @sagar.s
Only FIELD IDs are supported at present for domains that use FieldLists for the Payload
ElementName names can be used for domains that use ElementList for the Payload
If you try changing the view type to 2 e.g.
add(EmaFactory.createElementEntry().uintValue(EmaRdm.ENAME_VIEW_TYPE, 2)
for your MarketPrice request, the Item Status code will report Unsupported View Type and return all the Fields (unfiltered):
Item State: Open / Ok / Unsupported view type / 'All is well'
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
- 684 Datastream
- 1.4K DSS
- 615 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
- 249 ETA
- 554 WebSocket API
- 37 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
- 643 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
- 26 DACS Station
- 121 Open DACS
- 1.1K RFA
- 104 UPA
- 192 TREP Infrastructure
- 228 TRKD
- 915 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 中文论坛