link

Utilizzo

view: view_name {
  dimension: field_name {
    link: {
      label: "desired label name"
      url: "desired_url"
      icon_url: "url_of_an_image_file"
    }
    # Possibly more links
  }
}
Gerarchia
link
Tipi di campi possibili
Dimensione, Misura

Accetta
Vari parametri

Definizione

Il parametro link ti consente di aggiungere link web a dimensioni e misure per consentire agli utenti di accedere facilmente ai contenuti correlati direttamente da Looker. La forma di un parametro link è:

dimension: field_name {
  link: {
    label: "desired label name"
    url: "desired_url"
    icon_url: "url_of_an_image_file"
  }
  # Possibly more links
}

Il parametro link ha diversi parametri secondari:

  • label è il nome del link che vuoi mostrare agli utenti.
  • url è l'URL a cui vuoi che rimandi il link. Puoi utilizzare le variabili Liquid per rendere dinamici i link, come descritto nella sezione Utilizzo delle variabili Liquid con link di questa pagina.
  • icon_url è un URL, accessibile al browser dell'utente, che contiene un file immagine. In questo modo, gli utenti possono capire più facilmente, a colpo d'occhio, dove li porterà il link. Il parametro icon_url non è obbligatorio se non vuoi un'icona. Se hai bisogno di loghi aziendali, prova a eseguire una ricerca su Google con il pattern http://www.google.com/s2/favicons?domain=[company website of interest] per trovare immagini in formato .ico.

Esempio

Un'azienda di e-commerce vuole che i dipendenti possano contattare l'assistenza del magazzino direttamente dai contenuti di Looker, ad esempio un Look che mostra gli ordini in attesa dell'ultimo mese. Il look contiene gli ID ordine e l'ID utente del cliente associato a ogni ordine.

Puoi aggiungere un link alla dimensione ID ordini per rendere questa azione disponibile all'utente che visualizza la Look:


dimension: id {
  primary_key: yes
  type: number
  sql: ${TABLE}.id ;;
  link: {
    label: "Contact Warehouse Support"
    url: "mailto:warehouse@altostrat.com"
  }
}

Nel Look, l'utente vedrà il link Contatta l'assistenza Warehouse tra le opzioni del menu dei link, a cui si accede facendo clic sul menu con tre puntini per uno qualsiasi dei valori del campo ID ordini.

Se l'utente fa clic sul nome del link, viene indirizzato ai contenuti collegati. In questo caso, una nuova scheda con una bozza di email vuota indirizzata all'indirizzo email specificato.

Quando un utente fa clic su un link, Looker lo apre in una nuova scheda del browser o nella stessa scheda (o iframe, per le query incorporate):

  • I link assoluti, come https://example.looker.com, si apriranno in una nuova scheda del browser.
  • I link relativi, ad esempio /dashboards/456, si apriranno nella stessa scheda del browser o nello stesso iframe. Una volta aperto il link, l'utente può fare clic su Indietro nel browser per tornare alla query originale.

Per accedere ai link, un utente deve disporre dell'autorizzazione explore o see_drill_overlay.

Il parametro link supporta le variabili Liquid per rendere i contenuti ancora più interattivi a livello di riga e valore. LookML supporta due tipi di tag di utilizzo di Liquid: tag di input dei valori {{ }} e tag di logica condizionale {% %}.

Tra le due, {{ }}, insieme alle variabili Liquid value e _filters['view_name.field_name'], è la più utilizzata con link. Questo perché i tag {{ }} inseriscono i valori di input direttamente nella posizione in cui si trovano, ad esempio all'interno di un URL.

Consulta gli esempi in questa pagina per esempi di utilizzo dei tag Liquid {{ }} con le variabili value e _filters['view_name.field_name'] per rendere i contenuti interattivi con link.

Collegamento a contenuti esterni

Ad esempio, supponiamo di avere una dimensione artist_name e di voler offrire all'utente la possibilità di eseguire una ricerca su Google per quell'artista direttamente da Looker. Puoi utilizzare la variabile Liquid value per aggiungere questa opzione a una dimensione come segue:

dimension: artist_name {
  link: {
    label: "Google"
    url: "http://www.google.com/search?q={{ value }}"
    icon_url: "http://google.com/favicon.ico"
  }
}

Quando un utente fa clic sul menu con tre puntini per un valore del campo Nome artista, Looker visualizza il menu Link, che include il link creato nel codice LookML di esempio. Il link apre una nuova scheda del browser con una ricerca su Google dell'artista selezionato. Il nome dell'artista selezionato viene inserito nell'URL in cui è posizionato {{ value }}.

Questo pattern può essere replicato per altri siti web esterni a cui il browser di un utente ha accesso, ad esempio sistemi di gestione dei ticket, sistemi di gestione dei clienti e altri strumenti correlati all'attività, per facilitare la navigazione tra le applicazioni web.

Collegamento ai contenuti in Looker

Oltre ai siti esterni, puoi utilizzare il parametro link per indirizzare gli utenti ad altre esplorazioni, altri look o altre dashboard di Looker pertinenti per un'esperienza di drill-down personalizzata. Puoi anche applicare gli stessi esempi ai link nel parametro html di LookML per i campi.

Per iniziare, devi ottenere l'URL di un'esplorazione, un look o una dashboard esistenti a cui vuoi collegarti. A questo punto, puoi sostituire elementi specifici dell'URL, come valori e nomi dei filtri, con tag {{ }} contenenti le variabili value e _filters['view_name.field_name']. Le variabili inseriscono i valori selezionati dall'utente negli elementi dell'URL che sostituiscono. La struttura di base degli URL dei contenuti è la seguente:

  • Esplora: /explore/YOUR_MODEL_NAME/YOUR_EXPLORE_NAME?fields=view_name.field_name1,view_name.field_name2...
    • Puoi ottenere l'URL di esplorazione per le esplorazioni esistenti selezionando l'opzione dell'icona a forma di ingranaggio URL espanso.
    • I filtri di esplorazione verranno visualizzati negli URL come f[view_name.field_name]. Per un esempio, consulta la sezione Collegamento a un'esplorazione correlata.
  • Aspetto: /looks/YOUR_LOOK_NUMBER
  • Dashboard definita dall'utente: /dashboards/YOUR_DASHBOARD_NUMBER?FILTER_NAME_1=VALUE&FILTER_NAME_2=VALUE

    • Puoi ottenere l'URL di una dashboard esistente copiando l'URL del browser dalla pagina della dashboard.
  • Dashboard LookML: /dashboards/YOUR_MODEL::YOUR_DASHBOARD

    • Puoi ottenere l'URL di una dashboard LookML esistente copiando l'URL del browser dalla pagina della dashboard.

I filtri della dashboard per le dashboard definite dall'utente e LookML vengono visualizzati negli URL come filter_name, dove filter_name è il nome assegnato al filtro inserito nella dashboard. Per un esempio, consulta la sezione Trasferire un valore di filtro esistente ai contenuti collegati.

Gli elementi degli URL, come i valori e i nomi dei filtri, sono codificati nell'URL con caratteri speciali, ad esempio ? per indicare l'inizio di una stringa di query, & per separare gli elementi e %20 per gli spazi. Per un esempio, consulta la sezione Codifica URL per altri operatori di confronto.

Una volta ottenuto l'URL dei contenuti a cui vuoi collegarti, puoi utilizzare Liquid per inserire il valore di un campo in qualsiasi elemento dell'URL utilizzando le variabili value o _filters['view_name.field_name'] e i tag {{ }}. Per ulteriori informazioni sulle parti di un URL di query, consulta il post della community di Looker Utilizzo di URL e parametri di query.

Abbiamo una dimensione chiamata Città. Vogliamo che gli utenti possano accedere a un'altra esplorazione esistente, con metriche della città e un filtro Città. Vogliamo che l'esplorazione collegata venga filtrata in base alla città selezionata dall'utente.

Procedi nel seguente modo:

  1. Ottieni l'URL dell'esplorazione esistente in cui visualizzare in dettaglio.
  2. Aggiungi un parametro link alla dimensione Città:
  dimension: city {
  type: string
  sql: ${TABLE}.city ;;
  link: {
    label: "City Metrics Explore"
    url: "/explore/ecommerce_model/order_items_explore?fields=users.city,orders.count,users.count&f[users.city]=&sorts=orders.count+desc&limit=500"
  }
  }

Qui, l'URL è stato abbreviato in limit=500, che limita i risultati dell'esplorazione a 500 righe, per chiarezza. Puoi includere il resto dell'URL, che in genere include la codifica URL delle impostazioni di visualizzazione, se necessario.

  1. Inserisci il tag e la variabile Liquid {{ value }} nel punto dell'URL in cui vuoi inserire il valore. In questo caso, vogliamo inserire il valore in cui si trova l'elemento filtro, f[users.city]=, nella stringa URL dell'esplorazione da filtrare in base alla città selezionata dall'utente:
dimension: city {
  type: string
  sql: ${TABLE}.city ;;
  link: {
    label: "City Metrics Explore"
    url: "/explore/ecommerce_model/order_items_explore?fields=users.city,orders.count,users.count&f[users.city]={{ value }}&sorts=orders.count+desc&limit=500"
  }
}

La dimensione Città mostrerà quindi un menu di link con tre puntini che visualizza l'opzione Esplora metriche città.

Quando un utente fa clic sul link, viene reindirizzato a Esplora metriche città, filtrato in base alla città selezionata.

Puoi anche conservare i valori dei filtri esistenti quando colleghi i contenuti di Looker, come illustrato nell'esempio seguente.

Esempio: passaggio di un valore di filtro esistente ai contenuti collegati

Un'altra variabile Liquid supportata dal parametro link è _filters['view_name.field_name']. Questa variabile prende i valori esistenti inseriti per un filtro e li passa a un'esplorazione, una dashboard o un Look collegati.

Negli URL dei contenuti, puoi vedere dove sono specificati i valori del filtro e sostituirli con la variabile _filters['view_name.field_name']. Per informazioni sulle parti di un URL di query, consulta il post della community di Looker Utilizzo di URL e parametri di query.

Ecco un esempio di dimensione che utilizza la variabile _filters['view_name.field_name'] nel parametro link per trasmettere un valore di filtro esistente per un campo denominato users.state:

dimension: name {
  link: {
    label: "Business Pulse By State Dashboard"
    url: "/dashboards/694?State={{ _filters['users.state'] | url_encode }}"
  }
}

In questo esempio, se un utente filtra una query in base alla dimensione users.state, la dashboard collegata viene filtrata automaticamente in base agli stessi stati scelti nella query originale. L'inclusione del filtro Liquid url_encode in questo esempio converte le stringhe non sicure per gli URL in stringhe codificate in percentuale. In questo modo, i valori dei filtri contenenti caratteri speciali, come spazi o virgole, possono essere passati al dashboard collegato.

Ad esempio, supponiamo che un utente abbia filtrato una query in base allo stato "California". Quando l'utente fa clic sul menu con tre puntini accanto a un valore per il campo Nome, il menu Link mostra un link alla dashboard Business Pulse per stato. Quando l'utente fa clic su questo link, la dashboard Business Pulse per stato viene già filtrata in base allo stato "California".

Questa operazione funziona anche per il trasferimento dei valori dei filtri a Look ed Explore collegati:

dimension: name {
    link: {
      label: "Average Order Profit Look"
      url: "/looks/249?&f[users.state]={{ _filters['users.state'] | url_encode }}"
    }
    link: {
      label: "User Facts Explore Explore"
      url: "/explore/ecommerce/users?fields=users.id,users.name&f[users.state]={{ _filters['users.state'] | url_encode }}"
    }
  }

Puoi passare più filtri inserendo & tra loro, come nei seguenti URL:

dimension: name {
  link: {
    label: "Business Pulse By State Dashboard"
    url: "/dashboards/694?State={{ _filters['users.state'] | url_encode }}&Date={{ _filters['orders.date'] | url_encode }}"
  }
  link: {
    label: "Average Order Profit Look"
    url: "/looks/249?&f[users.state]={{ _filters['users.state'] | url_encode }}&f[orders.date]={{ _filters['orders.date'] | url_encode }}"
  }
}

Per informazioni sulla creazione di filtri per le dashboard, consulta le pagine della documentazione Creazione di dashboard LookML e Aggiunta e modifica di filtri per le dashboard definiti dall'utente.

Se l'amministratore di Looker ha attivato la funzionalità Visualizzazione in dettaglio, puoi personalizzare la visualizzazione mostrata nelle sovrapposizioni di visualizzazione in dettaglio di Esplora e Look utilizzando il parametro link e le variabili Liquid. Le dashboard supportano l'esplorazione visiva utilizzando il parametro link senza la necessità di attivare la funzionalità Esplorazione visiva.

Ecco un esempio di impostazione di una visualizzazione in dettaglio su un grafico a dispersione:


  measure: count {
    type: count_distinct
    sql: ${id} ;;
    drill_fields: [created_date, total_sale_price]
    link: {
      label: "Drill as scatter plot"
      url: "
      {% assign vis_config = '{\\"type\\": \\"looker_scatter\\"}' %}
        \{\{ link \}\}&vis_config=\{\{ vis_config | encode_uri \}\}&toggle=dat,pik,vis&limit=5000"
    }
  }

Per altri esempi di personalizzazione delle visualizzazioni di livello di analisi, consulta la pagina delle best practice Esaminare i dati in modo più efficace.

Aspetti da considerare quando si collegano contenuti di Looker

Potrebbero esserci casi in cui devi includere operatori di confronto dei filtri diversi da uguale a, includere più filtri o utilizzare il carattere di escape per le virgole nei link ai contenuti di Looker. Le sezioni seguenti forniscono maggiori informazioni su questi casi d'uso.

Codifica URL di altri operatori di confronto

Se vuoi includere un operatore di confronto in un filtro collegato diverso da uguale a (=), puoi farlo codificando l'URL dell'operatore.

Ad esempio, se vuoi un filtro order_id in una ricerca collegata per includere valori inferiori a (<) il campo order_id associato al valore su cui fai clic, codifica parzialmente il carattere operatore (%3C in questo caso) e aggiungilo all'URL:

f[orders.order_id]=%3C{{ other_orders.order_id._value }}
Includere più filtri

È possibile applicare più di un filtro a esplorazioni, look e dashboard collegati utilizzando una e commerciale (&) per separare ogni filtro:

dimension: name {
  link: {
    label: "Drill Look"
    url:"/looks/looknumber?&f[users.state]={{ value }}[users.region]={{ users.region._value }}&f[users.age]={{ _filters['users.age'] | url_encode }}"
  }
}
Virgole di escape

Puoi eseguire l'escape delle virgole nei valori collegati con la variabile filterable_value, dove normalmente utilizzeresti la variabile value.

Il seguente link rimanda a un'esplorazione che filtra i risultati in base al valore users.city selezionato:

dimension: city {
    type: string
    sql: ${TABLE}.city ;;
    link: {
        label: "Drill by City"
        url: "/explore/model_name/explore_name?fields=users.email,users.id&f[users.city]={{ value }}"
    }
}

Se l'utente fa clic su Santa Cruz, CA per visualizzare in dettaglio i risultati filtrati in base a questa città, il drill-down risultante restituirà tutti i risultati che contengono Santa Cruz o CA.

Se viene utilizzato filterable_value anziché value, la virgola verrà sottoposta all'escape:

dimension: city {
    type: string
    sql: ${TABLE}.city ;;
    link: {
        label: "Drill by City"
        url: "/explore/model_name/explore_name?fields=users.email,users.id&f[users.city]={{ filterable_value }}"
    }
}

Il livello di analisi risultante restituirà tutti i risultati che contengono l'intero valore della stringa Santa Cruz, CA.

Se vuoi codificare in modo permanente un valore di filtro che contiene una virgola in un URL di visualizzazione in dettaglio, puoi utilizzare il carattere di escape per la virgola racchiudendo il valore tra virgolette doppie e poi utilizzando il carattere di escape con una barra rovesciata (\):

dimension: city {
    type: string
    sql: ${TABLE}.city;;
    link: {
        label: "Drill by City"
        url: "/explore/model_name/explore_name?fields=users.email,users.id&f[users.city]=\"Santa Cruz, CA\"&sorts=users.email"
    }
}

Risorse aggiuntive

Cose da sapere

Quando una dimensione contiene un parametro link che fa riferimento a un altro campo, questo campo aggiuntivo può essere aggiunto all'SQL sottostante di una query in cui viene utilizzata la dimensione. Se il campo a cui viene fatto riferimento non è presente nella visualizzazione della query e la visualizzazione è un grafico a tabella con colonne riorganizzate manualmente, l'ordine delle colonne in alcuni formati scaricati potrebbe essere interessato.