Tableau筛选错误

时间:2016-06-22 19:38:38

标签: javascript tableau

我正在尝试使用JavaScript API配置默认过滤器选择状态。以下是我为此示例使用的代码:

$(function() {
  var placeholderDiv = document.getElementById("tableauViz");
  var url = "https://sometableausite/t/Tableau_Dev/views/MyPath/HomeDashboard?:embed=y&:showShareOptions=true&:display_count=no&:showVizHome=no";
  var options = {
     hideTabs: false,
     width: "100%",
     height: "1552px",
     onFirstInteractive: function() {
        var worksheet;


        var filtersVal='';
        var onSuccess = function (filters) {
            console.log("This worksheet has " + filters.length + " filter(s) associated with it.");
            $.each(filters, function (filter, i) {
                // use .value property of each DataValue object
                filtersVal += i.getFieldName() + ", ";
                console.log(filtersVal);
            });
        };

        var onError = function (err) {
            console.log(err);
        };

        viz.getWorkbook().activateSheetAsync("Performance").then(function(sheet) {
            worksheet = sheet;
            worksheet.getWorksheets()[0].getFiltersAsync().then(onSuccess, onError);
        });        
     }
  };

  var viz = new tableau.Viz(placeholderDiv, url, options);  
});

这只是试图在此时获取可用的过滤器选项,但我收到500服务器错误并在调用worksheet.getFiltersAsync()时被踢入onError调用。

这是返回的错误:

发布到https://sometableausite/vizql/t/Tableau_Dev/w/MyPath/v/HomeDashboard/sessions/E49DB48C495E4A858821B95F95AEFB20-0:2/commands/tabsrv/get-filter-info

给出500服务器错误。

TableauException:内部错误
2016-06-22 19:27:53.350 (V2rmuQrmAA0AAEGQy60AAALP,0,2)

如何获取过滤器列表?

1 个答案:

答案 0 :(得分:0)

在尝试查询可用的过滤器选项时,我无法解决问题中的错误。相反,我通过简单地将过滤器添加到使用的URL中找到了一种解决方法。

$(function() {
  var placeholderDiv = document.getElementById("tableauViz");
  var url = "https://sometableausite/t/Tableau_Dev/views/MyPath/HomeDashboard?Business Unit Name=Accounting";
  var options = {
     hideTabs: true,
     width: "100%",
     height: "1552px"
  };

  var viz = new tableau.Viz(placeholderDiv, url, options);  
});