Back

Explore Courses Blog Tutorials Interview Questions
0 votes
2 views
in BI by (17.6k points)

My intention is to find a target worksheet for actions in tableau's workbook. where should I search for that target worksheet correspond to some particular action in twb(XML) file?

For example:

<actions>

    <action caption='Filter 1 (generated)' name='[Action1]'>

      <activation auto-clear='true' type='on-select' />

      <source dashboard='Figure 8-60 thought 8-65' type='sheet' worksheet='Heat Map' />

      <command command='tsc:tsl-filter'>

        <param name='special-fields' value='all' />

        <param name='target' value='Figure 8-60 thought 8-65' />

      </command>

    </action>

    <action caption='Filter 2 (generated)' name='[Action2]'>

      <activation auto-clear='true' type='on-select' />

      <source dashboard='Figure 8-59' type='sheet' worksheet='Poor Filter Design' />

      <command command='tsc:tsl-filter'>

        <param name='special-fields' value='all' />

        <param name='target' value='Figure 8-59' />

      </command>

    </action>

    <action caption='Filter 3 (generated)' name='[Action3]'>

      <activation auto-clear='true' type='on-select' />

      <source dashboard='Figure 8-59' type='sheet' worksheet='Good Filter Design' />

      <command command='tsc:tsl-filter'>

        <param name='special-fields' value='all' />

        <param name='target' value='Figure 8-59' />

      </command>

    </action>

  </actions>

  • As you can see above code filter1 action got a param tag inside that target attribute is present, but the value present there is a dashboard name. What I want is target worksheet corresponded to the action filter.

 

1 Answer

0 votes
by (47.2k points)
  • I have used .twb file and got this for dashboard actions:

    <actions>

    <action caption='Filter 1 (generated)' name='[Action1]'>

      <activation auto-clear='true' type='on-select' />

      <source dashboard='Dashboard 1' type='sheet' worksheet='Sheet 3' />

      <command command='tsc:tsl-filter'>

        <param name='special-fields' value='all' />

        <param name='target' value='Dashboard 1' />

      </command>

    </action>

    <action caption='Filter 2 (generated)' name='[Action2]'>

      <activation auto-clear='true' type='on-select' />

      <source dashboard='Dashboard 2' type='sheet' worksheet='Sheet 2' />

      <command command='tsc:tsl-filter'>

        <param name='special-fields' value='all' />

        <param name='target' value='Dashboard 2' />

      </command>

    </action>

    <action caption='Filter 3 (generated)' name='[Action3]'>

      <activation auto-clear='true' type='on-select' />

      <source dashboard='Dashboard 2' type='sheet' worksheet='Sheet 3' />

      <command command='tsc:tsl-filter'>

        <param name='special-fields' value='all' />

        <param name='target' value='Dashboard 2' />

      </command>

    </action>

  </actions>

  • I am not able to find any direct link to the target sheet while the source sheet is always available in actions, This can be observed in Actions window.

enter image description here

  • But I was able to see the actions that were mapped to target sheets if we go to the individual sheet actions instead of dashboard actions where we can see the target as a dashboard.

  • Have a look at the below data where I have created a dummy dashboard to check actions.

  • These are the actions that created in the report:

<group caption='Action (Product Category)' hidden='true' name='[Action (Product Category)]' name-style='unqualified' user:auto-column='sheet_link'>

        <groupfilter function='crossjoin'>

          <groupfilter function='level-members' level='[Product Category]' />

        </groupfilter>

      </group>

      <group caption='Action (Product Sub-Category)' hidden='true' name='[Action (Product Sub-Category)]' name-style='unqualified' user:auto-column='sheet_link'>

        <groupfilter function='crossjoin'>

          <groupfilter function='level-members' level='[Product Sub-Category]' />

        </groupfilter>

      </group>

  • Along with this if we go to individual sheets then we can see the actions mapped first one is for Sheet 2 and other is for Sheet 3:

<filter class='categorical' column='[federated.0idnrl40bk56fg130xiy30dnljux].[Action (Product Category)]'>

            <groupfilter function='level-members' level='[Product Category]' user:ui-enumeration='all' user:ui-marker='enumerate' />

          </filter>

          <slices>

            <column>[federated.0idnrl40bk56fg130xiy30dnljux].[Action (Product Category)]</column>

          </slices>

           <filter class='categorical' column='[federated.0idnrl40bk56fg130xiy30dnljux].[Action (Product Sub-Category)]'>

            <groupfilter function='level-members' level='[Product Sub-Category]' user:ui-enumeration='all' user:ui-marker='enumerate' />

          </filter>

          <slices>

            <column>[federated.0idnrl40bk56fg130xiy30dnljux].[Action (Product Sub-Category)]</column>

          </slices>

  • If we keep track of actions that were created in dashboards then we can easily tell what all sheets are joined in a dashboard using the name of the actions.

 

Browse Categories

...