Разработка интерфейсов: сокращаем количество рутинных операций (МЕТОД 1)

Сегодня расскажу об очень важном – времени и о том, как его сэкономить при разработке интерфейсов.

Экономика должна быть экономной, а разработка – творческой. В этом и следующем посте я составила дайджест инструментов, позволяющих сократить количество рутинных операций при проектировании интерфейсов, с описанием достоинств и недостатков каждого из них. Полезные файлы для скачивания по этой теме размещу в заключительном посте 😉

Итак, представим, что у нас есть симпатичный готовый документ QlikView, состоящий из нескольких листов, содержащих диаграммы с множеством настроек и показателей, заданных сложными формулами.

Задача: На основе модели данных, похожей по структуре и содержанию на модель данных первого документа, создать новый документ с похожим интерфейсом.

Модель данных уже готова. Ее можно загрузить в первый документ с помощью BINARY LOAD.  Дальше нужно доработать интерфейс, то есть макет (layout) исходного документа, чтобы его можно было использовать с новой моделью данных.

РАБОТА ПО ШАБЛОНУ: РАЗРАБОТКА ИНТЕРФЕЙСА ПО ШАГАМ

Для доработки макета предстоит выполнить следующие задачи:

  • изменить некоторые формулы (изменить названия полей, добавить/удалить условия в разделе Set Analysis и т.п.), причем части формул, подлежащие изменению, повторяются в нескольких формулах на нескольких листах;
  • изменить свойства отображения объектов листа (изменить цвета заголовков, подкорректировать размеры объектов и их расположение на листе), изменяемые свойства объектов также неоднократно повторяются в документе.

Похоже, что придется сделать много кликов мышкой, CTRL+C и CTRL+V ? 🙂  Звучит не очень вдохновляюще, да и в процессе можно забыть внести изменения в какой-нибудь объект листа или допустить опечатку в формуле. Как можно автоматизировать действия по изменению повторяющихся значений, чтобы сократить время на создание нового документа и минимизировать количество ошибок?

Сначала посмотрим, какие средства редактирования документа предлагает QlikView.

Метод 1. Массовое редактирование объектов: Обозреватель выражений

В окне Обозревателя выражений можно просматривать все выражения в документе по листам и диаграммам (список отображаемых столбцов, указывающих расположение выражения, настраивается), а также использовать поиск и замену по тексту выражений.  Таким образом, Обозреватель выражений может решить задачу, когда вместо поля [Товар Наименование] нам нужно указать поле [Товар] или вместо условия [Чек Продажа/Возврат]={Продажа} нам нужно условие [Чек Продажа/Возврат]={1}. Однако, имеющийся текстовый редактор «не умеет»  искать с использованием символов подстановки, а также сохранять форматирование текста с помощью табуляций.
Для редактирования формул и других выражений в QlikView имеется Обозреватель выражений (Меню Параметры -> Обозреватель Выражений или Settings -> ExpressionOverview).

Обозреватель QlikView

Когда мне понадобилось заменить формулу показателя целиком, например,

на

Обозреватель выражений не помог. Решим задачу с помощью следующего метода.

Метод 2. Средство форматирования и Темы

Для массового редактирования свойств отображения объектов в QlikView имеется:

  • средство форматирования (Format Painter);
  • темы (Themes).

Средство форматирования позволяет копировать такие атрибуты форматирования, как цвет, стиль, шрифт из одного объекта листа в другие объекты листа.

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

Средства форматирования QlikView

Темы позволяют тиражировать не только форматирование, но и многие другие свойства объектов, например, отображение специальных значков «Поиск», «Очистить» в заголовке, и даже расположение объекта на листе  (доступный набор свойств зависит от типа объекта). Инструмент Мастер создания темы позволяет сохранить определенный набор свойств объекта в файл Темы QlikView (qvt) и в дальнейшем применить эту тему к выбранным объектам документа или использовать тему по умолчанию при создании новых объектов определенного типа.

Новую тему можно создать при помощи стандартного мастера: меню Инструменты -> Мастер создания темы. Кроме того в свойствах объекта листа на вкладке «Макет» (Layout) также можно зайти в Мастер создания тем:

Мастер тем QlikView

Темы QlikView являются полезным и весьма гибким инструментом, но можно встретить задачи, где Темы применить не получится: например, для всех диаграмм в документе установить  одинаковую высоту в свернутом виде, не меняя при этом другие параметры размера и расположения диаграмм.

На этом сегодня все. Совсем скоро расскажу о еще одном методе оптимизации времени разработки интерфейса, там же размещу файлы для скачивания по этой серии постов. До скорой встречи!

P.S. Буду рада услышать ваши рекомендации, о том, как вы оптимизируете рутинные операции при разработке интерфейсов.

Комментарии

  • Июнь 4, 2015 at 07:03
    Permalink

    Добрый день.
    Спасибо за информацию.
    К первому методу хотелось бы дополнить вариант хранения значений переменных (выражений) в табличном виде.
    Т.е. в табличном редакторе можно создать массив строк с колонками (имя переменной, описание, комментарий, условное выражение, цвет фона, цвет текста и т.п.).
    И скриптом сформировать переменные, что будет аналогично прямой записи в скрипте, например:
    vZakupkaKol = sum({$}ZapasMdocmKol)
    vZakupkaKol.Comment = количество в основных ЕИ
    vZakupkaKol.Label = Кол-во
    vZakupkaKol.BkgColor = LightGray()
    и т.д. по ситуации.

    Ответить
    • Июнь 5, 2015 at 07:36
      Permalink

      Идея с созданием диаграмм с помощью скрипта интересна, но относится, скорее, к разработке документа «с нуля», а не к редактированию. В случае разработки «с нуля» я могу составить предварительный список измерений и показателей в Excel, но затем создаю диаграммы вручную. Так мне удобнее подбирать расположение и цветовую гамму объектов, да и вводить формулы в «родном» редакторе формул QlikView тоже удобнее, чем в стороннем редакторе.

      Ответить
      • Июнь 5, 2015 at 09:41
        Permalink

        Не совсем так.
        Довольно сложно представить разработку приложения с формул в таблицах. Это очень непродуктивно.
        Но может иметь место такая ситуация, когда потребуется иметь отдельный файл с переменными. В этом случае переход на хранение выражений в переменных будет оправдан, т.к. облегчит сопровождение, и внесение изменений в программу может быть осуществлено всего лишь заменой табличного файла. Минусом может являться сама процедура создания такого файла. Т.к. Вы правильно отметили, разработка и отладка происходит в «родных условиях», далее следует формирование массива переменных и их привязка к объектам.
        Штатным образом, выражения выгружаются в текстовый файл без проблем (многострочные выражения и комментарии в формулах легко корректируются), затем формулы распределяются по переменным в табличном файле, который будучи загруженным в приложении создает массив переменная-формула. «Бери и пользуйся», как говорится.
        Этот способ может выручить при создании ознакомительных приложений на локальных версиях у клиента на глазах.

        Ответить

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Подпишись на Data-Daily!

Введите email и будьте в курсе!

Подпишись!