Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Как использовать &После в функциях ?

Как использовать &После в функциях ?
Я
   r1000
 
19.05.21 - 09:21
Для функция нельзя использовать аннотацию &После. Но очень хотелось бы доработать результат возврата функции, перед возвратом. Может быть есть какой то хитрый способ это сделать ? Понятно, что можно использовать изменениеИКонтроль, но смысл в том, чтобы не дорабатывать постоянно функцию, при обновлениях.
 
 Партнерская программа EFSOL Oblako
   Провинциальный 1сник
 
1 - 19.05.21 - 09:22
Что мешает использовать &Вместо и ПродолжитьВызов с обработкой возвращаемого значения?
   r1000
 
2 - 19.05.21 - 09:24
Ну, обновлять текст функций все равно нужно. При старте системы я не увижу что типовая функция изменилась и её нужно обновить.
   Провинциальный 1сник
 
3 - 19.05.21 - 09:27
(2) Не увидишь. А кто говорил, что будет легко. Доработка 1с это постоянное хождение по граблям. Стабильности нет. Восьмерка сырая ещё.
   Фрэнки
 
4 - 19.05.21 - 09:29
(2) так ты определись :
- хочешь видеть и контролировать изменения - один тег
- не хочешь - другой
   r1000
 
5 - 19.05.21 - 09:32
(4)я понимаю как теги работают) я не хочу контролировать изменения - пусть типовой функционал обновляется. мне нужна аннотация &После, но для функции. странно что её нет, ведь это по факту та же процедура...
   vis_tmp
 
6 - 19.05.21 - 09:34
(5)Ф-ия возвращает значение.
Что ты будешь делать "После" ?
   r1000
 
7 - 19.05.21 - 09:35
я хочу доработать результат возврата. перед тем как результат получит вызвавший функцию метод.
   Провинциальный 1сник
 
8 - 19.05.21 - 09:35
(5) &Вместо с ПродолжитьВызов() перекрывает возможности и &После и &Перед. Их используют лишь для большей наглядности кода, не для функциональности.
   RomanYS
 
9 - 19.05.21 - 09:54
(5) похоже всё-таки не понимаешь, иначе не понятно в чём у тебя проблема
   Фрэнки
 
10 - 19.05.21 - 10:01
(7) :-) похоже что ты решил в типовой конфе расширением проверку версии платформы отломать :-))))
Отламывай так, как в (8) Результат из ПродолжитьВызов() получишь и изменишь.
   r1000
 
11 - 19.05.21 - 10:04
Еще раз. Если я буду использовать Вместо, я не смогу обновлять типовые функции автоматически.
   RomanYS
 
12 - 19.05.21 - 10:07
(11)
&Вместо("КакаяТоФункция")
Функция Расш1_КакаяТоФункция()
    Результат = ПродолжитьВызов();
    //здесь делай с результатом что хочешь

    Возврат Результат;
КонецФункции
   1Сергей
 
13 - 19.05.21 - 10:11
(11) ты и так и эдак не сможешь обновлять автоматически. Смирись
   hhhh
 
14 - 19.05.21 - 10:11
(9) он хочт в После передавать возвращаемый резильтат.
   RomanYS
 
15 - 19.05.21 - 10:13
(14) И? Чем (12) не устраивает?
   r1000
 
16 - 19.05.21 - 10:14
странно... неужели с этой дикой неудобностью и явной недоработкой платформы только я столкнулся)
   RomanYS
 
17 - 19.05.21 - 10:15
(16) В чем неудобство? Прокомментируй (12)
   r1000
 
18 - 19.05.21 - 10:16
(15)да тем, что при обновлениях, мое расширение автоматом не обновиться - будет всегда использоваться моя кастомная функция. А хотелось бы чтобы она все таки обновлялась.
   PuhUfa
 
19 - 19.05.21 - 10:18
(18) надеюсь, что ты сам хоть понимаешь про что говоришь -)
   RomanYS
 
20 - 19.05.21 - 10:19
(18) стандартная функция полностью отработает (с учетом всех обновлений) в ПродолжитьВызов.
(19) +100500
   r1000
 
21 - 19.05.21 - 10:22
(20)да. спасибо. мне стадно. ушел есть свою шапку.
   Chameleon1980
 
22 - 19.05.21 - 10:31
раза с 5го вошло?
   Chameleon1980
 
23 - 19.05.21 - 10:33
прикольная, кстати вещь. Я тоже, когда только познакомился с разширениями не мог вкурить что это за ПродолжитьВызов
и убирал его всегда
но когда понял - очень обрадовался как для функций можно подменять результат их работы, не затрагивая
исходный код ее.
   Провинциальный 1сник
 
24 - 19.05.21 - 11:27
(23) "очень обрадовался как для функций можно подменять результат их работы"
Вот только разработчики типовых всячески этому препятствуют. Скажем, функция может возвращать выборку из результата запроса.. и что тут сделаешь?
   RomanYS
 
25 - 19.05.21 - 11:30
(24) >> и что тут сделаешь?
В любой непонятной ситуации создай ветку на мисте, Гений так делает. Конкретно по этому вопросу даже несколько веток было.


Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.