Обзор time tracking tools для платформы Salesforce

6 березня 2014
Илья Гребцов, Salesforce Developer

Salesforce CRM — наиболее комплексное отраслевое решение в области управления взаимоотношениями с клиентами (CRM), сочетающее управление продажами с маркетингом и обслуживанием клиентов и позволяет качественно управлять каждой сделкой и отношениями со всеми потенциальными и существующими клиентами.

Лучший способ найти желаемое — посмотреть готовые приложения на https://appexchange.salesforce.com. Для установки приложения с AppExchange достаточно проделать несколько несложных операций:

  1. Log in to AppExchange https://appexchange.salesforce.com (Another way: click Setup -> AppExchange Marketplace in your org).
  2. Find the App.
  3. Press the button "Get It Now".
  4. Press "Install in production" or "Install in sandbox" button depending on the installation location.
  5. Confirm your agreement to terms of agreements.
  6. Check Package Installation Details.
  7. Approve Package API Access.
  8. Choose security level.
  9. Install Package

Мы опробовали три приложения с AppExchange. Далее — по каждому из них.

Hourly Timesheets for Payroll, Project Timesheet Time Tracking for Billing

Страница пакета для Salesforce. Cтраница сервиса (можно использовать без Salesforce).

Для использования необходимо зарегистрироваться на timeclockonline.com.

One of the many advantages of the platform under question is a wide range of available ways of time tracking.

Удовольствие не бесплатное. Одному пользователю предоставляется 10-дневный триальный аккаунт. Расклад цен такой (зависит от количества пользователей):

Два пользователя — $ 9 в месяц, $ 99 в год. 10 пользователей — $ 45 и $ 495. 20 пользователей —$ 90 per month и $ 990.

Можно подключить дополнительную платную опцию Photo Timestamp—– периодически фотографировать юзера с помощью вебкамеры.

Общая страница с ценами.

Блог DataArt, Март 2014, Обзор time tracking tools для платформы Salesforce

Личные впечатления

Интерфейс.

  1. Окно узкое и нерезиновое (но можно подобрать ширину в специальном меню). Не нашел, можно ли растянуть таб по высоте — приходится скроллить в окошке, хотя под табом много места. Очень много настроек (реальный минус — глаза разбегаются). Интерфейс явно перегружен. Блог DataArt, Март 2014, Обзор time tracking tools для платформы Salesforce
  2. Для пользователя можно установить рабочие часы (включая перерыв на обед), учесть оверворки, стоимость часа работы, бонусы и др. Тайм-шиты можно подписывать электронной подписью. Пользователю можно указать список подчиненных (других юзеров), проекты, заказчики (проекты и заказчики можно добавить в соседней вкладке).
  3. Автоматический трекинг времени (нажать большую кнопку CLOCK IN в интерфейсе в начале работы и ее же, но уже красную с надписью CLOCK OUT, в конце), либо ручное редактирование тайм-шитов. Блог DataArt, Март 2014, Обзор time tracking tools для платформы Salesforce Можно также списать время на Sick, Vacation, Holiday, Unpayable/Salaried, PTO. Блог DataArt, Март 2014, Обзор time tracking tools для платформы Salesforce
  4. Оплата зависит от настроек юзера, проекта, заказчика. Можно дополнять, переопределять, все весьма гибко.
  5. Тайм-шиты можно/нужно аппрувить.
  6. Есть отчеты и графики по юзеру, проекту. Вроде вполне разумные. Но так как данные хранятся на стороне сервиса, нет способа сделать что-то кастомизированное на стороне Salesforce. Блог DataArt, Март 2014, Обзор time tracking tools для платформы Salesforce На email приходят еженедельные отчеты.
  7. Видимо, не знали, что еще добавить, — есть отдельный раздел «daily comic». Это, конечно, забавно, но интерфейс и без этого слишком перегружен. Блог DataArt, Март 2014, Обзор time tracking tools для платформы Salesforce

Интеграция с SalesForce

Минимальная. Единственная зависимость с существующими объектами — в объект User добавляется два поля с логином и паролем от сервиса TimeclockOnline для автоматического логина.

При инсталляции добавляется несколько табов "Don't Use" с описанием «This tab is old. Use the new "TimeclockOnline.com" tab instead» — лишний мусор, но особо не мешает.

Все данные хранятся на стороне сервиса — нет ни одного объекта. Табы используют простые VisualForce страницы, которые используют контроллеры на стороне сервиса https://salesforce.timeclockonline.com

Т. е., нет способа автоматизировать что-либо с помощью триггеров, своих методов, интегрировать со своими кастомными объектами.

В комплекте с пакетом идет несколько S-Control — их можно в строить в какую-нибудь страницу Salesforce вместо использования отдельного таба.

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

В следующем году планируют более глубоко интегрироваться с Salesforce. Пока приложение ставится как отдельный таб (ну, собственно, это я уже видел).

В Setup Wizard можно указать дополнительные настройки и скорректировать различные списки. В частности, я спрашивал, возможно ли в список причин списания времени (Sick, Vacation, Holiday) добавить свой вариант.

Итого

Сервис действительно богатый возможностями. Саппорт отзывчивый. Но это — инородное тело в среде Salesforce. Мы не можем получить никаких преимуществ от интеграции с SalesForce. Не можем использовать SalesForce триггеры и воркфлоу, отчеты и уведомления по Email, основываяся на данных, занесенных в Time tracking tool.

Time Tracking

Страница пакета для Salesforce.

Log the amount of hours worked on a particular service trip. You can track the type of service that you performed, the date of service, and add notes as needed. Each Service Timecard should be associated with the relevant Contract, by the customer's service Contract number.

If your company also uses the Supportforce application, you may associate Service Timecards with particular Cases that were logged requesting a Service Visit.

Впечатления

Действительно бесплатно, в отличии от предыдущего сервиса, который под “free” понимает триальный аккаунт на 10 дней.

Пакет добавляет в систему объект "Service Timecard" и два таба.

В первом, "About Time Tracking", чисто информационном, — описание пакета.

Блог DataArt, Март 2014, Обзор time tracking tools для платформы Salesforce

Второй "Service Timecard" — стандартный таб (Salesforce-style) одноименного кастомного объекта + сам объект.

Блог DataArt, Март 2014, Обзор time tracking tools для платформы Salesforce

Это всё содержимое пакета! Никакой логики, даже банальных Validation Rules, нет. Никаких итоговых сумм, никаких отчетов.

Все это необходимо реализовывать самостоятельно. Всё, что добавляет пакет (объект с полями и табом), можно и без него создать за час.

Блог DataArt, Март 2014, Обзор time tracking tools для платформы Salesforce

Пакет распространяется как Unmanaged Package, т. е. не предусматривает автоматический апгрейд и прочую поддержку.

В отличие от предыдущего номинанта, не является сервисом. И судя по вариантам Service Performed, ориентирован на админов поддержки.

Итого: пакет стоит рассматривать лишь как набросок, на базе которого можно реализовать свою систему.

Не удовлетворившись результатом исследований предыдущих двух пакетов, я продолжил искать.

Time Track

Страница пакета для Salesforce.

App by American Data Company

The second generation of American Data Company’s Timer is a powerful tool for any organization interested in tracking time. With an enhanced user interface, this new release also empowers organizations to associate time with any standard or custom object.

Released 10/27/2009

Features:

  • Track time against any object via a standalone web based timer
  • Enhanced user experience
  • 100% native to Salesforce.com

Package Details:

Name: American Data Company Timer Version: Public / 1.3.0 Type: Managed Package Pricing: Free

Описание

Классы устанавливаются c отдельным Namespace Prefix: vftimer. Так как это managed пакет, содержимое классов скрыто. Включает юнит-тесты.

Единственный таб "Timer Configs" содержит список конфигов (записей одноименного кастомного объекта). Конфиг предлагает набор опций отображения 4-х полей (чекбоксы):

  • Show Subject – Require Subject
  • Show Description – Require Description
  • Show Work Type – Require Work Type
  • Show Billing Type – Require Billing Type

Блог DataArt, Март 2014, Обзор time tracking tools для платформы Salesforce

Может быть несколько записей, актуальный конфиг отмечается чекбоксом Active (не может быть одновременно два активных конфига — проверяется триггером EnforceSingleActiveConfig и при попытке назначить второй активным выдается ошибка).

Чекбоксы Require Subject, Require Description, Require Work Type, Require Billing Type можено отметить только если отмечен соответстующий ему чекбокс Show (проверяется с помощью Validation Rules).

Объект "Timed Item" содержит записи о списании времени. Поля:

  • Billing Type — picklist. Варианты выбора (можно изменить и добавить):
    • Billable
    • Fixed Price
    • Gratis
    • Not Billable
  • Work Type - picklist. Варианты выбора (можно изменить и добавить):
    • Business Analysis
    • Consulting
    • Documentation
    • Client-Side Development
    • Server-Side Development
  • Case - необязательный лукап на стандартный объект Case
  • Date Implemented — дата списания.
  • Time — сколько часов списано.
  • Description — текстовое поле.

Объект "Timed Item" не имеет своего таба (при желании можно создать), вместо этого предлагается другой подход. Необходима доработка (шаги доработки описаны в инструкции, прилагающейся к пакету). Кратко:

  1. Нужно добавить в "Timed Item" поле типа лукап на объект, с которым работают пользователи и время работы с этим объектом нужно учитывать. По-умолчанию такой лукап уже есть на объект Case. Можно добавить на свой кастомный объект или стандартный, например на Contact чтобы списывать время, затраченное на консультирование клиента компании. Связей может быть много, таким образом можно учитывать время при работе с различными типами записей.
  2. Нужно добавить related list в layout связанного объекта, чтобы можно было видеть списания времени на каждую конкретную запись.
  3. Нужно добавить кастомную кнопку, содержащую URL на VisualForce страницу компонента. При нажатии на кнопку открывается окно таймера (см. скриншот) — главная фича этого пакета. В этом окне можно запустить/остановить таймер в начале и конце работы с объектом, просмотреть предыдущие списания времени.

Блог DataArt, Март 2014, Обзор time tracking tools для платформы Salesforce

Таким образом, пользователям CRM предлагается следующий алгоритм действий:

  1. Создать или открыть существующую запись объекта, с которым пользователь работает.
  2. Нажать кнопку открытия окна с таймером.
  3. Запустить таймер.
  4. Собственно, поработать с записью, открытой на 1-ом шаге.
  5. Остановить таймер. Заполнить поля для списания времени (если есть). При необходимости скорректировать значение таймера.
  6. Закрыть окно таймера. Закрыть окно с записью, с которой работал пользователь, либо перейти к следующей.

Блог DataArt, Март 2014, Обзор time tracking tools для платформы Salesforce

Отчеты и графики в состав пакета не входят. Но, поскольку для хранения записей списания времени используется простой кастомный объект, не сложно создать самостоятельно, используя стандартные средства SalesForce.

Страница таймера содержит логотипы компании American Data Company. Заявлена поддержка браузеров:

  • Firefox 3.x (cross-platform)
  • Internet Explorer 8 (Windows)
  • Chrome 2.x (Windows)

Специально не тестировал, случайно обнаружил, что в Opera есть небольшой баг: дублируется подпись кнопок. Можно пережить.

Страница входит в managed package, редактировать нельзя, но ее код открыт. Можно сделать свою страницу, скопировав содержимое из страницы пакета, и скорректировать стили или сделать модификации. По нажатию кнопок открывать свою страницу.

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

Рекомендую!

  • Україна, Remote.UA; Україна, Дніпро; Україна, Київ; Україна, Львів; Україна, Одеса; Україна, Харків; Україна, Херсон
    18 листопада
  • Україна, Remote.UA; Україна, Дніпро; Україна, Київ; Україна, Львів; Україна, Одеса; Україна, Харків; Україна, Херсон
    1 липня
  • Україна, Дніпро; Україна, Київ; Україна, Львів; Україна, Одеса; Україна, Харків; Україна, Херсон
    25 червня
  • Україна, Одеса
    25 червня