2016-12-02 8 views
0

私はTableauサーバに次の表を持ち、USERNAME()を使用して 'Employee'値を返します。Tableau:パラメータに固定リンクを使用するグローバル次元

+----------+---------+----------+ 
| Employee | Manager | Job Role | 
+----------+---------+----------+ 
| jdoe  | hwu  | Analyst | 
| anon  | hwu  | IT  | 
| jlaw  | hwu  | Analyst | 
| kreaves | bpitt | Analyst | 
| jlopez | bpitt | IT  | 
| mmoss | bpitt | IT  | 
+----------+---------+----------+ 

目標:パラメータに基づいて自己に似たユーザーを検索します。パラメータ値 - マネージャ、ジョブの役割。

例:私のUSERNAME()はjdoeです。 パラメータ値 'Manager'を選択すると、以下のようにtableauフィルタがフィルタリングされ、 'hwu'の下の従業員の結果のみが返されます。

+----------+ 
| Employee | 
+----------+ 
| jdoe  | 
| anon  | 
| jlaw  | 
+----------+ 

同様に、[ジョブロール]を選択すると、以下のように、ジョブロール「アナリスト」を持つユーザーのリストにフィルタリングされます。

+----------+ 
| Employee | 
+----------+ 
| jdoe  | 
| jlaw  | 
| kreaves | 
+----------+ 

私は、この使用してLODの計算に簡単な解決策があるはずですけど、私はこれにアプローチする方法について困惑しています!

+0

を始める必要があります[My Value of Interest] = [Value of Interest]

かどうかをテストするフィルタ棚にCALCを置くことができます。それが何をすべきかの例を教えてください。 – lampbob

+0

@ lampbob私はこれらの例がいくらか明確になることを望む。 – woodhead92

+0

は、あなたが何が起こるかをまだ明確にしていません。 –

答えて

0

UserName()、パラメータ、ブール値を生成するために必要なフィールドを使用する計算フィールドを作成します。このフィールドを使用して目的の行をフィルタリングします。

たとえば、[インタレストの値] if [My Param] = "Manager" then [Manager] else [Job Role] end

そして、あなたのLODのCalcの{ min(if [Employee] = username() then [Value of Interest] end) } [関心のマイ値]と呼ばれる別の計算フィールドと呼ばれる計算フィールドを作成します。

今、あなたは、私はこれをテストすることができる場所ではないんだけど、それはあなたがこれは少し混乱して

+0

対応するManagerName/JobRoleをUSERNAME()に取得するにはどうすればよいですか?私はLOD計算をこのために使用すべきだと感じますが、どうすればよいか分かりません。 – woodhead92

関連する問題