Как я пытался перевести 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С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Зарплата и Управление Персоналом 2.5 Бухгалтерский учет Налоговый учет Управленческий учет Акцизы ЕНВД ЕСН Земельный налог ИП, ПБОЮЛ, КФХ Налог на имущество Налог на прибыль НДС НДФЛ ФОМС, ЕФС Транспортный налог УСН ПСН (патентная система налогообложения) Платные (руб)

Обновления для конфигураций: КА 1.1; ЗУП 2.5; БУХ 2.0; КА 1.1 Комплексная автоматизация торговли алкогольной продукцией; КА 1.1 Комплексный учет сельскохозяйственного предприятия

27900 руб.

01.04.2020    145836    644    358    

234

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

Те кто объединял конфигурации находящиеся на поддержке, обновлял подсистемы БСП прекрасно помнят упражнение «10000 тысяч кликов мышкой» или, непонятное словесное заклинание, после которого конфигурация снимается с поддержки целиком.

1 стартмани

26.09.2024    366    1    milkers    2    

7

Обновление 1С Пользователь Платформа 1С v8.3 1С:Управление торговлей 11 Россия Бесплатно (free)

Вышел новый релиз для УТ11 5.19.63. На копии базы было выполнено обновление и вылезли проблемы с номенклатурой, подлежащей маркировке. В публикации описаны проблемы, обнаруженные в копии базы конкретной организации.

24.09.2024    504    gull22    1    

7

Обновление 1С Программист Платформа 1С v8.3 Бесплатно (free)

Как исправить медленное сравнение конфигурации с файлом cf, сохраненным из хранилища.

17.09.2024    3948    vatkir    14    

9

Обновление 1С Пользователь Платформа 1С v8.3 1С:Управление торговлей 11 Абонемент ($m)

Упрощенное обновление конфигураций 1С (предпочтительно самописных) с помощью батника и Яндекс Диска (по публичной ссылке)

1 стартмани

22.08.2024    443    0    user1694357    0    

3

Обновление 1С Системный администратор Россия Абонемент ($m)

На ИТС есть статья, в которой поверхностно описан процесс автоматического обновления тонких клиентов. В качестве примера, что логично, представлены методы конфигурации 1С. Но, в отличие от того же управления списками баз, для обновления не требуется хранить информацию, потому я решил переписать код на php, чтобы можно было отвязаться от 1С. Не работает для файловых баз, подключенных как File="ПутьКПапкеБазы"; (а жаль), для опубликованных файловых - работает.

1 стартмани

20.08.2024    488    MikeSh    10    

1

Обновление 1С Программист Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Бесплатно (free)

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

05.08.2024    632    NikiforovVA    0    

1

Обновление 1С Программист Платформа 1С v8.3 Платформа 1C v8.2 Конфигурации 1cv8 Бесплатно (free)

По нашему опыту, есть 2 ситуации, когда хочется отдать обновление нетиповой 1С кому-то другому. А) Если конфигурация и её доработки отлично знакомы, но не хочется заниматься рутиной. Б) Когда обновление длительно откладывалось, накопился «снежный ком» изменений, а команда, которая их делала, давно и неоднократно менялась.

26.06.2024    1126    1c-izh    4    

5
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. amon_ra 61 27.10.15 21:38 Сейчас в теме
вот уж интересненько) недавно сам задался перенести все в расширение, но откинул эту затею так как нет возможности обратиться к модулям объекта и менеджера. Что же посмотрим, что у вас будет дальше!
2. awk 744 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. Поручик 4691 28.10.15 00:15 Сейчас в теме
Только я один обратил внимание на "компилятор" в 1С?
yuryshestakov; shalimski; Bassgood; +3 Ответить
4. Артано 786 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 4567 28.10.15 16:24 Сейчас в теме
Пока еще рано использовать расширения, слишком слабый поддерживаемый функционал. Возможность добавлять свои отчеты и обработки, так в БСП уже существует подсистема дополнительных отчетов и обработок.
Добавили хотя бы возможность добавлять общие модули и подписки в расширение, то уже можно о чем-то думать. Расширение пока даже не дотягивает до минимальных потребностей, на мой взгляд.
jokereinherjar; +1 Ответить
10. Letos 267 28.10.15 16:29 Сейчас в теме
(9) ivanov660, если вам нужно изменить что-то в работе функционала формы, то он весьма не плох. Да, соглашусь, многое приходится менять в самой конфигурации. Но у меня работа построена таким образом, что получается избежать изменение в типовых объектах 1С. Использование расширение позволяет свести к мнимому трудозатраты при обновлениях.
11. oberonm 9 29.10.15 07:39 Сейчас в теме
Был негативный опыт по переходу на расширение при доработке Документооборота. клиенты в локальной сети не испытывали проблем, то для удаленных клиентов (тонкий клиент через веб) пошли странный ошибки. из серии что форма расширения видна, а вот процедуры формы нет. Помогало переключение скорости соединение на "обычное".
И что ещё замечено - неудобство работы с расширениями при групповой разработке в тестовых базах. приходится переподключать расширение на "боевую" отдельно
12. Mortiferus 362 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 Ответить
Оставьте свое сообщение