|
Переменные модуля объекта | ☑ | ||
---|---|---|---|---|
0
Chesnok
17.10.21
✎
15:44
|
На ИТС написано так:
... для передачи внутренних параметров между обработчиками событий модуля объекта целесообразно использовать неэкспортные переменные модуля объекта, которые недоступны из внешнего кода. Например: Перем ПредыдущееЗначениеОрганизации; // значение реквизита "Организация" до записи объекта в базу Процедура ПередЗаписью(Отказ) ПредыдущееЗначениеОрганизации = ...; // с помощью запроса выясняем значение до записи объекта в базу КонецПроцедуры Процедура ПриЗаписи(Отказ) Если ПредыдущееЗначениеРеквизита <> Организация Тогда // отрабатываем изменение значения реквизита при записи ... КонецЕсли; КонецПроцедуры Сделал так: Перем ОбъектКопированияСсылка; Процедура ПриКопировании(ОбъектКопирования) ОбъектКопированияСсылка = ОбъектКопирования.Ссылка; КонецПроцедуры Процедура ПриЗаписи(Отказ) Если ЗначениеЗаполнено(ОбъектКопированияСсылка) Тогда ... КонецПроцедуры Почему в процедуре ПриЗаписи переменная пустая (при копировании естественно проинициализировалась)? |
|||
1
Ненавижу 1С
гуру
17.10.21
✎
16:09
|
Интерактивно делаете через клиента?
Так вот это два разных экземпляра объекта |
|||
2
серый КТУЛХУ
17.10.21
✎
16:39
|
серверный контекст?
|
|||
3
Chesnok
17.10.21
✎
17:06
|
(1) Копирование - да, интерактивно. Тогда не совсем понятна рекомендация использовать переменные модуля объекта для передачи внутренних параметров между обработчиками событий модуля объекта.
|
|||
4
серый КТУЛХУ
17.10.21
✎
17:12
|
наверное все-таки модуля формы(!) объекта. причем именно в клиентском контексте (т.к. переменные модуля формы насервере тупо не жтвут сколько надо - максимум один серверный вызов).
|
|||
5
RomanYS
17.10.21
✎
18:52
|
(3) В ОФ объект жил вместе с формой. В УФ при каждом уходе на сервер объект будет другой. ПередЗаписью и ПриЗаписи будут выполняться всегда для одного объекта. А вот при копировании в УФ будет один объект, при записи уже другой
|
|||
6
Жан Пердежон
18.10.21
✎
01:10
|
(3) между серверными вызовами объекта не существует
|
|||
7
Chesnok
18.10.21
✎
11:01
|
(4) Можете сами почитать: https://its.1c.ru/db/v8std/content/639/hdoc
Там именно про обработчики событий модуля объекта. |
|||
8
Chesnok
18.10.21
✎
11:02
|
(5) Ясно, я так и подумал, но смутило то, что написано на ИТС.
|
|||
9
fisher
18.10.21
✎
11:16
|
(8) Так главное - не обманывают. Главное чтобы все происходило в одном серверном вызове. Пример с ПередЗаписью и ПриЗаписи - вполне рабочий.
|
|||
10
Chesnok
18.10.21
✎
11:33
|
(9) Обманывают, т.к. не пишут что это не всегда работает.
|
|||
11
Ненавижу 1С
гуру
18.10.21
✎
11:39
|
(10) ну почему пишут, но почему-то в скобках:
Следует иметь в виду, что значения серверных переменных модуля формы не сохраняются между вызовами с клиента. |
|||
12
Chesnok
18.10.21
✎
11:48
|
(11) Это в другом разделе и про переменные модуля формы, а не про переменные модуля объекта.
|
|||
13
RomanYS
18.10.21
✎
12:10
|
(10) оно всегда работает, но для одного объекта. А вот когда создается объект ты должен сам понимать и знать
|
|||
14
fisher
18.10.21
✎
12:18
|
(10) Всегда работает. Просто про то, что для разных серверных вызовов будут созданы разные объекты - в другом месте написано :)
Ну и раз возникают подобные вопросы, то традиционно рекомендую: https://infostart.ru/1c/articles/198766/ |
|||
15
Chesnok
18.10.21
✎
12:24
|
(13) Я должен был родиться с этими знаниями? Для того и существует ИТС, чтобы дать мне эти знания. Я считаю, что нельзя писать вот так:
"В то же время, для передачи внутренних параметров между обработчиками событий модуля объекта целесообразно использовать неэкспортные переменные модуля объекта, которые недоступны из внешнего кода." не указывая на существенные условия использования этих переменных. |
|||
16
Chesnok
18.10.21
✎
12:26
|
(14) Спасибо, почитаю.
|
|||
17
RomanYS
18.10.21
✎
12:32
|
(15) Ты считаешь, что в каждой статье должен идти прицеп всех необходимых знаний? Ну ОК. Но такого не бывает.
|
|||
18
fisher
18.10.21
✎
12:32
|
(15) Возможно, статья была написана до рождества УФ и небрежно портирована. Да и вообще ЖКК обычно не отличаются методической глубиной. Поэтому читай по ссылке из (14) не откладывая. 10 минут времени, а кучу вопросов сразу снимешь.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |