DRY LookML로 코드 재사용성 극대화: LookML 프로젝트 전체에서 사용할 문자열 한 번 정의

프로젝트의 매니페스트 파일 내에서 LookML constant 매개변수를 사용하여 프로젝트 전체에서 사용할 문자열을 정의할 수 있습니다. LookML 상수는 필드 값에 대한 숫자, 이름 또는 HTML 형식 지정과 같은 특정 문자열을 정의하고 프로젝트 전반에서 해당 값을 재사용해야 할 때 유용할 수 있습니다.

이 페이지에는 다음과 같이 LookML 상수를 사용하여 한 곳에서 재사용 가능한 문자열 값을 정의하고 유지하는 예시가 포함되어 있습니다.

재료

기본 요건

예시: 여러 Explore 라벨에 동일한 문자열 사용

UI에서 샌프란시스코 사용자샌프란시스코 주문이라는 라벨이 지정된 두 개의 Explore를 만들고 싶지만 각 라벨에 대해 텍스트를 수동으로 입력하지 않으려는 경우를 가정해 보겠습니다.

이렇게 하려면 프로젝트의 프로젝트 매니페스트 파일에서 "San Francisco" 값으로 상수 place_name을 정의하면 됩니다.

constant: place_name {
  value: "San Francisco"
}

그런 다음 @{place_name} 구문을 사용하여 문자열이 허용되는 프로젝트의 모든 부분에서 이 상수를 참조할 수 있습니다. 이 예시에서는 다음 예시와 같이 usersorders Explore를 정의하고 "@{place_name} Users""@{place_name} Orders"label 매개변수의 값으로 지정할 수 있습니다.


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

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

이 예시에서 Looker는 Explore 메뉴와 Explore의 제목에 기본 사용자주문 라벨이 아닌 샌프란시스코 사용자샌프란시스코 주문을 표시합니다.

샌프란시스코에 대한 모든 참조를 베이 지역으로 업데이트한다고 가정해 보겠습니다.

각 참조를 수동으로 업데이트하는 대신 프로젝트의 매니페스트 파일에서 place_name 상수를 한 번만 업데이트하면 됩니다.

constant: place_name {
  value: "Bay Area"
}

place_name 상수를 정의했으므로 여러 곳에서 샌프란시스코베이 지역으로 수동으로 변경할 필요가 없습니다. place_name 상수가 있는 샌프란시스코에 대한 참조가 베이 지역으로 대체되므로 Looker는 Explore 메뉴 및 Explore 제목에 베이 지역 사용자베이 지역 주문을 표시합니다.

예시: 여러 필드의 음수 값에 동일한 형식 지정 적용

음수 데이터 값이 보고서에 나타날 때마다 빨간색으로 표시하고 괄호 안에 표시하려 한다고 가정합니다.

이 형식 지정을 LookML 상수의 값으로 설정하면 Liquid 변수HTML을 사용하여 한 번만 형식 지정할 수 있습니다. 그런 다음 필드에 형식 지정을 적용할 때마다 상수를 참조할 수 있습니다.

예를 들어 필드에 이 형식을 적용하는 데 사용할 수 있는 negative_format이라는 상수를 만들 수 있습니다.


constant: negative_format {
  value: "{% dynamic if value < 0 %}
            <p style='color:red;'>({{rendered_value}})</p>
          {% dynamic else %}
            {{rendered_value}}
          {% dynamic 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 상수 정의에 지정된 대로 빨간색 글꼴로 표시되고 괄호로 묶여 있습니다.

다른 필드의 음수 값에 동일한 형식을 적용하려면 해당 필드의 html 매개변수에서 negative_format 상수를 참조하면 됩니다.