Лого Solvery
0
Обложка: 17 мгновений 1С: история разработчика 

17 мгновений 1С: история разработчика 

Алексей Леонов
Алексей Леонов

Практикующий разработчик 1С и ментор Solvery

Так уж сложилось, что я работаю в 1С более 17 лет, и у меня вышло 17 примеров использования 1С в связке с другими системами, поэтому и статью я решил назвать «17 мгновений 1С».

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

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

1С Бухгалтерия и… Стоп, я же только что писал, что 1С — это не только бухгалтерия, так почему же я решил начать именно с неё? Смотрите, тут какая штука. Все привыкли, что 1С-ник должен знать бухгалтерию, проводки и баланс лучше любого главбуха. Но я глубоко убежден, что каждый должен быть компетентен именно в своей нише и разбираться именно в своих задачах.

Какие же задачи стоят пред 1С разработчиком для Бухгалтерии?

Кейс 1. Интеграция с сервисом Smartway для автоматической загрузки командировочных документов. Убираем рутину и дублирование ввода данных разными пользователями.

Кейс 2. Бесшовная интеграция с документооборотом. Возможность настроить сквозные бизнес-процессы согласования, подписания, использование ЭЦП, автоматическое прикрепление печатных форм.

Следующий классический случай — 1С Зарплата и управление персоналом

Что же здесь может быть интересного для разработчика 1С, если у него душа не лежит к планам расчётов и разбору ошибок учёта?

Кейс 3. Интеграция с рекрутинговыми сервисами, например Huntflow. Загрузка резюме, работа с подбором персонала, анкетами, кандидатами, вакансиями в тесной связке с 1С.

Кейс 4. Интеграция с СКУД. Активация карточек доступа, контроль учёта рабочего времени, дашборды и аналитика трудовой дисциплины (грубо говоря, как часто сотрудник выходит покурить.

Кейс 5. Интеграция с ActiveDirectory. Создание, блокирование, обновление данных учетных записей. Упрощаем работу системным администраторам и отделу информационной безопасности.

Кейс 6.  Переход на кадровый электронный документооборот. Тут пространство для маневра очень велико — можно интегрироваться со сторонними сервисами (Сбер Корус, СБИС, HRLink) или же использовать свою инфраструктуру на базе сертификатов Microsoft и 1С Документооборота. Помним про бесшовную интеграцию.

Кейс 7. Процессинг, интеграция с банковскими шинами данных, зарплатные проекты и всё с ними связанное.

Кейс 8. Внедрение системы рассылок уведомлений. Уведомления на почту о начале отпуска, работе в выходной, расчётные листки, приемы на работу и увольнения, памятки новым сотрудникам и так далее. Меньше рутины для кадровиков — больше информированности у всех задействованных лиц.

А вот и он — 1С Документооборот! И на его примере у меня есть очень много кейсов интеграции с различными системами

Кейс 9. Интеграция с MS Exchange. Синхронизация мероприятий, создание мероприятий в Outlook прямо из 1С, обновление списков участников, времени и места проведения, и так далее.

Кейс 10. Интеграция с системой обработки заявок OTRS. Создание, отслеживание, обновление заявок непосредственно из 1С, с привязкой к объектам базы данных — документам, проектам, различным справочникам.

Кейс 11. Интеграция с корпоративным порталом. Отображение на портале статуса сотрудника (в отпуске, в командировке, работает дистанционно, отсутствует), отображение дней рождений, и многое другое

Кейс 12. Встраивание веб-клиента в сайт и интеграция с онлайн-чатом/ассистентом.

Кейс 13. Не устали? Да, 1С — это не только бухгалтерия.  Итак, интеграция с MS Project Server. Разработка API для формирования бюджетов, планирования занятости ресурсов на разных проектах, синхронизация сведений в карточке ресурсов с 1С.

Кейс 14. Интеграция с MS Dinamics CRM. Синхронизация финансовых показателей проектов, подходящих под определенные условия. Для синхронизации использовалось консольное приложение от субподрядчика.

Ну и в завершение немного экзотики

Кейс 15. Реализация экспертной медицинской системы по расшифровке результатов анализов. Система в виде веб-кабинета позволяет сотруднику загрузить PDF-файл с анализом, а далее на основе процентных соотношений различных показателей выдаёт рекомендации и интерпретацию этих анализов. Из интересных технологий, которые были задействованы — отображение PDF в 1С в виде html документа с пагинацией, для сравнения исходного файла и распознанных показателей.

Кейс 16. Автоматизация учёта финансовых инструментов. Акции, облигации, сделки РЕПО, котировки, купонный доход, вот это вот всё. Загрузка отчетов брокера в 1С из Excel файлов произвольных форматов, загрузка котировок и данных по финансовым инструментам с биржи ММВБ, формирование аналитики по сделкам.

Теперь об использованных технологиях. Чаще всего на помощь приходят  классические веб-сервисы, http-сервисы, работа с json, xml, xdto. Также часто используются средства работы с табличными документами — как при помощи com-объектов, так и средствами объектов 1С «ТабличныйДокумент».

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

На закуску

Кейс 17. Использование 1С в качестве бэкэнда для server-side rendering.

Пришла мне в голову идея упростить жизнь себе и коллегам, собрав все данные по использующимся http-сервисам в виде сайта-справки. Сказано — сделано! Вся информация хранится в отдельном расширении. Http-сервис собирает данные из справочника с описанием сервиса, формирует готовый html-документ и возвращает браузеру.

И ещё один вариант использования 1С для бэкэнда. Выше я писал про интеграцию 1С и системы обработки заявок OTRS. У рядовых пользователей, которые эти самые заявки создают, доступа к системе нет, и всё можно отслеживать только в почте по номеру тикета. Чтобы немного упростить навигацию по заявкам, я сделал небольшой веб-сайт, который получает из 1С JSON, в котором содержатся данные о заявках текущего пользователя в OTRS.

Используя доменную авторизацию, можно отфильтровать только заявки, к которым пользователь имеет доступ, и вернуть их в формате JSON. А дальше просто в более-менее красивом виде, используя bootstrap4 и fathgrid, выводим пользователю его заявки с возможностью просмотра деталей.

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