Матричный фильтр QBO3 не сортируется должным образом

У меня есть две матрицы QBO:

  1. Матрица А имеет 1 вход и 1 выход,
  2. Матрица B имеет 3 входа и 1 выход

Когда я перехожу к Матрице А, я вижу что-то вроде этого:

| Client | Price  | 
| ------ | ------ |
|        | 120.00 |
| A,B,C  | 100.00 |
| D,E    |  90.00 |
| F      |  95.00 |

когда я ввожу E в фильтр клиента, матрица сортируется, как я и ожидал, с первой строкой 'valid', а остальные вычеркнуты:

| Client | Price  | 
| ------ | ------ |
| D,E    |  90.00 |
|        | 120.00 |
| A,B,C  | 100.00 |
| F      |  95.00 |

Матрица Б выглядит так:

| Client    | State | Investor | Price  |
| --------- | ----- | -------- | ------ |
|           | CA    | NOT(2,3) | 100.00 |
| San Diego | CA    |          | 110.00 |
|           | FL    |          |  95.00 |
| Miami     | FL    | 3        | 105.00 |

Когда я ввожу "Miami" в фильтр столбцов клиента, сортировка выглядит так, что все столбцы вычеркнуты:

| Client    | State | Investor | Price  |
| --------- | ----- | -------- | ------ |
|           | CA    | NOT(2,3) | 100.00 |
|           | FL    |          | 95.00  |
| San Diego | CA    |          | 110.00 |
| Miami     | FL    | 3        | 105.00 |

Почему я не вижу скандал с Майами наверху?

1 ответ

Во втором примере строка с Miami также требует State = 'FL', поэтому строка не совпадает. Чтобы строка Майами соответствовала, вы должны ввести City = 'Miami' и State = 'FL'.

Когда Матрица оценивается, она вычисляет следующее:

  • для каждой строки матрицы
    • для каждого входа матрицы
      • если строка имеет значение, равное вашему вводу, это "совпадение"
      • если строка имеет значение и вы не указали ввод, это "несоответствие"
      • если строка имеет значение NOT(значение) и вы не указали ввод, это "совпадение"
  • Сортировать по
    • снижение веса,
    • затем по количеству несовпадений,
    • затем по количеству совпадений

Для выхода матрицы B:

| Client    | State | Investor | Price  |
| --------- | ----- | -------- | ------ |
|           | CA    | NOT(2,3) | 100.00 | Mismatch = 1, Match=1
|           | FL    |          | 95.00  | Mismatch = 1, Match=0
| San Diego | CA    |          | 110.00 | Mismatch = 2, Match=1
| Miami     | FL    | 3        | 105.00 | Mismatch = 2, Match=1

Короче:

  • Линия "Майами" требует 3 входа для сравнения, а 2 - нет, поэтому она внизу
  • первая строка (CA) фактически соответствует вашему "пустому" вводу, потому что она просто заботится о том, чтобы инвестор НЕ был инвестором 2 или 3 - ни один инвестор не соответствует этому требованию!
Другие вопросы по тегам