Имя: Пароль:
1C
 
При программной записи не записывается значение реквизита
0 Stim
 
13.10.15
22:26
В модуле объекта Номенклатура есть код в процедуре ПриЗаписи()

НоменклатураяГруппа = Какая_то_группа; //примерно


создаю программно элемент справочника номенклатура:
Спр = Справочники.Номенклатура.СоздатьЭлемент();
спр.записать();

Внимание - вопрос: почему ном группа у элемента не заполнена?
1 Господин ПЖ
 
13.10.15
22:27
отладчик украли?
2 PR третий
 
13.10.15
22:28
Режим обмена данными загрузка или незаполненность какой-то группы
3 EugeniaK
 
13.10.15
22:29
(0) А почему он должен заполняться?
4 PR третий
 
13.10.15
22:32
(3) А почему нет?
5 itlikbez
 
13.10.15
22:32
(0) Код в модуле объекта присваивает значение переменной, а не записывает реквизит.
6 RomanYS
 
13.10.15
22:34
ПередЗаписью()
7 PR третий
 
13.10.15
22:35
(5) Уверен?
8 Stim
 
13.10.15
22:36
(5) нет, реквизит записывается, отладчиком проверял.
после программной записи:

Спр.НоменклатурнаяГруппа - заполнено
Спр.Ссылка.НоменклатурнаяГруппа - пусто
9 RomanYS
 
13.10.15
22:37
(8) приЗаписи уже поздно менять, смотри (6)
10 PR третий
 
13.10.15
22:38
(8) Почему не используешь ПередЗаписью?
11 Stim
 
13.10.15
22:41
(10) потому что ном группу получаю по ссылке
12 PR третий
 
13.10.15
22:41
(9) О, кстати, перестала такая тема работать, а раньше работала, просто еще раз запись делалась.
13 PR третий
 
13.10.15
22:41
(11) Копрокод, переделывай
14 RomanYS
 
13.10.15
22:43
(12) никогда ПриЗаписи не сохранялись изменения, даже в 8.0.
Если ты конечно не делал контрольный:
Объект.Записать();
Объект.Записать();
15 PR третий
 
13.10.15
22:58
(14) Сохранялись вроде. В толстом клиенте помнится делал так.
16 Господин ПЖ
 
13.10.15
23:03
>никогда ПриЗаписи не сохранялись изменения

да ладно... ПриЗаписи транзакция еще открыта. Плюс у тебя есть уже ссылка
17 RomanYS
 
13.10.15
23:08
(16) транзакция открыта и есть возможность ее откатить, но изменения объекта в БД в этой транзакции уже не попадут.
(15) ты про события формы или объекта?
18 hhhh
 
13.10.15
23:11
(16) в синтакс-помощнике же четко написано: Процедура ПриЗаписи вызывается после записи объекта в базу.
19 Stim
 
13.10.15
23:12
спр.Записать();
спр.Записать();

оставлю пока такой быдлокод, потом переделаю
20 PR третий
 
13.10.15
23:12
(17) Да вроде как объекта
21 PR третий
 
13.10.15
23:13
(19) Ну да ну да :)) Переделаю :)) Потом :))
22 Господин ПЖ
 
13.10.15
23:14
(17, 18) ладно, ладно. убедили
23 RomanYS
 
13.10.15
23:19
(20) слишком много "вроде"), продолжай считать, что "вроде сохранялось")
24 PR третий
 
13.10.15
23:22
(23) Точно помню, что записывалось в итоге два раза, то есть два раза вызывались ПередЗаписью и ПриЗаписи.
И вроде как само, без принудительной записи.
25 GROOVY
 
14.10.15
00:08
При записи объект уже записан в базу. Ребята вы чего?! Я не могу поверить в то что тут читаю.

Транзакция активна, запись прошла, маркер модифицированности с объекта снят.
26 Отладчик
 
14.10.15
00:12
Справочник не проведен. Поэтому.