Memaksimalkan penggunaan kembali kode dengan DRY LookML: Menentukan string satu kali untuk digunakan di seluruh project LookML Anda

Anda dapat menggunakan parameter constant LookML dalam file manifes project untuk menentukan string yang dapat digunakan di seluruh project. Konstanta LookML dapat berguna saat Anda perlu menentukan string tertentu — seperti angka, nama, atau pemformatan HTML untuk nilai kolom — dan menggunakan kembali nilai tersebut di seluruh project.

Halaman ini menyertakan contoh berikut tentang penggunaan konstanta LookML untuk menentukan dan mempertahankan nilai string yang dapat digunakan kembali di satu tempat:

Produk

Prasyarat

Contoh: Menggunakan string yang sama di label beberapa Jelajah

Misalnya, Anda ingin membuat dua Jelajah, berlabel Pengguna San Francisco dan Pesanan San Francisco di UI, tetapi Anda tidak ingin mengetik teks untuk setiap label secara manual.

Untuk melakukannya, Anda dapat menentukan place_name konstan dengan nilai "San Francisco" di file manifes project untuk project Anda:

constant: place_name {
  value: "San Francisco"
}

Konstanta ini kemudian dapat direferensikan di bagian mana pun dari project Anda tempat string diterima, menggunakan sintaksis @{place_name}. Dalam contoh ini, Anda dapat menentukan Jelajah users dan orders, dengan menentukan "@{place_name} Users" dan "@{place_name} Orders" sebagai nilai untuk parameter label, seperti dalam contoh berikut:


explore: users {
  label: "@{place_name} Users"
}

explore: orders {
  label: "@{place_name} Orders"
}

Dalam contoh ini, Looker menampilkan Pengguna San Francisco dan Pesanan San Francisco di menu Jelajahi dan di judul Jelajahi, bukan label Pengguna dan Pesanan default.

Misalkan Anda ingin memperbarui semua referensi ke San Francisco menjadi Bay Area.

Daripada harus memperbarui setiap referensi secara manual, Anda hanya perlu melakukan satu pembaruan pada konstanta place_name dalam file manifes untuk project Anda:

constant: place_name {
  value: "Bay Area"
}

Karena telah menentukan konstanta place_name, Anda tidak perlu mengubah San Francisco menjadi Bay Area secara manual di beberapa tempat. Referensi ke San Francisco dengan konstanta place_name akan diganti dengan Bay Area, sehingga Looker akan menampilkan Bay Area Users dan Bay Area Orders di menu Jelajahi dan di judul Jelajahi.

Contoh: Menerapkan format yang sama ke nilai negatif untuk beberapa kolom

Misalkan Anda ingin nilai data negatif ditampilkan dalam warna merah dan dalam tanda kurung di mana pun nilai tersebut muncul dalam diagram atau kueri.

Dengan menetapkan format ini sebagai nilai untuk konstanta LookML, Anda dapat menentukan format hanya sekali menggunakan Variabel Liquid dan HTML. Kemudian, Anda dapat mereferensikan konstanta setiap kali ingin menerapkan pemformatan tersebut ke kolom.

Misalnya, Anda dapat membuat konstanta bernama negative_format yang dapat digunakan untuk menerapkan format ini ke kolom:


constant: negative_format {
  value: "{% if value < 0 %}
            <p style='color:red;'>({{rendered_value}})</p>
          {% else %}
            {{rendered_value}}
          {% endif %}"
}

Kode ini membuat negative_format konstan, yang menentukan bahwa nilai data negatif harus memiliki font merah dan diapit oleh tanda kurung. Kemudian, Anda dapat menerapkan pemformatan ini ke dimensi dan ukuran dalam set data menggunakan parameter html.

Misalnya, Anda dapat membuat pengukuran Total Amount dari type: sum dan menentukan @{negative_format} sebagai nilai untuk parameter html:


measure: total_amount {
  type: sum
  value_format_name: usd
  sql: ${amount} ;;
  html: @{negative_format} ;;
}

Dalam tabel, nilai negatif untuk ukuran Total Amount akan diformat seperti yang ditentukan dalam definisi konstanta negative_format, dengan font merah dan diapit tanda kurung.

Jika ingin menerapkan format yang sama ke nilai negatif untuk kolom lain, Anda dapat mereferensikan konstanta negative_format dalam parameter html untuk kolom tersebut.