question

Upvotes
Accepted
5 0 1 2

TimeSeries - SetupDataRequest - is there any way to setup a custom ID?

I am trying to setup a TimeSeries.SetupDataRequest() where I can add in some type of custom information (like an ID) so when my callback is called from OnDataReceived() I would know exactly which request I am getting data for.

The ONLY information I can seem to grab is the Ric code for the query...

My situation is this: I have 2 (or more) requests which are querying the same Ric code, so when I hit the callback and check the "DataChunk", the only information I have is the Ric... how am I supposed to distinguish between different requests?

I realize this may not be the most common way to query data, but I have a very specific reason for doing this.. with Bloomberg, they would allow you to pass something like a CorrelationID with every request; so that you can reference back exactly to a key for which you created the query.

Does any such ability exist? Can I override the interface in any way to allow a seperate ID to also be passed with OnDataReceived() instead of just the data chunk?

Thanks.

eikoneikon-com-apitime-serieseikon-.net-api
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.

Hi, I moved this question to EIkon Com forum.

Upvotes
Accepted
22 0 0 1

Hi @stephen.cook,

From what I understand, you are using the Thomson Reuters .NET SDK and you are making two different requests to the TimeSeries service using the same RIC. You're also using the same callback method for both requests but you want to be able to do the distinction between the two requests when data chunks arrive.

In my opinion, the easiest way to achieve this is to use a lambda when declaring your callback. The purpose of this lamdba is to add the missing identifier and to pass it to your callback method.

Please find a code snippet here after:

public void GetTimeSeriesData()
{
DataServices.Instance.TimeSeries.SetupDataRequest("IBM.N")
.OnDataReceived((DataChunk chunk) => this.OnDataReceived("#MyRequestIdentifier1", chunk))
.CreateAndSend();
}

private void OnDataReceived(string identifier, DataChunk chunk)
{ // Process your chunk.
}

Please let me know if this answer your question,

Kind regards,

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.

Hi Julien,

Thank you very much! Exactly what I was looking for.. I didn't realize a callback could be manipulated like this. Perfect solution.

Upvotes
18.2k 21 13 21

Hi @stephen.cook

According to get_timeseries() document here.

It does not support closure argument.

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.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

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