Q: Уже третий день бьюсь над следующим вопросом — нужно сделать автоматически генерируемый Отчет о прибылях и убытках компании (далее — Отчет). Исходные данные берутся их оборотно-сальдовой ведомости, в которой ежедневно отражаются рутинные финансовые операции. (Картинка — «Исходная»)
Почти достиг цели, использовав сводную таблицу с подитогами. (Картинка — «Сводная»)
Но осталась большая нерешенная проблема — подитоги жестко привязаны к разделам Отчета.
А мне нужно больше гибкости — например, вычислить подитог (Выручка+Выручка нал) = Выручка. Или Выручка-Себестоимость=Валовая прибыль. Далее — (Валовая прибыль-Сумма всех административных расходов) = Операционная прибыль. И так далее. При этом это должны быть новые строки (Выручка, Валовая прибыль, Операционная прибыль) с вычислениями.
Как это сделать? Для примера того, что я хочу сделать — вот в этом видео https://www.youtube.com/watch?v=5KNdHbtJ—M
И вообще, можно ли в прямых или сводных таблицах добавлять строки с вычислениями?
A: На официальном форуме есть схожая тема, может поможет, как вариант.
По вопросу, если таблицу «развернуть», то выражения становятся строками.
Но тогда на каждую строку Отчета о прибылях и убытках придется писать свое выражение.
Ну и еще один способ. Добавить измерения и обсчитать их в скрипте, тоже вариант.
Кстати, можете обратиться напрямую обратиться к Gromych, на чье видео вы дали ссылку
Q: есть сводная таблица которая должна иметь одну и туже ширину, в ней по условию 2 столбец то показывается то нет
как сделать так чтобы при скрытии 2 столбца первый расширял свою ширину до определенного размера и таблица не меняла своей ширины
и второй вопрос
если наоборот вставить в сводную таблицу пустой столбец, который позволяет оставлять таблицу определенной ширины то как сделать так чтобы значимый и пустой столбец объединялись по условию
и вообще можно ли объединить 2 столбца в сводной таблице
A: Да есть неудобный момент с шириной колонок в Qlikivew .
Я предпочитаю «загонять» сводные таблицы в контейнеры, тогда таблица не гуляет правой границей по экрану а находится в границах контейнера.
Q: Есть таблица «Пользователи».Необходимо посчитать сколько раз был открыт каждый документ.Т.е.,чтобы таблица выглядела следующим образом:
Документ Пользователь Количество открытий Время сессии
С:\Program… BIEXPERT\abogdanov 3 1:40:33
BIEXPERT\mprusov 7 0:23:05
….. ….. ……
Еще 1 вопрос!Каким образом можно посчитать общее время затраченное на просмотр документов по каждому пользователю?Пробовал формулу Выражение:sum([Время сессии]).Измерение:Пользователи.Высчитывает неверно.
A: Объект — Диаграмма/Таблица, измерения — документ и Пользователь.
Остальное выражениями.

Q:Есть иерархический список ( группа_товара1, группа_товара2, … .).
Возможно ли для такого списка сделать так, чтобы в блоке тек. выборок отображались конкретные выбранные значения?!
( например, только если выбрать ветвь «двери» — то в тек. выборках так и написать «группа_товара1 — двери» , а если затем, например, выбрать подгруппу «деревянные двери» — соответственно добавить ниже «группа_товара2 — деревянные») … может есть примеры какие по данной теме?!
p.s. пробовал самостоятельно через триггеры и переменные — но так получается либо работает только с основной ветвью, либо сразу все группы отображает…
A: Если:
группа_товара1 — одно поле,
группа_товара2 — второе поле,
то так и будет работать.
Q: не так давно столкнулась с такой небольшой но принципиальной проблемкой:
у меня построен график, который содержит отрицательные значения и положительные, ось для таких графиков располагается снизу, но было бы удобно если бы она делила график.
может вы сталкивались как можно обойти это?
использовать стандартные настройки я так понимаю нет смысла?
как бы
как вариант вижу наложить два графика и настроить масштаб вручную
но интересно, может есть другие решения?
A: Да, можно сделать нулевую ссылку, которая будет выглядеть как ось.
Нижнюю ось не убирать а поставить нулевую ширину.
Тогда значения будут внизу, ось на нулевом значении.
на мой взгляд, вполне логично и понятно смотрится
Q: Да, достаточно простенькую таблицу, на которой бы воспроизводилась эта проблемка, чтобы все заинтересованные смогли принять участие.
A: Увы, приложения *.qvw не все смогут открыть на своих персональных версиях.
Q: Подскажите плз как скрыть вкладку? На ней информация, которая требуется для NPrinting, но вовсе не обязательна для обзора пользователям.
A: В свойствах листа, показывать по условию, прописать выражение или переменную, по которым включать/выключать отображение листа
Q: Следующая задача: Необходимо сравнить данные двух выбранных периодов.
Допустим есть данные по годам и их необходимо сравнить
Что придумал.
Создаем два дополнительных календаря (для выборки сравнения)
соответственно есть поля год1, год2 и год привязанный к дате
Создаем диаграмму «Прямая таблица», выводим на лист список год1 и год2
далее в условиях группировки пишем такое условие для каждого поля
sum(if(year([CREATEDATE])=2014,SALESUM,0))
sum(if(year([CREATEDATE])=2015,SALESUM,0))
——————
Подскажите как можно получить выбранное значение в списке год1 и год2 в переменную, либо в само условие выражения.
Т.е. хочется заменить 2014 и 2015 значением выбранного листбокса
———
Список настроен на выбор только одного значения.
A: посмотрите информацию по сравнительному анализу
Q: Сижу и не могу понять, как сделать так, чтоб был отдельный график, показывающий показатели за месяц.
Фильтрами выставляю текущий график — все получается, а наложить эти фильтры не могу нормально на месячный.
Имеются даты фактов, есть суммы по ним. Создал альтернативное состояние и хочу прописать правильный фильтр (тоже вопрос где), чтоб получились данные только за текущий месяц.
Подскажите плз. Знаю просто, но не могу сообразить.
A: Еще можно использовать переменные + анализ множеств (set analyse)
Q: Компутер не справляется с объемом выводимых данных, в случае, если пользователь не успел наложить фильтр и открыл таблицу. Хотелось бы сделать ограничение по количеству строк, выводимых в таблице (пример до 50 тыс строк).
В случае, если кол-во строк с указанием/отсутствием фильтров больше ограничение, то требуется выдать сообщение (Строк слишком много, наложите больше фильтров).
Если это возможно, подскажите как или куда читать.
A: Наложить больше фильтров» — это не решение проблемы.
Следует оптимизировать приложение.
Увеличить объем оперативной памяти, как вариант.
Для выдачи сообщений, посмотрите информацию по оповещениям.
Режим оповещений — Ctlr-Alt-A, доступен из меню «Инструменты», включая Мастера оповещений.
Q: Как сделать такие же группы, А и Б? Как тут http://eu-a.demo.qlik.com/QvAJAXZfc/opendoc.htm?document=qvdocs%2FFinancial%20Stock%20Analysis.qvw&host=demo11&anonymous=true
A: Рекомендую ознакомиться с разделом «14.15 Альтернативные состояния» справочного руководства по Qlikview в формате pdf.
Также рекомендую полистать информацию в официальном сообществе на эту тему
Появятся вопросы — обсудим. Тема интересная.
Q:Столкнулась с проблемой раскраски диаграммы. Как сделать одним цветом все столбцы понятно, как сделать разным цветом тоже понятно (есть галочка «Разноцветный»). А вот как сделать диаграмму с одним цветом, но разными оттенками? Например как вторая круговая диаграмма вот здесь https://community.qlik.com/blogs/qlikviewdesignblog/2013/08/16/color-codes
Это надо вручную делать?
A: В свойствах выражения есть параметр Цвет фона, можете там прописывать цветовые настройки в зависимости от выводимых значений.
Или на вкладке цвета, можете определить свою цветовую гамму.
В качестве совета.
Сделайте таблицу с различными комбинациями RGB(), сформируйте список переменных и используйте их в формулах установки цвета. Так будет проще менять цвета в дальнейшем, если вкусы поменяются
Q: Приветствую. Как реализовать проверку вырождения и в случае отрицательного значение красить его в определенный цвет.
К примеру: Если значение CTR меньше 1% покрасить эту ячейку в красный цвет.
A: Самое простое, это Визуальные подсказки» в свойствах таблицы.
Чуть сложнее — в свойствах выражения (Цвет фона, Цвет текста и т.д.), раскрывается нажатием на + слева от выражения на вкладке «Выражения»
Q: можно ли расположить на 1-м листе 2 чарта с мерой, например, сумма_продаж
на 1 чарте реакция будет на выбор конкретной даты — вертикальная гистограмма по менеджерам,
а на 2-м чарте будет горизонтальная гистограмма этой же меры, но по всем имеющимся периодам?
так делается?
плиз!
A:Чтобы на диаграмме отображались данные без учета выбора следует использовать выражения анализа множеств.
Например, sum({1} Количество) будет отображать данные без учета текущего фильтра.
Q: таблица фактов 3 млн
есть поле ID привязанное к dimension «баланс»
в балансе есть много категорий
если отложить dimension «баланс» в фильтр, то отобразятся 100 позиций
а если я хочу отобразить не все 100, а часть, т.е. ограничить по содержанию,
например, только «кредитный портфель»
как это делается? плиз!
A: Я так полагаю, что «кредитный портфель» лишь частный случай из многих вероятных.
В этом случае лучше не формулами формировать измерения а предварительно в скрипте подготовить данные.
Добавить еще одно поле «Группа» или как-то иначе. Может в источнике уже есть разделение статей баланса?
Формирование нового поля значениями на основе текстовых значений другого — задача не из легких.
В качестве примера:
Код:
LOAD *, if( WildMatch(F1,’*портфель*’),’Портфель’ ) as Test
INLINE [
F1
кредитный портфель тест
портфель кредитный
тестовый портфель
];
Даст новое поле, со значением Портфель для всех строк, содержащих тест «портфель».
Выражение для списка:
Код:
=aggr( only({
Даст список из двух строк, содержащих текст «тест».
В первом случае условие можно вынести в переменную с параметром, либо в функцию в макросе. Потребуется предварительно провести анализ всевозможных вариантов и прописать все условия.
Но затем, работать с этим полем будет уже проще.
По поводу правильно или нет. Все зависит от ситуации. Если вы получаете корректный результат, все загружается быстро, приложение не «задумывается» и никакие ошибки не встречаются — есть ли основание сомневаться в правильности примененных способов отображения информации?
Программирование — процесс творческий сам по себе, а в Qlikview тем более

Q: У меня 2 столбца:
1. Название товара
2. Ссылка на сайт вида «http://……»
Подскажите, пожалуйста, как сделать, чтобы прописанные текстом ссылки стали гиперссылками? Т.е. я хочу посмотреть товар на сайте, нахожу его по наименованию и нажимаю в ячейку таблицы на гиперссылку, у меня открывается браузер по указанному адресу.
A: Для отображения ссылки в простой таблице следует в выражении прописать формулу вида:
Код:
=’Поиск’&’
и в опциях представления вкладки свойств диаграммы «Выражения» выбрать тип — «Связь».
Q: У меня есть данные по чекам (заказам).
Подскажите, пожалуйста, как задавать диапазоны на диаграмме? например как на рис. 3 http://www.usconsult.ru/b_091-merchandising-effectiveness.php
A: Например, для таблицы:
Код:
LOAD * INLINE [
id_order, ordersum
1, 1000
2, 2000
3, 3000
4, 500
5, 300
6, 8000
7, 5000
8, 10000
9, 7000
10, 900
];
Вы можете создать объект Диаграмма с измерением:
=Class(ordersum,3000)
и выражением:
Count(DISTINCT id_order)
(Извините, но вы не имеете доступа к галерее)
Q: Подскажите, пожалуйста, каким образом создается несколько страниц на 1 листе. Например, есть лист ассортимент, а на нем страницы — Ценовые диапазоны, Обновление ассортимента, Активность товаров и т.д.
A: Для этих целей используют объект «Контейнер», который может содержать в себе другие объекты.
Таким образом на странице приложения формируется область с вкладками (вертикально или горизонтально).
Q: Подскажите, пожалуйста, как реализовать в QlikView таблицу или диаграмму перекрестных продаж?
Т.е. у меня есть таблица со следующими столбцами:
— номер заказа
— ID товара 1 в заказе
— Категория этого товара 1
— Количество товара 1, шт.
— Цена продажи товара 1, руб.
— ID товара N в заказе
— Категория этого товара N
— Количество товара N, шт.
— Цена продажи товара N, руб.
Надо понять какие категории с какими чаще всего заказываются (встречаются в одном заказе).
Т.е. надо вывести таблицу, в заголовках которой были бы категории, а в полях (на пересечении категорий) было бы количество заказов.
Буду очень благодарна за любую подсказку и помощь!
A: Для анализа потребуется привести структуру таблицы о продажах к виду:
— номер заказа
— ID товара
— Категория товара
— Количество товара
— Цена продажи товара
Затем, создать модель с двумя одинаковыми таблицами, связанными по номеру заказа. При этом имена полей второй таблицы следует изменить.
Измерения для сводной таблицы — Категория товара и Категория товара2
Выражение для сводной таблицы =count(Distinct if([Категория товара]<>[Категория товара2], [номер заказа]))

Найти решение у бизнес-партнера QlikTech (QlikView) в России.
Форум разработчиков QlikView и Qlik Sense. Получите ответы на все вопросы по QlikView и Qlik Sense!
RSS
4 декабря 2017
gromych 
Опубликовано в рубрике