LookML view · dating-platform
The propositions view: date proposals with response counts built in a derived table
At a glance
Does Builds one row per proposition from propositions, joined to response counts per message type and to the template name. Exposes status, category, city, dates and response measures. Trust: Source-defined
Why Measures how date proposals perform: how many responses each gets, of which type (intrigue, generic, private date, date response), and by template. Trust: InferredGrain One row per proposition, grouped by id in the derived table. id is the primary key. Trust: Source-defined
Source dating_platform/proposals.view.lookml 168 lines
Source: proposals.view.lookml L1-10
Shape Trust: Source-defined
Every field as declared, with the dashboard tiles that read it. Computed from the source; nothing here is edited.
Derived table: persists for 1 hour. Reads warehouse tables directly.
Relationships Trust: Source-defined
Relationships of propositions
This Block No relationship declared
Text version propositions is the base view of propositions: base view propositions is joined into date_ideas: as propositions, on propositions.proposition_templa... (no relationship declared)
Filters and exclusions that change meaning
Responses only count sent messages from non-spammers Trust: Source-defined
The CTE keeps messages with state = 'sent' whose sender has spammer = false. Responses from spammers or unsent drafts never reach any measure.
Source: proposals.view.lookml L4-14
Published by default Trust: Source-defined
In the enterprise model the propositions explore applies status = published unless the query filters on status .
Source: enterprise.model.lookml L39-41
Worth noticing
Measures named count are averages Trust: Source-defined
response_count is AVG(response_num) typed as number, and date_response_count is type: avg. Both read as counts in the field picker.
Source: proposals.view.lookml L134-141
Template names are computed twice Trust: Source-defined
The derived table builds template_name with COALESCE(PT.name, INITCAP(REPLACE(PT.slug, '-', ' '))), the same rule as proposition_templates.name . A change to one will not reach the other.
Source: proposals.view.lookml L46-51
What can change the answer 3
!!
Blocker: response_rate is a dimension built on measuresTrust: Source-defined
response_rate is declared as a dimension, but its SQL divides the measures response_count and count . Aggregates inside a grouped dimension are not valid SQL.
What goes wrong: Selecting response rate makes the query fail, so the only rate in this view cannot be used.
Source: proposals.view.lookml L146-149
!
Caution: Summed responses fan out over the messages joinTrust: Inferred
intrigue_response_count sums a per-proposition column. When message_response_type or count_intrigue_responses pulls in the messages join, each proposition repeats once per message.
What goes wrong: Intrigue responses are multiplied by the number of messages on each proposition.
Read the guide: Join fanout
Source: proposals.view.lookml L142-155
i
Note: delivery_status is typed yesnoTrust: Inferred
delivery_status is a yes/no field. If the column holds more than two delivery states, everything that is not true reads as No.
Source: proposals.view.lookml L102-104
Parser checks 1 Trust: Source-defined
Mechanical findings from parsing the LookML. They are facts about the files. The cards above explain which ones matter.
Show all 1 check
dimension-uses-measure 1 proposals.view.lookml:146 Dimension propositions.response_rate references a measure.
Related
Guides built on this file Related source files
Source file
messages
Reads one row per message with sender, recipient, thread, proposition, type, state and reply flags, plus a ...
view 3 warnings
Source file
proposition_templates
Reads proposition templates: category, location, featured and official flags, created, expires and deleted ...
view 3 warnings
Source file
enterprise
Declares six explores on project_connection: churn, transactions, messages, propositions, date_ideas and te...
model 4 warnings
Source model