![]() |
![]() |
![]() |
|
Доработка процедуры модуля менеджера в расширении | ☑ | ||
---|---|---|---|---|
0
NIGHTHUNTER
25.03.22
✎
12:01
|
В модуле менеджера справочника Номенклатура имеется Функция ТабличныйДокументКарточкиНоменклатуры(Номенклатура, НастройкиВидимостиИЗаголовков) Экспорт
Мне необходимо ее доработать в расширении. Нажав на ней правой кнопкой мыши, я добавляю ее в расширение. Появляется такое окно http://joxi.ru/LmGbQ18CBeNbMr Почему нет возможности выбрать вызывать после? Я хотел в конце этой процедуры сделать доработку. Как мне это правильно сейчас сделать? |
|||
1
DJ Anthon
25.03.22
✎
12:03
|
какая разница? выбирай вместо, внутри нее есть вызов оригинальной функции
|
|||
2
NIGHTHUNTER
25.03.22
✎
12:04
|
(1) А как сейчас правильно сделать доработку? то есть будет вызываться сама функция из конфигурации?
Куда мне встраивать мою доработку? &Вместо("ТабличныйДокументКарточкиНоменклатуры") Функция Расш1_ТабличныйДокументКарточкиНоменклатуры(Номенклатура, НастройкиВидимостиИЗаголовков) // Вставить содержимое метода. Результат = ПродолжитьВызов(Номенклатура, НастройкиВидимостиИЗаголовков); Возврат Результат; КонецФункции |
|||
3
DJ Anthon
25.03.22
✎
12:04
|
а как сделать вызов после функции? она же возвращает результат. обрабатывай результат, а если невозможно, переписывай всю функцию вместо оригинальной.
|
|||
4
NIGHTHUNTER
25.03.22
✎
12:05
|
// Вставить содержимое метода.
- сюда нужно переносить ее текст, из оригинального модуля менеджера? |
|||
5
DJ Anthon
25.03.22
✎
12:06
|
смотря что ты хочешь сделать. если это табличный документ, то он должен быть в переменной Результат. вот перед строкой Возврат Результат и вставляй всё, что тебе надо.
если ты хочешь вмешаться в середину алгоритма, то либо копируй его полностью из оригинальной функции (не очень хорошая идея), либо юзай другую директиву, она даже лучше, будет за тебя контролировать, устарел твой код, или нет. |
|||
6
NIGHTHUNTER
25.03.22
✎
12:08
|
(5) Эта функция выводит как я понял секции в табличный документ, и возвращает его.
Мне нужно дописать вывод новый секций в конце этого табличного документа. Хотелось бы. Как это правильно сделать? |
|||
7
NIGHTHUNTER
25.03.22
✎
12:10
|
(5) Ясно, а какую другую директиву использовать?
Почему не было возможности выбрать ее при создании? Это что я хотел, ВызыватьПосле ? |
|||
8
DJ Anthon
25.03.22
✎
12:16
|
(7) даже на скрине у тебя их всего две. не быть тебе программистом ))
|
|||
9
NIGHTHUNTER
25.03.22
✎
12:32
|
(8) как мне делать вывод в такие табличные документы, что определяются в основной функции?
Они не видны в Результате . Такие как ТабличныйДокументЛево и ТабличныйДокументПраво ? #Область ТабличныйДокументПраво ТабличныйДокументПраво = Новый ТабличныйДокумент; http://joxi.ru/gmvaZ43teLGjMr |
|||
10
NIGHTHUNTER
25.03.22
✎
12:34
|
(9+) Или думается создать свой табличный документ как ТабличныйДокументНиз
как сейчас к макету через результат доступ получить, думаю. |
|||
11
NIGHTHUNTER
25.03.22
✎
12:42
|
Макет в расширении получать как
Макет = ПолучитьМакет("ПФ_MXL_КарточкаНоменклатуры"); ? |
|||
12
youalex
25.03.22
✎
12:42
|
Если прямо очень сильно надо вызвать после, то ПродолжитьВызов(), а потом твой код.
|
|||
13
NIGHTHUNTER
25.03.22
✎
12:44
|
(12) Спасибо. Пока не знаком с такой инструкцией.
Подскажите по (11) ? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |