Обновление приложений по условиям фильтра.

Автор Hugo, октября 10, 2018, 09:22:01 am

« предыдущая - следующая »

Hugo

октября 10, 2018, 09:22:01 am Последнее редактирование: октября 10, 2018, 03:35:22 pm от Hugo
Не могу в Sense реализовать использование в коде загрузки файлов по значениям выбранных фильтров...
Неужели невозможно?

admin

Цитата: Hugo от октября 10, 2018, 09:22:01 am
Возможно я поторопился - не могу в Sense реализовать использование в коде загрузки значений выбранных фильтров...
Неужели невозможно?

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

Hugo

октября 10, 2018, 01:35:07 pm #2 Последнее редактирование: октября 10, 2018, 02:52:22 pm от Hugo
Как в Sense задать значение переменной изменением фильтров? Именно значение, а не актуальное выбранное поле, что сейчас имею я. Может я просто синтаксис не нащупал...

admin

Формирование приложений по условиям фильтра возможно с использованием технологии On-demand App.
Я использую упрощенный вариант (On-demand App еще не было)

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

Но у меня задача только для одного поля.

Hugo

Цитата: admin от октября 10, 2018, 02:00:31 pm
Нажимает на кнопку (расширение) для установки значения переменной.
- не подскажете какое именно расширение? С тем которое так и называется "variable" как-то не получается.

admin

Sheet navigation + Action
но сейчас есть поинтереснее вариант, tcmenu.
Не проверял, но заявленная функция есть.

В принципе, всю последовательность действий в нем можно сделать (если все рабочее).

Hugo

октября 10, 2018, 04:48:34 pm #6 Последнее редактирование: октября 10, 2018, 06:43:47 pm от Hugo
Спасибо, получилось сделать используя sense-navigation.
Значение переменной vTestFileName задаю
=MinString([Поле1])&'-'&MinString([Поле2])
Может подскажете приём как правильнее преобразовать в строку?
А в скрипте использую так:
load * , '$(vTestFileName)' as tmp
это только чтоб оценить что переменную можно использовать (смотрю данные в полученной таблице), на практике грузить файл ведь не мне нужно :)

admin

=Replace('"'&concat(DISTINCT _ВыборГруппы,'","')&'"',chr(34),chr(39))

Цитироватьна практике грузить файл ведь не мне нужно

ох, не зарекайся  :)

admin

октября 11, 2018, 08:12:55 am #8 Последнее редактирование: октября 11, 2018, 09:58:40 am от admin
Цитата: Hugo от октября 10, 2018, 04:48:34 pm
Спасибо, получилось сделать используя sense-navigation.

Кстати, очередное обновление доступно
Существенно обновление, не спешите его ставить в рабочие проекты.

Hugo

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

='Полный путь/'
&
concat(DISTINCT [Год],'_')
&
'-'
&
concat(DISTINCT [Месяц],'_')
&
'.xls'

Единственнно что заметил - у меня например месяцы в поле в виде текста, и они в эту строку собираются сортированные, а не в порядке поступления (т.е. "янв" всегда последний...)
Строка получается вида
"Полный путь/2017_2018-фев_янв.xls"
Т.е. месяцы удобнее использовать всюду числами, с ведущим нулём - если предполагается такого вида использование.


admin


Рейтинг@Mail.ru Яндекс.Метрика