Дата релиза: 11.12.2021 г.
В новой версии WorkPoint изменится подход к планированию и учету финансовых показателей по проектам. После обновления упростится логика формирования P&L, а процесс финансового учета станет более автоматизированным.
Главное изменение — в проектах больше не будет финансовых операций и, как следствие, не будет механизма признания.
Фактическая себестоимость в финансовом отчете будет автоматически рассчитываться на основе согласованных таймшитов, плановая себестоимость — на основе базовой версии ресурсного плана (да-да, теперь у ресурсного плана появятся версии). Прогнозная себестоимость будет рассчитываться как сумма двух составляющих:
Упростится учет и планирование выручки. Все сведения о выручке будут отображаться в одной таблице на вкладке Выручка.

Каждая строка этой таблицы — плановое начисление. Для каждого начисления указывается этап проекта, плановая, прогнозная и фактическая дата начисления, а также плановая и фактическая сумма.
Изменится подход к учету прямых затрат. Для планирования затрат будет предусмотрена отдельная вкладка в карточке проекта — Оценка затрат.

Плановая себестоимость рассчитывается с помощью Мастера планирования себестоимости труда на основе ресурсного плана проекта.
После формирования затратных строк в бюджете проекта связи с часами в ресурсном плане не сохраняется — изменения ресурсного плана не приводят к изменению себестоимости в бюджете.
Плановая себестоимость в финансовом отчете по проекту рассчитывается автоматически на основе базовой версии ресурсного плана.

Изменения базовой версии ресурсного плана автоматически приводит к изменению плановой себестоимости в финансовом отчете.

Фактическая себестоимость попадает в финансовый отчет со вкладки Операции. Операции создаются в результате Признания себестоимости труда.
Фактическая себестоимость в финансовом отчете будет рассчитываться автоматически, на основе согласованных часов. Фактическая себестоимость в финансовом отчете будет обновляться сразу после появления согласованных таймшитов без необходимости выполнения признания.
Прогноз себестоимости труда в финансовом отчете строится на основе признанных операций, факта по часам из таймшитов и ресурсного плана.
Прогнозная себестоимость будет рассчитываться как сумма двух составляющих:
Выручка планируется путем создания строк с типом «Выручка» в Бюджете проекта.
Все сведения о выручке будут отображаться в одной таблице на вкладке Выручка.

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

Фактическая выручка попадают в финансовый отчет со вкладки Операции. Операции создаются в результате Признания выручки.
Выручка будет считаться фактической с момента заполнения полей Факт. дата и Факт. сумма в таблице на вкладке Выручка в карточке проекта.

Период, к которому будет отнесена фактическая выручка в финансовом отчете определяется на основе поле Факт. дата.

Прогноз выручкив финансовом отчете строится следующим образом:
В таблице на вкладке Выручка для каждой строки можно будет заполнить поле Прогноз. дата. Прогнозная дата позволяет указать ожидаемую, прогнозируемую дату получения выручки. Это особенно важно в случаях, когда возникает отклонение от плана.
Затраты планируются путем создания строк с типом «Затраты» в Бюджете проекта.
Планирование затрат будет осуществляться с помощью вкладки Оценка затрат в карточке проекта.

Для планирования затрат на этой вкладке необходимо создать строку в таблице и заполнить поля:
Значения со вкладки Оценка затрат отражаются в колонке План финансового отчета. Период начисления определяется в соответствии с плановой датой.
Фактические затраты попадают в финансовый отчет со вкладки Операции. Операции создаются в результате Признания затрат.
Фактические затраты в финансовом отчете будут рассчитываться автоматически, на основе согласованных заявок на затраты. Суммы фактических затрат в финансовом отчете будут обновляться сразу после появления согласованных заявок на затраты без необходимости выполнения признания.
Прогноз затрат в финансовом отчете строится следующим образом:
Прогноз затрат по проекту будет складываться из двух составляющих:
После миграции из проектов будет удалена вкладка Бюджет, а данные о плановой себестоимости труда будут рассчитываться на основе ресурсного плана, версии Базовый план.
В ходе миграции часы из ресурсного плана, актуального на момент миграции, будут перенесены в ресурсный план, версию Текущая оценка, а версия Базовый план будет пустой.
В результате удаления вкладки Бюджет и изменения механизма расчета плановой себестоимости труда, данные о плановой себестоимости с вкладки Бюджет будут потеряны.
После миграции и проектов будет удалена вкладка Операции, а данные о фактической себестоимости будут рассчитываться непосредственно на основе согласованных таймшитов.
В результате может удаления вкладки Операции и перерасчета себестоимости по новому алгоритму, могут измениться значения фактической себестоимости.
Источник «Финансовые сведения» агрегировал информацию обо всех финансовых операциях по проектам. В этот источник попадали данные со вкладок Бюджет и Операции. Удаление указанных вкладок в ходе миграции приведет к удалению из системы источника данных «Финансовые сведения» и всех отчетов, построенных на этом источнике.
Так как после миграции ресурсный план будет разделен на две версии, изменится структура показателей в источнике данных «Ресурсный план». Некоторые отчеты на этом источнике могут перестать работать. Рекомендуется их перестроить.
Поля аналитик остались без изменений. Изменения по полям значений:
| Код поля (было) | Код поля (стало) | Описание изменения |
|---|---|---|
| ActualHours | ActualHours | Теперь это только «Согласованные» данные |
| ActualHoursOverPeriod | ActualHoursOverPeriod | Теперь это только «Согласованные» данные |
| ApprovedActualHours | Удалено | |
| ApprovedActualHoursOverPeriod | Удалено | |
| ActualHoursNormalized | ActualHoursNormalized | Теперь это только «Согласованные» данные |
| ActualHoursNormalizedOverPeriod | ActualHoursNormalizedOverPeriod | Теперь это только «Согласованные» данные |
| ActualCost | ActualCost | Теперь это только «Согласованные» данные |
| ActualCostOverPeriod | ActualCostOverPeriod | Теперь это только «Согласованные» данные |
| ActualCostNormalized | ActualCostNormalized | Теперь это только «Согласованные» данные |
| ActualCostNormalizedOverPeriod | ActualCostNormalizedOverPeriod | Теперь это только «Согласованные» данные |
| ActualExpenses | ActualExpenses | Теперь это данные из согласованных заявок на затраты |
| ActualExpensesOverPeriod | ActualExpensesOverPeriod | Теперь это данные из согласованных заявок на затраты |
| ActualRevenue | ActualRevenue | Теперь это данные из вкладки проекта «Выручка» |
| ActualRevenueOverPeriod | ActualRevenueOverPeriod | Теперь это данные из вкладки проекта «Выручка» |
| TmRevenue | ActualRevenueTM | Переименовано |
| TmRevenueOverPeriod | ActualRevenueTMOverPeriod | Переименовано |
| PlannedHours | PlannedHours | Теперь это данные из «Базового» ресурсного плана |
| PlannedHoursOverPeriod | PlannedHoursOverPeriod | Теперь это данные из «Базового» ресурсного плана |
| PlannedCost | PlannedCost | Теперь это данные из «Базового» ресурсного плана |
| PlannedCostOverPeriod | PlannedCostOverPeriod | Теперь это данные из «Базового» ресурсного плана |
| EstimatedExpenses | PlannedExpenses | Переименовано. Теперь это данные из вкладки проекта «Оценка затрат» |
| EstimatedExpensesOverPeriod | PlannedExpensesOverPeriod | Переименовано. Теперь это данные из вкладки проекта «Оценка затрат» |
| EstimatedRevenue | PlannedRevenue | Теперь это данные из вкладки проекта «Выручка» |
| EstimatedRevenueOverPeriod | PlannedRevenueOverPeriod | Теперь это данные из вкладки проекта «Выручка» |
| EstimatedProfit | PlannedProfit | Переименовано |
| EstimatedProfitability | PlannedProfitability | Переименовано |
| EstimatedProfitabilityOverPeriod | PlannedProfitabilityOverPeriod | Переименовано |
| EstimatedProfitOverPeriod | PlannedProfitOverPeriod | Переименовано |
| EstimatedCost | Добавлено. Это данные из текущей версии ресурсного плана | |
| EstimatedCostOverPeriod | Добавлено. Это данные из текущей версии ресурсного плана | |
| EstimatedHours | EstimatedHours | Теперь это данные из текущей версии ресурсного плана (или поля задачи «Оценка» для базовой редакции) |
| EstimatedHoursOverPeriod | Добавлено. Это данные из текущей версии ресурсного плана | |
| ForecastCost | ForecastCost | Изменена логика вычисления |
| ForecastExpenses | ForecastExpenses | Изменена логика вычисления |
| ForecastHours | ForecastHours | Изменена логика вычисления |
| ForecastProfitability | ForecastProfitability | Изменена логика вычисления |
Поля аналитик остались без изменений. Изменения по полям значений:
| Код поля (было) | Код поля (стало) | Описание изменения |
|---|---|---|
| ActualHours | ActualHours | Теперь это только «Согласованные» данные |
| ActualHoursOverPeriod | ActualHoursOverPeriod | Теперь это только «Согласованные» данные |
| ActualHoursNormalized | ActualHoursNormalized | Теперь это только «Согласованные» данные |
| ActualHoursNormalizedOverPeriod | ActualHoursNormalizedOverPeriod | Теперь это только «Согласованные» данные |
| ActualCost | ActualCost | Теперь это только «Согласованные» данные |
| ActualCostOverPeriod | ActualCostOverPeriod | Теперь это только «Согласованные» данные |
| ActualCostNormalizedOverPeriod | ActualCostNormalizedOverPeriod | Теперь это только «Согласованные» данные |
| ActualCostNormalized | ActualCostNormalized | Теперь это только «Согласованные» данные |
| ActualRevenue | ActualRevenue | Теперь это данные из вкладки проекта «Выручка» |
| ActualRevenueOverPeriod | ActualRevenueOverPeriod | Теперь это данные из вкладки проекта «Выручка» |
| ActualExpenses | ActualExpenses | Теперь это данные из согласованных заявок на затраты |
| ActualExpensesOverPeriod | ActualExpensesOverPeriod | Теперь это данные из согласованных заявок на затраты |
| TmRevenue | ActualRevenueTM | Переименовано |
| TmRevenueOverPeriod | ActualRevenueTMOverPeriod | Переименовано |
| PlannedHours | PlannedHours | Теперь это данные из «Базового» ресурсного плана |
| PlannedHoursOverPeriod | PlannedHoursOverPeriod | Теперь это данные из «Базового» ресурсного плана |
| PlannedCost | PlannedCost | Теперь это данные из «Базового» ресурсного плана |
| PlannedCostOverPeriod | PlannedCostOverPeriod | Теперь это данные из «Базового» ресурсного плана |
| EstimatedCost | Добавлено. Это данные из текущей версии ресурсного плана | |
| EstimatedCostOverPeriod | Добавлено. Это данные из текущей версии ресурсного плана | |
| EstimatedHours | Добавлено. Это данные из текущей версии ресурсного плана (или поля задачи «Оценка» для базовой редакции) | |
| EstimatedHoursOverPeriod | Добавлено. Это данные из текущей версии ресурсного плана | |
| EstimatedRevenue | PlannedRevenue | Переименовано. Теперь это данные из вкладки проекта «Выручка» |
| EstimatedRevenueOverPeriod | PlannedRevenueOverPeriod | Переименовано. Теперь это данные из вкладки проекта «Выручка» |
| EstimatedExpenses | PlannedExpenses | Переименовано. Теперь это данные из вкладки проекта «Оценка затрат» |
| EstimatedExpensesOverPeriod | PlannedExpensesOverPeriod | Переименовано. Теперь это данные из вкладки проекта «Оценка затрат» |
| EstimatedProfit | PlannedProfit | Переименовано |
| EstimatedProfitOverPeriod | PlannedProfitOverPeriod | Переименовано |
Поля аналитик остались без изменений. Изменения по полям значений:
| Код поля (было) | Код поля (стало) | Описание изменения |
|---|---|---|
| PlannedHours | PlannedHours | Теперь это данные из «Базового» ресурсного плана |
| PlannedRevenueTM | PlannedRevenueTM | Теперь это данные из «Базового» ресурсного плана |
| PlannedCost | PlannedCost | Теперь это данные из «Базового» ресурсного плана |
| PlannedCostByRole | PlannedCostByRole | Теперь это данные из «Базового» ресурсного плана |
| EstimatedHours | Добавлено. Это данные из текущей версии ресурсного плана | |
| EstimatedRevenueTM | Добавлено. Это данные из текущей версии ресурсного плана | |
| EstimatedCost | Добавлено. Это данные из текущей версии ресурсного плана | |
| EstimatedCostByRole | Добавлено. Это данные из текущей версии ресурсного плана | |
| ActualHoursTotal | ActualHours | Переименовано. Теперь это только «Согласованные» данные |
| ActualHoursApproved | Удалено | |
| ActualHoursNormalized | ActualHoursNormalized | Теперь это только «Согласованные» данные |
| ActualHoursBillable | Удалено | |
| ActualHoursNonBillable | Удалено | |
| ActualHoursProjects | Удалено | |
| ActualHoursTimeOffs | Удалено | |
| ActualCost | ActualCost | Теперь это только «Согласованные» данные |
| ActualCostNormalized | ActualCostNormalized | Теперь это только «Согласованные» данные |
| ActualCostByRole | ActualCostByRole | Теперь это только «Согласованные» данные |
| ActualRevenueTM | ActualRevenueTM | Теперь это только «Согласованные» данные |
Поля аналитик остались без изменений. Изменения по полям значений:
| Код поля (было) | Код поля (стало) | Описание изменения |
|---|---|---|
| PlannedHours | PlannedHours | Теперь это данные из «Базового» ресурсного плана |
| PlannedRevenueTM | PlannedRevenueTM | Теперь это данные из «Базового» ресурсного плана |
| PlannedCost | PlannedCost | Теперь это данные из «Базового» ресурсного плана |
| PlannedCostByRole | PlannedCostByRole | Теперь это данные из «Базового» ресурсного плана |
| EstimatedHours | Добавлено. Это данные из текущей версии ресурсного плана | |
| EstimatedRevenueTM | Добавлено. Это данные из текущей версии ресурсного плана | |
| EstimatedCost | Добавлено. Это данные из текущей версии ресурсного плана | |
| EstimatedCostByRole | Добавлено. Это данные из текущей версии ресурсного плана | |
| AllocatedHours | BookedHours | Переименовано |
| AllocatedCost | BookedCost | Переименовано |
| ActualHoursTotal | ActualHours | Переименовано. Теперь это только «Согласованные» данные |
| ActualCost | ActualCost | Теперь это только «Согласованные» данные |
| ActualHoursNormalized | ActualHoursNormalized | Теперь это только «Согласованные» данные |
| ActualCostNormalized | ActualCostNormalized | Теперь это только «Согласованные» данные |
| ActualHoursBillable | Удалено | |
| ActualHoursNonBillable | Удалено | |
| ActualHoursProjects | Удалено | |
| ActualHoursTimeOffs | Удалено | |
| ActualHoursApproved | Удалено |
Изменения по коллекциям OData:
| Коллекция | Описание изменения |
|---|---|
| BudgetEntries | Удалена |
| FinancialOperations | Удалена |
| FinancialAccounts | Удалена |
| ProjectExpenseEstimates | Добавлена |
| ProjectRevenueLines | Добавлена |
Назначение — строка оценки затрат в карточке проекта.
| Свойство | Тип | Описание |
|---|---|---|
| id | Guid | |
| createdBy | Navigation | Кем была создана сущность |
| modifiedBy | Navigation | Кем последний раз сущность была изменена |
| created | DateTimeOffset | Когда сущность была создана |
| modified | DateTimeOffset | Когда последний раз сущность была изменена |
| isActive | bool | Признак «Действующий» |
| project | Navigation | Проект |
| projectTask | Navigation | Задача проекта |
| expenseType | Navigation | Тип затрат |
| amount | decimal | Сумма |
| date | date | Дата затрат |
| description | string | Описание |
Назначение — строка плана/факта выручки по проекту.
| Свойство | Тип | Описание |
|---|---|---|
| id | Guid | |
| createdBy | Navigation | Кем была создана сущность |
| modifiedBy | Navigation | Кем последний раз сущность была изменена |
| created | DateTimeOffset | Когда сущность была создана |
| modified | DateTimeOffset | Когда последний раз сущность была изменена |
| isActive | bool | Признак «Действующий» |
| project | Navigation | Проект |
| projectTask | Navigation | Задача проекта |
| plannedAmount | decimal | Плановая сумма по строке |
| plannedDate | date | Плановая дата |
| actualAmount | decimal | Фактическая сумма по строке |
| estimatedDate | date | Прогнозная дата |
| actualDate | date | Фактическая дата |
| description | string | Описание |
Свойства:
| Свойство | Тип | Описание |
|---|---|---|
| version | ResourcePlanVersion | Добавлено |
Тип ResourcePlanVersion (Enum):
Действия и функции:
| Метод | Описание изменения |
|---|---|
| WP.UpdateResourcePlan | Изменен контракт. Тело запроса: |
| { | |
| «scale»: «Week», | |
| «version»: «Work», | |
| «entries»: [ | |
| { | |
| «date»: «», | |
| «hours»: 0, | |
| «taskId»: «», | |
| «teamMemberId»: «», | |
| «roleId»: «" | |
| } | |
| ] | |
| } | |
| Прежние запросы, без указания version, продолжат работать. Поле version по умолчанию устанавливается в Work. | |
| WP. GetResourcePlan | Изменены параметры функции. |
| /odata/Projects(id)/ WP.GetResourcePlan(scale=WP.PlanningScale'Week', from=15.11.2021, to=06.03.2022, onlyWithData=false, version=WP.ResourcePlanVersion'Work') | |
| Добавлены два параметра: | |
| 1) onlyWithData (bool) — фильтр, по умолчанию false (можно опустить); | |
| 2) version — версия плана, по умолчанию Work (можно опустить). | |
| WP. UpdateProjectBudget | Удалено |
| WP. UpdateProjectFinancialOperations | Удалено |
| WP. TrackExpenses | Добавлено. Вспомогательный метод, упрощающий учет фактических затрат по проекту (для учета фактических затрат теперь необходимо создавать заявку на затраты). |
| Контракт: POST /odata/Projects(id)/WP.TrackExpenses | |
| Body: | |
| { | |
| «autoApprove»: true, // true — запрос будет сразу переведен в статус «Согласовано». | |
| «lines»: [ | |
| { | |
| «projectTaskId»: «», // ИД задачи проекта, если null — будет заполнено ИД главной задачи (самого проекта) | |
| «expenseTypeId»: «», // ИД типа затрат | |
| «amount»: 0, // Сумма затрат | |
| «date»: «01.01.2015», // Дата затрат | |
| «description»: «» // Описание | |
| } | |
| ] | |
| } | |
| Выполнение метода приводит к созданию новой заявки на затраты с заполнением строк затрат и, при необходимости, запрос сразу «утверждается». |
Перейти на русскую версию?