Einstein Analytics: Demystifying Bindings – Part 9

In the past 8 blogs of this blog series, we have covered a lot of ground. We started out looking at the anatomy of a binding followed by data serialization examples and finally data manipulation. In this blog, there will not be an introduction to a new concept. While writing these blogs I have completed all the examples and added them to a dashboard in my developer org and now I will give it all to you.

The dashboard JSON

The first step is to download the dashboard JSON file

Once that has been done you need to open Analytics Studio in your developer org from Trailhead. The dashboard is using the ‘Opportunities’ dataset that is saved in the Shared App, so we need to update the id of the dataset to the matching id in your org. So click on the ‘Opportunities’ dataset and immediately go to the JSON (cmd+e or ctrl+e) and look for the id, the easiest way is under the dataset section.

Once you have found the id make sure to copy and save that id somewhere handy. Now open the file I sent to you and find perform a search and replace function. You need to find ‘0Fb1t000000bvp8CAA’ and replace with what you just copied. Once done you can save the file.

Next step is to create a new dashboard in Analytics Studio. Immediately after you have the dashboard created you go to the dashboard JSON (cmd+e or ctrl+e) and replace the whole JSON with the JSON you just updated and saved.

Once done go back to the dashboard, save it and make sure it works properly. And that’s it. Now you have every single binding example covered in this blog series, at any time you can explore the steps and bindings and hopefully use your learnings for your own use cases. You can always go back to the blogs to read how it was done and what it all means:

All there is left to say is good luck with making your dashboards more dynamic.


12 thoughts on “Einstein Analytics: Demystifying Bindings – Part 9”

  • 1
    SIDDHARTH OJHA on May 13, 2019 Reply

    Rikki. Thanks for sharing your knowledge with us. When i m trying to download JSON, it is erroring out. Please look into this as it will help us .

    • 2
      Rikke on May 13, 2019 Reply

      I’m not sure how to help since it works for me. If you see the JSON you can copy it from there as well.

      • 3
        antony de la rosa guzman on May 28, 2019 Reply

        Hello

        can a filter type in [] be made with values ​​of a column of a table?

        try it this way but do not filter

        THIS IS MY QUERY

        “query”: “q = load \”ContactabilidadBpyp\”;\r\nq = filter q by !(‘Cliente’ in [{{column(clientescontactados_3.selection, [\”Cliente\”]).asObject()}}]);\r\nq = foreach q generate ‘Cliente’ as ‘Cliente’,’IdCliente’ as ‘unique_Cliente’,coalesce(‘Phone’,\”null\”) as ‘Phone’ ,coalesce(‘NCliente’,\”Prospecto\”) as ‘NCliente’,coalesce(‘BPyP_Fecha_de_ultima_visita__c’,\”null\”) as ‘Ultima visita’;\r\nq = group q by (‘Cliente’,’Phone’,’NCliente’,’Ultima visita’,’unique_Cliente’);\r\nq = foreach q generate ‘Cliente’ as ‘Cliente’, unique(‘unique_Cliente’) as ‘unique_Cliente’,’Phone’ as ‘Telefono’,’NCliente’,’Ultima visita’,’unique_Cliente’ as ‘id’;\r\nq = order q by ‘Cliente’ asc;\r\nq = foreach q generate ‘id’,’Cliente’,’Telefono’,’NCliente’,’Ultima visita’;”,
        “receiveFacet”: false,
        “selectMode”: “single”,
        “strings”: [],
        “type”: “saql”,

  • 4
    sai kiran on May 16, 2019 Reply

    Hi Rikke,
    I have learnt einstein analytics from your blog .Thanks for helping us.I have replaced all your id with my id but Json is showing invalid.
    Could you signup for another developer org and help us, by finding where the problem is ?

  • 5
    ANTONY on May 28, 2019 Reply

    Hello
    can a filter type in [] be made with values ​​of a column of a table?

    try it this way but do not filter
    “type”: “saql”,
    query”: “q = load \”ContactabilidadBpyp\”;\r\nq = filter q by !(‘Cliente’ in [{{column(clientescontactados_3.selection, [\”Cliente\”]).asObject()}}]);\r\nq = foreach q generate ‘Cliente’ as ‘Cliente’,’IdCliente’ as ‘unique_Cliente’,coalesce(‘Phone’,\”null\”) as ‘Phone’ ,coalesce(‘NCliente’,\”Prospecto\”) as ‘NCliente’,coalesce(‘BPyP_Fecha_de_ultima_visita__c’,\”null\”) as ‘Ultima visita’;\r\nq = group q by (‘Cliente’,’Phone’,’NCliente’,’Ultima visita’,’unique_Cliente’);\r\nq = foreach q generate ‘Cliente’ as ‘Cliente’, unique(‘unique_Cliente’) as ‘unique_Cliente’,’Phone’ as ‘Telefono’,’NCliente’,’Ultima visita’,’unique_Cliente’ as ‘id’;\r\nq = order q by ‘Cliente’ asc;\r\nq = foreach q generate ‘id’,’Cliente’,’Telefono’,’NCliente’,’Ultima visita’;”,
    “receiveFacet”: false,

  • 6
    sai on June 12, 2019 Reply

    Hi Rikke,
    I am learning Einstein Analytics through your blog .It helped me a lot.

  • 7
    Duane Allen on June 12, 2019 Reply

    Hi Rikke, I’m having difficulties importing this. When I paste it into the JSON editor and click “Done” the analytics logo flashes up briefly and I’m unable to close the editor and view the dashboard. This persists across several orgs, all running the latest version of EA from earlier this week. Even after undoing changes I’m still stuck in the editor until I close using the X

    Any ideas on how to proceed?

    • 8
      Rikke on June 12, 2019 Reply

      Let me check later. It worked for me last week. Did you change the Id references?

      • 9
        Duane Allen on June 12, 2019 Reply

        Yep, I changed those. Also tried changing the URL to v46.0 instead of v45.0

      • 10
        Duane Allen on June 13, 2019 Reply

        Hi, did you have a chance to check this out? I’m still seeing the same behaviour today

        • 11
          Rikke on June 14, 2019 Reply

          I checked in a summer org, something has changed, so I can’t load it either anymore. I need to dive deeper though.

        • 12
          Rikke on June 29, 2019 Reply

          Hey – I tried again, cause I had time to see if I could fix it. I think it was a summer 19 glitch, cause the JSON worked for me this time..

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.