view: facts_prod_dim_transactiontype { sql_table_name: facts.prod.dim_transactiontype ;; dimension: transaction_type_id { type: number sql: ${TABLE}.transactiontypeid ;; primary_key: yes #hidden: yes } dimension: abbreviation { type: string sql: ${TABLE}.transactiontypeabbr ;; } dimension: description { type: string sql: ${TABLE}.transactiontypedesc ;; } dimension: transaction_type_group { hidden: yes type: string case: { when: { label: "Album Downloads" sql: ${TABLE}.transactiontypeid IN (6, 23) ;; } when: { label: "Audio Streaming" sql: ${TABLE}.transactiontypeid IN (1, 10, 20, 29, 31, 37, 48) ;; } when: { label: "Non-Interactive Streaming" sql: ${TABLE}.transactiontypeid IN (27, 39) ;; } when: { label: "Performance Rights" sql: ${TABLE}.transactiontypeid IN (3, 58) ;; } when: { label: "Physical" sql: ${TABLE}.transactiontypeid IN (40, 49, 50) ;; } when: { label: "Publishing" sql: ${TABLE}.transactiontypeid IN (53, 54, 55, 56) ;; } when: { label: "Sync" sql: ${TABLE}.transactiontypeid IN (2) ;; } when: { label: "Track Downloads" sql: ${TABLE}.transactiontypeid IN (4, 7, 8, 12, 13, 19, 22, 26) ;; } when: { label: "UGC Matches" sql: ${TABLE}.transactiontypeid IN (33, 34, 35) ;; } when: { label: "Video Streaming" sql: ${TABLE}.transactiontypeid IN (9, 15, 16, 17, 32, 38) ;; } else: "Other" } } }