Как самостоятельно разработать простую конфигурацию для управления IT-компанией в 1С?

Программист 1С v8.3 (Управляемые формы) Управленческий учет IT и автоматизация бизнеса
← На главную

Разработка собственной конфигурации в среде 1С — это отличный способ для новичка не только закрепить теоретические знания, но и создать реально работающий инструмент для бизнеса. На примере IT-компании мы разберем процесс проектирования системы, которая позволит автоматизировать хаос, учитывать задачи программистов и контролировать сроки выполнения проектов. Проанализируем ситуацию: представим, что нам нужно управлять потоком заявок на разработку ПО, распределять ресурсы и следить за состоянием каждого проекта.

Проектирование базовой структуры справочников

Любая информационная система начинается с нормативно-справочной информации. В нашем случае нам необходимо понимать, кто ставит задачи и кто их выполняет. Разберем создание основных справочников. Нам понадобятся два ключевых объекта: Пользователи (заказчики или внутренние сотрудники, которые создают тикеты) и Программисты (исполнители задач).

Для каждого справочника на этапе разработки достаточно стандартных реквизитов Наименование и Код. Однако для профессионального подхода мы можем добавить реквизит КонтактнаяИнформация или Подразделение. Рассмотрим важный момент: не стоит путать объект конфигурации Задача (типовой объект для бизнес-процессов) с нашим прикладным пониманием задачи. Для новичка проще и надежнее реализовать учет через документы.

Создание документа «Заявка на разработку»

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

  1. Наименование: краткая суть задачи (например, «Разработать отчет по продажам»).
  2. Описание: подробное техническое задание в формате длинной строки.
  3. ДатаВыполнения: плановый срок, к которому программист должен завершить работу.
  4. Пользователь: ссылка на справочник Пользователи.
  5. Исполнитель: ссылка на справочник Программисты.

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

Учет состояний через Перечисления и Регистры сведений

Для понимания того, на каком этапе находится разработка, нам необходимо внедрить систему статусов. Создадим объект типа Перечисление с именем СтатусыЗадач. Включим в него следующие значения: Новая, ВРаботе, Тестирование, Выполнена.

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

Настроим структуру регистра:

Программная запись статуса при проведении документа

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


Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
    
    МенеджерЗаписи = РегистрыСведений.ИсторияСтатусов.СоздатьМенеджерЗаписи();
    МенеджерЗаписи.Период = ТекущаяДата();
    МенеджерЗаписи.Задача = ЭтотОбъект.Ссылка;
    МенеджерЗаписи.Статус = ЭтотОбъект.Статус; // Если реквизит Статус добавлен в документ
    МенеджерЗаписи.Записать();
    
КонецПроцедуры

Разработка пользовательского интерфейса (Формы)

Для того чтобы пользователи могли удобно работать с системой, нам необходимо настроить управляемые формы. Рассмотрим создание Формы документа. 1С позволяет генерировать формы автоматически, но для удобства мы можем сгруппировать реквизиты. Например, вынести Исполнителя и Срок в отдельную колонку, а Описание сделать большим текстовым полем на всю ширину экрана.

Также важно создать Форму списка для документа ЗаявкаНаРазработку. В списке полезно настроить Условное оформление. Выясним, как это сделать: в настройках динамического списка добавим условие, что если ДатаВыполнения меньше текущей даты и статус не равен Выполнена, то строка должна подсвечиваться красным цветом. Это визуально выделит просроченные задачи для менеджера.

Построение отчетности на СКД

Финальным этапом базовой автоматизации является создание отчета. Мы воспользуемся Системой компоновки данных (СКД). Наш отчет должен отвечать на вопросы: «Сколько задач сейчас в работе?», «Кто из программистов загружен сильнее всех?» и «Есть ли просроченные проекты?».

В схеме компоновки данных мы выберем в качестве источника наш документ ЗаявкаНаРазработку и соединим его с виртуальной таблицей СрезПоследних регистра сведений ИсторияСтатусов. Это позволит нам всегда видеть актуальное состояние каждой задачи в единой таблице. Добавим вычисляемое поле Просрочено (типа Булево), которое будет принимать значение Истина, если текущая дата больше плановой даты завершения.

Дополнительные возможности для развития конфигурации

Чтобы конфигурация стала по-настоящему уникальной и полезной для IT-компании, рассмотрим внедрение дополнительных модулей, которые часто требуются в реальной практике:

1. Учет лицензий: Создайте справочник ПрограммноеОбеспечение и документ ПоступлениеЛицензий. Это позволит отслеживать сроки действия подписок на софт, используемый в компании. С помощью регламентного задания можно настроить рассылку уведомлений ответственному лицу за 10 дней до окончания лицензии.

2. Тайм-трекинг (Учет времени): Добавьте в документ задачи табличную часть Трудозатраты, где программист будет фиксировать время, потраченное на работу в течение дня. Это основа для управленческого учета и расчета себестоимости разработки проекта.

3. Матрица навыков (Skills Matrix): В справочнике Программисты можно создать табличную часть с перечнем технологий (1С, SQL, Python) и уровнем владения. Это поможет руководителю проекта быстро подбирать исполнителей под специфические задачи заказчика.

Таким образом, даже новичок может собрать надежный «каркас» системы управления IT-бизнесом. Главное — идти от простого к сложному: сначала зафиксировать объекты учета, затем настроить связи между ними через регистры и в конце визуализировать данные с помощью форм и отчетов. Мы проанализировали основные этапы и убедились, что платформа 1С предоставляет все необходимые инструменты для быстрой реализации подобных задач.

← На главную