📱

Get Our Mobile App

Take your business learning on the go!

Download on the App StoreGet it on Google Play

Хаос в расширениях: знакомо? Выход — EDT // Курс «Профессиональная разработка в 1С:EDT + Git»

OTUS IT Онлайн - образование1:48:25

Transcription

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

Итак, сегодня у нас открытый урок курса "Профессиональная разработка в 1С + Git". Тема: "Хаос в расширениях". Знакома ли вам эта ситуация? Если да, то есть современный прекрасный выход - это ЕДТ.

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

И по правилам вебинара мы приветствуем, чтобы вы активно участвовали. За вопросы задавайте в чат. Я буду к нему периодически возвращаться, читать, но читать буду не сразу. И если вы не записались, но не смогли прийти сегодня на наш вебинар, то и те, кто из вас, может быть, уйдут раньше, запись вебинара придёт вам на почту обязательно.

А теперь давайте несколько минут настроим наш диалог. Расскажите немножко теперь вы про себя, какая у вас актуальная должность и какая у вас цель? За какими вопросами, что вас интересно, с чем вы сегодня пришли? Давайте я почитаю.

Ник Мугур: Я только начал изучать 1С.

Сергей: Ведущий программист. Цель стать разработчиком 1С.

Антон: Fullstack JavaScript. Послушать про ЕДТ, позадавать много вопросов в целом, познакомиться с инфраструктурой 1С и его адептами. Приятно. Межкультурное общение всегда интересно. Добро пожаловать представителей других стеков.

Технический архитектор: Хочу узнать что-то новое.

Толик.

И сегодня мы, изучая ЕДТ и подходя к нашей сегодняшней сегодняшней теме, заходим сразу в такую тему, как расширение. Это не то, чтобы очень давно в 1С, но распространение эта технология получила, я думаю, лет 5-6 назад и постепенно стала стандартом. И вот именно применительно к этому мы сегодня и рассмотрим. Вообще зайдём в тему ЕДТ, что это такое. И сегодня, кроме самой темы, я готов буду ответить на абсолютно любые вопросы по ЕДТ, по Git как таковому и по интеграции с Git. Для этого у нас будет некоторый конечный отрезок от нашего открытого урока, что-то типа рефлексии, и там я пройдусь по вашим вопросам.

А давайте по ЕДТ всё-таки в конец. Бывает такое, что на открытом уроке задаются вопросы в начале и они в чате остаются сверху. И бывает в итоге разочарование, что я в конце через час не сумел пролистать на ваш вопрос. Поэтому, да, давайте всё-таки концентрированно вот такие более-менее какие-то содержательные вопросы ближе к концу. А сегодня давайте, а тогда давайте продолжать. Ну, вы в том числе вопросы можете всё-таки писать.

Итак, где мы сегодня с вами встречаемся? Мы встречаемся на образовательной платформе OTUS. У нас есть огромное количество курсов. Мы разрабатываем программы и на основании запросов IT-компаний к кандидатам, и на основании востребованности технологии на рынке. Грейды у нас от начинающих и до лид, до ведущих. По окончанию мы выдаём удостоверение о повышении квалификации и дипломы о профессиональной переподготовке. Я знаю, что многие, кто приходит обучаться, а, от работодателей, эти эти дипломы обязательно стараются получить. Это даёт им какой-то карьерный, видимо, рост. Вот. И по направлению курсов у нас они самые разные: и от геймдизай геймдева. И у нас есть и и безопасность, и архитектура, и тестирование, и разработка программирования. У нас более 130 курс курсов и у нас более 600 преподавателей. И все преподаватели у нас - это практикующие специалисты. Особенность нашего преподавания, что мы привносим то, что узнаём актуальное на наши занятия. У нас нет каких-то предзаписных занятий.

Итак, сегодня мы касаемся темы ЕДТ, но вот в таком интересном аспекте. А как нам этот инструмент поможет разобраться в расширении? Если знакомы ли? Вот давайте прямо вам сейчас этот вопрос и задам. Хаос в расширениях. Знакомо ли вам? Пожалуйста, не просто плюсик поставьте, а какой-нибудь такой символ, чтобы понятно было, что именно это вы встречали на практике. Ну, если не встречали, то вы сейчас увидите хорошо смоделированный пример.

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

Итак, по маршруту. Сначала мы зайдём на тему самого ЕДТ. Само ЕДТ - это среда разработки. Почему ЕДТ - это курорт для разработчика, но не всем он доступен. Рассматриваем ЕДТ как аналитический инструмент и ЕДТ как лаборатория для наведения порядка в расширениях. И дальше подробнее поговорим про курс. По целям: понять, как переход на ЕДТ изменит процесс разработки вашей компании, увидеть, какие задачи решает ЕДТ в руках разработчика и научиться наводить порядок в расширениях. А смысл, для чего вам эти навыки? Чтобы автоматизировать рутину и повысить свою ценность как разработчика.

Итак, коснёмся темы самой ЕДТ как таковой. ЕДТ как курорт для разработчика. Но не всё так просто. Вкратце об архитектуре ЕДТ. Вот здесь представлена картинка. Вот такая пирамида того, как взаимодействует между собой программное обеспечение. Если у нас рассматривается классическая схема, когда мы устанавливаем так называемый конфигуратор через платформу, то это продукт, написанный на C++ под каждую конкретную операционную систему. 1С у нас работает в трёх операционных системах: в MacOS, в Linux и, конечно, в Windows. И у нас вот у платформы принципиально три разных версии. Здесь есть небольшая такая неточность. Вот когда я говорю, что указываю вот этим скриншотом, что у нас в операционной системе располагается Java. Java, тут, наверное, не чуть-чуть, наверное, нужно уточнить. Java виртуальная машина. Это такой очень интересный приём разработки, когда вам не нужно учить программное обеспечение, понимать операционную систему и с ней взаимодействовать. Вам нужно это программное обеспечение научить общаться и работать в рамках виртуальной машины Java. Этой технологии около 20 лет с небольшим, наверное. Java виртуальная машина как ни с чем другим очень хорошо живёт с Линуксом. Кстати, напишите какую-нибудь буковку, там, например, русскую, английскую, если вы из Линукса.

Так вот, разработчики в 1С пошли нестандартным путём. Они не стали создавать уникальный новый продукт как альтернативу конфигуратору. Они взяли расширяемую функциональную среду, так называемый Eclipse ID под названием Eclipse, и с помощью плагинов внутри этого Eclipse просто создали вот этот продукт. То есть это продукт, который полностью работает внутри Java машины, и его производительность и эффективность определяется настройками именно для Java машины. Для Java, иначе говоря, по архитектуре я чего-то большего не скажу. Наверное, вот, чтобы на контрасте с 1С конфигуратором было вот так понятно, что это немножко более сложная схема. И, ну, как это, как бы это я бы, как бы я описал это с точки зрения хорошо плохо. Ну, конечно, это хорошо во многих аспектах. Это независимость, это лучшая производительность. Ну и в общем, много таких нюансов, которые я вот в них сейчас гружу, потому что мы сегодня будем проходить конкретный практический пример, на котором мы, кстати, всё это увидим, а не будем просто смотреть на слайд.

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

Вот давайте здесь я недолго немножко остановлюсь на архитектуре, начну её, наверное, вот так показывать, как это выглядит. То есть у нас в целом точка входа в ЕДТ выглядит приблизительно вот так. Это такой фасад, в котором одна строчка - это рабочая область или Workspace, а внутри неё мы можем располагать уже проекты, которые у нас отождествляются или связаны с какой-то одной 1С базой. Как минимум одна, вернее, как минимум один проект - это проект как раз вот с конфигурацией одной базы данных и работающей. Но также есть возможность здесь работать и с расширениями, и с внешними отчётами обработками. Главным образом это так.

Вот я вижу, Антон, а конфигуратор полноценен в Олину. Слышал, что там с ним есть какие-то проблемы. Ну как вот сегодня я работал на текущем проекте в Redos под конфигуратором как таковых, определяю, связанных именно с Линуксом проблем нету. Там есть проблемы именно архитектуры, именно взаимодействия клиента и сервера. А сам по себе клиент в Линуксе работает хорошо. Тенденция, да, такая, что большинство 1С программистов работают в конфигураторе, но это очень, а, в виндоузе, но это очень активно меняется. Linux, конечно, захватывает рынок. Проекты массово переходят уже под Linux.

Так вот, давайте смотреть. Итак, что у нас есть на повестке дня? У нас есть вот такая база 1С. Это некоторая разработка на на основе комплекта библиотек под названием библиотеки стандартных подсистем от самой 1С. И у нас есть документ "Отпуск сотрудников". Всё, что идёт до строчки "Руководитель", "Комментарий", "Ответственный" - это стандартный функционал. А вот внизу начинаются расширения. Вот то, что тут внизу со смайликами - это результат доработок разных программистов. И мы будем считать, что мы, как руководители или владельцы этого внедрения, дошли до точки. Мы хотим навести порядок и начинаем это делать, изучать с помощью ЕДТ.

Так вот, как нам вообще подойти к работе с этой базой в формате разработки, но не через конфигуратор? То есть первое, что мы делаем, мы создаём некий workspace, который я назвал вот так: "Наше увлекательное внедрение". Вначале у вас будет полностью пустой экран, и нас будет интересовать левая часть. Она как раз содержит дерево конфигурации в привычном нам виде. Вначале это будет пусто. Так вот, чтобы у нас здесь появилось то, что мы сейчас видим, вот, например, знакомые нам справочники и прочие объекты метаданных, нужно произвести процедуру импорта. Я её сделал чуть раньше, потому что это бы длилось минут пять. И чтобы не терять время, я не стал это делать в прямом эфире. Делается это следующим образом. У нас есть внутри ЕДТ способ через, а, специальную панель адресоваться к базам, которые есть на этом компьютере, ну, или на этом сервере или для этого клиента доступные. Эта картинка полностью соответствует вот той, которую мы видим в классическом окне запуска 1С предприятия. И мы идём следующим путём. Мы заходим в интересующую нас базу. Вот таким образом нажимаем кнопку "Импортировать конфигурацию". Чтобы показать, как это приблизительно выглядит, давайте я на каком-нибудь вот другом, например, рядышком примере покажу.

Итак, по архитектуре работы. Как это выглядит? Когда мы запускаем ЕДТ, некий экземпляр, в котором мы будем работать, вот данный Workspace у нас открывается, запускается в операционной системе, в том числе конфигуратор, но в так называемом режиме агента. Мы его не видим, но он работает. И вот именно конфигуратор и производит взаимодействие с базой данных. Он к ней как конкретной базе данных обращается. Он из неё делает выгрузку, он в неё размещает наши изменения. Его можно увидеть вот тут вот среди программ. Надо просто где-то тут поискать. Должен быть конфигуратор 1С. Где-то он тут прячется. Давайте всё это просто с самого начала перезапустим. Сейчас закрою. Вот появился зелёный треугольник. И мы открываем. У нас сразу открывается вот эта Java оболочка. Ну, в зависимости от настроек операционной системы, либо вы прямо явным образом здесь видите этот процесс, ну, в общем, он здесь появляется. Процесс 1С - это посредник. Через него как раз и происходит взаимодействие. В частности, через него производится первоначальный импорт. И вот здесь у нас в числе всего в дополнение к конфигурации, которая внутри базы данных, основной конфигурации загружаются и расширения, которые в ней есть. То есть вот мы могли бы независимо зайти, например, в конфигуратор, сюда зайти в расширение и увидеть, что у нас вот наступил такой бардачок. У нас четыре человека: Людмила, Коля, Серёжа и Настя что-то напрограммировали. И наша задача вот пройти такой квест, объединить все эти четыре расширения в одно, чтобы так продолжалась разработка дальше. Именно в таком ключе. Не нужны они в таком количестве. Вот это наша цель.

Итак, по окончанию импорта у нас появляются здесь в общей сложности пять проектов. Первый - это конфигурация самой базы и четыре проекта, вот я их так назвал: Коля, Людмила, Настя, Серёжа, Раш - это как раз расширения, которые мы видели. У них здесь такое же дерево конфигурации, и можно, в принципе, посмотреть, что в них есть. Но мы масштабируем ситуацию на реальную жизнь. В реальной жизни мы откроем расширение и увидим много чего, от чего у нас глаза разбегутся. Согласитесь? Так вот, мы, по крайней мере, уже обнаружили, что в документе в одном, который у нас называется "Отпуска сотрудников", какое-то количество разработчиков через какое-то количество расширения оставили свой след. А так любой Linux или Astra, а что там было заруби при открытии ЕДТ? Это просто такой лого таким образом себя позиционирует.

Так, наша практическая задача. Давайте её рассматривать. Итак, загрузили. Теперь давайте попробуем просто отсюда зайти в предприятие. Ну, пока это с этим согласимся. Вот здесь можно сделать такую настроечку, чтобы видеть то, как работает именно вот Java машина, как окружение, в котором у нас работает, как она выделяет себе память. Регулировать настройками выделения памяти. Да, вот процесс как раз 1С, который и и вот это как раз и есть агент, который невидимый, который вот выполняет прогрузку в данном случае внутрь базы данных наших изменений. Если вы программист, разработчик и вы производили вот этот процесс обновления конфигурации базы данных, то там как раз вот возникают эти бегущие сообщения, что там какие-то вот собираются данные, прогружаются внутрь. Вот можно было их сейчас здесь наблюдать тоже в состоянии вот в этом окошечке. Это конфигуратор их получает как бы возвращает сюда к нам в ЕДТ статус текущий, и мы можем читать, что на самом деле происходит. И вот дальше уже производится запуск предприятия, в данном случае тонкого клиента. О том, что сейчас обновлялось, давайте не будем думать, потому что это был некий такой подготовленный пример. Будем считать, что это вот точка старта нашего сегодняшнего исследования. Мы попробуем сегодня навести порядок и посмотрим, что у нас из этого получится, и сделаем из этого выводы. Я это демонстрирую на учебном сервере нашего курса. У него внушительные характеристики: 200, сколько у нас тут? 240 ГБ памяти. Вот такой процессор. Так что, если вы будете нашим студентом, то у вас будет вот такая прекрасная среда, лабораторная среда для решения домашних заданий, практики. Вот. Ну вот это точка старта. То есть мы теперь уже зашли сюда полностью из ЕДТ, забыв про конфигуратор. И давайте что-то начнём с этим делать.

Итак, давайте обрисуем стратегию. Я сделал, решил сделать так. Я создам новое расширение и буду в него вливать все прочие. А в конце все прочие я захочу удалить. Поэтому я создаю здесь вот таким образом: правая кнопка, "Новый проект", "Расширение конфигурации". И здесь даю ему все характеристики. Пустое расширение. Назову я его "Путь истинный". Префикс у нас будет будет пусть будет "Юра". Я указываю связь с данной базой данных. Вот она. Таким образом это делается. Далее ставлю некоторые настройки, полезные для разработки. И вот у нас совершенно пустое расширение. Далее я здесь удаляю как ненужный апендикс пароль. Также её удаляю здесь. Она нам не нужна. И ставлю назначение расширения "Дополнения". Такой вариант. И пока просто давайте прогрузим эти изменения в базу данных. Я нажимаю вот кнопочку "Обновить разрабатываем и приложение". Идёт процесс загрузка изменений. Вот оно быстро закончилось. И давайте будем периодически подсматривать по старинке в конфигураторе, что у нас там получилось и появилось. Стандартную привычную картинку расширения. Отсюда можно сразу открыть конфигуратор. То есть, если мы зайдём вот в появившееся в панель приложений, а в нём в появившееся как минимум одно приложение, которое всегда адресуется к одной базе данных, то вот если мы выбираем "Запустить конфигуратор", мы как раз даём команду вот этому незаметно висящему в память процессу. Где-то у нас тут подробности. Вот он внизу прячется. Мы даём ему ЕДТ, как продукт, работающий на Java машине, выдаёт ему команды по SSH протоколу. И команды эти стандартные, там, например, "Открыть 1С конфигуратор", ну, в общем, те команды, которыми можно было бы через командную строку просто открыть базу данных. То есть это никакое не какая-то специфика. Это можно открыть справку системного администратора 1С и посмотреть, как правильно писать команды, чтобы вот как-то как-то скриптово управлять работой 1С. Поэтому вот мы сейчас просто открываем вот так здесь конфигуратор и проверяем эффект. Да, у нас появился появилось расширение "Путь истинный". Хотел сказать, появился "Путь истинный", хотя тоже, я надеюсь, всё-таки он тоже появился. А давайте сразу уберём такие ограничивающие настройки для расширения, отключим безопасный режим, отключим защиту от опасных действий, чтобы у нас был полностью легальным и свободным от ограничений. Всё, пока вот нам сюда не надо.

Так вот, мы находимся в очень интересной точке, когда дальнейшие действия возможны только в ЕДТ, именно благодаря благодаря тому, что все проекты здесь устроены в виде исходников. Можно сделать следующее. Можно зайти в каталог, в котором у нас находится Workspace наш. Вот так. И посмотреть. На самом деле, каждому проекту у нас соответствует просто каталог с огромным количеством исходников. Например, вот это проект самой конфигурацией. В нём в каталог SRC (Sources) исходники как раз располагаются распределённые по каталогам с понятными, по большей части понятными названиями: метаданные, общие шаблоны, константы, перечисления, документы. Вот, например, интересующий нас документ зашифрован здесь с помощью своих исходников. Он у нас называется "Отпуска сотрудников", да? То есть тут можно увидеть модуль менеджера, модуль объекта - это просто текст. Я даже по секрету скажу, можно программировать прямо здесь. ЕДТ это сразу подхватит и увидит. И есть некоторые типы разработок, в которых можно, а, разрабатывать, дорабатывать прямо исходники ЕДТ, и у вас могут, например, автоматически сразу появиться таким образом новые метаданные, какие-нибудь новые перечисления, роли. Бывают такие проекты. Если интересно, приходите на курсы. Мы всячески такие ситуации рассматриваем из опыта. Ну, также здесь зашифрованы формы, например, форма документа тоже вот её модуль. И в XML вот вот вот XML зашифрованная форма. Те из вас, кто знаком с процедурой выгрузки конфигурации в XML-сходники, то сразу скажу, это другой формат. Вот состав тегов он другой, которым кодируется форма.

Так вот, то, что мы сейчас будем делать, называется процедура объединения. И она, возможна именно здесь. И делается она очень удобно. И тут я закину такую дискуссионную тему. Скажу, что в конфигураторе этого сделать принципиально нельзя, но это не точно. Возможно, вы знаете нюансы. Так вот, первая цель: я объединяю с расширением Коля. Для этого я захожу в конфигуратор и расширение Коля отключаю. Это можно сделать чуть позже, чуть раньше. Ну давайте сделаем сразу. Я буду частенько заходить в конфигуратор прямо вот отсюда. Наша цель от него избавиться. Ну и давайте, в принципе, отключим все. Вот так. Пока не удаляем. Выделяю наш новый проект и проект расширения Коля. Правой кнопкой вызываю контекстное меню и нахожу пункт "Сравнить, объединить". Я не зря только что вам показывал исходники, потому что как раз сейчас процедура сравнения будет идти по исходникам, их между собой сравнивать. Если пройти чуть дальше и посмотреть, например, в расширение Коля, вот "Путь истинный". Тут у нас, видите, ничего нету просто кроме основных настроек, типа там модуль и прочее. А вот в Коле у нас что-то есть. Видно, что есть что-то. Справочник "Страны мира", у него как-то доработаны документы "Демоотпуска" и роль, которая нам не нужна, совершенно неинтересна. Здесь я ставлю пункт "Сравнивать модули с учётом структуры" и пускаю сравнение. ЕДТ мгновенно всё сравнила. Благо, тут немного изменений, и мы начинаем теперь очень внимательно смотреть.

Вот теперь мы попадаем на территорию, где мы как бы плывём по рифам. То есть нужно быть очень аккуратным, потому что в данном случае защиты от неосторожных действий нет. ЕДТ в процессе сравнения объединения может привести к краху проекта. Поэтому, а я вам приведу пример. Когда-то я читал описание какой-то иностранной машины. У неё очень сложная коробка передач. И на каком-то на какой-то странице был такой такой пункт, что вот если вы вот такой-то рычаг оставите в таком-то положении, а сделайте переключение чего-то какого-то ещё на пульсе какого-то ещё рычага в другой, то это неминуемо приведёт к разрушению коробки передач данного автомобиля. Мне было очень удивительно. Это такая метафора, что вот здесь при неаккуратном действии вы можете разрушить полностью проект какой-то. Поэтому мы чуть-чуть чуть-чуть сейчас откатим назад и подумаем о том, как от этого можно подстраховаться.

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

Так, я заготовил каталог пустой, в котором будет находиться репозиторий. Вот именно сюда я сейчас размещу вот таким образом проект нового расширения. Это делается вот так. "Групповая разработка", "Общий проект". Выбираю этот каталог. Основная ветка пусть будет "мастер". Проект переехал сюда. Попросту говоря, он был скопирован. Здесь его в каталоге с рабочим с воркспейсом не стало, но он есть здесь. И он встал под версионирование, о чём можно судить по появлению вот такого невидимого каталога точка. И дальше я действия сделаю, не комментирую их словами. Я делаю первый коммит и назову его "Старт". У нас появилась ветка "мастер". У неё в истории появился появилась первая версия или первый коммит под названием "мастер". Вот теперь можно действовать дальше.

Теперь я снова запускаю процедуру сравнения объединения и начинаю смотреть на картинку. Ну, согласитесь, по сравнению с конфигуратором покрасивее, поприятнее палитра цветов. Дальше вот тут начинаем делать выводы из того, что мы видим. Всё, что связано с основным основными свойствами конфигурации или иначе говоря основными свойствами расширения, мы ничего менять не будем, просто убираем. К нам прилетает от Коли его основная роль. Это тоже нам ненужный артефакт. Мы его убираем, нам это не надо. И потихонечку в результате процессе анализа доходим до существенных и важных элементов. Вот сейчас в процессе открытого урока я буду это делать довольно-таки быстро. На самом деле, когда вы решитесь этим заниматься, у вас будет существенно больше времени, вы сосредоточитесь и будете внимательно идти по пунктам и выделять: это нужно, это не нужно. Давайте внимательно смотреть.

Значит, у Коли было расширено справочник "Страны мира". Хорошо, пусть будет. Документы, "Демоотпуска". Давайте смотреть свойства. Вижу модуль объекта. Так вот, у Коли у нас была расширена процедура "Перед записью". И вот в среднем окне то, как это будет у нас, это результат объединения. Мы должны изменить префикс, потому что префикс нашего расширения "Юра". Поэтому я прямо здесь его изменю. Так, в остальном всё правильно. "Перед записью" автоматически записывается значение из константы "От устрана". Я не вдумываюсь сейчас пока в соответствие кода кода стандартом разработки. Моя цель его пока просто перенести. Соглашаюсь. Движемся дальше. Реквизиты. Появляется новый реквизит "Страна". Форма. Идём в форму. Находим модуль. Угу. И то же самое к нам от Коли приезжает процедура "При создании на сервере после". И мы сразу наведём здесь порядок. Я сразу переимену это "Юра". Дальше Коля у нас разрабатывал с помощью искусственного интеллекта напарник в ЕДТ. У него остались вот такие вот комментарии типа: "Сделай то, сделай другое". Я сразу это удалю. Будем считать, что я специалист по кодрев и сразу навожу порядок здесь. Так, готово. Ну, пробуем. Проверяем. Захожу в модуль объекта. Угу. Всё корректно. Захожу в форму. Смотрю на "При создании на сервере после". Но есть но, потому что у нас есть в диалоге формы обработчик, он навешен на события формы.

И вот на него надо посмотреть, потому что он у нас сейчас прицеливается в процедуру при создании на сервере, которой нет. Мы её переименовали. Вот я вот здесь заменяю на "при создании на сервере" и проверяю работу. Всё, мы сюда попадаем. А здесь Коля программно выводит на форму реквизит страна, располагает его в самом низу. Вот здесь к этому мы и стремимся. Итак, всё готово. Пробуем. Обновляем и проверяю.

Итак, ещё раз вспомним. Мы отключили все расширения. То есть у нас нижняя часть, вообще весь документ должен быть изначально соответствующей стандартной конфигурации. Мы отключили все разработки, и теперь мы хотим, чтобы здесь появилась доработка Коли со стороной. И она у нас появилась. Можем себя поздравить. 1/4 часть задачи мы выполнили. И давайте проверим работу перед записью. Вот я очистил. Теперь я провожу, и значение заполняется. Всё корректно, функциональность перенесена. Ура! Двигаемся дальше.

Следующая на очереди у нас Людмила. Задачки у нас будут по возрастанию сложности. Стартовая ситуация такая же, да, но не забудем это зафиксировать в гите. Кстати, это очень важно. Закомлю и напишу "Коляниed". Так, в истории появилось уже у нас два коммита. Те из вас, кто работали с или работают с хранилищем, это аналогия коммитов, которые вы делаете там, когда вы что-то помещаете, у вас тоже создаётся некий срез. Великая версия. Это называется термином "коммит".

Теперь следующий этап - это Людмила. Также идём сравнить, объединить. Основные свойства отключаю роли, убираю, иду в объекты. И вот тут нужно применять уже аналитическое мышление. Если у нас внутри, ну, что-то несущественное, мы видим, бывают такие артефакты, артефакты различия между какими-то исходниками, не несущие в себе задумку разработчика и функциональность. Да, это будет. Поэтому это надо будет анализировать и применять своё мышление. Вот я захожу, например, в документ, в справочник "демоорганизации" и вижу, что ничего тут не доработано абсолютно. Из подруг Людмилы здесь ничего не вышло, поэтому я это не буду сюда переносить. Здесь то же самое в свойствах какие-то. Что-то тут поменялось, что-то не поменялось. В общем, не проверять значение, не знаю. И копаться в истории не хочу.

Далее заметки. Вот это полностью новый справочник, который как раз перенесла в расширение Людмила, потому что он у нас явным образом используется вот здесь вот "заметки". Заметки. То есть он вот имеет цель здесь конечную. Пользователи. Я здесь не обнаруживаю, чтобы что-то с пользователями было, поэтому тоже отключу. А на самом деле то, что я сейчас делаю на ваших глазах - это результат уже некоторого потраченного времени, некого предварительного анализа взаимосвязи. Всё-таки расширение - это не, как правило, не объекты из тысяч элементов. Это не что-то очень большое, сопоставимое по своему содержанию с целой конфигурацией. Всё-таки это что-то, что реально за пару-тройку часов, может быть, короче, проанализировать и отделить нужное от ненужного. Вот это вот важный момент. Может быть, где-то там в тетрадке это записать у себя. Вот там справочники такие-то нужны или там документики в каком-то.

И вот я двигаюсь дальше. Документ. Начинаем идти сверху. И тут у нас расхождение в каких-то GUIDах. Ради бога, это тоже всё-всё-всё нам не надо. Давайте я начну, наверное, вот так. Я вот всё пока отключу, чтобы нам лишнего сюда не не принести. И да, и вот я вижу изменение в модуле объекта. У нас есть уже нами отредактированная и корректно работающая процедура "Юра" перед записью. И от Люда прилетает её версия. Давайте это обыграем. Вот эту ситуацию. Вот это то, что называется "Юра", но на самом деле это полетело от Коли и вот от Люды Людмила, у неё там своя какая-то процедура. То есть это уже такой у нас конфликт слияния, который мы можем разрешить. И у нас на это есть несколько способов. Первый и самый лаконичный - это сделать прямо здесь. Но сразу скажу, у вас, возможно, это не получится. Ничего страшного. Это можно сделать в постобработке, то есть загрузить изменения в некотором грязном формате, а потом просто зайти и обычным образом внутри модуля отредактировать. Но я попробую это сделать прямо здесь, прямо как вот вот думаю, что сделаю фокус и надеюсь, что он получится. Я отключаю вот здесь. Так, раз. Потом я беру процедуру Людмилы и просто вот этот кусок кода пробую сюда скопировать. Вот так. Следом. Корректно, да? Корректно. В одном случае у нас записывается реквизит страна, в другом заметка. После этого я процедуру Люды отменяю. Я её не переношу.

Далее смотрим в реквизиты. Что у нас? У нас появляется "заметка". В табличных частях ничего нету. Это какие-то артефакты. Прошло 10 минут, и вы убедились, что там ничего существенного нету. Движетесь к форме. Форма списка, её вообще не было. Её создала или доработала полностью или расшарила её Людмила, поэтому пусть прилетает. Форма документа. Анализируем. В элементах у нас вот группа "заметка". Вот в этом случае Люда вывела реквизит уже через диалог непрограммно, поэтому вот это её группа, мы её сюда переносим. Проверяем ещё ряд. "Оттус" "заметка" есть. Готово. Всё остальное это у нас так. А вот модуль. Модуль у нас не не изменён, поэтому мы его не не устанавливаем и пробуем объединить. И обязательно проверяем. Прилетели заметки. Проверяем демо. Так, ну, объединиться у нас не получилось. Ничего страшного. Просто зайдём в Люду и перенесём. Так, проверяем форму. Вот формочка от Люда прилетела с заметкой. Заметка есть. И тут всё правильно. Объединяем. Прогружаем. Объединение. Загрузка произошла. Проверяем. Не появилось. Давайте разбираться. Бывает такое. Ну что в таких случаях надо сделать? Надо зайти в конфигуратор и посмотреть, что у нас там, как выглядит. Так, секундочку. Аа, а может, всё появилась? Заметка. Не, нет, всё правильно появилась заметка-то. При создании на сервере после у нас страна куда-то делась. Проверяем привязку события. Так, не здесь. Расширение путь истинный документ. Угу. Значит, здесь что-то у нас слетело. Нажмём вот это "заметка". То есть мы про про обновили, добавили в расширение все отсутствующие ссылочки. Важная процедура. Пробуем. Так. То есть то, что вы сейчас видите, это на самом деле как раз реальный процесс, в котором у вас вот эти сложные взаимосвязи объектов, перенесённые в расширение, могут не очень-то хорошо вот так переноситься, таким как бы параллельным переносом, но тем не менее это уже хотя бы возможность увидеть в сравнении и попытаться. Чистенный документ. Так, появилось, появилось. Всё. То есть нам нужно было закончить обработку формы. Вот добавив расширение все ссылочки внутри объекта. Проверяем.

Вопрос: 1С Гит может дружить только через ЕДТ? Не только. Но для того, чтобы это делать без ЕДТ, вам нужно будет предварительно выгружать 1С-конфигурацию в исходники. Ну вот у нас только что был открытый урок курса "Архитектор", по-моему, неделю назад. Как там показано, как интегрировать через промежуточные сущности. Но ох - это непросто. Здесь гораздо проще. Всё, у нас всё появилось. Теперь у нас заметка тоже должна заполняться автоматически какими-то значениями. Всё. Ура! Ставим себе следующую пометку, что мы объединили Людмилу. Людмила финиш. Так, это наша гордая история, как у нас всё идёт по возрастающей и хорошо.

Ну вот здесь мы находимся на развилке, можем поступить по-разному. Мы можем, например, сейчас зайти в конфигуратор и полностью удалить расширение. Да, вы действительно не ослышались. Зайти в конфигуратор. ЕТ не может отправить в базу данных команду и сказать: "Удали оттуда расширение". Это по-прежнему можно делать только через конфигуратор. Есть поправочка на один режим работы, который называется "автономный сервер", но я сейчас рассказывать не буду про это. Довольно сложная тема. Будем считать, что вот так только вот туда. Ну можем пока этого не делать, на ваше усмотрение. В вашем реальном случае вы будете сами решать, как вам поступать, как удобно. А мы продолжаем. У нас остались ещё два. У нас рассталась Настя и Серёжа.

Попробуем с Настей. И вот тут уже становится становится печально. Потому что Настя полностью создала справочник "подразделение" в расширении. И более того, вот это я убираю, это всё тоже какие-то артефакты. И сделала в существующем базовом документе реквизит, ссылающийся на вот так некорректно созданный справочник. Поставьте, пожалуйста, плюсик, если вы понимаете, почему это некорректно, или минус, если нет. Я остановлюсь здесь, на этом моменте. Антон, я вот вернусь попозже к вопросу. Давайте. Хорошо. Я вижу, по крайней мере, минус. Это к вопросу о том, что то, что не запрещено, категорически разрешено, но, несмотря на это, есть некий свод правил, как мы в правильной разработке используем расширение. Правило такое, прав архитектуры. Объек ссылочные объекты, то есть справочники, документы, перечисления мы создаём или реквизиты существующих объектов мы создаём только в основной конфигурации. Даже если она стоит у нас на поддержке, мы добавляем режим редактирования и внутрь справочника или документа создаём новый реквизит. Вот это кодекс правильная архитектуры. Случай, который здесь видим у Насти - это другое использование расширений, когда у нас расширение - это некая отдельная ёмкая функциональность, например, какая-нибудь утилита устанавливается, она покупается вами на рынке, например, какая-нибудь какой-нибудь анализатор производительности. Он разработчиком выполнен в виде некого пакета, в котором сразу много видов метаданных. Там справочники, регистры сведения, обработки, модуль и прочее. И вот такая отдельная альтернативная обработка, она может у вас вставать внутрь конфигурации полностью в расширение, включая ссылочные объекты, потому что потеря этого расширения у вас несёт потерю основных данных, которые вы несёте. Вы можете потом взять это расширение, убрать. А вот если вы настраиваете основную функциональность вашей программы, то делать это нужно именно так. Ссылочные создали внутри конфигурации, а вот доработка форм модуля, это вы всё переносите в расширение. Поэтому это вот такая категорическая некорректность. И давайте попробуем что-нибудь с этим сделать. Сразу скажу, перенос справочника из расширения в основную конфигурацию из из расширения в расширение - это, так скажем, сложная тема для рассуждения, потому что она влечёт за собой потенциальную потерю данных. И вот эту задачу, конечно, мы сейчас решать не будем. Мы в нашей лаборатории решаем пока узкую задачу. Просто создать такую версию конфигурации, в которой будет сама конфигурация и все доработки в виде одного расширения. Вот. А как это уже потом накладывать на реальную данную базу данных? Что делать с данными, которые уже некорректно размещены в некорректно созданном расположении, например, в справочниках? Это будет решать уже вы будете решать коллегиально в вашей команде. Ну вот сейчас надо что-то с этим делать. Вот "подразделение" появилось здесь, а должно оно было появиться внутри конфигурации, а потом быть перенесено сюда путём расширения. А давайте смотреть, что здесь можно сделать и получится ли.

Далее идём в документ. Тут тоже всё неизменно в модуле. Оставляем. И вот прилетает это расширение. Видите? Ну, попробуем его так оставить. В табличной части тут ничего нету. Какие-то внутренние идентификаторы. И в форме документа вот появляется у нас вот этот реквизит отдельный, не в группе. Ну, давайте попробуем туда как-нибудь расположить. Пробуем. Он появился. Здесь у нас доступен справочник у нас тоже появился. На вид всё корректно, но давайте попробуем обновить. Проверяем, всё ли у нас на месте. Всё тут тоже на месте. Пробуем обновить. Пробуем отправить обновление расширения внутрь конфигурации. И у нас возникает вот такое досадное сообщение от платформы, что обнаружено пересечение внутренних идентификаторов с расширением конфигурации Настя. То есть, что получается? Мы перенесли справочник вот таким образом отсюда сюда. В самой базе данных у нас конфигурация Настя отключена. Но у нас возник какой-то конфликт, который находится уровнем ниже наших возможностей, нашего понимания как программиста. И вот из этой ситуации надо выйти каким-то понятным путём, не пытаясь пробивать эту проблему, не пытаясь найти какие-то способы там где-то что-то откорректировать. Ну что тут можно сделать? То есть я сделаю просто, я вот сделаю следующее. Я попробую просто расширение Насти удалить. Это опасное опасное действие, потому что оно в реальности, если вы в базе, в настоящей сделаете, приведёт к удалению всех данных справочника, который в ней создан. Вот всё, что в Насте есть. Вот тут вот Настяк, Настя, вот у нас справочник. А так тактактак. Ага. Нет, это не то случай. То случай будет чуть позже. Всё-таки он был создан корректно, но всё, что я вам раньше сказал о правилах правилах архитектуры, оно было правильно. Значит, я возьму Настю просто вот так здесь удалю. Попробуем. Так, окружаю. И ещё раз пробую обновить. Вот так как расширение конфигурации. Здесь происходит коллизия. У нас с одной стороны есть расширение Настя и О, и его ЕДТ пытается прогрузить туда, а его там нет. И мы сделаем следующее. Мы его возьмём сейчас и отключим просто от базы данных. Вот так. Пусть она у нас просто будет в виде исходников просто некая как некая база данных разработки. То есть, что было, всё, оно теперь не будет пытаться туда отправляться. И у нас всё корректно должно обновиться. Да, всё обновилось.

И дальше как раз вот совсем-совсем вопиющая ситуация - это с расширением Серёжа. Серёжа как раз взял и вообще создал в расширении вот ту самую бедовую ситуацию. Он там создал новый справочник "Отуса отели". И этот справочник где-то использовал, нет, нигде не использовал, но просто создал его здесь. Вот вы думаете, надо бы его перенести. Ну давайте попробуем. Что там у нас у Толь у Серёжи? Снова здесь. Здесь у нас ничего нету. Вот отту. Ну ладно. И ещё обработка. Ну попробуем тоже загрузить. "Дема отпуска сотрудников". Тут ничего не не переносится. Итак, справочник нам сюда попал. Вот по значку видно, что у него нет такого вначале коричневого значка, который обозначал, что его его перенесли в расширение. То есть он связан с основной конфигурацией, не связан. Ну и попробуем это обновить. И мы получаем ту же самую ошибку, что пересечение внутренних идентификаторов. И лечится это тем же самым способом. То есть мы здесь отключаем проект расширения от расширения внутри базы данных. Попробуем так. Нет, значит, нам придётся его удалить. Пожалуйста, имейте в виду, что вот подобное действие будете делать на какой-то своей лабораторной базе данных, в которой вы можете делать, что хоте хотите. Поэтому это процесс безболезненный. Вы можете там взять его и удалить. То есть я удаляю, вот там как раз произошла реструктуризация, то есть удалились все вот эти объекты. Если там в справочнике отеле что-то было, оно всё уда удалилось. О, ужас. Но зато мы попробуем создать целостный целостное новое расширение, с которым вы дальше уже пойдёте к архитектору или человеку, выполняющему роль архитектора, и будете думать, как это накладывать на какую-то реальную продуктовую базу. То есть всё обновилось, всё хорошо. Делаем финальную проверку. Всё есть, подразделение есть. Это у нас от Насти было. Вести, закрыть. Отели. Перенеслись. Вот. А дальше вы можете этот справочник перенести. Вот сейчас это абсолютно уникальная вещь, которую вы услышите и будете знать, что это только в ЕДТ делается. Уникальное действие. Вы можете объединить основную конфигурацию с расширением. Звучит невероятно, но это так. И уже вот таким образом перенести туда, например, этот справочник "отеля". Представим себе, что в нём много реквизитов, много кода. Вот нам хочется раз туда сразу его отправить. Ну, по имени. Хорошо, да? Пусть будет вот такой стратегия. Так, я убираю. И вот вернуть его, вернуть его домой. Надо вот здесь найти. Где оно здесь у нас? Так, отели. А, да, вот она. Вот. И вот оставлю это вам на ваши эксперименты. Вот таким можно образом вернуть корректную архитектуру, то есть перенести его корректно внутрь основной конфигурации, а вот потом оттуда уже, например, его перенести в расширение. Вот такая у нас получилась неинтересная лаборатория для разработки. Это не просто, но пока у нас мы ещё не закончили с выводами, давайте поговорим про наш курс, от которого мы сегодня с вами здесь собрались.

Итак, это у нас этот курс я очень люблю, потому что я когда-то был его автором и разрабатывал. У нас сегодня в ближайшие, вернее, 2 недели, через 2 недели уже будет пятый запуск. нашего курса "профессиональная разработка в 1SDT пit". По программе давайте смотреть. У нас есть первых три са, наверное, первый, второй, третий самые большие модули. То есть на первом модуле вы изучаете саму среду разработки, в том числе там будет и занятие по расширению. Рассказываем вам, как работать с программным кодом. И мы вас убедим, что ЕДТ - это действительно курорт для разработчика. Сюда же подключается разработка с помощью искусственного интеллекта и напарник. Это будет у нас во втором модуле. Это среда с расширяемыми возможностями. Расширяются они с помощью плагинов. Среда очень удобная, кастомизируемая. В среднем, я думаю, разработку скорость разработки возрастает процентов на 30-40 при переходе в ЕДТ. Дальше у нас есть модуль, посвящённый интеграции ЕДТ и вот мой опыт подсказывает, что специалистам из 1С именно тема тема тема гит даётся очень сложно. Моё такое статистическое наблюдение. И поэтому изучению гита мы тут посвятили довольно много занятий. Мы вообще начинаем изучение этой темы без относительно кS. Погружаемся в эту тему и дальше постепенно постепенно учимся интегрировать ЕДТ и гит. У вас по ходу выполнения курса будут домашние задания, на котором вы можете всё это закреплять, можете работать вот на этом же сервере. Вот видите, как всё у нас сегодня довольно быстро работало. Можете, если интересно, работать с какими-то большими конфигурациями, с вашими конфигурациями, если вы можете их принести сюда, консультироваться со мной, с другими преподавателями на тему других преподавателей. Сейчас покажем. И дальше у нас идёт, то есть интеграция уже в процессы непрерывной сборки и интеграции с интеграция с автотестами, с юнит-тестами, а, с облачными сервисами. И в конце мы закрепляем на таком занятии по построению маленького конвейера интегрируем 1SDT Jenkins. Тоже всё на понятных, простых примерах. И в конце вы делаете проектную работу. У нас несколько преподавателей, все классные специалисты. Каждый у каждого какая-то своя ниша, и все знают ЕДТ. Хорошо. Со всеми можно будет переписываться и задавать вопросы, если что-то непонятно. По формату обучения. У нас обучение проходит в в виде живых вебинаров приблизительно как сейчас. То есть к вам приходит преподаватель, проводит занятия, вы можете по ходу него задавать вопросы, мы получаем какую-то обратную связь, реагируем, отвечаем. Все мы всегда актуализируем. То есть я вот знаю точно, что вот вот-вот выйдет 2026 регис ЕДТ с новыми возможностями, и мы там будем освещать новые возможности. Если вы живёте в другом часовом поясе или смотрите сейчас, например, вот в записи это не смогли прийти в наше время, то записи у нас в личном кабинете остаются навсегда. Можно это пересмотреть в любое удобное вам время. У нас есть группа ВК сейчас, в которой можно переписываться, задавать вопрос, если что-то непонятно. Ну и в конце вы делаете проектную работу. Проектная работа, кстати, будет по обновлению конфигурации поставщика через гид. То есть вы пройдёте весь этот курс, дойдёте до такого уровня мастерства. Через 2 недели стартуем два деятого числа. И длится у нас это 4 месяца. И да, пока вы не ушли, я вас попрошу, вот ссылочка, дайте нам обратную связь по занятию, и мы сейчас дальше продолжим, подведём итоги. Нет. А, да, сейчас я начну уже.

Давайте, во-первых, подведём итоги и дальше я отвечу на все вопросы. Итак, априори работа с расширениями - это сложная тема. Вот вот вот если вы не согласны, напишите. Мне кажется, если опросить 100 человек из мира 1С в совершенно разных статусах, в разных профессиях, вот все 100 скажут, что расширение - это сложно. Но расширение - это уже повседневность. Без них разрабатывать невозможно. Поэтому, конечно, то, что мы сегодня видели, было довольно-таки сложно. Оно требует анализа и вдумчивого анализа в то, что вы видите, и какие-то действия за одну итерацию не получаются. Однако давайте выделим вот то, что точно хорошо получается вот таким методом, который я показывал. Это объединение модулей, это быстрое отображение различий, понимание того, где что. То есть большую часть корректно сделанных с точки зрения архитектуры изменений в расширении вы таким образом перенести сможете. То, что у вас периодически может не получаться, то есть вот вы сделали, у вас что-то слетело. Вот именно для этого полезно как версионирование в гите. То есть у вас всегда есть возможность вернуться на шаг назад. Например, у меня бы сейчас рухнул проект. Ну вот, например, вот я нажимаю кнопку, а у меня он не загружается, выдаётся ошибка не соответствие идентификаторов или ещё какую-то ошибку, которую возвращает платформа. Я могу просто вот давайте прямо на ваших глазах и сделаю. Вот мы сейчас последнее обновление сделали. Мы обновили Серёжу, да? А я сейчас верну всё назад. Я делаю это так с помощью гита. И вот это, кстати, мы изучаем на нашем третьем модулет ПГ Git. Вот как раз вот инструменты и подходы к ремонту. Сейчас я сделаю сбросить наки. Ну, здесь сделаю сбросить ресет. Так, и у нас сейчас как будто ничего и не было от Серёжи не прилетало. И здесь сделаем всё. И теперь мы оходимся хронологически на уровне обновления, полученного от Людмила. Если я сейчас обновлю, то мы вернёмся к предыдущему состоянию. Не буду сейчас дожидаться до конца, но, поверьте, это будет. То есть, сочетая гид и возможность объединения проектов между собой в ЕДТ, вы как раз и получаете вот этот вот шанс объединить расширение между собой. Других способов, честно говоря, я не вижу, как это сделать. И даже отремонтировать неправильно размещённый, вот как вот в конце в расширении Серёжа, неправильно вообще изначально с точки зрения архитектуры созданы объекты. Либо вы можете пойти дальше, например, у вас есть какая-то своя конфигурация, разработанная с нуля, и у вас есть какой-то, например, какая-нибудь утилита внешняя кем-то созданная, и вы решаете, что хочу я её интегрировать внутрь конфигурации, пусть будет неотъемлемой частью. Или это чья-то разработка вашего партнёра, разработчика. Так вот, только в ЕДТ вы сможете это перенести внутрь самой конфигурации. Я убеждён, это классные возможности. Пониманию того, как ими пользоваться, придёт постепенно. Нужно вот войти в сам в сам процесс работы с ЕДТ, освоить и дальше, я считаю, вы будете на курорте, курорте разработки с прочими всеми интересными, классными возможностями. То есть научились работать с расширениями и изучили процедуру объединения расширений и поняли, что ИДТ - это не только инструмент разработки, это ещё инструмент аналитики. То есть вот сделав эти шаги, мы могли себе где-то пометить различия, описать эти различия, а потом уже на нашем архитектурном комитете, условном, если он есть что-то подобном, в нашей команде решать, как нам двигаться дальше.

Теперь я на всё просто отвечаю. Итак, то есть на ЕДТ подразумевает оставление конфигуратора. Он не может заменить его полностью. Вообще, если въезжать в 1С сейчас, надо ли учить обе ID или можно только ЕДТ? Всё, что есть в ЕДТ, есть и в конфигураторе. То есть, э-э, можно не изучать, можно. Вот у нас есть другой курс по 1С, и мы там сразу преподаём в ЕДТ, то есть это отчасти ответственно на ваш вопрос. Я считаю, что без конфигуратора можно обходиться. Всё, наступило это время. В конфигураторе есть возможности по управлению базой данных по настройке административной. Вот они делаются там, например, какой-нибудь веб публикацию сделать, настроить какие-нибудь ещё там вещи, что-нибудь такое. Вот за этим туда можно ходить. Нужно что-то прямо какие-то костыли получаются. Сразу вспоминаю удобство связки Intellig, Java, GitHub. Уже лучше уровень соответствующий по разработке в 1С надо иметь не ниже 1S специалист. Ненене, что не надо обязательно никакого специалиста здесь, чтобы разрабатывать в ЕДТ, нужно просто постепенно это изучить, и вы будете разрабатывать. А как напарник по сравнению с клодом, курсором и так далее или как курсор-клод в мире 1С. Вот этими я никогда не пользовался. Я как только появился напарник в апреле прошлого года, сразу в него влюбился и просто жить без него не могу. А он полностью отменяет необходимость помнить досконально весь синтаксис. Он помогает, он консультирует. То есть появилась возможность вообще задать какой-нибудь вопрос: "Напиши мне чего-нибудь. Он хранит историю ваших вопросов. Ну, в общем, так далее. Ну, давайте попробуем сделать код Revw. Вот. По крайней мере, интерфейс выглядит вот так. Вот он думает и нам сейчас выдаст. Он постоянно развивается. Раз в 2 недели зайдёшь, уже что-то новое. Он анализирует стандарты разработки. Только по опыту одного оффлайн вебинара в небольшом франчайзинге могу сказать, что если вы только начинаете изучать 1С, например, вот вы закончили курсы год назад, то искусственный интеллект вам будет, на мой взгляд, мешать, потому что к напарнику нужно относиться следующим образом. Он вам просто помог вспомнить, что вы, в общем-то, и так знали. Вот он вам написал, и вы проверяете. Вы видите с высоты своего знания. Вот это некорректно, это корректно. Ага. А здесь он построил какой-нибудь, ну, вот, вот, давайте я вам честно скажу, вот этот, вот это я задал дал задачу напарнику программно вывести. Вот я пошёл вплуа в роль коли разработчика и написал две строчки. Выведи мне здесь программно такой-то реквизит с таким-то названием ниже самой нижней панели вот этой вот. Он полностью сам написал код. Сразу и правильно. Я просто подправил заголовок, добавил смайлик. Но при этом, если я смотрю на это, на этот код, я понимаю, что он правильный, что тут нет каких-то явных ошибок. Я, в принципе, могу увидеть ошибку при отладке. Это вас как-то вернёт к анализу, но тем не менее вы всегда будете финальным редактором того, что вам напарник написал. И вот он тут закончил нам код Review. Нарушение стандартов таких-то, пожалуйста. То есть по итогу разработка ускоряется процентов на 40, если вы используете ЕДТ плюс напарник. Где-то так скажем. CCD в курсе на Дженкинсе будет только или на Гитлабе. И и на Дженкинсе, и на и на и на Гитлабе. Даже скажу, что у нас на прошлом потоке один из выпускников закончил, он написал проектную работу интеграция ЕДТ именно в Gitlab. И у нас на нашем сервере есть инхаусный локальный GitLab. Вот вы можете делать прямо всё на нём. Вот здесь вам дадут учётку и, пожалуйста, заходите, работайте. Здесь есть MSSQL сервер, здесь есть постгроссервер. В общем, прекрасный для экспериментов и изучения сервак. И в том числе преподаватели, они вам ответят тоже на все вопросы и по одной CCD системе, по другой CCD системе. Я вот на Дженкинсе только пишу, на Гитлайбе только вот читаю, но сам не разрабатывал. А ЕДТ понимает всякие стандартные команды гита. Status pшp м chrypш и так далее. Или что ему зашили через UI, только это и умеет. Скорее последнее, что ему зашили через UI. И даже не совсем так, а это не ЕДТ, а содержит в себе эту функциональную возможность. Он её наследует из среды эклипса. Вот что в эклипсе есть, то и есть здесь. Только лишь оно вот недавно, буквально в последнем релизе, вот эти команды многие перевели на русский язык. Ну или поставили соответствие пул, pш и так далее. Разницу между последним, между состоянием текущим рабочего дерева, например, и последним, так называемый div, его можно видеть где-то вот здесь. На ваше усмотрение. Мы на курсе вас также будем учить работать в гите и в терминале, в в консоли. Мы предлагаем вам вариант, который вам по душе. Вот вы начинаете изучать гит, например, я показываю это вам в командной строке, и вы чувствуете, вам это нравится, вам у вас получается или не получается. Дальше вы пойдёте вашим путём. Можете работать в графической оболочке, можете делать это в консоли. Ну, там много нюансов, которые как раз постепенно мы развиваем, раскладываем по полочкам. Работа с поддержкой в ЕДТ не реализована. Поддержка должна быть удалена как класс. То есть начало работы с базой данных через ЕДТ начинается с того, что в базу данных снимаете с поддержки. И в дальнейшем, если вам требуется поддержка, она осуществляется с помощью гита. Это этому тоже мы обучаем. И это реализуется через отдельную ветку. И мы как раз изучаем процедуру обновления конфигурации поставщика через GIT. А, ну есть опасение, что если искать работу в 1С, можно легко нарваться на конфигуратор. А прот ларьки с 1С бухгалтерии не слышали. Да, действительно, в большинстве маленьких внедрений вы сядете в конфигуратор, но ваша адаптация туда будет длиться день-два. Она будет заключаться. Разница в том, что, например, сочетание удалить строку в кофигу в конфигураторе - это Ctrl L, а в DT, например, это Ctrl D, то есть Delete. Ну вот какие-то такие различия. И вот в остальном всё то же самое. А напарник - это тоже фишка чисто ЕДТ или можно как-то ещё его использовать. Это искусственный интеллект, разработанный компанией 1С только для ЕД. Он реализован в виде плагина. Мы как раз изучим, как возможности в ЕДТ расширяются с помощью плагинов. В частности, это просто один из плагинов. Вот у него настройки, например, вот здесь располагаются параметры, напарник. Вот пока их немного. Ну, можно, например, удостовериться, что он сейчас стабильно работает с сервером, сказать, сколько строчек автоматически выводить при кодировании впереди, то есть прогнозировать больше, меньше или вообще отключать. Очень интересно, насколько и влияет на вход в профессию джинов и сокращение рабочих мест медлов. Ну, наверное, не буду такой вопрос задавать. Он холиварный и дискуссионный на входу, на вход в джун не влияет вообще никак. То есть, а, как я сказал выше, на мой взгляд, это уровень junorр мешает. То есть, если вы будете сразу пытаться код писать с помощью напарника, то вы запутаетесь, вам понадобится какой-нибудь ментор или ваш коллега старший, который будет вам помогать разобраться, что он написал напарник. Ну или другой, другая. И вам это начнёт помогать, когда вы уже будете понимать, в принципе, как кодировать, писать код.

Так, последние три вопроса. Да, я пока те, кто из вас ещё не поставил нам на обратную связь, на всякий случай ещё вот отправлю ссылочку. Слышал, что у ЕДТ серьёзные системные требования. Какая должна быть машина для комфортной работы с ERP? Для комфортной работы достаточно 16 ГБ памяти и, ну, вот такого ноутбука, с которого я вами с вами работаю. Ну, тут 16 ГБ. Добавьте немножко побольше памяти и чуть получше процессор. То есть что-то среднее между этим и вот этим. Ну, то есть память уберите. Это может быть 6432 ГБ. Ну и так много не надо. И к тому же ещё всё очень меняется быстро. Вот именно в двадцать шестом релизе разработчики заявили, что существенно повысили производительность. Есть ли официальный, не официальный, но безопасный, принятый сообществом облегчённый версии ЕДТ? Нет. Есть версия Lite, но её по поводу неё отдельный разговор. Из неё просто, по-моему, удаляются старые версии конфигурации. Из Java машиной, я так понял, проблем с разными ОС быть не должно, но на всякий случай уточню, как дела у ЕДТ на Убунту, есть ли плюс-минусы при работе ЕДТ под Linux? Едт под Linux под Linux работает прекрасно. Я это знаю от своих коллег преподавателей, в частности, от вот если будете у нас обучаться, у нас есть Никита Иванченко. Он на всех трёх системах. Он очень любит Linux. У него есть свой маг. Вот он вам прямо всю эту тему расскажет. От него просто знаю. Всё там отлично. В том числе это можно помещать и в докер контейнеры. Он это умеет. Тут у нас можно поднять какой-нибудь, в общем, всё это туда. Всё работает хорошо. Вес код тоже позволяет работать с 1С. В чём его отличие от ЕДТ при работе с 1С? Едт в ВДТ вы видите сразу связь с метаданными. Едт вам, исходя из этого, как раз с вами работает. V-код, я сразу скажу, ни VS-код, ни курсор, ничем другим я не пользовался. Я несколько лет работаю в ЕДТ, и мне кажется, этого достаточно. Чем меньше сущности, тем проще жить. У вас 12 ядер, 45 оператив, значит, должно хватить. 100% хватит. Ну и последний не вопрос, но я попробую. Мне нужна профессиональная консультация 1С архитектора. Не за Спасибо, разумеется. Если вам интересно, напишите, пожалуйста, на почту. Курс я пока не выбрал. Вопросы есть и про это, в том числе. Хорошо, я услышал.

Итак, коллеги, сегодня мы с вами посмотрели в одну из задач, которые можно решать в ЕДТ. Это уникального типа задачи, которая решается только в ЕДТ, а именно объединении расширений с конфигурацией. В точности такие же похожие аналитические задачи, уникальные тоже можно решать с помощью ЕДТ, то есть не только разработку. Там прекрасный анализатор ролей, в том числе RLS. Если вы подпрыгиваете, вам некомфортно сразу при мысли о работе с большим количеством ролей в конфигураторе, ощущение такое вечно длящейся боли, да, вот здесь боль заканчивается, начинается, возникает лаборатория очень удобная для работы с ролями и много-много чего другого. Приходите учиться в Отус. И рад был вас сегодня всех видеть. Ждём вас дальше на разных наших открытых уроках. Приходите, обучайтесь. И желаю вам творческих успехов. Всего доброго.