Блог iSpace

Списки iSpace

Полезные статьи
В этой статье мы разберемся что такое «списки», в каких сценариях и ситуациях их удобно использовать, рассмотрим несколько примеров, как с помощью списков решить те или иные бизнес-задачи, а также выясним, чем они отличаются от таблиц Excel. Статья будет полезна тем, кто не знаком с таким инструментом как «Списки» или имеет мало опыта с ними. А тем кто хорошо знаком со списками, например в Microsoft SharePoint, статья даст понимание возможностей iSpace.

Списки не являются прямым аналогом Excel-таблиц, при этом позволяют лучше, удобнее и эффективнее организовать множество сценариев рабочих процессов, для автоматизации которых нет готовой специализированной программы или приложения, и одна из первых идей, которая нам приходит в голову – использовать знакомый Excel, как отличный инструмент структурирования информации. Вот почему в этой статье мы будем проводить «параллели» и сравнения с Excel-таблицами.

Где используются «Списки»?

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

Элемент списка (или запись, List Item) – какая-либо сущность или бизнес-объект, описанные набором свойств (метаданных, fields).

Простыми и многим близкими примерами таких объектов, которые могут описываться и данные о которых могут структурироваться с использованием «списков» являются:
  • Каталог товаров или прайс-лист. Свойства каждой записи – это артикул, цена, группа товаров и пр.

  • Реестр входящей и исходящей корреспонденции. Здесь свойства каждой записи – это адресат, вид отправки, подписант, контрагент и пр.

  • Список наших клиентов и контактных лиц, которым мы планируем отправить поздравления с Новым Годом
  • Реестр заявок на отпуск или командировки, и свойства каждого элемента здесь это – Кто? Когда? Куда? Статус?
  • Список заявок на оплаты, свойства это – Кому? За что? Когда? Сколько? Статус согласования?

И многое другое.
«Списки» позволяют описывать «записи» набором свойств (полей, как аналог столбца в Excel – Column), при этом поля в списках могут быть разных типов: текст, число, пользователь или группа, выбор из другого списка (справочника), выбор из значений, ссылка, и другие.

Метаданные – что это и как использовать?

Создавая поля для записей списка (как столбцы в Excel) мы можем определять для них особые параметры, например: минимальное и максимальное значение, обязательность заполнения поля, количество знаков после запятой, фильтрация для значения поля с типом «подстановка» на другой список или справочник, значение по умолчанию и др.

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

Более специфичные примеры списков:
  • Реестр рисков организации

  • Каталог информационных систем компании, где мы храним информацию о системе, кто ее «владелец», как запросить доступ, какой SLA для системы и пр.
  • Реестр тиражей книг для издательства
  • Реестр рекламаций и претензий от клиентов
  • Другое.

Что же такое «Списки»?

Отвечая на вопрос «Что такое Списки в iSpace?» можно сказать так: Списки – это инструмент и основа для простых и быстрых автоматизаций рабочих сценариев, которые могут создать сами бизнес-пользователи для использования в процессах своих рабочих групп и команд. Списки также могут использоваться и в достаточно сложных сценариях, которые также несложно настроить, однако для того чтобы лучше «спроектировать» бизнес-приложение, использующее списки, лучше привлечь на помощь бизнес-аналитика и сначала проанализировать бизнес-процесс, который хотим автоматизировать.

Если описать кратко, то «Списки» лучше подходят для структурирования, хранения и обработки бизнес‑данных, чем Excel, когда важно работать с «записями», а не с файлами таблиц, когда наш сценарий в первую очередь требует не операций расчетов и формул с данными таблицы, а структурированного описания каких-либо объектов и сущностей и последующей совместной работы пользователей с ними. В «списках» у каждого элемента списка (аналог строки в Excel) есть своя версия, история изменений, могут быть уникальные права доступа для пользователей и связи с другими объектами (задачами, документами, процессами), что делает их удобным строительным блоком для простых бизнес‑приложений и форм ввода данных. В отличие от Excel‑таблицы, которая живет как один файл, списки позволяют:
  • настроить гибкие представления – то, как мы видим список (используя фильтры, группировки, форматирование),
  • обеспечить удобный одновременный просмотр и редактирование данных в списках пользователями без конфликтов,
  • использовать разграничение прав доступа отдельных групп или конкретных пользователей «по строкам» (записям или так называемым «элементам» списков), в т. ч. с использованием ролевой модели,
  • возможность «расширить» автоматизацию нашего сценария за счет задач и настраиваемых «процессов» – цепочек действий с этими «записями».

Отличия и преимущества Списков от таблиц:

1.Набор свойств для описания элементов (записей) списков может быть достаточно большим, если требуется. При этом для создания и редактирования каждой записи (элемента списка) используется специальная форма, что удобнее чем множество столбцов в Excel, которые приходится пролистывать.
2.Легко настроить связи со справочниками или другими списками. Избегаем дублирования сущностей, некорректного описания, улучшаем возможности сравнения записей между собой. Для этого используются поля с типом «Выбор» (Choice)или «Подстановка» (Lookup).

3.Журналирование версий (Versioning)

Для каждой записи (элемент списка, аналог строки в Excel) – автоматически ведется журнал версий (Item Version), мы легко видим кто, когда и что изменил по конкретной записи (строке), можем восстановить предыдущую версию.

Попробуйте в Excel-таблице разобраться, кто, когда и что изменил в конкретной строке?

4.Для каждой отдельной записи списка (аналог строки в Excel) мы можем назначать отдельные уникальные права доступа (Permissions, Item-level Permissions). Это позволяет настроить доступ к информации так как необходимо – кто-то может только просматривать, кто-то изменять, а кто-то создавать новые записи.

5.Задачи и автоматизации

К каждому элементу списка можно назначать задачи и подзадачи для организации действий пользователей с этим «объектом» или даже настроить автоматизированный процесс (Workflow), если наша работа с сущностями этого списка предусматривает понятную последовательность действий и участников:

Используя уведомления на e-mail (Alert) мы привлечем внимание пользователя, когда от него требуется какое-то действие с элементом списка.

Мини-автоматизация без программирования: как облегчить рабочие процессы
6.Представления списков (List View)

Представления – это как «преднастроенный» вид на список (view), с учетом заданных параметров и условий. Для каждого списка может создаваться множество представлений для удобства. Также можно скрывать или показывать те или иные представления для разных пользователей, используя настройку «целевой аудитории» (Audience Targeting).

Пример настройки фильтра для представления списка:

7.Вложения в элементы

Элементы (записи) в списках могут содержать вложения – один или несколько файлов и документов (Item Attachments).

К строке в Excel это сделать весьма затруднительно.

8.Типы контента (Content Type)

На основе полей одного списка мы можем создавать несколько «типов контента». Тип контента (Content Type) – это некий тип элемента внутри списка, отличающийся своим специфичным набором свойств. Например, в реестре рекламаций могут быть обращения от клиентов с типом «Претензия» и «Рекламация». Каждым контент-типом мы можем управлять отдельно – он может иметь свои атрибуты (как состав полей / столбцов в Excel), свой маршрут процесса (workflow), свой жизненный цикл, определяющий кому и что доступно на разных фазах «жизни» этого элемента.

9.Жизненный цикл

Используя механизм жизненного цикла с элементами списков и маршрутами процессов, мы можем настроить алгоритмы, определяющие какие именно свойства элемента списка (запись, аналог строки в Excel) будут доступны для изменения / видны / обязательны для пользователей с той или иной ролью в зависимости от состояния элемента (фазы его жизненного цикла). Например, в элементе из реестре рекламаций (рекламация конкретного клиента), который находится в состоянии «на проверке службой качества» пользователь с ролью «менеджер клиента» не может изменить поля А, В, С (условные названия полей), а остальные поля изменить может.

10.Поиск

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

11.Прочие преимущества

Среди прочего, к каждому элементу списка можно вести «диалог» - просто чат, фиксирующий обсуждения в привязке к конкретному элементу списка (как бы строке Excel), добавить его в раздел «Избранное» для быстрого доступа, просматривать автоматически фиксируемые базовые свойства – кто, когда изменил или создал элемент. Действия пользователей с элементами списков логируются в БД.

Выводы

Для чего «Списки»?

«Списки» помогут вам:
  • быстро и просто организовать упорядоченную работу в команде или подразделении во множестве подходящих для списков сценариях,
  • организовать более сложные процессы и взаимодействие сотрудников в тех сценариях, для которых сейчас нет какой-то специализированно системы

Для каких бизнес-сценариев хорошо подходят «Списки»?

С одной стороны, можно сказать, что сценариев бесчисленное множество. С другой стороны – это все те сценарии, где в работе нам необходимо структурированно описывать какие-то сущности (как строки Excel, содержащие значения в столбцах), производить с этими сущностями (записями) какие-то действия, как отражение изменений этих сущностей (менять их свойства – «значения» полей записи). Зачастую также сценарии требуют:
  • иметь возможность «связывания» этих сущностей с записями из других списков или справочников – избегать дублирования, обеспечить единообразие и пр.,
  • иметь возможность разграничивать доступ и полномочия пользователей в отношении этих списков и отдельных «записей» - избегать человеческих ошибок в изменении данных или ограничить доступ к информации в зависимости от условий,
  • иметь возможность управлять «жизненным циклом» записей (кто, как и когда их может изменять) – т.к. они изменяются во времени, как та реальная бизнес-сущность или объект, который описывается записью в этом списке,
  • обеспечивать совместную работу пользователей, т.к. с описываемыми с помощью списка объектами мы работаем обычно совместно.