Имя: Пароль:
1C
1С v8
v8: Разве может содержимое Объект быть не равно содержимому Объект.Ссылка после записи Объекта?
, ,
0 Maxus43
 
25.10.12
13:45
Есть 2 строчки:

Объект.Записать();
Спр = Объект.Ссылка;

Всё это делается в транзакции.
Содержимое Объект <> Объект.Ссылка, в частности не совпадает содержимое ТЧ справочника. Но запись явная же произошла уже, это всё в одной транзакции. Или это потому что транзакция не зафиксирована, и Объект.Ссылка - старый вариант? Получается что в рамках Одной транзакции рассогласованность данных?
1 H A D G E H O G s
 
25.10.12
13:46
неверю
2 Starhan
 
25.10.12
13:46
воперых объект и объект.ссылка разные типы.
во вторых ничего не понячтно давай подробности.
3 ХочуСказать
 
25.10.12
13:46
а почему объект (указатель на память)
должен равняться ссылки (записть в БД)
или что ты спросил?
4 Reset
 
25.10.12
13:47
должно совпадать
5 Starhan
 
25.10.12
13:48
(4) телепат?
6 Maxus43
 
25.10.12
13:48
(3) запись в БД - произошло в первой строчке кода
(2) Дело не в типах, а что там внутри в реквизитах и т.д. не совпадает содерживмое таб частей, например в объекте пусто, в объект.Ссылка - что то есть в ТЧ
7 Maxus43
 
25.10.12
13:49
Я вот тоже был уверен что должно совпадать
8 Reset
 
25.10.12
13:49
(5) Нет, внимательно прочитал, кроме того, автор явно значем отличие ссылки от объекта :)
9 Maxus43
 
25.10.12
13:49
(1) чесное пионерское
10 Reset
 
25.10.12
13:49
явно знает*
11 ХочуСказать
 
25.10.12
13:50
вопрос в этом?


НачатьТранзакцию()
Объект.Записать();
Спр = Объект.Ссылка;

// тут Спр это новвая версия или старая?

ЗафиксироватьТранзакцию()
12 Maxus43
 
25.10.12
13:50
(11) грубо говоря да
13 Reset
 
25.10.12
13:51
(11) Видимо да.

Объект.ТЧ[х].Реквизит <>Объект.Ссылка.ТЧ[х].Реквизит <-- это

Хотя мне тоже не верится
14 ХочуСказать
 
25.10.12
13:51
гм...
если чтение не грязное, вполне может быть...
или ошибаюсь?
15 ХочуСказать
 
25.10.12
13:52
хотя... должен был бы дать ошибку блокировки..
16 sda553
 
25.10.12
13:52
Я бы в событии при записи конце мог бы сделать такой код,
Если не ЭтотОбъект.Испорчен Тогда
   ОбъектДляБитья= Ссылка.ПолучитьОбъект();
   //издеваемся над объектом и его тч
   ОбъектДляБитья.Испорчен=Истина;
  ОбектДляБитья.Записать();
КонецЕсли

И как бы вот получим (0)
17 ХочуСказать
 
25.10.12
13:53
(16) а не получим ошибку "версия объекта в БД не совпадает с текущей"?
18 Maxus43
 
25.10.12
13:54
(16) в справочнике в модуле объекта пусто, идёт просто запись элемента. подписок нет и т.д.
19 Starhan
 
25.10.12
13:54
а без транзакции какойрезультат?
20 Maxus43
 
25.10.12
13:56
Общая ситуация там сложней, меняем объект и выстреливаем xml-кой в другую базу элементом справочника, всё в транзакции.
И получается что объект изменили, записали, а выстреливает старой версией
21 sda553
 
25.10.12
13:56
(17) не должны, это же ПРИ записи
(18) Технологическим журналом пользоваться умеем?
22 Maxus43
 
25.10.12
13:57
(19) без транзакции конечно всё ништяк. Но она нужна. Удивило если чесно меня такое рассогласование данных
23 hhhh
 
25.10.12
13:57
(12) не обязательно должно совпадать

транзакция не завершилась, поэтому Ссылка наверняка не перечитывалась из базы и осталась старая.

потом возможно какие-то танцы с реквизитами там приЗаписи и в обработкаПроведения.

или вообще запись не прошла в Записать() - ведь нет проверки в (0), ну это элементарный случай.
24 Maxus43
 
25.10.12
13:58
(21) умеем, надо настраивать. Для начала хотел логически понять
25 Starhan
 
25.10.12
13:58
попробуй прочитать объект перед получением ссылки
26 Feanorko
 
25.10.12
13:58
(22) запросом если в этой же транзакции прочитать - тоже старые данные будут?
27 Maxus43
 
25.10.12
13:59
(23) запись прошла, считай что там
Попытка
Объект.записать();
Исключение
ЕСть ошибки;
КонецПопытки;

ЕСли естьошибки ТОгда
отменитьтранзакцию();
КонецЕсли;
28 Starhan
 
25.10.12
14:00
(27)
попробуй объект.Прочитать()
спр = Объект.Ссылка
29 Maxus43
 
25.10.12
14:00
(26) посмотрю щас. Просто мне всё равно нужна ссылка, для последующей её запаковки в xml
30 НаборДанных
 
25.10.12
14:00
Не стыкуется (6) и (12). Если так как в (6) тогда действительно странно, иначе ничего необычного.
Да и кто сказал, что объект записался? Он собственно запишется после фиксации транзакции, все остальные телодвижения со старой версией объекта.
31 Maxus43
 
25.10.12
14:04
Объект.Записать();
Объект.Прочитать();
Спр = Объект.Ссылка;

таже байда, да и не должно быть другого...

(30) Понятно что физически записывается потом, грязное чтение реально получается?
32 бомболюк
 
25.10.12
14:05
хрень какая то. сервак перегружай.
33 ХочуСказать
 
25.10.12
14:06
(31) накидай простейшую обработку и смотри в отладчике
34 Maxus43
 
25.10.12
14:06
(33) что смотреть? отладчик говорит что да, они разные, Объект.Ссылка - старый вариант
35 H A D G E H O G s
 
25.10.12
14:07
СТООООП
36 H A D G E H O G s
 
25.10.12
14:07
Так, максус, кам хере!
37 Maxus43
 
25.10.12
14:07
шошошо?
38 H A D G E H O G s
 
25.10.12
14:08
Так все таки, код как в (0) или есть слова

НачатьТранзакцию()

ЗафиксироватьТранзакцию()

???
39 Maxus43
 
25.10.12
14:08
и это, только на ТЧ воспроизводится же, реквизиты - норм. Грязное чтение потомушта ТЧ - другая таблица вобще?
40 Maxus43
 
25.10.12
14:08
(38) ЕСть такие слова, в (0) они простым языком "Всё это делается в транзакции. "
41 ХочуСказать
 
25.10.12
14:09
(38) Димыч, см (11)
42 H A D G E H O G s
 
25.10.12
14:09
(40) Нет, не простым языком.
43 H A D G E H O G s
 
25.10.12
14:10
Сама запись и так делается в транзакции.
44 kabanoff
 
25.10.12
14:10
(0) Все верно. До фиксации транзакции объект в БД не изменился.
45 Starhan
 
25.10.12
14:10
(31) тогда все ожиадаемо до конца транзакии в базе объект еще не записан.
46 Feanorko
 
25.10.12
14:10
(39) запрос к ТЧ чво говорит? :)
47 H A D G E H O G s
 
25.10.12
14:11
Пока не булет
ЗафиксироватьТранзакцию - в БД ничего не запишется.
48 vmv
 
25.10.12
14:12
(39) не прошло и полгода как мегакрутяки заговори о зерне, что таблица объектов и таблица их ТЧ это совершенно разные таблицы СУБД и как всегда на отладку идеальных взаимодействий между ними в тразнакция яйцеголовым создателем платформы не хватило пару грибочков
49 ХочуСказать
 
25.10.12
14:12
50 ХочуСказать
 
25.10.12
14:13
+(49)
а вот чуть выше
http://i069.radikal.ru/1210/e1/209934857d69.png
51 ХочуСказать
 
25.10.12
14:14
щаз попробую из другой сессии
52 H A D G E H O G s
 
25.10.12
14:14
(50) Давай коннект
53 ХочуСказать
 
25.10.12
14:15
(52) пЫва? :)
54 НаборДанных
 
25.10.12
14:18
(50)(51)В коде не хватает слов ЗафиксироватьТранзакцию() не?
Запись объекта = транзакция, она у тебя по ходу фиксируется. как то так. сугубо ИМХО, тестировать некогда)
55 Starhan
 
25.10.12
14:19
(48) а почему реквизиты объекта в ссылке изменились? таблица с объектом записана или ссылка читает реквизиты с кэша а ТЧ с базы?
56 ХочуСказать
 
25.10.12
14:22
(54) так в том то и фишка, у меня все считается без фиксации
а у автора нехрена...
автор гонит
вот, даже в другой сессии все прекрасно читается

http://s009.radikal.ru/i310/1210/c1/e0e3a32edd4f.png

после окончании обработки наименование вертаяется взад
57 ХочуСказать
 
25.10.12
14:22
у автора гон
58 H A D G E H O G s
 
25.10.12
14:23
(56) Бред какой-то
59 H A D G E H O G s
 
25.10.12
14:23
Счаст в sql полезу
60 Starhan
 
25.10.12
14:23
(56) ТС же сказал с реквизитами у объекта и ссылки все впорядке они тоже меняются а вот даные в ТЧ объекта не меняются - проверяй.
61 ХочуСказать
 
25.10.12
14:24
(60) думаешь ТЧ лежащая в другой таблице могла не измениться?
62 Starhan
 
25.10.12
14:24
данные в ТЧ в ссылке.*
63 Starhan
 
25.10.12
14:25
о чем и речь
64 Maxus43
 
25.10.12
14:25
(61) ТЧ - другая таблица в СУБД
65 ХочуСказать
 
25.10.12
14:26
(64) я это и написал
66 Maxus43
 
25.10.12
14:26
(64) + всмысле она не меняется по факту, сама таблица меняется ДО зафиксироватьтранзакцию
67 H A D G E H O G s
 
25.10.12
14:26
Управляемые блокировки
68 Maxus43
 
25.10.12
14:26
проверить могут все простой обработиной. не гон у меня, отладчик не врёт
69 Maxus43
 
25.10.12
14:26
стоят автоматические
70 H A D G E H O G s
 
25.10.12
14:27
У ХочуСказать
71 Starhan
 
25.10.12
14:28
(70) какая разница у них результат тестов совпадает

реквизиты у сссылки меняются а данные в ТЧ нет
72 Starhan
 
25.10.12
14:29
данные в ТЧ через ссылку.
73 kabanoff
 
25.10.12
14:30
(70) Странно, но у меня та же беда. Блокировки автоматические...
74 H A D G E H O G s
 
25.10.12
14:31
У меня на файловой в другом сеансе остается старое значение, в SQL - новое.
75 ХочуСказать
 
25.10.12
14:31
76 Starhan
 
25.10.12
14:33
давай спросим у ТС. Количество строк в ТЧ меняется?
77 Beduin
 
25.10.12
14:33
(11) Спр здесь старая версия или уже спор о другом идет?
78 ХочуСказать
 
25.10.12
14:34
(76) нельзя быть чуточку беременным
79 ХочуСказать
 
25.10.12
14:34
(77) у автора старая, у всех новая
80 Maxus43
 
25.10.12
14:34
(77) Да. в ОБъекте 0 строк, в Объект ссылка - 2 строки
81 Maxus43
 
25.10.12
14:34
(79) ТЧ именно, сам Объект и Объект.Ссылка - совпадает
82 Никола_
Питерский
 
25.10.12
14:35
Хм... ну че там ? сырьёзный БАГ ? А то я уже запутался с Вашими транзакциями. Кто нить может резюмировать из всего этого, где это может аукнуться ?
83 Maxus43
 
25.10.12
14:35
ктонить Воспроизведите у себя. ТЧ именно смотреть
84 ХочуСказать
 
25.10.12
14:35
(81) см (75)
85 Feanorko
 
25.10.12
14:36
(83) ты напиши обработочку, выложи - мы протестим :) а так лениво чета))
86 ХочуСказать
 
25.10.12
14:36
3,14ец... за что эти люди деньги получают, если 4 строки кода написать не могут?
87 Starhan
 
25.10.12
14:36
(81) чото совсем запутал
что конкретно не совпадает у Объект и объект.ссылка?
88 Feanorko
 
25.10.12
14:38
(86) за эти 4 строчки кода никто не платит (
89 Beduin
 
25.10.12
14:38
(85) Ты опиши где ты ТЧ меняешь и как?
90 Feanorko
 
25.10.12
14:38
(89) я пока ничего не меняю :)
91 Beduin
 
25.10.12
14:39
(90) Не ты, а ты(83)
93 Beduin
 
25.10.12
14:42
Автор где изменил ТЧ, непонятно чем и как.
94 Maxus43
 
25.10.12
14:45
короче терпение. наваяю обработку, а пока на перекур. сам разберу сначала весь это эпик фэйл. обработку выложу
95 ХочуСказать
 
25.10.12
14:46
(94) ищи где у тебя транзакция откатывается
96 Reset
 
25.10.12
14:49
НачатьТранзакцию();
Объект=Справочники.Справочник1.НайтиПоКоду("000000001").ПолучитьОбъект();
Сообщить(Объект.ТабличнаяЧасть1[0].Реквизит1);
Объект.ТабличнаяЧасть1[0].Реквизит1="bbb";
Объект.Записать();
Сообщить(Объект.ТабличнаяЧасть1[0].Реквизит1);
Сообщить(Объект.Ссылка.ТабличнаяЧасть1[0].Реквизит1);
ЗафиксироватьТранзакцию()

Результат:
aaa
bbb
bbb

Те. ситуация не воспроизвелась или я неправильно тестировал
8.2.16.363, postgre
97 Starhan
 
25.10.12
14:51
Угу тож проверил проблемы не появляется.
ссылка полностью равна объекту по значениям реквзитов
98 Starhan
 
25.10.12
14:51
и в ТЧ тоже
99 Liova
 
25.10.12
14:52
Я прям влезаю, но может где-то в подписке что-то меняется?
100 Reset
 
25.10.12
14:52
Режим блокировок в транзакции был автоматический
101 Reset
 
25.10.12
14:52
запорол сотку ;]
102 Feanorko
 
25.10.12
14:53
(101) угу, гад :)
103 H A D G E H O G s
 
25.10.12
14:55
Все, вкурил
104 H A D G E H O G s
 
25.10.12
14:55
105 H A D G E H O G s
 
25.10.12
14:55
Если теперь выполнить:

Select *
from tablename with (nolock)

В отличии от Oracle, данный запрос вернет не те данные, которые были до начала транзакции, а уже обновленные данные, но не закоммиченные. Это значит, что если транзакция откатится, то пользователь видит фуфло.
106 H A D G E H O G s
 
25.10.12
14:56
Это я к тому, что у меня шаблон разрывался от того, что во второй сессии ХочуСказать выводились незафиксированные данные
107 H A D G E H O G s
 
25.10.12
14:57
На файловой базе такой куйни не было.
108 Beduin
 
25.10.12
14:57
(96) Если после метода строчки Объект.Записать() Поставить
Объект.ПолучитьОбъект(). Будет интереснее.
109 Maxus43
 
25.10.12
14:57
чото все то вкурили, то не воспроизводится. щас наклепаю обработку, попробую воспроизвести
110 H A D G E H O G s
 
25.10.12
14:57
Пойду поем.
111 бомболюк
 
25.10.12
14:58
(105) это и зовется грязным чтением.
112 ХочуСказать
 
25.10.12
14:58
(106) гм...
мне кажется 1С еще в 8.0 писала, что применяет грязное чтение
113 Starhan
 
25.10.12
14:59
(107) у меня в файловой версии все реквизиты в транзакции равны как у ссылки так и у объекта втранзакции (даже если ссылку получить до транзакции значения в ней меняются на записанные)
114 acsent
 
25.10.12
14:59
Но внутри транзакции все изменения видны и не может быть иначе, какой бы уровень изоляции не был
115 H A D G E H O G s
 
25.10.12
15:00
(111) Это обход на запрет грязного чтения изоляцией Read committed. Чтобы что то показать в списке.
116 Робинзон Крузо
 
25.10.12
15:00
Пздц... Вы хоть ЖКК читаете?
Объект1 = Вася.ПолучитьОбъект();
Объект2 = Вася.ПолучитьОбъект();
Объект1<>Объект2
117 Reset
 
25.10.12
15:00
(116) И тебе привет :)
118 ХочуСказать
 
25.10.12
15:00
(116) мы читали, а ты дятел
119 Feanorko
 
25.10.12
15:01
(112) Если "Объект.Ссылка.ТЧ.Количество() = Объект.ТЧ.Количество()" возвращает Ложь, то это из-за грязного чтения? :)
120 ХочуСказать
 
25.10.12
15:02
(119) причем тут это?
121 5 Элемент
 
25.10.12
15:02
Че за бред они тут изучают
122 Reset
 
25.10.12
15:03
(119) Если выражения слева и справа от "=" рассчитываются в разных сеансах, то да ;)
123 ХочуСказать
 
25.10.12
15:03
(122) объект может быть не записан справа...
пример не подходит под ситуацию
124 Feanorko
 
25.10.12
15:04
(120) мне тоже интересно, причем тут грязное чтение.

Читай внимательно (6): "Дело не в типах, а что там внутри в реквизитах и т.д. не совпадает содерживмое таб частей, например в объекте пусто, в объект.Ссылка - что то есть в ТЧ"
125 Reset
 
25.10.12
15:05
Ну если в контексте темы, то записан
126 Feanorko
 
25.10.12
15:05
(122) емнип, речь про одну и ту же сессию
127 ХочуСказать
 
25.10.12
15:06
(124) у автора оно и не работает, где то то ли неправильно читает, либо транзакцию откатил
ибо в реале должно быть грязное чтени...
т.е. чтение незафиксированных данных
128 Reset
 
25.10.12
15:06
(126) Ну я так и понял что это сарказм, просто прокапитанил
129 acsent
 
25.10.12
15:06
Единственнный варинт, что какой то козел уже покоцал нашу ссылку в другом сеансе
130 Feanorko
 
25.10.12
15:06
(127) об том и речь, что не работает, хотя должно :)
131 Wern
 
25.10.12
15:08
Ну есть еще вариант что это 8.3, там используются блокировки типа снейпшот. Там как раз такое и должно быть как в (0).
132 0xFFFFFF
 
25.10.12
15:09
(0)
Проф разработка 8.2...:


Если обращение к данным происходит в рамках транзакции, то оно
переадресуется транзакционному кешу. Транзакционный кеш по сути
представляет собой ту же последовательную очередь, что и обычный кеш,
за исключением того, что все данные, находящиеся в транзакционном кеше,
являются валидными (гарантированно актуальными). При считывании
данных в транзакционный кеш устанавливается блокировка на данные
в базе данных, поэтому они гарантированно не могут быть изменены
до окончания транзакции.
Транзакционный кеш хранит считанные данные до тех пор, пока они
не будут вытеснены более поздними считанными данными или пока
не закончится транзакция.
По окончании транзакции транзакционный кеш очищается, однако
действия, выполняемые при этом, зависят от состояния завершения тран-
закции.
Если транзакция завершена успешно (Commit), данные всех объектов,
содержащиеся в транзакционном кеше, переносятся в обычный кеш,
а транзакционный кеш очищается (рис. 4.14).
133 Feanorko
 
25.10.12
15:10
(132) и теперь для прапорщиков попроще, плз.
134 0xFFFFFF
 
25.10.12
15:11
Далее..
Обычный кеш
Если при обращении к обычному кешу требуемых данных в нем нет,
то выполняется чтение данных объекта из базы данных и сохранение
их в кеше. Уникальным идентификатором для кеша в данном случае
будет являться ссылка на объект базы данных. Поэтому данные каждого
считанного объекта могут существовать в кеше в одном из двух видов:
либо все данные объекта, либо представление объекта.
Таким образом, если мы обратимся к кешу для получения представления
объекта и в кеше есть информация для нашей ссылки, данные будут
взяты из кеша (если в кеше весь объект, нужное представление будет
получено из данных объекта). Если в кеше нет информации для нашей
ссылки, из базы данных в кеш будут считаны только поля, необходимые
для формирования представления объекта.
135 ХочуСказать
 
25.10.12
15:13
(132) я получал данные вне транзакции в другом сеансе
136 Starhan
 
25.10.12
15:17
(135) уверен -? О_о это же очень херово
137 Starhan
 
25.10.12
15:17
в файловой с другого сеанса все данные в базе старые.
138 бомболюк
 
25.10.12
15:18
(132) весь опус про сервер приложения 1С?
139 Starhan
 
25.10.12
15:18
(135)а понял всмысле получал старые данные? без блокировки?
140 Starhan
 
25.10.12
15:20
так кто нибудь понял какая проблема у ТС? )
141 ХочуСказать
 
25.10.12
15:20
(139) новые... без блокировки,
т.е. грязное чтение
142 Maxus43
 
25.10.12
15:20
ёкарный бабай, в конфе воспроизводится, в файловой. а обработкой не могу повторить
143 ХочуСказать
 
25.10.12
15:20
(140) он где то сам себя на...л
144 Feanorko
 
25.10.12
15:21
(142) сделай в чистой базе и выложи
145 ХочуСказать
 
25.10.12
15:21
(142) проверяй себя, где то накасячил,
может переменную где использовал из реквизита формы, где старая версия объекта храниться
или еще что
146 Maxus43
 
25.10.12
15:22
(144) кабы база ещё обычная была, специализированная... ноу хау местное)
147 Maxus43
 
25.10.12
15:22
ща разбираюсь короче
148 Feanorko
 
25.10.12
15:23
(146) смоделируй в новой пустой базе, добавь какой-нить объект
149 Starhan
 
25.10.12
15:23
(141) как так, это в момент транзакции кто то сможет прочиать и использовать не те данные ?

(145) да скорей всего ТЧ старую записывает или с переменными косяки
150 ХочуСказать
 
25.10.12
15:24
(149) прогресс...
тебе потребовалось всего 150 постов, что бы это понять
151 1Страх
 
25.10.12
15:25
запросто:

Процедура ПриЗаписи()
...
 ЭтотОбъект.Наименование = "взял и поменял";
КонецПроцедуры
152 Feanorko
 
25.10.12
15:26
(149) разочаровался в 1С? Дальше жить нет смысла? :)
153 ХочуСказать
 
25.10.12
15:28
(152) надо уходить в SAP там такого нет
154 Maxus43
 
25.10.12
15:31
короче незнаю господа.
В доказательство тока скрин http://imglink.ru/show-image.php?id=397b060dbbc1d45ea1ead9478eacffba

ничо не понимать
155 Feanorko
 
25.10.12
15:32
(154) ты не понимай, ты воспроизведи на девственно чистой базе :)
156 Starhan
 
25.10.12
15:35
(152) у меня все впорядке по тестам
157 ХочуСказать
 
25.10.12
15:36
(154) демоническое обновление?
158 ХочуСказать
 
25.10.12
15:36
версию платформы хоть сообщи
159 ХочуСказать
 
25.10.12
15:37
подписок у НСИ точно нет?
160 Starhan
 
25.10.12
15:38
(159)да какая разница у меня в файлловой все данные в ссылке меняются после записать()
161 ХочуСказать
 
25.10.12
15:38
(160) у него не меняется
162 ХочуСказать
 
25.10.12
15:39
163 Maxus43
 
25.10.12
15:41
подписок нет, модуль объекта записываемого пустой.
Воспроизводится и на рабочей, и на коппии файловой. Кэш думаю не причем, но очищу щас. ибо мозг кипит
164 Starhan
 
25.10.12
15:43
знаешь чо модет быть
проблема вотлачдике он показывает данные не те где строка отладки

если дальше ф10 нажимать ситуация не меняется?
165 ХочуСказать
 
25.10.12
15:44
(164) такое может быть только когда исполняемый код не соответствует сохраненному

(163) тогда уж и ТИИ сделай заодно в копии
166 Starhan
 
25.10.12
15:45
(165) не до 14й платформы включительно был один баг на мисте много раз разбирали
167 Starhan
 
25.10.12
15:45
ТС озвучь кстати версию платформы
168 Maxus43
 
25.10.12
15:49
(167) проверено на 14.533 и 15.319
169 Maxus43
 
25.10.12
15:50
ТИИ запустил полное
170 ХочуСказать
 
25.10.12
15:51
(169) иди выпей мерзавчика
171 Starhan
 
25.10.12
15:52
(165) я так и не понял как ты новые данные в другом сеансе получил запросм0?
172 Starhan
 
25.10.12
15:53
всмысле запросом или по другом?
173 ХочуСказать
 
25.10.12
15:55
(172) http://i070.radikal.ru/1210/3d/2b7066d7e8a4.png
после завершение обработки,
наименование откатывалось
это и называется "грязным чтением"
174 Starhan
 
25.10.12
16:07
(173) спс, я вкурсе про грязное чтение.
Интересно как ты у себя его обходишь когда код пишешь :)
175 Aprobator
 
25.10.12
16:10
(0) Объект в данном случае реквизит формы? Небось записываешь в форме, а данные в реквизит формы не возвращаешь.
176 ХочуСказать
 
25.10.12
16:10
(174) так же как и 1Сики
если чтение в транзакции то можно юзать ДЛЯ ИЗМЕНЕНИЯ
это для автоблокировок...
177 Maxus43
 
25.10.12
16:11
(175) в данном случае это реквизит обработки
178 Aprobator
 
25.10.12
16:11
хотя - он там и так должен обновится вроде бы, но мало ли.
179 Starhan
 
25.10.12
16:12
(176) ясно так и думал.
180 Aprobator
 
25.10.12
16:12
(177) ну так обнови его после записи то.
181 Starhan
 
25.10.12
16:13
надо свои запросы проглядеть. А то наверное на скуль будем перебиратся
182 Maxus43
 
25.10.12
16:14
(180) как обновить? думаеш что в реквизите старый остался?
183 Aprobator
 
25.10.12
16:15
(182) другой причины не вижу.
184 Maxus43
 
25.10.12
16:16
(183) остаётся вопрос как обновить... Объект = Объект?
185 Starhan
 
25.10.12
16:23
(184) ну ты же сам скзал что в примере у тебя не поулчается повторить проблему.

Значит где то есть отличия какие то
186 Aprobator
 
25.10.12
16:25

ОбъектДляЗаписи = РеквизитФормыВЗначение(ИмяРеквизита);
ОбъектДляЗаписи.Записать();
ЗначениеВРеквизитФормы(ОбъектДляЗаписи, ИмяРеквизита);
187 1Страх
 
25.10.12
16:27
смотрим (151)
188 Feanorko
 
25.10.12
16:27
(187) больше долбишь - толще клюв :)
189 Maxus43
 
25.10.12
16:27
вот такая байда же отрабатывает. перезапись чисто ТЧ у объекта.Ссылка

http://imglink.ru/show-image.php?id=d910afb54c3aa5bb7790b7fc05bf6dee

овнокод, но работает. Логику понять немогу воще
190 Maxus43
 
25.10.12
16:28
(187) фиг там с учетом (189) :)
191 Maxus43
 
25.10.12
16:41
бугага! снял режим совместимости с 8.1 - глюк ушёл
192 ХочуСказать
 
25.10.12
16:48
(191) у мня режим совместимоссти включен
193 Feanorko
 
25.10.12
16:48
(191) с чем и поздравляю :)
194 Reset
 
25.10.12
16:49
у меня тоже включен
195 Maxus43
 
25.10.12
16:50
(192) я не мог воспроизвести это обработкой, так что не показатель... но факит есть факт. щас возвращаю на совместимость и смотрю будет ли опять
196 Aprobator
 
25.10.12
16:54
(191) прикол.
197 Maxus43
 
25.10.12
16:57
вернул режим назад на 8.1 - ошибка не воспроизводится... такое чувство что он что-то исправил при смене режима
198 Aprobator
 
25.10.12
16:58
(197) я всегда говорю, что 1С не программа, а обыкновенная магия )
199 Feanorko
 
25.10.12
16:59
кому 200?
200 Aprobator
 
25.10.12
17:00
мне
201 Aprobator
 
25.10.12
17:01
надо же свин облажался нынче )
202 Feanorko
 
25.10.12
17:03
(201) Свин уже не торт
203 Aprobator
 
25.10.12
17:08
(202) Сало?
204 ХочуСказать
 
25.10.12
17:10
(197) где мое пиво?
205 Maxus43
 
25.10.12
17:16
(204) а где ты назвал причину?)
206 ХочуСказать
 
25.10.12
17:21
(205) а кто тебе тут доказательство того, что такого не должно быть привел? :)
207 Aprobator
 
25.10.12
17:23
кончай клянчить пятница все равно завтра )
208 ХочуСказать
 
25.10.12
17:25
(207) не порть настроение в праздник,
завтра кстати, снег в МСК обещали
209 Mafoni
 
25.10.12
17:36
ТС - разобрался аль нет ?
210 Feanorko
 
25.10.12
17:38
(206) ты упорно пытался доказать то, что изначально всем было очевидно :)
211 ХочуСказать
 
25.10.12
17:57
(210) кому очевидно? я стал доказывать, после того, как все стали утверждать, что пока транзакция не зафиксировано так и должно быть
212 Feanorko
 
25.10.12
17:58
(211) очевидно, что очевидно всем вменяемым :) я так не утверждал, ТС тоже :)
213 ХочуСказать
 
25.10.12
18:01
(212) остальные тупо молчали
214 Feanorko
 
25.10.12
18:03
(213) правильно молчали, потому что нет смысла доказывать очевидные вещи, а на мнение дятлов обычно покер :)
Независимо от того, куда вы едете — это в гору и против ветра!