Perfezionamenti LookML

Panoramica

Con i perfezionamenti LookML, puoi adattare una vista o esplorazione esistente senza modificare il file LookML che la contiene. Ideale per:

Ad esempio, se nel tuo progetto è presente il seguente file di visualizzazione:

view: flights {
  sql_table_name: flightstats.accidents ;;

  dimension: id {
    label: "id"
    primary_key: yes
    type: number
    sql: ${TABLE}.id ;;
  }
}

Puoi perfezionare la vista flights come illustrato nell'esempio seguente: utilizza il parametro view con lo stesso nome di vista, ma aggiungi un segno più (+) davanti al nome per indicare che si tratta di un perfezionamento di una vista esistente.

Questo perfezionamento aggiunge una dimensione air_carrier alla visualizzazione flights esistente:

view: +flights {
  dimension: air_carrier {
    type: string
    sql: ${TABLE}.air_carrier ;;
  }
 }

Questo perfezionamento può essere inserito in qualsiasi file LookML all'interno del progetto, ad esempio un file del modello, un file di visualizzazione o un file LookML dedicato. Per sapere come funziona, consulta la sezione Utilizzo dei perfezionamenti nel progetto LookML.

Il perfezionamento combinato con il LookML originale genera il risultato finale come se questo fosse il LookML originale per la vista:

view: flights {
  sql_table_name: flightstats.accidents ;;

  dimension: id {
    label: "id"
    primary_key: yes
    type: number
    sql: ${TABLE}.id ;;
  }

  dimension: air_carrier {
    type: string
    sql: ${TABLE}.air_carrier ;;
  }
}

Nell'interfaccia utente di Looker, gli utenti vedranno la dimensione Air Carrier, proprio come se l'avessi aggiunta al file di visualizzazione originale.

Per informazioni più dettagliate sull'implementazione, consulta l'esempio di seguito.

Perfezionamenti rispetto alle estensioni

Looker supporta anche l'extending degli oggetti LookML. L'estensione è utile quando vuoi creare una nuova copia di una vista o di un'esplorazione esistente in modo da potervi aggiungere nuovi oggetti. Ad esempio, puoi creare una visualizzazione di base che definisca tutti i campi e poi creare più viste nuove che estendano la visualizzazione di base. Queste nuove viste possono poi essere modificate per nascondere alcuni campi nella visualizzazione di base o per cambiare le definizioni o le etichette dei campi dalla visualizzazione di base.

I perfezionamenti sono utili quando vuoi modificare una vista o un'esplorazione esistente con alcune modifiche o regolazioni a determinati oggetti, ma non vuoi creare copie della vista o dell'esplorazione. I perfezionamenti sono ideali per situazioni in cui non è possibile o meno modificare la vista di base o l'esplorazione e per quelle in cui la creazione di una nuova vista o esplorazione richiede modifiche significative ad altri riferimenti LookML. Per un esempio di questo caso d'uso, consulta la sezione Esempio di questa pagina.

Nella maggior parte dei casi d'uso, i perfezionamenti sono un'alternativa più semplice e chiara a extends.

Gli sviluppatori LookML avanzati potrebbero voler utilizzare il parametro extends in un perfezionamento LookML. Per saperne di più, consulta la sezione I perfezionamenti possono contenere estensioni in questa pagina.

I perfezionamenti sostituiscono la maggior parte dei parametri

È importante notare che nella maggior parte dei casi un perfezionamento sostituisce le impostazioni originali di un oggetto. Nell'esempio seguente, la vista originale ha una dimensione nascosta (hidden: yes):

view: faa_flights {
  dimension: carrier {
    hidden: yes
  }
}

E in un altro file c'è un perfezionamento a quella dimensione con hidden: no:


include: "/views/faa_flights.view.lkml"

view: +faa_flights {
  dimension: carrier {
    hidden: no
  }
}

L'ultimo perfezionamento ha la precedenza, pertanto viene applicato hidden: no e la dimensione verrà mostrata nella visualizzazione finale.

In alcuni casi i perfezionamenti sono additivi anziché essere sostituiti; consulta la sezione Alcuni parametri sono aggiuntivi di questa pagina per ulteriori informazioni.

Alcuni parametri sono additivi

In molti casi, se il perfezionamento contiene lo stesso parametro dell'oggetto da perfezionare, il perfezionamento sostituirà i valori parametro dell'oggetto raffinato.

Tuttavia, i perfezionamenti possono essere additivi per alcuni parametri, il che significa che i valori dell'oggetto di base vengono utilizzati insieme ai valori dell'oggetto raffinato.

I seguenti parametri sono additivi:

Ad esempio, ecco una vista con una dimensione name con un parametro link:

view: carriers {
  sql_table_name: flightstats.carriers ;;

  dimension: name {
    sql: ${TABLE}.name ;;
    type: string
    link: {
      label: "Google {{ value }}"
      url: "http://www.google.com/search?q={{ value }}"
      icon_url: "http://google.com/favicon.ico"
    }
  }
}

Ed ecco un perfezionamento alla vista carriers, con una dimensione name che ha valori diversi per il parametro link:


include: "/views/carriers.view.lkml"

view: +carriers {
  label: "Refined carriers"

  dimension: name {
    sql: ${TABLE}.name ;;
    type: string
    link: {
      label: "Dashboard for {{ value }}"
      url: "https://docsexamples.dev.looker.com/dashboards/307?Carrier={{ value }}"
      icon_url: "https://www.looker.com/favicon.ico"
    }
  }
}

Nella vista carriers ottimizzata, i due parametri link sono additivi, quindi la dimensione name mostrerà entrambi i link.

I perfezionamenti vengono applicati in ordine

Un oggetto può essere perfezionato più volte e in più luoghi, il che consente agli sviluppatori di Looker di utilizzare i perfezionamenti in molti modi creativi. Tuttavia, ciò significa anche che gli sviluppatori devono prestare molta attenzione all'ordine in cui vengono applicati i perfezionamenti:

  • All'interno di un progetto, i perfezionamenti vengono applicati nell'ordine in cui sono inclusi i relativi file. I perfezionamenti dei file inclusi per ultimi sostituiranno i perfezionamenti dei file inclusi in precedenza.
  • All'interno di un singolo file, i perfezionamenti vengono applicati riga per riga verso il basso. I perfezionamenti con il numero di righe più elevato vengono applicati per ultimi e sostituiranno eventuali perfezionamenti precedenti, in caso di conflitti.

Ad esempio, nel seguente file di visualizzazione sono disponibili due perfezionamenti della vista faa_flights. Il primo perfezionamento nasconde una dimensione (hidden: yes), mentre il secondo mostra la dimensione (hidden: no). In caso di conflitti di questo tipo, il perfezionamento più in basso nel file ha la precedenza:

include: "//e_faa_original/views/faa_flights.view.lkml"

view: +faa_flights {
  dimension: carrier {
    hidden: yes
  }
}

view: +faa_flights {
  dimension: carrier {
    hidden: no
  }
}

La logica è simile per l'inclusione di più file in un progetto: i perfezionamenti nell'ultimo file elencato nelle inclusioni avranno la precedenza. Ad esempio, se un file del modello include questi file:

include: "/refinements/distance_analysis.lkml"
include: "/refinements/finishing_touches.lkml"

Verranno applicati prima i perfezionamenti in distance_analysis.lkml e poi quelli nel file finishing_touches.lkml. In caso di conflitti, i perfezionamenti nell'ultimo file, finishing_touches.lkml, avranno la precedenza.

Utilizzo di final: yes per evitare ulteriori perfezionamenti

Come descritto in precedenza, lo stesso oggetto può essere perfezionato più volte in più punti e l'ultimo perfezionamento sostituirà tutti i perfezionamenti precedenti.

Se vuoi considerare un perfezionamento come perfezionamento finale della vista o dell'esplorazione, puoi aggiungere il flag final: yes al perfezionamento. L'IDE di Looker restituirà un errore LookML se sono presenti perfezionamenti esistenti che verrebbero applicati dopo questo perfezionamento finale o se uno sviluppatore tenta di aggiungere un nuovo perfezionamento che verrà applicato dopo questo perfezionamento finale. Ad esempio, il secondo perfezionamento in questo file di visualizzazione creerebbe un errore LookML perché il perfezionamento precedente ha il flag final: yes:

include: "//e_faa_original/views/faa_flights.view.lkml"

view: +faa_flights {
  final: yes
  dimension: carrier {
    hidden: yes
  }
}

view: +faa_flights {
  dimension: carrier {
    hidden: no
  }
}

L'aggiunta del flag final: yes a un perfezionamento è un buon modo per verificare che i perfezionamenti vengano applicati nell'ordine previsto.

I perfezionamenti possono contenere estensioni

Gli sviluppatori LookML avanzati potrebbero voler utilizzare un parametro extends all'interno di un perfezionamento LookML, che aggiunge l'oggetto esteso all'oggetto in fase di perfezionamento.

Per riepilogare il comportamento di extends e i perfezionamenti:

  • L'estensione di un oggetto crea una nuova copia dell'oggetto, che viene quindi creato su di esso. Ad esempio, puoi creare una visualizzazione di base che definisca tutti i campi e poi creare più viste nuove che estendano la visualizzazione di base. Ognuna di queste nuove viste incorpora una copia della vista di base, da cui uno sviluppatore può aggiungere campi, filtri o altre proprietà diversi per modificare il contenuto della vista di base. L'idea è di iniziare con un oggetto di base per poi utilizzarlo in modi diversi in diversi altri oggetti. Per una discussione completa sull'utilizzo delle estensioni, puoi consultare la pagina della documentazione relativa al riutilizzo del codice con estensioni.
  • Quando perfeziona un oggetto, viene aggiunto un livello di modifiche all'oggetto ma, a differenza dell'estensione, il perfezionamento non comporta la creazione di più copie dell'oggetto. L'idea è basarsi su un oggetto di base senza modificare il suo LookML originale.

Come esempio dell'utilizzo standard dei perfezionamenti, ecco un'esplorazione chiamata orders e l'esplorazione +orders che la perfeziona:

explore: orders {
  view_name: orders
  # other Explore parameters
}

explore: +orders {
  label: "Orders Information"
  # other Explore parameters to build on the original Explore
}

Inoltre, puoi aggiungere un perfezionamento che include un extends. Partendo dall'esempio, ecco la stessa esplorazione orders. Inoltre, c'è un'esplorazione di base chiamata users_base e ora il perfezionamento +orders ha un parametro extends che introduce users_base:


explore: users_base {
  view_name: users
  extension: required
  # other Explore parameters
}

explore: orders {
  view_name: orders
  # other Explore parameters
}

explore: +orders {
  label: "Orders Information"
  extends: [users_base]
  # other Explore parameters to build on the original Explore
}

L'aspetto speciale qui è che il perfezionamento +orders ha un extends all'interno. Il risultato è che la visualizzazione +orders ora estenderà l'esplorazione di users_base.

In che modo Looker implementa extends all'interno dei perfezionamenti

L'estensione di un oggetto all'interno di un perfezionamento è un concetto avanzato di LookML. Prima di utilizzare extends in un perfezionamento, dovresti comprendere a fondo quanto segue:

  • Modalità di implementazione di extends da parte di Looker: se un elemento LookML viene definito sia nell'oggetto ed che nell'oggetto ing esteso, viene utilizzata la versione nell'oggetto che si estende, a meno che il parametro non sia additive. Per maggiori dettagli, consulta la pagina della documentazione relativa al riutilizzo del codice con estensioni.
  • In che modo Looker implementa i perfezionamenti: se un elemento LookML viene definito in più perfezionamenti, l'ultimo perfezionamento sostituisce i perfezionamenti precedenti. Per maggiori dettagli, consulta la sezione I perfezionamenti vengono applicati in ordine in questa pagina.

Infine, è bene capire in che modo Looker combina questi principi per implementare l'extends utilizzato nei perfezionamenti. Ecco l'ordine implementato da Looker, in cui ogni passaggio sostituisce quello precedente in caso di conflitti:

  1. Valori da extends specificati nell'oggetto
  2. Valori del valore extends specificati nei perfezionamenti dell'oggetto
  3. Valori dell'oggetto
  4. Valori dei perfezionamenti dell'oggetto

Per spiegarci meglio, ecco un esempio che segue il valore del parametro label in ogni passaggio dell'implementazione:

explore: orders_base {
  label: "Orders Base"
  view_name: orders
  extension: required
}

explore: users_base {
  label: "Users Base"
  view_name: users
  extension: required
}

explore: orders {
  label: "Orders"
  extends: [orders_base]
}

explore: +orders {
  label: "Orders Refined"
  extends: [users_base]
}

Ecco come Looker implementa il valore di label per l'esplorazione orders in questo esempio:

  1. Valori da extends specificati nell'oggetto. Poiché l'esplorazione orders ha un parametro extends, Looker inizia con gli elementi LookML dell'oggetto in fase di estensione, che in questo caso è l'esplorazione orders_base. A questo punto, il valore di label è "Base ordini".
  2. Valori da extends specificati nei perfezionamenti dell'oggetto. Poiché orders ha un perfezionamento e il perfezionamento ha un parametro extends, Looker applica gli elementi LookML dell'estensione del perfezionamento, che in questo caso è l'esplorazione users_base. A questo punto, il valore di label è "Base utenti".
  3. Valori dell'oggetto. Ora che tutte le estensioni sono state gestite, Looker applica gli elementi dell'oggetto che si estende, che in questo caso è l'esplorazione orders. In caso di conflitti, prevale l'oggetto che si estende. Quindi ora il valore di label è "Ordini".
  4. Valori dei perfezionamenti dell'oggetto. Infine, Looker applica gli elementi derivanti da qualsiasi perfezionamento dell'esplorazione orders. In caso di conflitti, prevale l'oggetto di perfezionamento. Pertanto, ora il valore di label è "Ordini perfezionati".

Il perfezionamento extends è cumulativo

Come descritto nella sezione Parametri di sostituzione dei perfezionamenti di questa pagina, i perfezionamenti generalmente sostituiscono le impostazioni originali di un oggetto. Questo non avviene per il parametro extends. Quando extends viene utilizzato in un perfezionamento, il valore del parametro extends viene aggiunto all'elenco di elementi estesi nell'oggetto originale o negli eventuali perfezionamenti precedenti. Quindi, in caso di conflitti, viene data la priorità all'ultimo elemento nella catena di estensioni.

Ad esempio, ecco un'esplorazione di base chiamata orders_base e un'esplorazione orders che ne estende la base. Inoltre, c'è un'esplorazione users_base e il perfezionamento +orders che estende users_base:

explore: orders_base {
  view_name: orders
  extension: required
  # other Explore parameters
}

explore: users_base {
  view_name: users
  extension: required
  # other Explore parameters
}

explore: orders {
  extends: [orders_base]
  # other Explore parameters to build on the base Explore
}

explore: +orders {
  extends: [users_base]
  # other Explore parameters to build on the base Explores
}

L'esplorazione orders estende l'orders_base, quindi i perfezionamenti +orders aggiungono users_base all'elenco extends. Il risultato è che l'esplorazione di +orders ora estenderà sia orders_base che users_base, come se si trattasse del LookML originale dell'esplorazione:

explore: orders {
  extends: [orders_base, users_base]
}

Quindi, in caso di conflitti, viene data la priorità all'ultimo elemento nella catena di estensioni. In questo esempio, gli elementi in users_base sostituiranno gli eventuali elementi in conflitto in orders_base.

Il concetto di estensione di più oggetti alla volta viene discusso nella pagina della documentazione Riutilizzo del codice con estensione.

Un'ultima cosa da notare: in questo esempio, l'ordine dei parametri explore non è importante. Ma nei casi con più perfezionamenti dello stesso oggetto, l'ordine dei perfezionamenti è importante. Come descritto nella sezione I perfezionamenti vengono applicati in ordine di questa pagina, l'ultimo perfezionamento di un file sostituisce i perfezionamenti precedenti.

Utilizzo dei perfezionamenti nel progetto LookML

Di seguito sono riportati i passaggi generali per perfezionare le visualizzazioni e le esplorazioni del progetto:

  1. Identifica la visualizzazione o l'esplorazione che vuoi perfezionare.
  2. Decidi dove vuoi ospitare le tue perfezionamenti. Puoi aggiungere perfezionamenti in qualsiasi file LookML esistente oppure puoi creare file LookML separati per i perfezionamenti. Consulta la procedura per creare un file di test dei dati nella pagina della documentazione Informazioni sugli altri file di progetto per un esempio di creazione di file LookML generici.
  3. Utilizza il parametro include per incorporare i perfezionamenti nel modello:
    • Nel file in cui scrivi i perfezionamenti, devi includere i file del codice LookML che stai perfezionando. L'IDE di Looker visualizza degli avvisi se tenti di perfezionare un oggetto non incluso.
    • Nel file del modello, includi i file in cui sono definiti i perfezionamenti. Puoi combinare i file e utilizzare le inclusioni in modi molto creativi; consulta la sezione Utilizzare i perfezionamenti per aggiungere livelli al modello in questa pagina per maggiori dettagli.

Esempio

Il perfezionamento degli oggetti LookML è un modo semplice per adattare viste ed esplorazioni senza dover modificare il codice LookML originale. Ciò è particolarmente utile quando le viste e le esplorazioni sono di sola lettura nel progetto, ad esempio con i file importati da altri progetti. Ecco un esempio di perfezionamento di un'esplorazione.

Ecco il LookML per l'esplorazione aircraft:


explore: aircraft {
  join: aircraft_types {
    type: left_outer
    sql_on: ${aircraft.id} = ${aircraft_types.id} ;;
    relationship: many_to_one
  }

  join: aircraft_engine_types {
    type: left_outer
    sql_on: ${aircraft.id} = ${aircraft_engine_types.id} ;;
    relationship: many_to_one
  }
}

Questa esplorazione contiene diverse visualizzazioni, ognuna delle quali presenta molte dimensioni.

Ora, un altro progetto LookML chiamato e_faa_refined importa il file Esplora aircraft. Nel progetto e_faa_refined puoi utilizzare un perfezionamento per semplificare drasticamente l'esplorazione aircraft.

Poiché l'esplorazione aircraft è un file importato, non puoi modificarlo direttamente. Puoi invece aggiungere un perfezionamento. Ecco un esempio di file separato denominato refinements.lkml che contiene questo LookML:

include: "//e_faa_original/Explores/aircraft.explore.lkml"

explore: +aircraft {
  label: "Aircraft Simplified"
  fields: [aircraft.aircraft_serial, aircraft.name, aircraft.count]
}

Il file refinements.lkml contiene quanto segue:

  • Il parametro include da importare nel file aircraft.explore.lkml originale dal progetto importato. Per informazioni dettagliate su come consultare i file di progetto importati, consulta la pagina della documentazione Importazione di file da altri progetti.
  • Perfezionamenti all'esplorazione aircraft:
    • Il simbolo + davanti al nome dell'esplorazione indica un perfezionamento a un'esplorazione esistente.
    • Il parametro label modifica l'etichetta dell'esplorazione in "Aereo semplificato".
    • Il parametro fields specifica che nell'esplorazione verranno visualizzati solo tre campi.

Il risultato finale è come se si trattasse della visualizzazione originale di aircraft Esplora e aircraft:

explore: aircraft {
  label: "Aircraft Simplified"
  }

view: aircraft {
  sql_table_name: flightstats.aircraft ;;

  dimension: aircraft_serial {
    type: string
    sql: ${TABLE}.aircraft_serial ;;
  }

  dimension: name {
    type: string
    sql: ${TABLE}.name ;;
  }

  measure: count {
    type: count
  }
}

Per un esempio di utilizzo dei perfezionamenti per personalizzare una singola vista per più casi d'uso, consulta la ricetta del libro di ricette Massimizzare la riusabilità del codice con LookML DRY: personalizzare una vista di base singola per più casi d'uso.

Altri casi d'uso per i perfezionamenti

Come accennato in precedenza, i perfezionamenti sono ideali per adattare gli oggetti LookML di sola lettura, come i blocchi Looker o i file importati.

Tuttavia, una volta che hai imparato ad aggiungere perfezionamenti e a includerli nei tuoi modelli, puoi svolgere attività molto interessanti con i tuoi progetti, come descritto negli esempi che seguono.

Utilizzare i perfezionamenti per aggiungere analisi

Puoi utilizzare i perfezionamenti per aggiungere analisi al modello senza toccare i file LookML originali. Ad esempio, se esiste un progetto in cui le viste e le esplorazioni vengono generate da tabelle del database e archiviate in un file LookML denominato faa_basic.lkml, puoi creare un file faa_analysis.lkml in cui utilizzare i perfezionamenti per aggiungere analisi. Ecco un esempio di una nuova tabella derivata denominata distance_stats che dispone di un'analisi della distanza. Questo esempio mostra un perfezionamento dell'esplorazione flights esistente dal file faa_basic.lkml che unisce la tabella derivata distance_stats nell'esplorazione flights. Inoltre, nella parte inferiore dell'esempio, la vista flights esistente viene perfezionata per aggiungere nuovi campi dall'analisi:

include: "faa_basic.lkml"

explore: +flights {
  join: distance_stats {
    relationship: one_to_one
    type: cross
  }
}

view: distance_stats {
  derived_table: {
    explore_source: flights {
      bind_all_filters: yes
      column: distance_avg {field:flights.distance_avg}
      column: distance_stddev {field:flights.distance_stddev}
    }
  }
  dimension: avg {
    type:number
    sql: CAST(${TABLE}.distance_avg as INT64) ;;
  }
  dimension: stddev {
    type:number
    sql: CAST(${TABLE}.distance_stddev as INT64) ;;
  }
}
view: +flights {
  measure: distance_avg {
    type: average
    sql: ${distance} ;;
  }
  measure: distance_stddev {
    type: number
    sql: STDDEV(${distance}) ;;
  }
  dimension: distance_tiered2 {
    type: tier
    sql: ${distance} ;;
    tiers: [500,1300]
  }
}

Utilizzo dei perfezionamenti per aggiungere livelli al modello

Un altro caso d'uso interessante per il perfezionamento è l'aggiunta di livelli al progetto. Puoi creare più file di perfezionamento e includerli in modo strategico per aggiungere livelli.

Ad esempio, nel progetto FAA è presente un file faa_raw.lkml che contiene tutte le viste e le esplorazioni generate dalle tabelle del database. Questo file contiene una visualizzazione per ogni tabella del database, ciascuna con una dimensione per ogni colonna del database.

Oltre al file non elaborato, puoi creare un file faa_basic.lkml per aggiungere un nuovo livello con perfezionamenti di base, come l'aggiunta di unioni alle esplorazioni o l'aggiunta di misure alle visualizzazioni, in questo modo:

include: "faa_raw.lkml"

explore: +flights {
  join: carriers {
    sql_on: ${flights.carrier} = ${carriers.name} ;;
  }
}

view: +flights {
  measure: total_seats {
    type: sum
    sql: ${aircraft_models.seats} ;;
  }
}

Dopodiché puoi aggiungere un file faa_analysis.layer.lkml per aggiungere un nuovo livello con analisi (consulta la sottosezione Utilizzare i perfezionamenti per aggiungere analisi per un esempio di file di analisi).

Da qui, devi solo includere tutti i file di perfezionamento nel file del modello. Puoi utilizzare il file del modello anche per aggiungere perfezionamenti in modo da indirizzare le viste alle tabelle di database che vuoi fare riferimento:

connection: "publicdata_standard_sql"

include: "faa_raw.lkml"
include: "faa_basic.lkml"
include: "faa_analysis.lkml"

view: +flights {
  sql_table_name: lookerdata.faa.flights;;
}
view: +airports {
  sql_table_name: lookerdata.faa.airports;;
}
view: +aircraft {
  sql_table_name: lookerdata.faa.aircraft;;
}
view: +aircraft_models{
  sql_table_name: lookerdata.faa.aircraft_models;;
}
view: +carriers {
  sql_table_name: lookerdata.faa.carriers;;
}

Puoi duplicare questo file del modello e puntare a tabelle di database diverse oppure puoi includere diversi file di perfezionamento che hai creato per definire altri livelli che vuoi inserire nel modello.

Utilizzo dei perfezionamenti per le PDT

Come descritto nella sezione Perfezionamenti rispetto alle estensioni di questa pagina, un'estensione crea una nuova copia dell'oggetto che viene esteso. Nel caso delle tabelle derivate permanenti (PDT), non devi utilizzare le estensioni, in quanto ogni estensione di una PDT crea una nuova copia della tabella nel database.

Tuttavia, puoi aggiungere perfezionamenti alla vista PDT, poiché i perfezionamenti non creano una nuova copia dell'oggetto in fase di perfezionamento.

Utilizzo dei metadati per vedere i perfezionamenti di un oggetto

Puoi fare clic su un parametro explore o view nell'IDE di Looker e utilizzare il riquadro dei metadati per visualizzare i perfezionamenti dell'oggetto. Per informazioni, consulta la pagina della documentazione Metadati per gli oggetti LookML.

Aspetti da considerare

Progetti con localizzazione

Quando perfezioni un oggetto, tieni presente che le regole di localizzazione si applicano anche ai perfezionamenti. Se perfezioni un oggetto e definisci nuove etichette o descrizioni, devi fornire le definizioni della localizzazione nei file di stringhe delle impostazioni internazionali del progetto. Per ulteriori informazioni, consulta la pagina della documentazione Localizzazione del modello LookML.