Size: a a a

2021 August 27

СК

Сергей Кравченко... in Qlik BI chat
источник

СК

Сергей Кравченко... in Qlik BI chat
Очень прикольные скетчи! Которые наглядно показывают основную идею, дают инсайты, побуждают к действиям! Нет лишнего визуального шума, цвета, есть заголовки, подписи, комментарии!
источник

ИФ

Ирина Федина... in Qlik BI chat
очень здорово! спасибо!
источник

ДК

Дмитрий Колганов... in Qlik BI chat
Друзья, а есть ли у нас функционал типа скалярных функций ms sql? Понятно то, что можно объявить переменную, потом через sub ее инициализировать, сделать call, а уже потом её пользовать... но как-то не очень это наглядно выглядит в большом коде.
источник

DS

Daniil Semenov in Qlik BI chat
Вероятно все будет зависеть от того что функция делает
источник

DS

Daniil Semenov in Qlik BI chat
можно без sub загнать вычисление в переменную, а потом уже просто передавать значение параметром в переменную
источник

ДК

Дмитрий Колганов... in Qlik BI chat
да, но если логика несколько сложнее чем одна строчка?
источник

ei

evgeny ivanov in Qlik BI chat
есть переменные с параметрами, что-то можно через них . А создание скалярных функций из коробки нет.
источник

ДК

Дмитрий Колганов... in Qlik BI chat
тут вопрос именно в том, как это визуально в коде выглядит.
источник

DS

Daniil Semenov in Qlik BI chat
Если визуально нужно, то создайте какой-нибудь qvs файл в котором будете хранить все sub-ы и объявление переменных для них.
А потом в скрипте уже обращайтес к переменным, примерно вот так
/*QVS*/
sub trace(v);

TRACE $(v);

end sub;


set TaceFunction = call trace($1);
/*QVS end*/

/*load script*/
$(TaceFunction('start'));
источник

ДК

Дмитрий Колганов... in Qlik BI chat
👍
источник

EI

Eugeny Y. Ilyin ( Sa... in Qlik BI chat
на Гите есть проект на эту тему:
https://github.com/RobWunderlich/qcb-qlik-sse
источник

EI

Eugeny Y. Ilyin ( Sa... in Qlik BI chat
В случае использования SSE
// ExampleScalar
ExampleeScalar:
LOAD  RecId,
   QCB.ExampleScalar(Sales, 15) as [SampleScalarResult]
Resident Products    
;
источник

ei

evgeny ivanov in Qlik BI chat
ну это уже не из коробки, так да что угодно можно написать
источник

ДК

Дмитрий Колганов... in Qlik BI chat
не ну это уже в гланды лезть. не очень хочется. достаточно был бы что-то типа:
sub A(f1,f2) <...> end sub
let p = call A(s1,s2);
источник

DS

Daniil Semenov in Qlik BI chat
Так я ж пример скинул именно этого
источник

ДК

Дмитрий Колганов... in Qlik BI chat
почти. когда совсем не в терпеж станет - будем так изгаляться :)
источник

DS

Daniil Semenov in Qlik BI chat
Ну вот так он в указанную переменную сохраняет результат функции
sub trace(v,variable);

   let $(variable) = '$(v)';

end sub;


set TaceFunction = call trace($1,$2);

$(TaceFunction('start','p'));

trace $(p);
источник

DS

Daniil Semenov in Qlik BI chat
ну лан)
Вообще ровно тот скелет который вы описали)
источник

ДК

Дмитрий Колганов... in Qlik BI chat
пока пошел по более простому пути. все sub, которые должны что-то просто инициировать я называю set_[имя переменной]. тогда call set_vHome(s1,s2) выглядит уже осмысленной и далее более или менее читаемо по коду.
источник