Skip to the page
DataMosaic

Docs · Concepts

Drilldowns

More about any row of a Check, matching or not — one query, run with that row's values when somebody presses its button.

A Check says whether two systems agree about a line. It does not say what the line is: the item's description, its pack size, the store's address, who last touched the document. That lives in some other table, and the question comes up on matching rows as often as on differing ones.

A drilldown answers it. It is one query, bound to the row, run when somebody presses the ⓘ at the start of a row:

Shows more about any row of the result, matching or not: press the ⓘ at the start of a row and this query runs with that row's values in it.

#A drilldown and an investigation

They are easy to mix up, and they answer different questions.

DrilldownInvestigation
AsksWhat is this row?Why does this row disagree?
Offered onEvery row, matching or notRows that disagree
Made ofOne querySteps, questions, branches, agents, a conclusion
RunsWhen somebody presses the row's button, for that rowOn demand, or with the Check
GivesThe rows the query returnedA verdict on the row

#Making one

Drilldowns are in the Check's tree, under Drilldowns. Each one asks for:

FieldNotes
Drilldown nameShown on the button: More about this row: Item master
DescriptionA line for whoever presses the button, shown in the row's window: what these specs are and where they come from
QueryOne of this check's data sources, or one from the library

The row's values reach the query the way they reach an investigation's step: as {{row.…}} tokens, one per key and one per carried column, and, through the bindings, under the names the query already uses. A query that says WHERE item_id = {{sku}} is bound sku → row.item_id, and needs no rewriting.

A value from a row goes into SQL as data, never as SQL, so a row cannot change what the statement does.

Try it runs the drilldown on a row of the Check's last run, matching or not, before anyone else presses the button. Run the Check once first.

A Check can have several drilldowns. Each gets its own entry on the row's button, in the order they are listed.

#Reading the answer

The row's window shows what came back:

  • One row reads as the row's specs: a name beside each value.
  • Several rows read as a table, which says how many it shows of how many when there are more.
  • Nothing reads Nothing came back for this row.

While it runs, the window says so, with a moving bar and the seconds. Stop drops the request, and the server cancels the query; Run again asks once more.

What was sent shows the statement as it went to the system, with the row's values in it. It is open on its own when nothing came back, since a query filled from a row has three places to go wrong and a driver's error names none of them.

#Who can do what

Making, changing and deleting a drilldown is an editor's. Pressing the button is a viewer's: anyone who can read the Check can ask about one of its rows.