Перейти к основному содержанию

Запись блога пользователя «Фёдор Котов»

1 0 1

«Больше нечего ловить
Всё, что надо, я поймал
Надо сразу уходить
Чтоб никто не привыкал» - Звери

Спустя 6-7 месяцев я всё-таки решил написать пост про технологию 1С:Предприятие.Элемент. И показать планер задач, который я написал на Элементе и с какими проблемами я столкнулся.

Статья написана с целью познакомить людей с технологией 1С:Предприятие.Элемент. Рассказать подробнее, показать маленький проект.

Технология «1С:Предприятие.Элемент» — это технология быстрой разработки (low-code платформа*) приложений от фирмы «1С».
Она расширяет границы применения системы «1С:Предприятие». В частности, она позволяет создавать приложения, ориентированные не только на бизнес-пользователей, но и на конечных клиентов. С её помощью, в том числе, можно создавать:

  • ·       витрины;
  • ·       фронт-офисы, B2B и B2C кабинеты;
  • ·       headless-сервисы.

*Low-code платформа (от англ. «низкий код») — это инструмент для создания программного обеспечения (ПО) с минимальным ручным кодированием. Такие платформы предоставляют визуальные инструменты, готовые компоненты и шаблоны, которые ускоряют разработку.

Изучать Элемент я начал весной этого года. И начал с создания планера задач. 1С:Элемент использует язык 1С:Исполнитель он отличается от языка, который присутствует в 1С:Предприятие.
Язык мне помогла выучить хорошая книжка ««1С:Предприятие.Элемент» Возможности встроенного языка».

Picture background

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

image.png

image%20%281%29.png

Вот такой у меня получился планер задач. Теперь перейдём к самому созданию и краткому описанию.

image%20%282%29.png
image%20%283%29.png
image%20%284%29.png

метод НадписьКритичностьЗадачи(Критичность: КритичностьЗадачи, Срок: Момент, Статус: СтатусЗадачи): Перечисление
    выбор Критичность
    когда КритичностьЗадачи.Динамичная
        если ((Срок - Момент.Сейчас() <= 3д или Момент.Сейчас() == Срок) и Момент.Сейчас() <= Срок)
            возврат КритичностьЗадачи.Высокая
        иначе если Момент.Сейчас() < Срок и Статус != СтатусЗадачи.Закрыта
            возврат КритичностьЗадачи.Средняя
        иначе если Момент.Сейчас() > Срок и Статус != СтатусЗадачи.Закрыта
            возврат КритичностьЗадачи.Просрочено
        иначе
            возврат КритичностьЗадачи.Закрыта
        ;
    иначе
        возврат Критичность
    ;
;


метод ЦветНадписьКритичностьЗадачи(Критичность: КритичностьЗадачи, Срок: Момент, Статус: СтатусЗадачи): Цвет
    выбор Критичность
    когда КритичностьЗадачи.Динамичная
        если ((Срок - Момент.Сейчас() <= 3д или Момент.Сейчас() == Срок) и Момент.Сейчас() <= Срок)
            возврат Цвета.Красный
        иначе если Момент.Сейчас() < Срок и Статус != СтатусЗадачи.Закрыта
            возврат Цвета.Желтый
        иначе если Момент.Сейчас() > Срок и Статус != СтатусЗадачи.Закрыта
            возврат Цвета.Фиолетовый
        иначе
            возврат Цвета.Зеленый
        ;
    когда КритичностьЗадачи.Высокая
        возврат Цвета.Красный
    когда КритичностьЗадачи.Средняя
        возврат Цвета.Желтый
    когда КритичностьЗадачи.Низкая
        возврат Цвета.Зеленый
    иначе
        возврат Цвета.Фиолетовый
    ;
;

метод НадписьВидЗадачи(Статус: СтатусЗадачи, Вид: ВидЗадачи, Срок: Момент): Перечисление
    выбор Статус
    когда СтатусЗадачи.Новая
        если Момент.Сейчас() > Срок
            возврат ВидЗадачи.Ошибка
        иначе
            возврат ВидЗадачи.Задача
        ;
    когда СтатусЗадачи.НаВыполнении
        если Момент.Сейчас() > Срок
            возврат ВидЗадачи.Ошибка
        иначе
            возврат ВидЗадачи.Задача
        ;
    иначе
        возврат ВидЗадачи.История
    ;
;

метод ЦветВидЗадачи(Статус: СтатусЗадачи, Вид: ВидЗадачи, Срок: Момент): Цвет
    выбор Статус
    когда СтатусЗадачи.Новая
        если Момент.Сейчас() > Срок
            возврат Цвета.Фиолетовый
        иначе
            возврат Цвета.Голубой
        ;
    когда СтатусЗадачи.НаВыполнении
        если Момент.Сейчас() > Срок
            возврат Цвета.Фиолетовый
        иначе
            возврат Цвета.Розовый
        ;
    иначе
        возврат Цвета.Сиреневый
    ;
;
Самое сложное было это модифицировать задачу так, чтобы она сама выбирала критичность задачи и статус задачи выходя их определённой логике, которую вы можете понять прочитав код. Сам по себе элемент не сложный и язык 1С:Исполнитель тоже, местами похож на Java. 
 
Вот такой проект я смог реализовать весной этого года. Очень маленький, не очень большой, но проект на новой и незнакомой мне технологии. С 1С я никогда дело, чтобы серьезно, не имел до Элемента.
 
Стоит ли изучать 1С:Предприятие.Элемент? 
 

Всё зависит от вашего желания от того, кем вы себя видите в будущем и насколько компания 1С сможет адоптироваться к современным реалиям. А именно выкатить Ai помощника, создать большое сообщество, написать методички и ответить, как можно на большие количество вопросов, обучить ИИ.

На состояние 2025 года технология рабочая, технология крутая и имеет право на существование. Вы вряд ли сможете за 30-60 минут написать планер задач на Java или Python, а на Элементе это возможно. Хотя многие вещи уже делает ИИ и подключая ИИ вы сможете написать планер за 30-60 минут, но вопросы с расширением возможностей и так далее…

В завершении.

Не бойтесь экспериментировать, никто не знает, что будет дальше. Если вас заинтересовал Элемент, то начинайте его изучать, начинайте делать на нём какие-нибудь проекты. Даже если эта технология устареет и её забросят, то вы всё равно получите опыт работы с платформой low-code c пониманием процессов и так далее. У вас есть время, идите вперёд, действуйте, учитесь, покоряйте. Я в вас верю!
Работаем!

для всего мира