Discover Refinitiv
MyRefinitiv Refinitiv Perspectives Careers
Created with Sketch.
All APIs Questions & Answers  Register |  Login
Ask a question
  • Questions
  • Tags
  • Badges
  • Unanswered
Search:
  • Home /
  • Eikon Data APIs /

For a deeper look into our Eikon Data API, look into:

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

avatar image
Question by richard.fell · Oct 06, 2020 at 10:46 AM · eikoneikon-data-apiworkspacepythonworkspace-data-apirefinitiv-dataplatform-eikonrefinitiv-realtimedispatcherdispatcher-frame

How to use Dispatcher?

Hello,

I am having difficulty using the ThomsonReuters.Desktop.SDK.DataAccess API to subscribe to realtime data.

I am writting my own RTD server in Excel using Excel-DNA as I want the ability to define my own update intervals for specific RICs, and create on demand update for a large set of RICS using a button in Excel (so request not subscription). I need this as I have a realtime spreadsheet with lots of calculations that cannot handle all RICS updating live. Also because I do not like the Excel Com addins - they seem buggy and interfere with other addins I have creating Excel crashes.

I have previously tried to work out using the Dispatcher and found it very confussing. It seems to be a not well documented class that is mostly used by WPF.

I have got it to work in a dll using a worker thread but that was for time series data, so the 'Frame' could continue working until the series was downloaded then the Frame.Continue was set to false.

However in a RTD situation with subscriptions, I cannot run the subscriptions in the Excel UI thread and then block it while I PushFrame. So if I subscribe and PushFrame in a worker thread that invokes back to the Excel UI thread to update the cell value, how do I add new requests. I don't want to Frame.Continue = false everytime I get an update to see if there is a new request for data before PushFrame again to continue.

As a test I tried using Frame.Continue = False, then Dispatcher.PushFrame(Frame) in the example app, by putting that code in DataReceived but it didn't work - it just aborted the console app!

I don't understand the use of Dispatcher: I know it is due to the fact that underneath it is a COM library and thus needs to use the Windows MessagePump, but I have spend days and days trying to understand how to use this API properly, and the oversimplified example is useless - most users have requirements beyond a console window.

Is there is a better API for Eikon users in .Net for realtime data?

Thanks for you help in advance, Richard


People who like this

0 Show 0
Comment
10 |1500 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Reply

  • Sort: 
avatar image
Best Answer
Answer by richard.fell · Oct 06, 2020 at 04:23 PM

I think I have resolved my issues. I can set Frame.Continue = false from the callee then when in the looped worker thread dequeue requests then set Frame.Continue = true and PushFrame.

I got stuck in DLL hell for most of the afternoon.

Comment

People who like this

0 Show 0 · Share
10 |1500 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Watch this question

Add to watch list
Add to your watch list to receive emailed updates for this question. Too many emails? Change your settings >
10 People are following this question.

Related Questions

How to Plot Streaming Data from ek.StreamingPrices?

How can I get real-time bid/ask information of USTARTSD-ME ?

What other parameters can be used with the statement pertaining to Corporate Actions data such as Stock Splits?

Trying to fetch Close Bid Price for CMO tranche from Python

Don't getting Realtime Feed using ThomsonReuters.Desktop.SDK.DataAccess.Signed v1.8.4

  • Copyright
  • Cookie Policy
  • Privacy Statement
  • Terms of Use
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Alpha
  • App Studio
  • Block Chain
  • Bot Platform
  • Connected Risk APIs
  • DSS
  • Data Fusion
  • Data Model Discovery
  • Datastream
  • Eikon COM
  • Eikon Data APIs
  • Electronic Trading
    • Generic FIX
    • Local Bank Node API
    • Trading API
  • Elektron
    • EMA
    • ETA
    • WebSocket API
  • Intelligent Tagging
  • Legal One
  • Messenger Bot
  • Messenger Side by Side
  • ONESOURCE
    • Indirect Tax
  • Open Calais
  • Open PermID
    • Entity Search
  • Org ID
  • PAM
    • PAM - Logging
  • ProView
  • ProView Internal
  • Product Insight
  • Project Tracking
  • RDMS
  • Refinitiv Data Platform
    • Refinitiv Data Platform Libraries
  • Rose's Space
  • Screening
    • Qual-ID API
    • Screening Deployed
    • Screening Online
    • World-Check One
    • World-Check One Zero Footprint
  • Side by Side Integration API
  • TR Knowledge Graph
  • TREP APIs
    • CAT
    • DACS Station
    • Open DACS
    • RFA
    • UPA
  • TREP Infrastructure
  • TRKD
  • TRTH
  • Thomson One Smart
  • Transactions
    • REDI API
  • Velocity Analytics
  • Wealth Management Web Services
  • Workspace SDK
    • Element Framework
    • Grid
  • World-Check Data File
  • 中文论坛
  • Explore
  • Tags
  • Questions
  • Badges