Имя: Пароль:
1C
 
ГрЁбанное расширение выносит мне мозг
0 aptomilov
 
07.10.20
13:43
Платформа 8,3,11,16,1148
Бп 3

Написал простенькое расширение в режиме Адаптация ( а именно в Форму Товары документа поступления товаров и услуг добавил несколько колонок и пересчет к ним)
и все бы ничего но после очередного обновления к чертям слетают эти несколько колонок и сверху горит желтым полоса  Обновить форму.
Мои действия
что бы заново не пилить колонки (а нахрена тогда эти расширения нужны) я просто беру рабочее расширение и загружаю заново и что вы думаете горит полоса и колонок нет
но код при этом весь на месте

И вот вопрос как загрузить расширение что бы колонки то обратно появились. и желательно с привязками к процедурам.
1 aptomilov
 
07.10.20
14:07
в дереве колонки то остались
но отвязались от данных и поэтому их нет на форме
2 dmpl
 
07.10.20
14:12
Что происходит, если жмакнуть "Обновить форму"?
3 RomanYS
 
07.10.20
14:12
Расширение содержит исходную форму, её нужно обновить внутри раширения.
4 aptomilov
 
07.10.20
14:17
а поля нужные вдобавок еще и из дерева пропадают  
после нажатия на кнопку обновить и по сути надо заново все колонки делать
5 PLUT
 
07.10.20
14:18
(0) может стоит заморочиться и в расширении программно добавить несколько колонок и пересчет к ним? тогда при инициализации формы "колонки будут появляться  с привязками к процедурам"
6 aptomilov
 
07.10.20
14:21
(5) - да не я хочу разобраться вот именно с это проблемой  ибо у меня уже несколько баз с расширениями
7 PLUT
 
07.10.20
14:22
(6) да нет наверное
8 oslokot
 
07.10.20
14:25
известная проблема и известное решение - в расширении надо все создавать программно
9 dmpl
 
07.10.20
14:26
(8) Тогда вопрос - чем расширение лучше модификации конфигурации? Во втором случае хотя бы нет головняка с типами реквизитов, которые вдруг перестали совпадать.
11 oslokot
 
07.10.20
14:31
(9) а хез. Зато объекты остаются "на замке" и после обновления не следим за модификацией модулей, форм и прочее
Просто расширять надо с умом
12 aptomilov
 
07.10.20
14:31
А по этому вопросу кто нибудь обращался в поддержку ?
13 aptomilov
 
07.10.20
14:34
(11) - научи как правильно добавить колонки что бы они ни умирали
реквизиты колонок при этом лежат в основной конфе
14 dmpl
 
07.10.20
14:36
(12) А что может ответить поддержка? Система сравнивает форму в расширении и оригинальную форму, после чего эти изменения пытается внести в текущую форму основной конфигурации. Если форма изменилась кардинально - естественно, программа не сможет корректно внести изменения.
15 oslokot
 
07.10.20
14:37
(13) я же уже написал как - программно.
Создать элементы формы для имеющихся реквизитов + обработчики
16 Timon1405
 
07.10.20
14:38
(13) ищете вызов из вашей формы модуля МодификацияКонфигурацииПереопределяемый, в нём пустые заглушки для модификации, выкидываете его в расширение пишете &Вместо, дальше (15)
17 oslokot
 
07.10.20
14:40
(16) Кстати про МодификацияКонфигурацииПереопределяемый меня учили но я так и не постиг дзен, а обработчики как прикручивать (форму ведь в этом случае не расширяем)?
18 aptomilov
 
07.10.20
14:45
(17) первый раз такие слова слышу
19 Timon1405
 
07.10.20
14:47
(17) ДобавленныйЭлемент.УстановитьДействие("ПриИзменении", "СвоеРасширение_СвояДобавленнаяПроцедураПриИзмененииВРасширенииВФорме");
конечно, форму документа придется расширить этой процедурой
20 oslokot
 
07.10.20
14:53
(19) Есть как раз фишка без расширения формы дока, если я не ошибаюсь
21 aptomilov
 
07.10.20
14:55
(20)
а тут поподробнее
22 PLUT
 
07.10.20
15:06
23 yzimin
 
07.10.20
15:09
(21) лично я, если добавляю команду программно через МодификацияКонфигурацииПереопределяемый, то действие прописываю так

                    НоваяКоманда = Форма.Команды.Добавить("OZON_СобратьЗаказ_Программно");
                    НоваяКоманда.Действие = "Подключаемый_ВыполнитьПереопределяемуюКоманду";
                    НоваяКоманда.Заголовок = "Собрать заказ";

Далее в модуле МодификацияКонфигурацииКлиентПереопределяемый -> ВыполнитьПереопределяемуюКоманду
описываем нужные действия
24 aptomilov
 
07.10.20
15:12
МодификацияКонфигурацииПереопределяемый не вижу такого общего модуля в конфе бп 3
25 Fragster
 
гуру
07.10.20
15:14
реквизиты в УФ в расширениях всё-таки лучше программно создавать, в чем-нибудь типа ПриСозданииНаСервереПосле
26 PLUT
 
07.10.20
15:15
(24) а в ERP 2.4 есть :)
27 Timon1405
 
07.10.20
15:15
(23) Команда != обработчик действия элемента, о чем в (22) тоже написано:
Следующий шаг - разобраться с подключением событий при интерактивной работе на форме с этим реквизитом. В данном случае рассмотрим событие «ПриИзменении». Вот тут как раз случай, когда без модуля формы не обойтись, увы. Но я советую помещать только вызов процедуры, а саму обработку размещать в вашем общем модуле.
(24) ищите СобытияФорм.ПриСозданииНаСервере(, он выведет в МодификацияКонфигурацииПереопределяемый
28 Garykom
 
гуру
07.10.20
15:31
(0) Не трогай формы в расширениях, только программно кодом
29 PLUT
 
07.10.20
15:45
я бы еще добавил, что расширения еще сырые :) например не на всех релизах платформы 8.3 заклинания работают (например, аннотация &ИзменениеИКонтроль)
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший