קבוע

Usage

constant: constant_name {
  value: "string"
  export: none | override_required | override_optional
}
היררכיה
constant
ערך ברירת המחדל
ללא

מקבל
  • value תת-פרמטר, שמקבל מחרוזת שמציינת את הערך של הקבוע
  • פרמטר משנה export, שמציין אם צריך לבטל את ברירת המחדל של הקבוע כשמשתמשים בו בייבוא פרויקטים

הגדרה

הפרמטר constant מגדיר קבוע LookML, ומאפשר לכם לציין ערך שאפשר להשתמש בו שוב בכל פרויקט. אפשר להפנות לקבועים בכל מקום במודל שבו מתקבלים מחרוזות, ועם הפרמטרים model ו-explore של רכיב לוח בקרה של LookML, וכך לצמצם את החזרות בקוד LookML.

צריך להגדיר קבועים בקובץ המניפסט של הפרויקט. אחר כך אפשר להשתמש בקבועים בכל הפרויקט באמצעות התחביר @{constant_name}.

אפשר להשתמש בתת-הפרמטר export של constant כדי לציין אם מפתחים צריכים לשנות את הערך של קבוע כשמייבאים קבצים שמפנים אליו לפרויקט אחר.

export

אפשר להשתמש בתת-פרמטר export של constant כדי לקבוע איך אפשר להשתמש בקבוע כשמייבאים קבצים שמפנים לקבוע הזה לפרויקטים אחרים.

כברירת מחדל, בקבצים מיובאים שמפנים לקבוע, נעשה שימוש בערך שצוין בקובץ המניפסט של הפרויקט המיובא בפרויקט המייבא. הפרמטר export מציין אם המפתחים צריכים לבטל את הערך של קבוע על ידי מתן ערך חדש לקבוע הזה לשימוש בייבוא פרויקטים. הערכים האפשריים של הפרמטר export הם:

  • ‫none: ערך ברירת המחדל של export. אי אפשר לשנות את הערך של הקבוע בפרויקט המיובא. הפרויקט המייבא משתמש בערך הקבוע שצוין בקובץ המניפסט של הפרויקט המיובא.
  • ‫override_optional: אפשר לבטל את הערך של הקבוע בפרויקט הייבוא. אם לא מציינים ערך בקובץ המניפסט של הפרויקט המיובא, המערכת משתמשת בערך המקורי מהפרויקט המיובא.
  • ‫override_required: הפרויקט המייבא צריך לבטל את הערך הקבוע שצוין במקור בקובץ המניפסט של הפרויקט המיובא. אם לא מספקים ערך קבוע חדש בפרויקט הייבוא, Looker יציג שגיאה.

קבועים זמינים רק לקבצים מהפרויקט שבו הם הוגדרו במקור. לכן, אפשר להשתמש בקבועים שמוגדרים בפרויקט שייבאתם את הקבצים שלו רק בקבצים המיובאים, ולא בקבצים שמוגדרים בפרויקט שממנו מתבצע הייבוא.

אם רוצים להשתמש בקבוע בקבצים של הפרויקט שמייבאים, צריך להגדיר קבוע חדש בקובץ המניפסט של הפרויקט שמייבאים. קבוע שמוגדר בצורה הזו יהיה זמין רק לקבצים שמוגדרים בפרויקט שממנו מייבאים.

כשמייבאים קבצים שמפנים לקבוע לפרויקט אחר, אפשר להשתמש בתת-הפרמטר override_constant של local_dependency או remote_dependency בקובץ המניפסט של הפרויקט המייבא כדי לספק ערך חדש לקבוע שהערך export שלו מוגדר כ-override_optional או כ-override_required.

מידע נוסף ודוגמה להחלפת קבועים בייבוא פרויקטים זמינים בדף התיעוד בנושא ייבוא קבצים מפרויקטים אחרים.

דוגמאות

ריכזנו כאן כמה דוגמאות לשימוש בפרמטר constant כדי להגדיר ערכים שאפשר להשתמש בהם בכל הפרויקט.

תיוג של ניתוחים באמצעות הפרמטר constant

נניח שרוצים ליצור שני ניתוחים באמצעות התכונה 'ניתוח נתונים', עם התוויות San Francisco Users ו-San Francisco Orders בממשק המשתמש. כדי לעשות את זה, אפשר להגדיר קבוע city עם הערך "San Francisco" בקובץ manifest.lkml של הפרויקט:

constant: city {
  value: "San Francisco"
}

אחר כך אפשר להפנות לקבוע הזה בכל חלק בפרויקט שבו מתקבל מחרוזת, באמצעות התחביר @{city}. בדוגמה הזו, אפשר להגדיר את הניתוחים users ו-orders, ולציין את הערכים "@{city} Users" ו-"@{city} Orders" לפרמטר label, כמו בדוגמה הבאה:


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

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

בדוגמה הזו, Looker מציג את האפשרויות San Francisco Users ו-San Francisco Orders בתפריט 'ניתוח נתונים' ובכותרות של ניתוחי הנתונים, במקום את התוויות שמוגדרות כברירת מחדל Users ו-Orders.

שימוש בפרמטר sql_table_name עם קבועים

נניח שרוצים ליצור כמה תצוגות על סמך טבלאות בסכימה 02349_sfo. כדי להימנע מהצורך לציין את הערך 02349_sfo כמה פעמים, יוצרים קבוע בשם schema בקובץ manifest.lkml של הפרויקט, באופן הבא:


constant: schema {
  value: "02349_sfo"
}

לאחר מכן אפשר ליצור תצוגות מבוססות סכימה 02349_sfo על ידי ציון @{schema}.view_name כערך של הפרמטר sql_table_name:


view: users {
  sql_table_name: @{schema}.users ;;
}

כך נוצרת תצוגה בשם Users שמבוססת על הטבלה users מהסכימה 02349_sfo.

שימוש במשתני Liquid וב-HTML עם קבועים

נניח שאתם רוצים שערכי נתונים שליליים יוצגו בתוך סוגריים ובגופן אדום. אם מגדירים את העיצוב הזה כערך של קבוע LookML, אפשר לציין את העיצוב רק פעם אחת באמצעות משתני Liquid ו-HTML. אחר כך, תוכלו להפנות לקבוע בכל פעם שתרצו להחיל את העיצוב הזה על שדה.

לדוגמה, אפשר ליצור קבוע negative_format כדי להחיל את העיצוב הזה על שדה:


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

הפעולה הזו יוצרת קבוע negative_format שמציין שערכי נתונים שליליים צריכים להיות מוצגים בגופן אדום ומוקפים בסוגריים. לאחר מכן תוכלו להחיל את הפורמט הזה על מאפיינים ומדדים במערך הנתונים באמצעות הפרמטר html.

לדוגמה, אפשר ליצור את המדד סכום כולל של type: sum ולציין את הערך @{negative_format} לפרמטר html:


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

בטבלה, ערכים שליליים במדד הסכום הכולל יעוצבו כמו שצוין בהגדרת הקבוע negative_format, עם גופן אדום וסוגריים.

שימוש בקבועים בלוחות בקרה של LookML

כשמגדירים רכיב בלוח הבקרה במרכז שליטה של LookML, אפשר להשתמש בקבועים של LookML כדי להגדיר את המודל ואת ה-Explore שעליהם מבוסס הרכיב.

לדוגמה, נניח שהגדרתם את הקבועים model_name ו-explore_name בקובץ manifest.lkml של הפרויקט:


constant: model_name {
  value: "thelook"
}

constant: explore_name {
  value: "orders"
}

בקובץ של לוח הבקרה, אפשר להגדיר את הערך של model ל-"@{model_name}" ואת הערך של explore ל-"@{explore_name}" לכל רכיבי לוח הבקרה שרוצים שיתבססו על המודל thelook ועל ה-Explore orders.

לדוגמה, נניח שאתם עורכים את קוד ה-LookML של רכיב תרשים עמודות אנכי. בקובץ לוח הבקרה, אפשר לציין את הערכים של הפרמטרים model ו-explore באופן הבא:


- dashboard: dashboard_name
  title: "dashboard title"
  layout: newspaper
  elements:
  - title: Element Title
    name: element_name
    model: "@{model_name}"
    explore: "@{explore_name}"
    type: looker_column

שימוש בקבועים בהוראות לסוכן לוח הבקרה [תצוגה מקדימה]

אפשר גם להשתמש בקבועים של LookML בפרמטר instructions של סוכן למרכז שליטה של LookML כדי לשתף כללים או הנחיות עסקיות סטנדרטיים בין כמה סוכנים למרכזי שליטה.

לדוגמה, מגדירים קבוע בקובץ manifest.lkml:

constant: FISCAL_YEAR_RULE {
  value: "Always filter all requests by the current fiscal year unless specified otherwise."
}

אחר כך אפשר להפנות לקבוע בפרמטר instructions של הגדרת agent:

agent: sales_dashboard_agent {
  instructions: "Focus on revenue metrics. @{FISCAL_YEAR_RULE}"
  is_dashboard_agent: yes
}

חשוב לדעת

הפניה לקבועים בהגדרה של קבוע

כשמגדירים קבוע, אפשר להפנות לקבועים אחרים שמוגדרים בקובץ המניפסט של הפרויקט. נניח שכבר הגדרתם קבוע city:


constant: city {
  value: "San Francisco"
}

אחר כך אפשר להגדיר קבוע state שמפנה לקבוע city:


constant: city_state {
  value: "@{city}, California"
}

הקבוע state יומר למחרוזת 'San Francisco, California'.

הוספת תו בריחה לתחביר של קבוע

אם רוצים לכתוב מחרוזת שנראית כמו תחביר של קבוע, אבל לא רוצים שהמחרוזת הזו תחושב כקבוע, אפשר להשתמש בתו הבריחה של לוכסן הפוך \ אחרי התו @ כדי לסמן בתו בריחה את התחביר של הקבוע. לדוגמה:

```none

dimension: id { type: string label: "@{id}" sql: ${TABLE}.id }




In this example, the [`label` parameter](/looker/docs/2616/reference/param-explore-label) displays the string **@{id}** as the label for the `id` dimension, rather than evaluating the `id` constant and outputting its value.

Constant references won't be evaluated if the brackets are not closed, in which case it is not necessary to escape constant syntax. Thus, `@{id` in the following example wouldn't be evaluated as a constant.


```none

dimension: id {
  type: string
  label: "@{id"
  sql: ${TABLE}.id
}