Бизнес-показатели

Общие сведения

Бизнес-показатели являются представлением числовых индикаторов функционирования предприятия. Яркими примерами таких индикаторов могут служить, например:
  • Общие товарные запасы
  • Сумма дебиторской задолженности предприятия
  • Выручка в торговых залах
  • Объем оптовых продаж
  • И т.д.
  • Характерной особенностью бизнес-показателей является отсутствие детализации. То есть, если большинство отчетов в системе представляет информацию в глубоко детализированном виде (по контрагентам, номенклатурным позициям, отдельным кассовым чекам и т.д.), то бизнес-показатели имеют целью отразить картину работы предприятия в целом без излишних подробностей.Следующими особенностями бизнес-показателей являются:

  • возможность рассчитывать их по произвольным формулам
  • возможность хранить рассчитанные на каждый день значения за длительный период времени
  • технология доставки значений до удаленного пользователя
  • Разграничение бизнес-показателей по пользователям

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

  • Разграничение прав доступа
  • Уход от избытка информации, видимых каждым отдельным сотрудником
  • Расчет значений бизнес-показателей

    Так как технология бизнес-показателей предполагает, что они регулярно рассчитываются, система предоставляет специальный сервис пересчета бизнес-показателей средствами JobServer'а.Если вы не приобретали JobServer, то можете запускать расчет вручную. Для этого существует отдельная функция, доступная через пункт меню Админ→ Разное→ Расчет бизнес-показателей.

    Для просмотра и анализа рассчитанных значений используется контроллер анализа данных “Значения бизнес-показателей” (пункт меню Отчетность→ Значения бизнес-показателей).

    Формулы бизнес-показателей

    Ключевым атрибутом любого бизнес-показателя является формула, по которой рассчитывается значение этого показателя. Принципы ввода формул достаточно просты: система допускает применение так называемых примитивов, которые, собственно, и определяют источник поступления расчетных данных, и арифметических операций (сложение, вычитание, умножение и деление).

    В качестве вводного примера приведем незамысловатую формулу, которую можно использовать в бизнес-показателе: @ccheck(@-1) / @ccheck(@-1/@-1/@) Этот пример рассчитывает отношение вчерашних розничных продаж (сумма выручки по кассовым чекам) к соответствующему дню прошлого месяца. Здесь мы использовали один из примитивов, а именно ccheck, и применили концепцию шаблонов периодов: в первом подвыражении вычисляется сумма продаж по чекам за предыдущий день (@-1), во втором подвыражении - сумма продаж за предыдущий день предыдущего месяца (@-1/@-1/@).

    Обратите внимание на то, что примитивы вводятся в формулы с предшествованием им символа @. Это необходимо для того, что бы система могла отличить расчетный примитив от функции.

    Примитивы бизнес-показателей

    Количество примитивов бизнес-показателей, предоставляемых системой, сравнительно не велико. Однако, благодаря возможностям параметризации этих примитивов и использованию шаблонов периодов, количество вариантов бизнес-показателей может быть огромно. Мы надеемся, что все значения, которые подскажут вам ваши насущные требования и фантазия, можно рассчитать с помощью различных формул.И так, Papyrus предоставляет в ваше распоряжение следующие примитивы для расчета бизнес-показателей:

    bill
    Документы
    goodsrest
    Товарные остатки
    debt
    Долги
    ccheck
    Кассовые чеки
    bizscore
    Значения бизнес-показателей
    Хотелось бы отметить последний из перечисленных примитивов - бизнес-показатели. Фактически, благодаря тому, что значения бизнес-показателей хорошо структурированы и регулярно рассчитываются, вы имеете возможность воспользоваться ими для расчета производных показателей. Например, технология бизнес-показателей является наиболее удобным инструментом для расчета таких величин как средние товарные остатки за период, либо средняя сумма дебиторской задолженности за период. Вы можете получить эти цифры и другими способами, но, повторим, описываемая здесь технология является наиболее удобной для этого.

    При вводе в формулах примитивы применяются в соответствии со следующей схемой:@prim.modif(arg1, arg2)

    Здесь:

    prim

    Наименование примитива.

    .modif

    Не обязательный модификатор. Смысл модификатора состоит в том, чтобы уточнить значение, которое вам необходимо от примитива. Например, вы можете получить количество документов либо их сумму в ценах поступления. Аналогично, для кассовых чеков вы можете затребовать либо их общую сумму, либо их количество и так далее. Если модификатор не указан, то система подставляет значение примитива по умолчанию.

    Ниже, при подробном описании каждого примитива, мы перечислим его допустимые модификаторы, а также модификаторы по умолчанию.

    arg1, arg2 и т.д.

    Аргументы (их количество и смысл описаны ниже).

    В качестве примера приведем формулу для расчета среднего чека с начала года по магазину с кодом store02: @ccheck.amount(1/1/@..@, store02) / @ccheck.count(1/1/@..@, store02) В этом примере мы использовали и в числителе и знаменателе один и тот же примитив, но в числителе применили модификатор суммы чеков, а в знаменателе - модификатор количества чеков. Отметим еще одну деталь: мы здесь воспользовались возможностью выбора склада в параметре примитива. В предыдущем примере склад явно указан не был, и в результате мы получали сумму выручки по всем магазинам предприятия (по которым учитываются чеки в текущей базе данных).

    Правила определения аргументов

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

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

    Период
    Задает период, за которых расчитывается показатель. Период может быть указан строкой, так же, как это делается в интерактивных фильтрах системы. Допускается использование шаблонных периодов.

    2012
    Весь 2012-й год.
    iv/2011
    Четвертый квартал 2011-го года.
    @
    Текущее число.
    @-8..@-1
    Последние 7 дней (до вчерашнего дня включительно).
    Склад или список складов
    Задает символ либо список символов складов, по которым должен осуществляться расчет.

    Если порядок следования аргументов предполагает, что данным аргументом должен быть склад, то символ склада может быть указан непосредственно без дополнительных признаков, однако, рекомендуется всегда указывать склад либо список складов в виде @loc(locsym1, locsym2), где locsym1 и locsym2 - собственно символы складов, а @loc - служебный префикс, сообщающий модулю разбора выражений, что речь идет именно о складах.

    Символы складов чувствительны к регистру. Поэтому следите за тем, чтобы написание символов точно соответствовало тому, что вы видите в диалоге склада.

    @loc(WH1)
    Склад с символом WH1.
    @loc(WH1, Store2)
    Суммарный отчет по складам с символами WH1 и Store2.
    Товарная группа или список товарных групп
    Задает код товарной группы, которой должно ограничиваться рассчитываемое значение.

    Если порядок следования аргументов предполагает, что данным аргументом должен быть код товарной группы, то этот код может быть указан непосредственно без дополнительных признаков, однако, рекомендуется всегда указывать код группы либо список кодов групп в виде @goodsgroup(code1, code2), где code1 и code2 - собственно коды групп, а @goodsgroup - служебный префикс, сообщающий модулю разбора выражений, что речь идет именно о товарных группах.

    @goodsgroup(12)
    Товарная группа с кодом 12.
    @goodsgroup(24, 302)
    Суммарный отчет по товарным группам с кодами 24 и 302.

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

    Вид операции
    В тех бизнес-показателях, которым требуется вид операции, его следует указывать в виде символа, определенного в записи этого вида.

    Возможно использование символов обобщенных видов операций.

    Далее мы рассмотрим подробно каждый из примитивов и перечислим его параметры.

    Примитив bill

    Рассчитывает итоговые значения по выборке документов.

    Аргументы
    Период
    Фиксированное либо шаблонное представление периода, за который необходимо просматривать документы.
    Символ вида операции
    Это должен быть символ вида операции. Допускаются, наравне с обычными видами операций, обобщенные виды.
    Символ склада
    Символ склада либо список символов.
    Модификаторы
    amount
    Номинальная сумма документов.
    cost
    Сумма документов в ценах поступления.
    price
    Сумма документов в ценах реализации.
    discount
    Сумма скидки по документам.
    netprice
    Чистая сумма реализации, то есть, разница суммы в ценах реализации и суммы скидки по документам.
    margin
    Разница между чистой суммой реализации и суммой в ценах поступления.
    pctincome
    Процентная доходность по выборке документов. То есть, отношение разницы между чистой суммой реализации и суммой в ценах поступления к сумме в ценах поступления.
    pctmargin
    Процентная маржа по выборке документов. То есть, отношение разницы между чистой суммой реализации и суммой в ценах поступления к чистой сумме реализации.
    count
    Количество документов в выборке.
    По умолчанию
    Номинальная сумма документов.

    При использовании модификаторов, в которых упоминаются суммы в ценах реализации, суммы в ценах поступления и суммы скидки следует помнить, что речь идет о зарезервированных стандартных суммах. Если какие-либо товарные позиции, участвующие в документах, принадлежать специализированным товарным типам, то вы можете получить значения, отличные от тех, что ожидали увидеть. Кроме того, упомянутые модификаторы едва ли годятся для выборки бухгалтерских документов, в которых (за редкими исключениями) не встречаются указанные типы сумм.

    Производительность
    В целом, этот примитив рассчитывается достаточно быстро. Зависимость времени расчета от продолжительности периода - линейная (с поправкой на различную временную плотность документов в разные периоды, разумеется).

    @bill(@, SALES, @loc(whmain)) Номинальная сумма документов продажи (вид операции с символом SALES) за сегодняшний день по складу с символом whmain.

    Примитив goodsrest

    Рассчитывает итоговые значения по товарным остаткам.

    Аргументы
    Период
    Фиксированное либо шаблонное представление периода, на конец которого должны быть рассчитаны остатки. Обратим внимание на то, что период здесь применяется формально (для унификации с остальными примитивами). Фактически, системе требуется только дата, на которую должны быть рассчитаны значения.
    Символ склада
    Символ склада либо список символов.
    Товарная группа
    Код товарной группы.

    Модификаторы
    amount
    Сумма остатков в ценах реализации.
    cost
    Сумма остатков в ценах поступления.
    price
    То же, что и amount.
    margin
    Маржа: разница между суммой остатков в ценах реализации и суммой остатков в ценах поступления.
    pctincome
    Отношение маржи к сумме остатков в ценах поступления.
    pctmargin
    Отношение маржи к сумме остатков в ценах реализации.
    count
    Количество товарных позиций на остатке.
    По умолчанию
    Сумма остатков в ценах реализации.
    Производительность
    Скорость расчета несколько выше, чем у отчета “Остатки товаров” с аналогичными параметрами фильтрации. Ускорение достигается за счет того, что результирующие значения могут быть вычислены без построения громоздкой таблицы с детализацией по номенклатурным позициям.

    Расчет по одному складу осуществляется значительно быстрее, чем по списку складов.

    @goodsrest.cost(@, @loc(whmain)) Остатки товаров в ценах поступления на текущее число по складу с символом whmain. @goodsrest.count(@, @loc(whmain, store01), @goodsgroup(219)) Количество товарных позиций, принадлежащих группе с кодом 219, с ненулевым остатком на текущее число по складам с символами whmain и store01.

    Примитив debt

    Рассчитывает итоговые значения задолженности по документам (аналогично долговой ведомости).

    Задолженность рассчитывается по методу расширенной долговой ведомости (то есть с учетом незачтенных зачетных оплат).

    Аргументы
    Период
    Фиксированное либо шаблонное представление периода, за который должны быть рассчитаны значения.

    Так как расчет осуществляется средствами контроллера анализа данных “Долговая ведомость”, то следует сказать, что этот период подставляется и в период просмотра долговых документов и в период просмотра оплат. Таким образом, указанный этим аргументом период трактуется как “по состоянию на”.

    Символ таблицы аналитического учета
    Символ таблицы, по аналитическим статьям которой рассчитывается примитив. Если аргумент не указан, то используется таблица покупателей (то есть, будет рассчитана долговая ведомость по отгрузкам покупателям).

    Модификаторы
    amount
    Сумма долга с учетом не зачтенных предоплат.
    count
    Количество аналитических статей, по которым есть не оплаченные долги.
    По умолчанию
    То же, что и amount.
    Производительность
    Показатель рассчитывается весьма продолжительное время. Причем, чем дольше работает ваше предприятие, тем ниже скорость расчета.

    С учетом сказанного, мы рекомендуем использовать этот примитив только если вы возлагаете обязанность по расчету бизнес-показателей на JobServer.

    @debt(@) Рассчитывает сумму дебиторской задолженности по таблице статей покупателей.

    Примитив ccheck

    Рассчитывает итоговые значения по выборке чеков за период и, возможно, по одному или нескольким складам.

    Относительно складов есть один нюанс. Кассовые чеки не принадлежат на прямую складам. Они относятся к кассовым сессиям, которые, в свою очередь, связаны с записями кассовых узлов.Таким образом, если вы запрашиваете расчет кассовых чеков по складу, то в действительности будут просуммированы чеки, относящиеся к кассовым узлам, которые принадлежат к выбранному вами складу.

    Аргументы
    Период
    Фиксированное либо шаблонное представление периода, за который необходимо просматривать кассовые чеки.
    Символ склада
    Символ склада либо список символов.
    Товарная группа
    Код товарной группы.
    Модификаторы
    amount
    Номинальная сумма чеков. Это - сумма выручки, в которой уже учтена скидка.
    cost
    То же, что и amount.
    price
    Сумма чеков, сложенная с суммой скидки. По смыслу этот показатель равен сумме, которую бы вы выручили если бы покупателям не предоставлялась скидка.
    discount
    Сумма скидки по чекам.
    netprice
    То же, что и amount.
    count
    Количество чеков в выборке.
    По умолчанию
    Номинальная сумма чеков.

    Производительность
    Скорость расчета этого примитива линейно сильно зависит от количества чеков в выборке.Для продуктовых магазинов расчет суммы чеков за год может составить до нескольких минут.

    @ccheck(@-1) Сумма чеков за вчерашний день. @ccheck.discount(1/1/@-1..31/12/@-1, 0, @goodsgroup(219)) Скидка по чекам, предоставленная на товары группы с кодом 219, за весь предыдущий год по всем складам.

    Примитив bizscore

    Рассчитывает значения по выборке бизнес-показателя заданного вида.Практическая польза от этого примитива заключается в получении агрегированных величин (сумма, среднее, количество) по выборке значений бизнес-показателя за определенный период.

    Аргументы
    Период
    Фиксированное либо шаблонное представление периода, за который необходимо просматривать значения бизнес-показателей.
    Символ показателя
    Символ бизнес-показателя, по которому необходимо получить агрегированное значение.
    Модификаторы
    amount
    Сумма всех значений показателя за выбранный период.
    count
    Количество значений показателя за выбранный период.
    average
    Средняя величина по выборке значений за период.
    По умолчанию
    Сумма всех значений показателя за выбранный период.

    Производительность
    Примитив рассчитывается очень быстро так как извлекает уже подготовленные значения.

    @bizscore.average(@-60..@, curdebt) Средняя дебиторская задолженность покупателей за последние 60 дней (предполагается, что в базе данных существует бизнес-показатель с символом curdebt, означающий текущую дебиторскую задолженность).

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

    1. Определяя формулу, на основе этого примитива, вы предполагаете, что за период, который задан в выражении, значения показателя рассчитано. Если это предположение не выполняется, то вы рискуете столкнуться с неадекватным результатом. Система предоставляет сервис для ручного расчета бизнес-показателей за произвольный период. Вы можете воспользоваться этой функцией для того, чтобы быть уверенным в наличии вычисленный значений показателя за какой-либо период. Чаще всего это имеет смысл при вводе нового показателя, поскольку показатели, определенные давно регулярно рассчитываются JobServer'ом.

    2. Порядок расчета бизнес-показателей не управляемый. То есть, вы не можете предписать системе рассчитывать сначала один показатель, а потом другой. Это замечание важно потому, что если вы определяете показатель, значение которого зависит от другого показателя, рассчитанного тут же, то не можете быть уверены, что производный показатель будет рассчитан позже того, от которого он зависит.
    3. Хотя бизнес-показатели привязываются к пользователям, это не означает, что бизнес-показатель, от которого зависит данный должен быть привязан к тому же пользователю.

      Другими словами, при каждом запуске расчета бизнес-показателей, система рассчитывает каждый из них. Привязка определяет только то, какому пользователю какие значения будут доставляться. Таким образом, вы можете определить показатель для пользователя A, который будет использовать значение показателя, определенного для пользователя B.

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

    Справочник бизнес-показателей

    Список бизнес-показателей доступен через пункт меню Справочники→ Операции→ Бизнес-показатели.

    Таблица бизнес-показателей

    Таблица бизнес-показателейВнешний вид таблицы бизнес-показателей изображен на рис. link.

    Действия в таблице бизнес-показателей

    Добавить
    <Insert> Открывает диалог редактирования нового бизнес-показателя. Описание диалога см. на стр. link.

    Добавить по образцу
    <Alt-F2> Открывает диалог редактирования нового бизнес-показателя по образцу выбранного в таблице. Описание диалога см. на стр. link.
    Редактировать
    <Enter> Открывает диалог редактирования выбранного бизнес-показателя. Описание диалога см. на стр. link.

    Удалить
    <Delete> Удаляет выбранный бизнес-показатель и все значения, связанные с ним.
    Значения показателя
    <F3> Отображает таблицу значений выбранного бизнес-показателя. Подробно эта таблица описана на стр. link.

    Пересчет всех показателей
    <F6> Запускает функцию пересчета всех бизнес-показателей. Обращаем внимание на то, что пересчету подвергаются все бизнес-показатели не зависимо от условий фильтрации данной таблицы.Для пересчета значений одного бизнес-показателя следует открыть таблицу значений по выбранному показателю и выполнить пересчет там (см. стр. link).

    Просмотр событий
    <Ctrl-J> Отображает системные события по выбранному бизнес-показателю.
    Фильтр
    <Ctrl-V> Позволяет изменить фильтр отображения бизнес-показателей в этой таблице.

    Комбо-бокс на панели инструментов таблицы предоставляет возможность быстро изменить пользователя, которым следует ограничить отображаемые показатели.

    Диалог редактирования бизнес-показателя

    Бизнес-показательДиалог редактирования бизнес-показателя показан на рис. link. Он включает в себя следующие управляющие элементы:

    Наименование
    Наименование показателя. Эта строка должна быть уникальной среди всех элементов данного справочника.
    Символ
    Строка, позволяющая ссылаться на этот показатель из формул. Если символ бизнес-показателя определен, то он должен быть уникальным среди всех элементов справочника (система следит за этим).

    ИД
    Идентификатор записи. Показывается для справки (менять это значение нельзя).

    ▼Пользователь

    Пользователь, к которому привязан данный бизнес-показатель. Если здесь не выбрано никакого пользователя, то значения этого показателя будут рассчитываться, но не будут доставляться ни одному пользователю.

    Описание
    Текстовая строка, более подробно, нежели наименование, описывающая смысл показателя.
    Формула
    Расчетная формула, по которой система вычисляет значения показателя.

    Контрольные границы значения

    [Тест]

    Кнопка, позволяющая протестировать правильность ввода формулы. При нажатии на эту кнопку система рассчитает значение показателя на сегодняшний день и выведет его в строке, расположенной под кнопкой.

    Расчет значений бизнес-показателей

    Расчет бизнес-показателей возможен в двух режимах:

  • Ручном
  • Серверном
  • Для расчета в ручном режиме выберите пункт меню Админ→ Разное→ Расчет бизнес-показателей. Кроме того, функция расчета доступна из таблицы значений бизнес-показателей (см. ниже).

    Серверный вариант позволяет поставить задачу JobServer'у для того, чтобы он автоматически с заданной периодичностью запускал данный расчет.

    Параметры расчета бизнес-показателей

    Параметры расчета бизнес-показателейКакой бы режим расчета вы не выбрали, перед непосредственным запуском (или при настройке серверной задачи) необходимо определить ряд параметров расчета.

    Диалог редактирования параметров показан на рис. link, а следующая таблица описывает его элементы.

    Период
    Период, за который следует рассчитать значения показателей. Здесь допустимо использовать шаблонизированное представление периода. В случае настройки серверной задачи следует применять именно такое представление, чтобы сервер запускал расчет для заданного периода относительно даты, когда он это делает.

    ✓Экспортировать данные в XML

    Если этот флаг установлен, то будет сформирован файл BizScoreValView.xml в каталоге исходящих данных.

    ✓Отправить данные на FTP сервер

    Установка этого признака требуется в том случае, если вы имеете зарегистрированные учетные записи на центральном сервере для доставки значений показателей мобильным пользователям.

    При включении этого флага необходимо также включить флаг ✓Экспортировать данные в XML (поскольку именно этот файл отправляется на центральный сервер).

    FTP-аккаунт
    В случае установки флага ✓Отправить данные на FTP сервер необходимо выбрать предварительно настроенную запись, в которой определены параметры FTP-сервера, на который передаются значения бизнес-показателей.

    Значения бизнес-показателей

    Таблица анализа значений бизнес-показателей

    Таблица значений бизнес-показателей доступна посредством меню Отчетность→ Значения бизнес-показателей.

    Фильтр анализа значений бизнес-показателей

    Фильтр по значениям бизнес-показателейДиалог фильтра по значениям бизнес-показателей изображен на рис. link. Он содержит перечисленные ниже управляющие элементы.

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

    Обратим внимание на то, что при выборе здесь какого-либо показателя, становится возможным просмотр графика изменения его величины во времени.

    Расчетный период
    В этом поле можно ограничить период расчетных дат показателей, выводимых в таблице.

    Начиная с (Дата, Время)

    Если в поле “Дата” установлена допустимая дата, то будут показаны только те значения, которые были рассчитаны начиная с момента, определенного этими двумя полями.

    Действия в таблице значений бизнес-показателей

    Значения бизнес-показателей

    Бизнес-показатель
    <F2> Открывает диалог просмотра и редактирования бизнес-показателя, которому соответствует значение в текущей строке.
    Расчет
    <F6> Позволяет пересчитать значения отображаемого в таблице бизнес-показателя. Отметим, что при этом выполняется стандартная функция расчета, не зависящая от параметров фильтрации таблицы (кроме, собственно, показателя).

    График
    <Ctrl-N> Эта опций доступна только в том случае, если в фильтре выбран конкретный показатель. В этом случае открывается окно графического представления величин показателя во времени.
    Печать
    <F7> Выполняет обычную процедуру отправки таблицы на печать либо на экспорта.

    Стандартная печатная форма здесь BizScoreValView.

    Фильтр
    <Ctrl-V> Позволяет изменить фильтр просмотра значений бизнес-показателей.