Как я пытался перевести 1С 8.2 на расширение конфигурации

31.05.16

База данных - Обновление 1С

Имея нетиповую 1С Бухгалтерия 8,2 решил перенести все доработки в 1С 8.3 в расширение конфигурации, и что из этого получилось.

Тем, кто ещё не знаком с термином "Расширение конфигурации", советую прочесть следующую публикацию, так любезно предоставленную нам 1С ИТС: http://its.1c.ru/db/v83doc#bookmark:dev:TI000001523

А также на официальном сайте 1С:  http://v8.1c.ru/o7/201410ext/

Моими исходными данными были конфигурация 1С Бухгалтерия 8.2, сильно доработанная в ряде документов и в учете. И все это нужно было перевести на 1С:Предприятие 8.3 (8.3.6.2041) Бухгалтерия предприятия, редакция 3.0 (3.0.38.55) . Для переноса интерфейсных решений и отредактированных форм решил использовать Расширение конфигурации.

Создать расширение не составило труда. Решил начать переносить самые ходовые объекты, в моем случае это был Справочник Договоры контрагентов и Справочник Контрагенты.

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

Более легкий способ для решения подобной задачи, это создать ФормуЭлемента, чтобы на ней отразились все Реквизиты Справочника, и заимствовать в расширение эту форму, тогда все ваши реквизиты перейдут в расширение и все связанные с ними объекты, после чего уже можно приступить к доработке.

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

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

Следующая особенность Расширения - это то, что в программном коде внутри Расширения можно обращаться только к тем элементам, которые есть внутри текущего расширения. То есть если вам нужно программно обратиться к справочнику, например:

Справочники.Склад

То справочники Склад должен быть уже заимствован в расширении, иначе, в режиме предприятия при срабатывании вашего кода 1С выдаст ошибку и закроется (но, возможно, у меня была особенность платформы или ещё чего, но факт налицо, при добавление в расширении соответствующего справочника проблема уходила).

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

Также на более новых платформах при отладке может выходить сообщение об ошибке, следующего содержания: 
"При выполнении операции над расширением возникла ошибка:
Не удалось заблокировать запись. Действие (изменение, удаление или блокировка записи) не выполнено.
Ошибка блокировки объекта. Объект уже заблокирован:".

Для решения данной проблемы необходимо  в конфигураторе (Сервис -> Параметры -> Запуск 1С:Предприятия -> Параметр запуска) указать параметр "РежимОтладки". После чего будет возможно проводить отладку.

ПРИМЕР:

У меня была заведена процедура Событие ПриОткрытииФормы(), также в Расширении данной формы я создал дополнительную процедуру ИЕАПереходПриОткрытии() (где ИЕАПереход - название моего расширения). Все работало. Со временем из Конфигурации источник была удалена процедура ПриОткрытииФормы(), но в свойствах формы в Разделе События -> ПриОткрытии, название вызываемой процедуры удалено не было. В результате в ИЕАПереходПриОткрытии() в расширении не срабатывал. Но как только из Свойств формы было удалено название несуществующей процедуры, код расширения тут же заработал

Это только на уровне программы. Запуск у пользователей состоится через 2 недели. Тогда и ожидаю увидеть основные проблемы и нюансы.

расширение

См. также

Обновление 1С Программист Платформа 1С v8.3 1С:ERP. Управление холдингом Абонемент ($m)

Описан практический пример обновления через копию конфигурации 1С:ERP. Управление холдингом с версии 3.2.6.6 на версию 3.2.6.7, который можно применять на других конфигурациях и версиях.

10 стартмани

18.02.2025    672    PetrovAnton    6    

4

Обновление 1С Программист Платформа 1С v8.3 Абонемент ($m)

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

10 стартмани

18.02.2025    585    3    kalyaka    0    

7

Обновление 1С Программист Платформа 1С v8.3 Абонемент ($m)

При длительном обновлении из конфигуратора следим за процентом загрузки ПК и отправляем письмо на почту при завершении.

1 стартмани

17.02.2025    272    0    slavik27    0    

3

Обновление 1С Запросы Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 Абонемент ($m)

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

2 стартмани

06.02.2025    1814    14    XilDen    26    

35

Групповая разработка (Git, хранилище) Обновление 1С Программист Платформа 1С v8.3 Россия Бесплатно (free)

Внедряем проверку новых версий прямо в расширение. Оповещайте о новых версиях и показывайте пользователям список изменений. Для разработчиков, которые хотят сэкономить время и повысить лояльность клиентов!

05.02.2025    1694    Nonik    10    

17

Обновление 1С Программист Бухгалтер Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 Россия Бухгалтерский учет НДС Абонемент ($m)

Обновление для конфигурации Управление торговлей 10.3.88.3 добавляет поддержку ставок НДС 5% и 7%, обеспечивает корректную печать этих ставок на актуальных моделях торгового оборудования (АТОЛ, ШТРИХ, ревизия 4004), содержит актуальные правила обмена с конфигурацией "Бухгалтерия предприятия 3.0" для передачи новых ставок. Новые ставки НДС поддерживается в печатных формах УПД, ТТН и т.д. В состав дистрибутива включены обработки для обслуживания торгового оборудования ККТ нового формата (Штрих-М и АТОЛ)

5 стартмани

31.01.2025    2214    38    karpik666    39    

23
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. amon_ra 63 27.10.15 21:38 Сейчас в теме
вот уж интересненько) недавно сам задался перенести все в расширение, но откинул эту затею так как нет возможности обратиться к модулям объекта и менеджера. Что же посмотрим, что у вас будет дальше!
2. awk 745 27.10.15 22:15 Сейчас в теме
Также после каждого перенесенного реквищита конфигурация

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


Надо бы поправить... И о чем статья?
disa_ostr; Betis; +2 Ответить
5. Painted 49 28.10.15 10:47 Сейчас в теме
Дополню (2) awk,
так как они не пресутствуют на типовой
заимствовать в расширение Эту форму
соответствующего справочникак
ну и т.д.
13. пользователь 06.11.15 11:03
Сообщение было скрыто модератором.
...
14. пользователь 06.11.15 13:49
Сообщение было скрыто модератором.
...
3. Поручик 4667 28.10.15 00:15 Сейчас в теме
Только я один обратил внимание на "компилятор" в 1С?
yuryshestakov; shalimski; Bassgood; +3 Ответить
4. Артано 797 28.10.15 02:43 Сейчас в теме
(3) awk в сообщении выше тоже обратил. Опечатался человек, вместо отладчик написал компилятор, бывает
NazarovV; 1cmax; jaroslav.h; +3 Ответить
6. qwed557 30 28.10.15 11:13 Сейчас в теме
Смысл перетаскивать все в расширения если все равно курочите типовые справочники добавлением своих реквизитов? Для хранения ваших реквизитов можно было бы добавить новый регистр сведений и хранить в нем все что вашей душе угодно, и подтягивать данные при открытии из этого регистра Тогда не пришлось бы курочить типовые объекты, а так не вижу смысла в данных извращениях.
jokereinherjar; Ali1976; ixijixi; +3 Ответить
7. insurgut 208 28.10.15 12:36 Сейчас в теме
(6) qwed557, а нельзя обойти при помощи использования дополнительных реквизитов?
8. Perk0n 13 28.10.15 13:50 Сейчас в теме
Брутальный инфостарт превращается.. превращается... в элегантную мисту.
Хабр пока стоит.
artichoke; +1 Ответить
9. ivanov660 4710 28.10.15 16:24 Сейчас в теме
Пока еще рано использовать расширения, слишком слабый поддерживаемый функционал. Возможность добавлять свои отчеты и обработки, так в БСП уже существует подсистема дополнительных отчетов и обработок.
Добавили хотя бы возможность добавлять общие модули и подписки в расширение, то уже можно о чем-то думать. Расширение пока даже не дотягивает до минимальных потребностей, на мой взгляд.
jokereinherjar; +1 Ответить
10. Letos 268 28.10.15 16:29 Сейчас в теме
(9) ivanov660, если вам нужно изменить что-то в работе функционала формы, то он весьма не плох. Да, соглашусь, многое приходится менять в самой конфигурации. Но у меня работа построена таким образом, что получается избежать изменение в типовых объектах 1С. Использование расширение позволяет свести к мнимому трудозатраты при обновлениях.
11. oberonm 9 29.10.15 07:39 Сейчас в теме
Был негативный опыт по переходу на расширение при доработке Документооборота. клиенты в локальной сети не испытывали проблем, то для удаленных клиентов (тонкий клиент через веб) пошли странный ошибки. из серии что форма расширения видна, а вот процедуры формы нет. Помогало переключение скорости соединение на "обычное".
И что ещё замечено - неудобство работы с расширениями при групповой разработке в тестовых базах. приходится переподключать расширение на "боевую" отдельно
12. Mortiferus 363 29.10.15 09:04 Сейчас в теме
Следующая особенность Расширения - это то, что в программном коде внутри Расширения можно обращаться только к тем элементам, которые есть внутри текущего расширения.

ну так про это в одной из статей, которые вы приводите вначале, так прямо и написано, чему же тут удивляться или возмущаться? внимательней надо читать...
15. insurgut 208 06.11.15 14:00 Сейчас в теме
Думаю будут не против: http:// /news/how-2-use-extensions-in-8-3-6/ - как всегда все аккуратно, четко и по теме.
artichoke; +1 Ответить
Оставьте свое сообщение