Имя: Пароль:
1C
 
Работа с расширением
,
0 NIGHTHUNTER
 
29.10.21
05:40
Как в расширение добавляются процедуры общего модуля? Добавили общий модуль в расширение. А потом, в ручную переносить туда процедуры,
и писать у них соответствующие директивы? Если добавлен в расширение общий модуль, и процедура. у которой стоит директива

&Вместо("УстановитьЦены")

Почему выполнение происходит в типовой процедуре УстановитьЦены ? как что бы отрабатывало расширение, за место типовой?

у расширения установлено назначение Дополнение, галка активно установленна.
1 NIGHTHUNTER
 
29.10.21
07:45
вот эта процедура, с уже измененным названием, заменяет процедуру из типового общего модуля, типовую функцию
ставлю в ней точку останова но в нее ничего не заходит, выполняться продолжает типовой модуль

http://joxi.ru/KAx3R4VTvBVWk2
2 NIGHTHUNTER
 
29.10.21
07:52
Вызов типовой функции, типового общего модуля

    Для индекс = 1 По 2 Цикл
        СтруктураФормы.ДеревоЦен.Строки.Очистить();
        УстановитьЦены(МассивВидовЦен, СтруктураФормы, ?(индекс = 1, "Обновление", "Обнуление"));
    КонецЦикла;

КонецПроцедуры


Каким образом тут, за место УстановитьЦены(МассивВидовЦен, СтруктураФормы, ?(индекс = 1, "Обновление", "Обнуление"));

Будет вызвана функция из расширения?

&Вместо("УстановитьЦены")
Процедура идУстановитьЦены(Знач МассивВидовЦен, Знач СтруктураФормы, Знач ВидОбновленияЦен)
3 Pro-tone
 
29.10.21
08:52
Правый клик по обработчику общего модуля "добавить в расширение"
4 Pro-tone
 
29.10.21
08:57
+ В БСП расширения включаются и отключаются в режиме предприятия
5 АнализДанных
 
29.10.21
09:29
(0) Безопасный режим у расширения отключи, убедись, что оно активно.
6 Dmitrii
 
гуру
29.10.21
10:11
(0) >> Добавили общий модуль в расширение.

Как именно добавили?
Может вы случайно создали свой модуль в расширении с таким же именем, как в расширяемой конфигурации, а не заимствовали модуль в расширение?

Для того, чтобы выполнить заимствование объекта, необходимо воспользоваться командой Добавить в расширение контекстного меню объекта конфигурации. После выполнения данной команды в расширении создается заимствованный объект.
Подробнее тут https://its.1c.ru/db/v8318doc/bookmark/dev/TI000001523

Далее перехват методов расширяемой конфигурации (включая назначение обработчиков) реализуется с помощью специального механизма аннотаций. Имеется несколько различных возможности перехвата вызова метода, которые позволяет реализовать практически любую схему исполнения расширяемого и расширяющего программного кода.
Подробнее тут https://its.1c.ru/db/v8318doc#bookmark:dev:TI000001841
Про аннотации тут https://its.1c.ru/db/v8318doc#bookmark:dev:TI000001838

Ну и разумеется проверить (5).
7 NIGHTHUNTER
 
29.10.21
13:43
(3) Правый клик, по процедуре или функции то есть? Не делал ещё так. Вот узнаю.
(4) Ясно нужно поискать где. То есть возможно это расширение не включено на стороне предприятия.
(5) Ок. сделаю буду проверять. (4) Еще посмотрю как проверить.
(6) Не ну как добавили в расширение, как добавляют. Нажали на модуле и выбрали добавить в расширение. Это я считаю все сделали правильно.
Вопрос почему я не могу увидеть как оно работает. Что то не довключено видимо. Пытаясь понять что, что бы увидеть как оно работает.

Буду снова пробовать отладку этого расширения.
8 ChMikle
 
29.10.21
14:05
когда нажимаешь на модуль ,добавить в расширение . он добавляется пустым, выбираешь в конфигурации, в модуле  процедуру или функцию которую необходимо в расширение перенести , на названии правой кнопкой мыши , определить момент выполнения (вместо,после ) ну и дальше уже в расширении описывать само тело , как надо ....
9 NIGHTHUNTER
 
01.11.21
02:40
(8) Ясно. Спасибо. Не видел таких чудес, хотя искал. Нужно будет позаниматься. Выявить все эти возможности. Как то сам не выявил их.
10 NIGHTHUNTER
 
01.11.21
03:24
(8) Я вот попробовал добавить процедуру в расширение по правой кнопке мыши, и выбрал вызывать вместо
Добавилось процедура и одна строка в ней, а в самой процедуре в общем модуле много строк.

Их в ручную нужно переносить что ли?

&Вместо("ПостроитьДеревоЦен")
Процедура идПостроитьДеревоЦен(Форма)
    // Вставить содержимое метода.
    ПродолжитьВызов(Форма);
КонецПроцедуры
11 NIGHTHUNTER
 
01.11.21
03:27
(10) То есть, добавить в расширение, добавляет пустую процедуру. Устанавливая то что она сейчас идет из расширения.
А ее тело, уже делается самостоятельно?

Для чего там вот эта процедура?

ПродолжитьВызов(Форма);

Что она дает?
12 NIGHTHUNTER
 
01.11.21
03:42
почему оно не подключается? Что нужно исправить?

http://joxi.ru/bmo5Q4kU7EGanA
13 NIGHTHUNTER
 
01.11.21
04:00
(12+) Это запустил. было дело , в том что в одном расширении был уже одноименный регистр. Переименовал его. То есть расширение не подключается если в нем есть ошибки.
14 rphosts
 
01.11.21
04:20
ЛивингСтар добрался до расширений...
"О сколько нам открытий чудных готовит просвещенья дух..."
2 + 2 = 3.9999999999999999999999999999999...