Graphics

 View Only
Expand all | Collapse all

Datalinq - pointing a string of characters to a specific Datalinq source

  • 1.  Datalinq - pointing a string of characters to a specific Datalinq source

    Posted 01-06-2020 14:05

    Happy New Year! I have a Datalinq question for whoever is kind enough to help.

    SHORT VERSION
    When using multiple Datalinq sources, can I use Visual Logic or scripting to point a string of characters that with a back slash  " / " to one source, while all other strings of characters not beginning with a back slash "/" point to other sources?

    LONG VERSION WITH EXPLANATION
    We recently upgraded from 7.0 to v9.0. We use data to retrieve stock values for numerous companies throughout the day (some days over 200 different companies).

    Each company has its own unique symbol (ex. Company Symbol #1 = XYZ)

    With v7.0, each symbol had its own URL
    (ex. symbol XYZ retrieved data from the URL https://www.DATA_URL_EXAMPLE.com/rss?s=XYZ)
    While still using an RSS/HTTP Datalinq Source, all of the symbols are now in one data stream.
    Now company XYZ, ABC and QRS etc. all get data from one URL ex.https://www.DATA_URL_EXAMPLE.com/rss?s=%table%)

    When setting up the Datalinq, it was suggested (due to the large number of symbols used each day) that we have 5 different Datalinq sources to spread out the demand for some of our full screen pages that can have 15-20 different data points.

    Some of the symbols we use have extensions that change every month or so. These symbols always begin with a back slash " / "  (ex. - /XYZ123 will change to /XYZ456) When this happens, I have to update the change on all 5 Datalinq sources.

    So finally, my question is: Is there a way (through Visual Logic perhaps) to point a symbol that begins with
    a back slash " / " to a specific Datalinq source? (ex. - by typing the / first, it will automatically point that symbol  to Datalinq source #5). This would allow me to only have to update one of the five Datalinq sources for the symbols that change.

    Thank you in advance for any help on this matter and for the patience of reading this lengthy question.



  • 2.  RE: Datalinq - pointing a string of characters to a specific Datalinq source

    Posted 01-06-2020 14:44

    Hmm, is there any way that you'd be able to go back to your old way of searching tickers? With how datalinq sources can be handled in 9.0 you can use macros to create a dynamic URL.

    Your example of: https://www.DATA_URL_EXAMPLE.com/rss?s=XYZ now can become: https://www.DATA_URL_EXAMPLE.com/rss?s=%Ticker% in which Ticker is simply a datalinq key within the scene (or scenes) in question. You can even go one step further and used @Value@ as the Datalinq Key source.

    To address your original question, if all you need to do is detect a "/" character this sounds like something you can do by setting up a conditional that uses an input selector to change the source of information being fed into an object. I've circled in red what you would want to swap with your datalinq sources.


    #XPression


  • 3.  RE: Datalinq - pointing a string of characters to a specific Datalinq source

    Posted 01-06-2020 21:49

    Martin -

    Thank you for your quick response and help.  I tried the Visual Logic you suggested above and it wasn't working how I wanted it to work.  However, I made a few minor tweaks and got it working!  I replaced the "String Value" blocks you have circled in red with Datalinq blocks and connected Data Sources 1-4 to an Input Selector and tied that to another Input Selector along with Data Source 5 (as pictured in the example).  

    Thank you very much for getting me 99% of the way there (and I'm sure I was just missing a step from your example or it would have worked).  And thank you for your time as well.  If for some reason this doesn't work I will double back to your example.  


    #XPression


  • 4.  RE: Datalinq - pointing a string of characters to a specific Datalinq source

    Posted 01-07-2020 13:52

    Something to note, the index of an input selector dictates which subsequent index to feed as the output. When the string compare is satisfied to equal, it returns a 1, thus sending the [1] value into LATEST PRICE #.text, which is set to datalinq source 5.

    However, if it's false, it will pull from your other input selector. The problem I see with this is that unless your DL SOURCE 1 value that is being fed into that input selector's index field returns a value from 0-3, you'll likely only ever see the [0] value, or DL SOURCE 2.

    What is your goal for that input selector that is feeding into the [0] index of your main input selector?


    #XPression


  • 5.  RE: Datalinq - pointing a string of characters to a specific Datalinq source

    Posted 01-07-2020 15:57

    Martin -

    Thank you for the correction.  Since all data sources (1-5) have the exact same data [with the exception of the symbols that begin with a back slash ( / ) - which are only in data source #5] I would have not realized that.  My goal is to use up to 5 different data sources to "spread out" the data retrieval instead of constantly pointing at 1 data source with the large amount of data we use.  

    This is an example of a full screen graphic we commonly use:

    In this page we are using 15 points that connects to live data.  We use this page along with others like it numerous times per show throughout the day.  When we upgraded to Xpression v.9.0 our engineer spoke with Support at Ross and they suggested we use 5 different data sources within our Datalinq to "spread out" the demand.  

    If the extensions on the symbols beginning with the back slash didn't change, I wouldn't have to worry about this.  I am just trying to limit editing the "Table Presets" within the Datalinq to 1 source instead of all 5.  All five contain the exact same data.  The only exception being that I want to have all symbols with the back slash on data source #5.  I hope this makes sense.

    Thank you again.  I appreciate all of your help.


    #XPression


  • 6.  RE: Datalinq - pointing a string of characters to a specific Datalinq source

    Posted 01-07-2020 18:30

    So does this mean that the ticker you are choosing in one may not be available in another? So for instance BA (Boeing) might be in Dlinq source 1 and V (Visa) might be in Dlinq source 4?

    How are you directing the query to search each datalinq to return the correct one?


    #XPression


  • 7.  RE: Datalinq - pointing a string of characters to a specific Datalinq source

    Posted 01-07-2020 18:46

    All symbols are in all data sources (1-5).  The only thing I want to change is to contain the futures symbols (symbols that begin with a back slash) in data source 5 only.  Regular symbols can point to any of the data sources and they will receive data.


    #XPression


  • 8.  RE: Datalinq - pointing a string of characters to a specific Datalinq source

    Posted 01-07-2020 19:00

    I want to have the ability to only have to update 1 data source (data source #5) and have the futures symbols (/CL, /GC, /DX, etc.) automatically point to data source #5.  Futures symbols come in our data stream with contract extensions.  I have the URL ending in   /rss?s=%table  within this feed is all symbols.  Right now, the E-minis data (/ES) comes in as /ESH20:XCME.  Through the "Table Presets" in the Datalinq Configuration I have /ESH20:XCME to read /ES.  Eventually and periodically, the H20 will change to another letter and number.  When this happens, I have to change the configuration to the new extension.  I want to avoid having to change it in all 5 data sources.  If I can get just the futures symbols to only point to data source #5, I will only have to change the extensions on that source.  Right now, if they change, I have to change the extensions on all data sources (1-5).  I hope I'm explaining this correctly.  Once again, thank you for your help.

     


    #XPression


  • 9.  RE: Datalinq - pointing a string of characters to a specific Datalinq source

    Posted 01-07-2020 19:22

    I think I follow correctly, sounds like you have what you need in regards to pulling in your futures from DL Source 5, what I'm having trouble understanding is the use of 4 other datalinqs, especially if they all contain the same amount of data. Maybe you have something else going on under the hood, but while we've solved for whether or not to pull from 5 or not, it's not clear to me how it's deciding to pull from 1-4.

    Additionally, by having 4 other identical datalinqs, I would think that your datalinq now is calling 4 datalinq sources at regular intervals instead of just 2 (your DL Source 1, and your DL Source 5). Seems like you're going to be pulling in 4x the data that you need to.

    I don't have experience using tables like that, so there could be something I'm not seeing here (which is ok! seems like you've got what you've needed).


    #XPression


  • 10.  RE: Datalinq - pointing a string of characters to a specific Datalinq source

    Posted 01-08-2020 12:31

    Martin -

    I understand the confusion of using 5 different sources for data.  This was the suggestion from Ross when we updated to v.9 (discussed by our engineer & Ross)  I am running tests today to see if we can go to using just 1 Datalinq source.  Before we installed the update on our main Xpression, our engineer tested out using 1 Datalinq source and it was bogging down (on Xpression design).  He was using it on a computer that is comparable to our main Xpression computer in terms of memory, programs installed, etc.

    I just wanted to thank you again for your help and time invested in this matter.


    #XPression