superset icon indicating copy to clipboard operation
superset copied to clipboard

[SIP-77] Proposal for Links

Open cccs-jc opened this issue 4 years ago • 2 comments
trafficstars

[SIP-77] Proposal for Links

Motivation

Links, enable users to easily navigate to related content directly from Superset. This content can be an Explore, a Chart, a Dashboard or any other web application.

How it's done in Tableau

URL Actions

A URL action is a hyperlink that points to a web page, file, or other web-based resource outside of Tableau. You can use URL actions to create an email or link to additional information about your data. To customize links based on your data, you can automatically enter field values as parameters in URLs.

Documentation: https://help.tableau.com/current/pro/desktop/en-us/actions_url.htm

URL actions are created in the dashboard. Users pick the sheet they want the link to apply to. The tool helps compose the link by providing a drop down list of available fields. test

Go to Sheet action

Use the Go to Sheet action to let users quickly navigate to a related visualization—a dashboard, sheet, or story—when they click on a mark or a tooltip menu item in the original view.

https://help.tableau.com/current/pro/desktop/en-us/actions_dashboards.htm

test

How it's done in Looker

Link

The link parameter allows you to add web links to dimensions and measures to enable users to easily navigate to related content directly from Looker. The form of a link parameter is:

https://docs.looker.com/reference/field-params/link

Use a field to invoke link to other applications

test

Invoking the link opens a new browser tab with the contextual information

test

Use a field to open a Dashboard, Explore or Chart, invoking the link opens a dashboard with populated filters

test

Actions

The action parameter creates a data action that lets users perform field-level tasks in other tools, directly from Looker. For example, the action can cause an email to be sent, set values in other applications, or perform any other action that you can configure a receiving server to do. The receiving server must be able to accept a JSON POST.

https://docs.looker.com/reference/field-params/action

An action is not use to navigate but rather to invoke a REST call into another service. Looker shows the response of the invocation as failed or succeed.

Proposed Implementation for Superset

Links are registered in a global link registry which allows them to be re-used in the various datasets and visualizations.

Links registration have the following properties:

  • Title
  • Icon
  • HTTP Verb POST/GET
  • Actual link
  • HTTP Body
  • Tags

Tags are used to activate Links on a given field. A Dataset column can be tagged with multiple tags.

image

For example the product_line tag is associated with a Link to an Explore while the health_dashboard is associated with a Link to a Dashboard.

Templated Links

Jinja templating is used to parameterize the Link according to the selected value (contextual information).

Jinja templating can be applied to the Title, Actual link and HTTP Body.

Chart/Explore

Use {{ PRODUCT_LINE_COLUMN }} to insert the currently selected product line value into the link.

https://superset_instance/superset/explore/?
form_data={"slice_id": 123, "adhoc_filters":
[{"expressionType":"SIMPLE","subject":"product_line",
"operator":"IN","operatorId":"IN","comparator":["{{  PRODUCT_LINE_COLUMN }}"]

Dashboard

Use {{ USER_ID_COLUMN }} to insert the currently selected user id value into the link.

https://localhost/superset/dashboard/55/?
native_filters=(NATIVE_FILTER-VRY4N7SxN:(extraFormData:(
time_range:'yesterday : today'),filterState:(value:'yesterday : today'),
id:NATIVE_FILTER-VRY4N7SxN,ownState:()),NATIVE_FILTER-pYN2bmPLw:(
__cache:(label:'{{ USER_ID_COLUMN }}',validateStatus:!f,value:!('{{ USER_ID_COLUMN }}')),
extraFormData:(filters:!((col:UserId,op:IN,val:!('{{ USER_ID_COLUMN }}')))),
filterState:(label:'{{ USER_ID_COLUMN }}',validateStatus:!f,
value:!('{{ USER_ID_COLUMN }}')),id:NATIVE_FILTER-pYN2bmPLw,ownState:()))

Third Party Web Apps

Use {{ USER_NAME_COLUMN }} to insert the currently selected user name value into the link. Example google query

https://www.google.ca/search?q={{ USER_NAME_COLUMN }}

Creating the exact URL to launch an Chart or a Dashboard can be quite difficult due to the complexity of the URL's nomenclature. A higher level semantic or a custom UI would probably help users create Link registrations to Superset's built-in content (Explore, Chart, Dashboard). However the generic Jinja templating is still useful to render links to third party web applications.

Requirements

  • Add a Link registry
  • Add UI to edit Link registrations
  • Add tags to Datasets
  • Add context menu to visualizations

cccs-jc avatar Oct 30 '21 11:10 cccs-jc

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. For admin, please label this issue .pinned to prevent stale bot from closing the issue.

stale[bot] avatar Apr 17 '22 22:04 stale[bot]

+1

Sandy381 avatar Nov 25 '22 05:11 Sandy381

+1, grafana has this feature too. image

wenqi73 avatar Dec 19 '22 06:12 wenqi73

@cccs-tom @cccs-jc just checking in: is there still active intent to pursue this?

rusackas avatar Jun 07 '23 17:06 rusackas

@cccs-tom @cccs-jc just checking in: is there still active intent to pursue this?

I'm not sure it's entirely clear at this time. We still plan to pursue the "Jump To" mechanic that we've discussed in the past. Something like this could tie into that, but I don't think we know yet whether this will be a requirement for our users. Tagging @cccs-rc for input as well.

cccs-tom avatar Jun 07 '23 17:06 cccs-tom

Yeah, what @cccs-tom said. This overlaps with some use cases we're still planning to tackle, but this particular feature/implementation may get covered in other ways. It's also very far down our priority list at the moment.

cccs-rc avatar Jun 07 '23 18:06 cccs-rc

image

There is also a need for this, such as clicking on AD to jump to a webpage like https://myapp.com/AD.

zhugw avatar Jun 26 '23 10:06 zhugw

I hope the official can attach importance to this feature, which can enhance the interaction ability of BI. I provide a commercial BI document that provides a detailed description of the relevant configurations and usage methods of the functions. Jump to dashboard[url]: https://help.fanruan.com/finebi/doc-view-149.html

zh417233956 avatar Aug 14 '23 02:08 zh417233956

[SIP-77] Proposal for Links

Motivation

Links, enable users to easily navigate to related content directly from Superset. This content can be an Explore, a Chart, a Dashboard or any other web application.

How it's done in Tableau

URL Actions

A URL action is a hyperlink that points to a web page, file, or other web-based resource outside of Tableau. You can use URL actions to create an email or link to additional information about your data. To customize links based on your data, you can automatically enter field values as parameters in URLs.

Documentation: https://help.tableau.com/current/pro/desktop/en-us/actions_url.htm

URL actions are created in the dashboard. Users pick the sheet they want the link to apply to. The tool helps compose the link by providing a drop down list of available fields. test

Go to Sheet action

Use the Go to Sheet action to let users quickly navigate to a related visualization—a dashboard, sheet, or story—when they click on a mark or a tooltip menu item in the original view.

https://help.tableau.com/current/pro/desktop/en-us/actions_dashboards.htm

test

How it's done in Looker

Link

The link parameter allows you to add web links to dimensions and measures to enable users to easily navigate to related content directly from Looker. The form of a link parameter is:

https://docs.looker.com/reference/field-params/link

Use a field to invoke link to other applications

test

Invoking the link opens a new browser tab with the contextual information

test

Use a field to open a Dashboard, Explore or Chart, invoking the link opens a dashboard with populated filters

test

Actions

The action parameter creates a data action that lets users perform field-level tasks in other tools, directly from Looker. For example, the action can cause an email to be sent, set values in other applications, or perform any other action that you can configure a receiving server to do. The receiving server must be able to accept a JSON POST.

https://docs.looker.com/reference/field-params/action

An action is not use to navigate but rather to invoke a REST call into another service. Looker shows the response of the invocation as failed or succeed.

Proposed Implementation for Superset

Links are registered in a global link registry which allows them to be re-used in the various datasets and visualizations.

Links registration have the following properties:

  • Title
  • Icon
  • HTTP Verb POST/GET
  • Actual link
  • HTTP Body
  • Tags

Tags are used to activate Links on a given field. A Dataset column can be tagged with multiple tags.

image

For example the product_line tag is associated with a Link to an Explore while the health_dashboard is associated with a Link to a Dashboard.

Templated Links

Jinja templating is used to parameterize the Link according to the selected value (contextual information).

Jinja templating can be applied to the Title, Actual link and HTTP Body.

Chart/Explore

Use {{ PRODUCT_LINE_COLUMN }} to insert the currently selected product line value into the link.

https://superset_instance/superset/explore/?
form_data={"slice_id": 123, "adhoc_filters":
[{"expressionType":"SIMPLE","subject":"product_line",
"operator":"IN","operatorId":"IN","comparator":["{{  PRODUCT_LINE_COLUMN }}"]

Dashboard

Use {{ USER_ID_COLUMN }} to insert the currently selected user id value into the link.

https://localhost/superset/dashboard/55/?
native_filters=(NATIVE_FILTER-VRY4N7SxN:(extraFormData:(
time_range:'yesterday : today'),filterState:(value:'yesterday : today'),
id:NATIVE_FILTER-VRY4N7SxN,ownState:()),NATIVE_FILTER-pYN2bmPLw:(
__cache:(label:'{{ USER_ID_COLUMN }}',validateStatus:!f,value:!('{{ USER_ID_COLUMN }}')),
extraFormData:(filters:!((col:UserId,op:IN,val:!('{{ USER_ID_COLUMN }}')))),
filterState:(label:'{{ USER_ID_COLUMN }}',validateStatus:!f,
value:!('{{ USER_ID_COLUMN }}')),id:NATIVE_FILTER-pYN2bmPLw,ownState:()))

Third Party Web Apps

Use {{ USER_NAME_COLUMN }} to insert the currently selected user name value into the link. Example google query

https://www.google.ca/search?q={{ USER_NAME_COLUMN }}

Creating the exact URL to launch an Chart or a Dashboard can be quite difficult due to the complexity of the URL's nomenclature. A higher level semantic or a custom UI would probably help users create Link registrations to Superset's built-in content (Explore, Chart, Dashboard). However the generic Jinja templating is still useful to render links to third party web applications.

Requirements

  • Add a Link registry
  • Add UI to edit Link registrations
  • Add tags to Datasets
  • Add context menu to visualizations

trixieboyle avatar Aug 28 '23 07:08 trixieboyle

这是来自QQ邮箱的自动回复邮件。您好,邮件我已收到,我将在看见邮件后,第一时间给您回复。

zh417233956 avatar Aug 28 '23 07:08 zh417233956

#https://github.com/apache/superset/issues/17296 [SIP-77] Proposal for Links

Motivation

Links, enable users to easily navigate to related content directly from Superset. This content can be an Explore, a Chart, a Dashboard or any other web application.

How it's done in Tableau

URL Actions

A URL action is a hyperlink that points to a web page, file, or other web-based resource outside of Tableau. You can use URL actions to create an email or link to additional information about your data. To customize links based on your data, you can automatically enter field values as parameters in URLs.

Documentation: https://help.tableau.com/current/pro/desktop/en-us/actions_url.htm

URL actions are created in the dashboard. Users pick the sheet they want the link to apply to. The tool helps compose the link by providing a drop down list of available fields. test

Go to Sheet action

Use the Go to Sheet action to let users quickly navigate to a related visualization—a dashboard, sheet, or story—when they click on a mark or a tooltip menu item in the original view.

https://help.tableau.com/current/pro/desktop/en-us/actions_dashboards.htm

test

How it's done in Looker

Link

The link parameter allows you to add web links to dimensions and measures to enable users to easily navigate to related content directly from Looker. The form of a link parameter is:

https://docs.looker.com/reference/field-params/link

Use a field to invoke link to other applications

test

Invoking the link opens a new browser tab with the contextual information

test

Use a field to open a Dashboard, Explore or Chart, invoking the link opens a dashboard with populated filters

test

Actions

The action parameter creates a data action that lets users perform field-level tasks in other tools, directly from Looker. For example, the action can cause an email to be sent, set values in other applications, or perform any other action that you can configure a receiving server to do. The receiving server must be able to accept a JSON POST.

https://docs.looker.com/reference/field-params/action

An action is not use to navigate but rather to invoke a REST call into another service. Looker shows the response of the invocation as failed or succeed.

Proposed Implementation for Superset

Links are registered in a global link registry which allows them to be re-used in the various datasets and visualizations.

Links registration have the following properties:

  • Title
  • Icon
  • HTTP Verb POST/GET
  • Actual link
  • HTTP Body
  • Tags

Tags are used to activate Links on a given field. A Dataset column can be tagged with multiple tags.

image

For example the product_line tag is associated with a Link to an Explore while the health_dashboard is associated with a Link to a Dashboard.

Templated Links

Jinja templating is used to parameterize the Link according to the selected value (contextual information).

Jinja templating can be applied to the Title, Actual link and HTTP Body.

Chart/Explore

Use {{ PRODUCT_LINE_COLUMN }} to insert the currently selected product line value into the link.

https://superset_instance/superset/explore/?
form_data={"slice_id": 123, "adhoc_filters":
[{"expressionType":"SIMPLE","subject":"product_line",
"operator":"IN","operatorId":"IN","comparator":["{{  PRODUCT_LINE_COLUMN }}"]

Dashboard

Use {{ USER_ID_COLUMN }} to insert the currently selected user id value into the link.

https://localhost/superset/dashboard/55/?
native_filters=(NATIVE_FILTER-VRY4N7SxN:(extraFormData:(
time_range:'yesterday : today'),filterState:(value:'yesterday : today'),
id:NATIVE_FILTER-VRY4N7SxN,ownState:()),NATIVE_FILTER-pYN2bmPLw:(
__cache:(label:'{{ USER_ID_COLUMN }}',validateStatus:!f,value:!('{{ USER_ID_COLUMN }}')),
extraFormData:(filters:!((col:UserId,op:IN,val:!('{{ USER_ID_COLUMN }}')))),
filterState:(label:'{{ USER_ID_COLUMN }}',validateStatus:!f,
value:!('{{ USER_ID_COLUMN }}')),id:NATIVE_FILTER-pYN2bmPLw,ownState:()))

Third Party Web Apps

Use {{ USER_NAME_COLUMN }} to insert the currently selected user name value into the link. Example google query

https://www.google.ca/search?q={{ USER_NAME_COLUMN }}

Creating the exact URL to launch an Chart or a Dashboard can be quite difficult due to the complexity of the URL's nomenclature. A higher level semantic or a custom UI would probably help users create Link registrations to Superset's built-in content (Explore, Chart, Dashboard). However the generic Jinja templating is still useful to render links to third party web applications.

Requirements

  • Add a Link registry
  • Add UI to edit Link registrations
  • Add tags to Datasets
  • Add context menu to visualizations

trixieboyle avatar Aug 28 '23 08:08 trixieboyle

[SIP-77] Proposal for Links

Motivation

Links, enable users to easily navigate to related content directly from Superset. This content can be an Explore, a Chart, a Dashboard or any other web application.

How it's done in Tableau

URL Actions

A URL action is a hyperlink that points to a web page, file, or other web-based resource outside of Tableau. You can use URL actions to create an email or link to additional information about your data. To customize links based on your data, you can automatically enter field values as parameters in URLs.

Documentation: https://help.tableau.com/current/pro/desktop/en-us/actions_url.htm

URL actions are created in the dashboard. Users pick the sheet they want the link to apply to. The tool helps compose the link by providing a drop down list of available fields. test

Go to Sheet action

Use the Go to Sheet action to let users quickly navigate to a related visualization—a dashboard, sheet, or story—when they click on a mark or a tooltip menu item in the original view.

https://help.tableau.com/current/pro/desktop/en-us/actions_dashboards.htm

test

How it's done in Looker

Link

The link parameter allows you to add web links to dimensions and measures to enable users to easily navigate to related content directly from Looker. The form of a link parameter is:

https://docs.looker.com/reference/field-params/link

Use a field to invoke link to other applications

test

Invoking the link opens a new browser tab with the contextual information

test

Use a field to open a Dashboard, Explore or Chart, invoking the link opens a dashboard with populated filters

test

Actions

The action parameter creates a data action that lets users perform field-level tasks in other tools, directly from Looker. For example, the action can cause an email to be sent, set values in other applications, or perform any other action that you can configure a receiving server to do. The receiving server must be able to accept a JSON POST.

https://docs.looker.com/reference/field-params/action

An action is not use to navigate but rather to invoke a REST call into another service. Looker shows the response of the invocation as failed or succeed.

Proposed Implementation for Superset

Links are registered in a global link registry which allows them to be re-used in the various datasets and visualizations.

Links registration have the following properties:

  • Title
  • Icon
  • HTTP Verb POST/GET
  • Actual link
  • HTTP Body
  • Tags

Tags are used to activate Links on a given field. A Dataset column can be tagged with multiple tags.

image

For example the product_line tag is associated with a Link to an Explore while the health_dashboard is associated with a Link to a Dashboard.

Templated Links

Jinja templating is used to parameterize the Link according to the selected value (contextual information).

Jinja templating can be applied to the Title, Actual link and HTTP Body.

Chart/Explore

Use {{ PRODUCT_LINE_COLUMN }} to insert the currently selected product line value into the link.

https://superset_instance/superset/explore/?
form_data={"slice_id": 123, "adhoc_filters":
[{"expressionType":"SIMPLE","subject":"product_line",
"operator":"IN","operatorId":"IN","comparator":["{{  PRODUCT_LINE_COLUMN }}"]

Dashboard

Use {{ USER_ID_COLUMN }} to insert the currently selected user id value into the link.

https://localhost/superset/dashboard/55/?
native_filters=(NATIVE_FILTER-VRY4N7SxN:(extraFormData:(
time_range:'yesterday : today'),filterState:(value:'yesterday : today'),
id:NATIVE_FILTER-VRY4N7SxN,ownState:()),NATIVE_FILTER-pYN2bmPLw:(
__cache:(label:'{{ USER_ID_COLUMN }}',validateStatus:!f,value:!('{{ USER_ID_COLUMN }}')),
extraFormData:(filters:!((col:UserId,op:IN,val:!('{{ USER_ID_COLUMN }}')))),
filterState:(label:'{{ USER_ID_COLUMN }}',validateStatus:!f,
value:!('{{ USER_ID_COLUMN }}')),id:NATIVE_FILTER-pYN2bmPLw,ownState:()))

Third Party Web Apps

Use {{ USER_NAME_COLUMN }} to insert the currently selected user name value into the link. Example google query

https://www.google.ca/search?q={{ USER_NAME_COLUMN }}

Creating the exact URL to launch an Chart or a Dashboard can be quite difficult due to the complexity of the URL's nomenclature. A higher level semantic or a custom UI would probably help users create Link registrations to Superset's built-in content (Explore, Chart, Dashboard). However the generic Jinja templating is still useful to render links to third party web applications.

Requirements

  • Add a Link registry
  • Add UI to edit Link registrations
  • Add tags to Datasets
  • Add context menu to visualizations

https://github.com/apache/superset/issues/17296

trixieboyle avatar Aug 28 '23 08:08 trixieboyle

Moving this SIP to Discarded and closing it since it never moved forward. If you want to pick it back up, it just needs to be reopened and given a Discuss thread to reboot. Thanks!

rusackas avatar Mar 08 '24 19:03 rusackas

这是来自QQ邮箱的自动回复邮件。您好,邮件我已收到,我将在看见邮件后,第一时间给您回复。

zh417233956 avatar Mar 08 '24 19:03 zh417233956