Как избежать CIRCULAR REFERENCE в TABLEAU, используя LOOKUP и PREVIOUS_VALUE? - PullRequest
0 голосов
/ 15 октября 2019

Здравствуйте!

В Excel у меня есть 2 столбца C и D с формулами для определенной цели. В качестве примера у меня есть ячейки C12 и D12 в этих 2 столбцах, чтобы показать формулы.

C12 = 0.001855 *  B12/E12  + 0.998145 * (C11+D11)
D12 = 0.981119 * (C12-C11) + 0.018881 * D11

Допустим, переменная C-столбца - "Running Base", а переменная D-столбца - "Рост". "и строки месяцы. И скажем, я хочу скопировать эти формулы в таблицу Tableau с месяцами в строках.

Вы видите, что C12 использует как собственное предыдущее значение C11 (задержка -1 в C), так и отставание -1 вD (D11). Я могу найти C11 в формуле в TABLEAU, используя функцию PREVIOUS_VALUE и предыдущее значение D с функцией LOOKUP ([D], - 1) (B12 и E12 не важны для обсуждения).

Затем D12 также использует свое собственное предыдущее значение D11, а также C12 и его предыдущее значение C11. Конечно, мы можем делать подобные упражнения TABLEAU здесь, но вы уже чувствуете ошибку CIRCULAR REFERENCE; -).

Таким образом, нет фактической CIRCULAR REFERENCE, и она работает в Excel. Но я понимаю, почему TABLEAU дает один, и я уверен, что должен быть обходной путь для этого.

Может кто-нибудь помочь, пожалуйста ???

Спасибо очень заранее !!

Герман Ментинк

1 Ответ

0 голосов
/ 15 октября 2019

Один из способов решить эту проблему - отбросить вычисление в Details части Знаки , а затем ссылаться на строки этого поля в расчете, который не создает циклическую ссылку, в противном случае вы правы в таблице. создаст ошибку циклической ссылки, поскольку поведение отличается от Excel.

Правка ----------------------------------------------------------------

Это не просто подсказка, которую вы можете использовать. в расчетных областях, несколько месяцев назад я реализовал то же самое в своем отчете.

Расчет создает 4 строки в моем отчете, и мне нужно сделать (1-я строка + 4-я строка) в том же столбце, поэтому я отбросил расчет в Detail на Marks и сослался на другой вычисленныйполе. Просто проверьте приведенный ниже пример кода:

LOOKUP(ATTR([Values]),FIRST()+4) + LOOKUP(ATTR([Values]),FIRST()+1)

Values - это вычисляемое поле, теперь вычисляемое выше, ссылается на Значения и выбирает строки 2 и 5, которые я не могу использовать непосредственно в столбце Значения, если я опускаюValues в Text в марках

enter image description here

В приведенном выше изображении значения в detail представляют собой исходный расчет и тот, который я использовал в text относится к значениям и отображению.

...