Сделать систему обновлений дополнения 1C. Дополнение к 1С сделать именно дополнением, а не изменением конфигурации.

Рейтинг: 7.8706  
На голосовании
Предложил Зайцев Артемий 13.04.2014 11:43:58

Сделать систему обновлений дополнения 1C. Дополнение к 1С сделать именно дополнением, а не изменением конфигурации.

Бесплатное дополнение к 1С слишком дорого обходится нам и клиентам.

Клиента надо предупреждать. что из-за этого дополнения он теперь всегда будет обновляться не сам, а со специалистом. И отдельно платить за тестирование и установку.

-----------

Причина в том, что дополнение изначально неправильно спроектировано и сделано. Сделано по принципу: берем 1С, и меняем в ней код.

Битрикс взял конфигурацию 1С, изменил в ней несколько объектов, и выложил это "дополнение".

Потом надо дополнение объединить со своей конфигурацией.

Это не дополнение, это "изменение".

"Дополнение" всегда идет для какой-то конкретной версии 1С. С другой может не работать. Это ИЗМЕНЕНИЕ мешает клиенту безопасно обновляться.

Клиент должен ждать выхода нового "дополнения", обновить 1С и поставить "дополнение".  Причем, для строго определенной версии.

-----------

Надо сделать дополнение менее зависимым от объектов конфигурации 1С.

Спроектировать дополнение таким образом, чтобы при установке оно не изменяло стандартные объекты, а добавляло только новые.

Если необходимо что-то изменить в стандартном объекте платформы (добавить пункт в меню, например) — делать это через API 1С мастером настройки

Реализовать систему обновлений. Чтобы новый функционал приходил через систему обновлений и мастер настройки настраивал бы то, что надо.

Опубликовать перечень важных объектов конфигурации, с которыми работает дополнение. Нужно для установки на изменёные конфигурации.

Сделать Автотест наличия важных объектов конфигурации. Например, если в 1С отсутствует справочник "номенклатура", система обновления должна выдать предупреждение об ошибке, со списком обязательных объектов конфигурации.

----------

Когда-то Виртуальная машина Битрикса прошла этот путь. Были конфигурации 1.6, 2.0, 3.0, 3.1, которые не обновлялись, и это всех задалбывало. Системные требования Битрикса менялись и надо было заново настраивать сервер и переносить сайт.

Теперь 4.0, 4.1, 4.2, 4.3 - худо-бедно обновляются. Это круто. Без полной переустановки появились Push and Pull на nginx и поиск сфинкс.


-----------

Надеюсь, дополнение к 1С достаточно созрело, чтобы быть отдельным, и меньше зависеть от конфигурации.

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

Рейтинг: 0  
Зайцев Артемий 13.04.2014 14:56:50
Я вижу дополнение таким:

Ставится дополнение, в котором есть только система обновлений. И кнопка установить.

Система обновлений скачивает модуль битрикса и запускает сначала Автотест проверки конфигурации. Вдруг на эту конфигурацию устанавливать нельзя.

Потом ставится модуль, который создает свои объекты, а стандартные 1С-овские (если нужно добавить пункт меню, например) правит через API.

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

Аналогично модулям из маркетплейса можно сделать возможность удаления модуля и всех данных, которые он создал.

Цель - упростить внедрение и обновления. Убрать зависимости от версий конфигураций. Система сама должна определять можно ставить дополнение или нельзя. И почему.
Рейтинг: 0  
Юрий Волошин 13.04.2014 14:58:05
В отличие от виртуальной машины, с модулем 1С все немного сложней. Но кое-что мы сделали в новой версии, оно будет отдельным, не будет ломаться при обновлениях и т.п. Более детально появится после релиза в статьях описывающих это все.
Рейтинг: 0  
Денисюк Александр 14.04.2014 11:25:54
Слишком сложно. Чем сложнее механизм, тем менее стабильный механизм.
И да, я бы ни за что не пустил бы какую то внешнюю прогу, которая накатывал бы обновление в 1С. Кто знает что она накатит и как. Может так покорежить данные, что потом только бэкап..
Думаю что решений, которые реализовываются в новых модулях, пока, будет достаточно.
Рейтинг: 0.7633  
Зайцев Артемий 14.04.2014 14:00:31
Александр. Я однажды ставил ваше дополнение на 10.3.20.2. И грохнул людям справочник номенклатуры. Там на форме элемента пропало два дополнительных флажка.

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

Теперь всем клиентам, которые хотят ставить новое дополнение, я говорю, что его нельзя ставить, пока я не проверю как следует. Они не верят, думают я хочу набить себе цену.

--------

Но и установка обновлений связана с рисками. Клиент говорит - хочу новое дополнение. Мы отвечаем, найди 1С-ника и пусть он обновит именно до нужной версии. Денег на 1С-ников тратится - уйма.

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

Говорим клиенту, зачем 1С-ник обновил на одну версию больше? Пусть теперь обновляет сначала до нужной.

---------

Поймите, 1С обновляют не такие крутые специалисты по 1С, как вы.

---------

Обратите внимание на конкурентов:
http://www.ecommerce-1c.ru/kontakty

Они написали подсистему к 1С, которая не зависит от стандартной конфигурации. Работает со всеми возможными CMS.

Вам надо подходить подобным образом:
- не надо исправлять стандартный план обмена - сделайте свой,
- не надо изменять стандартный модуль "обмен с сайтом" - сделайте свой,
- справочник номенклатуры не изменяйте, используйте стандартный. Он редко меняется.

Обособьте обмен с сайтом настолько, насколько можно, и тогда вы увидите, что обмен с сайтом можно легко и безболезнено обновлять. И от версий 1С все будет очень мало зависеть.
Рейтинг: 0.2021  
Денисюк Александр 14.04.2014 14:30:43
Новый модуль и будет идти как отдельная подсистема. При накатывании новых релизов  модуль обмена останется прежний.  
Рейтинг: 0.3576  
Голендухин Олег 15.04.2014 06:08:17
Присоединюсь. Дополнение не должно менять конфу.
Рейтинг: 0.0752  
Коваленко Алексей 16.04.2014 06:39:44
НИКОГДА не было такого, чтобы рассказы о том, как все круто в обмене с 1С поставлялись в коробке от 1С.
А я помню интеграцию с ее самого начала ;)

ВСЕГДА аддоны от Битрикс жили своей жизнью, а коробки от 1С - своей.

просто голосую ЗА
Рейтинг: 2.7083  
Денисюк Александр 16.04.2014 18:48:42
Коробка от 1С крута тогда, когда конфигурация базовая.
Рейтинг: 0.2824  
Хауптман Алексей 06.12.2014 21:43:43
Есть ли в планах реализовать текущий модуль с использование механизма расширений, которое будет в версии 8.3.6? Это намного упростит накатывание модуль интеграции от 1С-Битрикс.