|
Проведение через кнопку "Провести и закрыть"
|
Я
|
|
Popkorm 02.12.20 - 13:39 | Вообщем сделал условие по дате документа ПередЗаписью и Призаписи
заходим в ОбработкуПроведения:
в ЭтотОбъект дата измененная, а в самой ссылке дата старая.
Документ новый, еще не записан, если нажму провести без закрытия, мой алгоритм срабатывает, если через кнопку "Провести и закрыть" дата не меняется. Своих подписок нет.
Есть какие нибудь соображения? |
hhhh 1 - 02.12.20 - 13:44 | ( 0) в ПриЗаписи нельзя, вы чего? ПередЗаписью. |
acht 2 - 02.12.20 - 13:53 | ( 0) > в самой ссылке дата старая. Документ новый, еще не записан
Взаимоисключающие пункты.
Ну и Формат(Дата(2020, 12, 02, 9, 0, 0), "ДЛФ=T") равен "9:00:00" а не тому, что ты ожидаешь |
Popkorm 3 - 02.12.20 - 13:54 | ( 1) конечно делал сначала перед записью, потом начал экспериментировать ПриЗаписи, но сам факт что в обработки проведения в ссылке дата не изменилась |
Fragster 4 - 02.12.20 - 13:56 | ( 0) конфигуратор получает данные не в той транзакции, что происзодит запись, по этому до момента фиксации транзакции с уровнем блокировки "read committed" ты будешь видеть предыдыщие значения ссылки. внутри же кода все будет ок, например если в коде в обработке проведения сделать
лДата = Ссылка.Дата а в конфигураторе в табло вывести лДата - там будет уже новая дата |
Popkorm 5 - 02.12.20 - 13:59 | ( 2) Формат Это же условие
Если Формат(ЭтотОбъект.Дата, "ДЛФ=T") <> "09:00:00" Тогда
ЭтотОбъект.Дата = НачалоДня(ЭтотОбъект.Дата)+32400;
КонецЕсли;
|
fisher 6 - 02.12.20 - 14:02 | А что стоит в свойстве формы "АвтоВремя"?
|
Popkorm 7 - 02.12.20 - 14:10 | |
Popkorm 8 - 02.12.20 - 14:18 | (4) нет, в ссылке старая дата
|
Ненавижу 1С 9 - 02.12.20 - 14:19 | (5) Если Формат(ЭтотОбъект.Дата, "ДЛФ=T") <> "09:00:00" Тогда
это говнокод, конечно |
acht 10 - 02.12.20 - 14:20 | ( 5) Это условие выполнятся всегда, т-щ "программист". |
fisher 11 - 02.12.20 - 14:24 | ( 7) Попробуй "Не использовать". Только установку времени все равно перенеси в "ПередЗаписью" |
fisher 12 - 02.12.20 - 14:26 | "...для варианта АвтоВремя = НеИспользовать при открытии берется рабочая дата (если она отличается от текущей) или текущая дата вместе со временем, а для остальных вариантов установка времени откладывается на момент записи документа"
|
Fragster 13 - 02.12.20 - 14:29 | |
Popkorm 14 - 02.12.20 - 14:32 | ( 11) после 6 сообщения я поставил "Не использовать" , без результатно |
Popkorm 15 - 02.12.20 - 14:34 | ( 13) оценил ваш сарказм, но ( 8) в отладке показал что в ссылке старая дата |
Fragster 16 - 02.12.20 - 14:38 | ( 15) в ПриЗаписи и в ОбработкаПроведения в базе внутри открытой транзакции уже новые данные, если, конечно, кто-то альтернативно одаренный в этих обработчиках данные не изменил сам руками (платформа этого не делает). А из вне этой транзакции - либо ожидание, либо старые данные, в зависимости от уровня изоляции, о чем я в ( 8) и написал |
fisher 17 - 02.12.20 - 14:51 | ( 14) А программное изменение времени обратно в ПередЗаписью перенес? В ПриЗаписи оно не сохранится. |
Popkorm 18 - 02.12.20 - 14:59 | ( 17) да, я из передЗаписью не убирал, пройдя отладкой по всем процедурам и придя к процедуре ПриЗаписи, образуется ссылка со старым временем.
В ( 16) парень донес техническими терминами, но напрямую не хочет говорить куда копать, отправляет в ( 8), но и на том спасибо. |
fisher 19 - 02.12.20 - 15:36 | ( 18) Это он тебе про получение данных в табло. И то я с этим не готов согласиться. А проверять лень.
Исходной твоей проблемы это не касается - только представления информации в отладчике. |
Popkorm 20 - 02.12.20 - 17:29 | ( 19) протестил на другом документе "Перемещение товаров", нет таких проблем |
Popkorm 21 - 03.12.20 - 10:01 | Апну разок
|