Использование рассчитанной строки (Qlik Sense)

Автор LoryMax, 10 ноября 2016, 02:55:21

« назад - далее »

LoryMax

Добрый день!

Использую QlikSense 3.1. Как можно сразу использовать рассчитанное поле при загрузке:


load a
       ,c+d as b
       ,if(b>a, 1,0)
resident T1;

Возможно ли вообще так использовать b?
Дело в том, что в реальности вместо "c+d" у меня идет достаточно много вложенных if. При добавлении еще одного, у меня все вкладки сенса становятся белыми.

admin

Привет.
Для того, использовать b в этой же загрузке для формирования другого поля не выйдет. Его еще нет к этому моменту.
Если данные не слишком большие, можно использовать предварительную загрузку. Но аккуратно.


load if(b>a, 1,0);
load a
       ,c+d as b
resident T1;

LoryMax

Спасибо.

А по поводу белых вкладок - ни у кого не появляется данная проблема?
Если какие то ограничения по количеству вложенных if в расчетах таблицы?

admin


LoryMax


admin

А сколько комбинаций сверяемых значений?
Нельзя ли будет использовать таблицу маппинга?

LoryMax

Таблицу маппинга не получится использовать.
Может дело и не в if. но пока не понял истинную причину.
Я рассчитываю денежные остатки в закупочных ценах по средневзвешенной, оперирую количественными остатками и ценами товародвижения. Стараюсь исключить случаи с неопределенной себестоимостью.
Сейчас нужно прописать условие, если себестоимость увеличивается в n-раз (что является аномалией в некоторых условиях), то берем себестоимость предыдущего дня.

LoryMax

#7
закоментировал все разделы, кроме того, где эти if. Код прописал какой мне нужен - ничего не падает (запускаю загрузку - падает). Открываю копию приложения, в нем уже этот код закомментировал, а остальной нет. В итоге падает, вкладки белые. У кого какие предположения будут?

admin

Нехватка ресурсов, может быть вполне.
Можете скрипт без полей выложить?
Просто последовательность load from group и т.д.

LoryMax

нехватка ресурсов - это только памяти? у меня 32 Гб. при создании приложения (если в нем не сохранены загруженные данные) используется от силы 15% памяти.
Вчера пересчиталось все, нажал сохранить приложение, через какое то время побелели вкладки. После этого до сих пор не могу запустить QS desktop (Could not Reach http://localhost:4848/hub/ with error (-101). - сообщение было всего 1 раз. обычно только сообщение о невозможности запуска приложения показывается). Переустановка не помогла, откат системы не помог. Как исправлю - напишу.

LoryMax

Admin сообщил:
ЦитироватьСкорей всего глючит блок проверки кода.
Попробуйте написать код в текстовом файле, а в приложении просто включите.
Например:
$(Include=$(vG.SubPath)\1.FileExist.qvs);

Переместил часть кода в файл - проблема исчезла. спасибо!


$(Must_Include=lib://SSD/CalcNetCost.txt);

admin

Вышла новая версия Qlik Sense 3.1Sr2
Проверьте, может ошибка исправлена.

LoryMax

#12
в тот момент как раз и был SR2.

На данный день есть версия SR4 - да, ошибку починили. Когда ее обнаружил, писал на оф. сайта - надеюсь и мое сообщение передали разработчикам.

LoryMax

не знаю, будет ли сейчас это наблюдаться, то так хочется, чтобы не возникало проблем с исходным файлом при некорректном закрытии (в момент сохранения данных в него), в результате чего в большом количестве случаев открыть его уже не представляется возможным.

admin

Цитата: LoryMax от 25 декабря  2016, 09:28:04  
в тот момент как раз и был SP2.

На данный день есть версия SP4 - да, ошибку починили. Когда ее обнаружил, писал на оф. сайта - надеюсь и мое сообщение передали разработчикам.
Привет, о какой версии вы говорите? На официальном сайте доступна только SR3.

Яндекс.Метрика