26.12.2017 Кирилл Карцев 18028
Механизм расширений в 1С 8.3. Последовательно...
Содержание:
1. Что такое механизм расширений в 1С
2. В каких ситуациях стоит задуматься о применении этого механизма
3. Последовательность перевода доработанной системы на расширения 1С
4. Обновление и поддержка расширений в 1С

Что такое механизм расширений в 1С


Одним из нужных и важных механизмов кастомизации систем на платформе 1С было создание механизма внешних отчетов и обработок. Это расширило возможности адаптации типовых решений под потребности бизнеса. Начиная с платформы 8.3.9, фирма 1С шагнула дальше – появилась возможность вносить изменения в ряд объектов конфигурации, не снимая их с поддержки. И совсем недавно (наверняка каждый специалист в 1С уже наслышан о новых функциях платформы 8.3.11) с помощью механизма расширений, появилась возможность изменять архитектуру типовых решений – добавлять новые объекты и изменять состав типовых. Как это скажется на подходе в поддержке и разработке систем 1С, нам еще предстоит увидеть, но очевидно, что это – следующий виток развития в способах кастомизации систем на базе платформы 1С.

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

В каких ситуациях стоит задуматься о применении этого механизма


• Конечно же, при адаптации типовых решений. Теперь практически нет необходимости снимать конфигурацию с поддержки. Достаточно подключить расширение и адаптировать систему под потребности предприятия. А если потребность в новом функционале отпадет со временем, то достаточно его просто отключить;

• Можно выпускать готовые функциональные модули в виде расширений. Для интеграции нового функционала (подсистемы, модуля) достаточно будет подключить нужное расширение. Это проще и быстрее, чем адаптировать типовое решение «по старинке», снимая конфигурацию с поддержки и внося в нее изменения;

• Когда это - требование клиента. Такое тоже бывает: Заказчик просит «настроить» систему, но не снимать ее с поддержки, чтобы было проще ее обновлять. Последнее время такое требование стало встречаться все чаще;

При корпоративной разработке, когда конфигурация подключена к хранилищу, а нужные объекты захвачены другим разработчиком. Ранее в таких случаях приходилось отключаться от хранилища. Теперь же можно на время подключить расширение, а как появится возможность, перенести изменения в хранилище. Или можно индивидуально подключать сторонний функционал к базе разработки, не затрагивая хранилище. Например, можно интегрировать «1С:Тест-центр» для нагрузочного тестирования;

При использовании распределенных информационных баз (РИБ). Можно адаптировать функциональность конкретного узла, не внося изменения в основную конфигурацию;

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


Последовательность перевода доработанной системы на расширения 1С


Рассмотрим последовательность перевода конфигурации на расширения 1С. Для примера у нас есть 1С:Бухгалтерия 3.0 с добавленным реквизитом номенклатуры – «КЛ_ШтрихКодОсновной». Реквизит выведен в форму элемента справочника.

           1. Разворачиваем в тестовой среде платформу версии 8.3.11 (или выше) и копию переводимой базы. Все дальнейшие работы делаем первоначально на копии рабочей базы;

           2. Проверяем режим совместимости конфигурации. Осуществляем переход на режим совместимости с платформой не ниже 8.3.11, если такое возможно. Иначе придется подождать выхода типового релиза в совместимости с 8.3.11 (не использовать);

 

Рис. 1. Режим совместимости

           3. Добавляем новое расширение и «заимствуем» в него все необходимые объекты. Заимствовать нужно объекты прямо или косвенно связанные с дорабатываемым функционалом;
На рисунке ниже представлено расширение «Штрих коды КЛ», в котором «заимствованы» необходимые объекты основной конфигурации.
 

Рис. 2 Расширение «Штрих коды КЛ»

             4. Первыми переносим изменения структуры хранения данных (добавленные или измененные по составу объекты). На этом этапе нужно перенести не только изменения в структуре, но и измененные данные в расширение. 

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

В нашем примере нам надо перенести реквизит «КЛ_ШтрихКодОсновной» в расширение. Переименовываем реквизит в источнике в «КЛ_ШтрихКодОсновной1». Добавляем в расширение «КЛ_ШтрихКодОсновной» с таким же типом. Запускаем обработку с кодом:
 


Данные успешно перенесены в расширение.
          5. Далее переносим все остальные доработки системы (формы, модули, отчеты, роли и т.д.);
В нашем примере это будет форма элемента справочника. Тут довольно просто: в заимствованную форму элемента нужно вывести новый реквизит объекта.

          6. Откатываем основную конфигурацию на типовую. Как это сделать, можно найти в интернете.

          7. Тестируем результат в новой системе. База типовая, а данные и добавленная функциональность сохранились:


 

Рис. 3 Добавленная функциональность перенесена в расширение.

          8. Осуществляем переход на рабочей базе и работаем.

Обновление и поддержка расширений в 1С


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

 Кирилл Карцев,
руководитель отдела внедрения ООО “Кодерлайн”.


Наши проекты

Разработка функциональных требований к информсистеме на базе «1С:Управление холдингом 8»
ФГУП «СВЯЗЬ-безопасность»

Отрасль:
Охранные услуги

Внедренное типовое решение:
1С:Управление холдингом

- Зафиксировали процессы по блокам бухгалтерского, налогового учета, казнач...

ООО «Мир Аксиомы»
ООО «Мир Аксиомы»

Отрасль:
Аудиторские и консалтинговые услуги

Внедренное типовое решение:
1С:Бухгалтерия КОРП

- Бухгалтерский учет:
Банк и касса
Завершение периода
Нематериальные ...

Автоматизация интеграции с информсистемами клиентов на базе «1С:Предприятие 8. WMS Логистика. Управление складом»
ОАО «Фрейт Линк»

Отрасль:
Логистика и грузоперевозки

Внедренное типовое решение:
«1С:Предприятие 8. WMS Логистика. Управление складом»

– Управление складскими запасами;
– Оформление заказов покупателей;
– ...

Внедрение ПП "1С:Бухгалтерия 8 ПРОФ" в ООО «Союз Три» (Кондитерский дом Renardi)
ООО «Союз Три»

Отрасль:
Производство

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Бухгалтерский учет
- Банк и касса
- Расчеты с контрагентами
Налоговый ...

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
«1С: Управление торговлей»

- Создание прототипа SRM-системы на базе «1С: Управление торговлей»
- Автомат...

АО «Аэроклуб»
АО «Аэроклуб»

Отрасль:
Услуги в области делового туризма

Внедренное типовое решение:
1С:Бухгалтерия 8 КОРП

Проведение серии интервью с руководством и ключевыми специалистами Разраб...

Внедрение ПП "1С:Управление небольшой фирмой 8 ПРОФ" в ООО «Шокостайл»
ООО «Шокостайл»

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление небольшой фирмой 8 ПРОФ

Управление продажами, логистикой и транспортом (SFM, WMS, TMS):
- Планирование п...

ЗАО «Ламбумиз»
ЗАО «Ламбумиз»

Отрасль:
Производство картонной упаковки

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Маркетинг;
- Продажи;
- Планирование закупок;
- Закупки;
- Регламенти...

Автоматизация учета на базе ПП "1С:Комплексная автоматизация 8" в ЗАО "Крюгер-Гранд"
ЗАО «Крюгер-Гранд»

Отрасль:
Производство

Внедренное типовое решение:
1С:Комплексная автоматизация

- Создание интерфейсов и наборов прав пользователей;
- Отражению временных ...

ФГУП «Почта России»
ФГУП «Почта России»

Отрасль:
Почта, доставка

Внедренное типовое решение:
1С:Управление торговлей

- Оформление заказов поставщикам
- Оформление заказов покупателей
- Упр...

ХИТЕК-ГРУП
ХИТЕК-ГРУП

Отрасль:
Продажа парикмахерского инструмента и аксессуаров

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Документооборот (ECM)
• Делопроизводство
Управление бизнес-процессами и И...

МГК "Световые Технологии"
МГК "Световые Технологии"

Отрасль:

Внедренное типовое решение:
1С:Предприятие 8. ERP Управление предприятием 2

Специалисты "Кодерлайн" произвели доработки в системе 1С:ЕРП 2.4 с учетом треб...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение