Our filters engine is powerful and will cater to even complicated workloads, but it is important to understand the way it functions to get the maximum from it.

At the core there are two types of filters:

  • Positive (Has, Contains, Equals, Greater, Smaller): Companies that match these filters are included in the positive result set.
  • Negative (Has Not, Does not contain): Companies that match these filters are removed from the positive result set to create the final result set.

Filters are trivial in simple use cases such as a single round of questionnaires (e.g. apply to an innovation challenge with a single questionnaire). Once multiple rounds are involved DealMatrix aggregates the data from each round into a company, so some filtering constructs have non-obvious side effects.

Let's take a look at some common examples:

Consider this scenario for all the following filter use cases: Startup Company ACME submits to a round 1 questionnaire, then gets invited to a round 2 questionnaire. 

Filter 1
Show all companies that have submitted to Round 2.

Your first instinct might be to filter by 

  • "Submitted" Is "Yes"
  • "Tags" contains "Round2" (or whatever tag you are using for your second round)

The submitted attribute is treated as any other attribute and ACME has received a Submitted YES for round 1 and a Submitted NO for round 2. The filter says return only Submitted YES (which ACME has for round 2) and companies that have a Tag Round2 (which ACME has since it has started the questionnaire for round 2).

The correct filter would be:

  • "Submitted" Is Not "No"
  • "Tags" contains "Round2"

ACME has at attribute No because the round 2 questionnaire is not submitted yet. Therefore it will correctly be filtered out.

Filter 2:
Show all companies that have started the round 2 questionnaire but not finished. 

Apply the following filter:

  • "Submitted" Is "No"
  • "Tags" contains "Round2"

Non linear rounds:
Let's assume you invite ACME both to round 2 and round 3. They start round 2 and 3 without submitting any of them. They will have two Submitted NO attributes for both round 2 and round 3. (And in this scenario also a Submitted YES for round 1.)

More often than not this is a error in the workflow which can be managed by using Round2-Invited tags when inviting them to new rounds.


Did this answer your question?