7 Replies Latest reply on Mar 19, 2019 10:35 AM by Andrew Haug

    What is the best way to create a workbook that gets new data daily?

    Andrew Haug

      It seems far too difficult to make a graph online that gets data from a local csv file, and have that graph update when the csv updates. I have tried to accomplish this task in 20 different ways, each failing for one reason or another. There seems to be no clear conclusion on the forums for how to accomplish this -- I have read to put the file in an unc file path, publish the data source, extract your data, don't extract your data, publish the extract....... etc.


      What I am wondering is what is the simplest best way to create a workbook that gets new data added to it daily. The data comes from several csvs, completely regenerated daily. Due to various limitations with using either data blending or database like joins, I had to use both methods to combine all of the data in my workbook.


      Various things I have tried:

      -live connection to files on a file share (uncheck "include external files" when uploading) -- this worked (very well, I might add) for about a week until I updated to tableau 2018.3.2 (from 10.4), after which I repetitively got errors that were of the format "An error occurred while communicating with the data source ..... No such table ......". The errors would come and go, affecting one data source, and five minutes later not affecting the same data source, but affecting 3 different ones. These errors did not go away until I changed all of the data sources to look locally again instead of on the file share, which stopped the auto-updating that was occurring when viewing the graph online.

      -extract connection to files; both extracts and data files located on a file share. Set up the workbook to refresh, but tableau appeared to be looking to some local file path instead of the file share where the data/extracts were located, so the refreshes failed every time.

      -published data sources separately to tableau server vs allowing them to be embedded in the workbook. Set up a refresh schedule for the data source, and also for the workbook. Got things working manually so if I updated the data in the csv, then refreshed the data source, then refreshed the workbook, the graph would update. The double refresh schedule seemed annoying, but it worked. Manually, for one day. I assumed the nightly auto refresh would work, but it failed for two of the data sources (out of 6 total). The only feedback provided is "if the information on the data connection page is up-to-date, try republishing the workbook or data source" -- I republished the workbook many times and have manually tried to refresh the data source to no avail. It seems the context menu for publishing a data source disappears after it is published, so I am not aware how to republish the data source. In switching between "live" and "extract" for one of the failing sources in an attempt to regenerate the extract, tableau decided to change the icon next to the data source to a tableau logo (indicating the source is now located on the server?).



      Tableau seems to have a ton going on behind the scenes that is hidden from the user, making understanding this process very difficult. I simply have a workbook that digests around 10 csvs. How can I make it so when I regenerate one or more of these csvs, the workbook, hosted on tableau server, updates with the new data without manual intervention.


      Currently using version 2018.3.2. I appreciate any help.

        • 1. Re: What is the best way to create a workbook that gets new data daily?
          Prasanna R

          Hi Andrew,


          I know it is a bit frustrating but let me tell you a few points which you can focus on so that you can fix the issue. Let me start by staying that you were on the right track. Just a few things to note. I have highlighted them in bold otherwise its the same steps you might have taken.


          I have mentioned the steps in this thread, please go through.


          Automatic Refresh Of Data On Server From Excel


          When you select the csv file (its the same for xls as well) you would use the pop up and select the file. You should make sure you enter the complete path in the File Name text box. Moreover, tableau server should have access to the location where you are placing these files else it would fail.


          Best Regards



          *If this helps, then please mark it Helpful and Correct to close this thread

          • 2. Re: What is the best way to create a workbook that gets new data daily?
            Andrew Haug

            Thank you for the quick response. I went through the steps in the attached forum post. I put the csv files in a shared network path and started going through importing each new data source, being sure to specify the entire file path in the "file name" box when choosing each file, and replacing each old data source with the newly imported ones. I maintained a live connection to each of the files. I've already had to replace the data sources multiple times while troubleshooting this issue, and it forces me to remake all of my aliases and redo all of the custom formatting I had in place on each graph, which is very time consuming (I have 60+ sheets to maintain).


            As soon as I finished replacing each data source, I went to one of my dashboards to view the new data. I immediately got the error I was getting before with the csv located on the file share -- "No such table [#Tableau_68_730CAF86-B03F-4142-85D6-E33E59CEE69F_12_Filter]." etc. The numbers/letters after "[#tableau" change depending on what I am viewing, but the result of this error is that certain graphs don't appear in my dashboards. The graphs which don't appear change over time, and certain graphs using one data source will appear while other graphs using that same data source will not appear.


            Why do I get this error when I have the csvs located on a file share, and when selecting the files to use for a data source, input the full file path, starting with "\\<file share>", into the file name box?

            • 3. Re: What is the best way to create a workbook that gets new data daily?
              Prasanna R

              Hi Andrew,


              This is referencing to a temp table so every time you might see a new suffix.


              To try, can you just start from scratch. Just open tableau and start by connecting the csv files and save the file as twbx. jus have one sheet for each connection and put them all in a dashboard. Just a dummy one. This should not take more than 5 mins. So what we are trying to do here is to see how your csv live connection should work.



              1) The full path like you had done before

              2) Does your Tableau Server have access to this path location? Else this would fail.


              Now publish this quick dashboard and see if you get any issues. Let me know how this turns out.




              • 4. Re: What is the best way to create a workbook that gets new data daily?
                Andrew Haug

                I created a workbook from scratch, imported all 10 data sources specifying the full file path in the file name box, created worksheets with elements from each source, even used data blending in one worksheet, put all the worksheets in a dashboard, saved the file and published to tableau server. Everything appears to be working fine. I get no errors. When I update the data in one of the source files and save the file, then press "refresh" when viewing the dashboard/worksheet online in tableau server, the data updates.


                These are the exact same files I had tableau connected to in my most recent post above. Why does my existing workbook not behave the same as my new test workbook?

                • 5. Re: What is the best way to create a workbook that gets new data daily?
                  Prasanna R

                  Hi Andrew,


                  So the provided solution works. That is good to know.


                  Now to fix your existing one - Since you have too many sheets and data sources it is hard to pin point to the source of the issue as it is quiet evident from the error that something is referring to a local temp file. A few solutions I can think of at this time is -

                  to go through all your connections and make sure they are live. Then save them. (publish if you want it as live connection) Recreate the extract and publish it to the server (if you want extract connection). The issue is pretty much in this window. Its quiet hard to guess without seeing the data especially when you have all the blend, join with multiple datasources.


                  Or the other solution i can think of is, you have one workbook that kinda works. So copy all the sheets to the new one (do one data source at a time - meaning all the sheets with respect to one data source) then you can replace the old data source with the new one. Publish this workbook and see.


                  You can try the other way around as well. Adding new data sources to your existing workbook and replacing your old data sources with the new one. Guess this might remove all the temp tables and you should be okay. Give this a shot since we are so close to finding a way out.


                  post / article to see if any of these fixes your issue.


                  Error 49037: no such table


                  Best Regards



                  *If this helps, then please mark it Helpful and Correct to close this thread

                  • 6. Re: What is the best way to create a workbook that gets new data daily?
                    Andrew Haug

                    It is good to know that that error means Tableau is looking to a local temp file.


                    I took the working file with live connections to my data files on a file share. I pasted in my worksheets and dashboards from the nonworking workbook. I replaced each of the new data sources that appeared when I pasted with my working live connections.


                    Immediately when navigating to one of my dashboards, I got the same error, No such table [#Tableau_118_AE7DFA80-5BF4-4631-B4AB-855335CD2A9E_6_Filter] (numbers differ depending on which dashboard I am looking at and what is failing at this particular moment).


                    The first link you provided does not apply because I am not using extracts (currently) or data source filters (ever). The second link seems similar to what I am experiencing. Different from the link, I used "add connection" instead of "New union" to join my files in the data source where I used sql-like joining (as opposed to data blending). In the end, there was no resolution. Some things determined in that thread were it may have something to do with using a network share, it may have something to do with having data sources in 2 folders, it may have something to do with using sql-like joins/unions. I closed my data source that used sql-like joins in my workbook (although I was getting the errors viewing dashboards that do not use this source). This changed which graphs weren't loading from my other data sources (as in, some just "appeared", others just "disappeared"), but the error persists when clicking between my dashboards. I manually rechecked all of the data sources and they are, indeed, located all in one folder on the file share. It seems concerning to me that this behavior is so inconsistent, and similar to what was experienced in the second link you pasted, the working status of my connections changed after working successfully for a period of time.


                    These latest errors are occurring without publishing, on tableau desktop, and not just when in tableau server. I haven't even attempted to publish yet, this is just a local workbook looking at data sources in the file share.

                    • 7. Re: What is the best way to create a workbook that gets new data daily?
                      Andrew Haug

                      In the end, the only way to get around these issues was to avoid using csvs and avoid using tableau's data blending feature and database like joins feature. I uploaded the data into our snowflake data warehouse, and made it all a single data source.